16岁高中生的「卷」,13000+行代码,从头写了一个C++机器学习库
高中生拯救世界在人工智能领域也很流行?
一个热爱计算机的青少年可以在16岁时做一些事情,比如开发一种粤语编程语言,赢得Kagle冠军,写一个游戏,开发一个加密货币投资机器人,从零开始建立一个C++机器学习库。
今天要介绍的是一个16岁的男孩(@novak-99),他从零开始建立C++机器学习库,他的自荐帖在reddit上赢得了数百个赞。
他建造的库(ML++)有13000多行代码,涵盖统计、线性代数、数值分析、机器学习和深度学习等主题。、
项目地址:https://github.com/novak-99/MLPP。
@novak-99表示,他之所以建立这个库,是因为C++是他选择的语言,但是C++在ML前端很少使用。
C++效率高,有利于快速实施。因此,C/C++或某种C/C++衍生语言用于优化和提高大多数库(如TensorFlow、PyTorch或Numpy)的速度。
然而,当他检查各种机器学习算法的前端实现时,他注意到大多数算法都是由Python、Matlab、R或Octave实现的。他认为,C++之所以在ML前端使用较少,主要是因为缺乏用户支持,C++语法复杂。
与Python相比,C++的机器学习框架少得可怜。此外,即使在流行框架(如Pytorch或TensorFlow)中,C++的实现也不如Python完整,存在的问题包括:缺乏文档;并不是所有的主要函数都存在;愿意贡献的人不多,等等。
此外,C++不支持PythonML套件的各种关键库。Pandas和Matplotlib不支持C++。这增加了ML算法的实现时间,因为更难获得数据可视化和数据分析的元素。
因此,他决定自己写一个C++机器学习库。
他还注意到,由于ML算法很容易实现,一些工程师可能会忽略它们背后的实现和数学细节。这可能会带来一些问题,因为在不了解数学细节的情况下,不可能为特定用例定制ML算法。因此,除了图书馆外,他还计划发布全面的文档来解释图书馆中每个机器学习算法背后的数学背景,包括统计、线性回归、雅可比矩阵和反向传输。以下是统计数据的一部分:
打开项目,我们可以看到一些细节:
涵盖19个主题,ML++足够大和完整。
和大多数框架一样,高中生创建的ML++库是动态的,不断变化。这在机器学习的世界里尤为重要,因为每天都会开发新的算法和技术。
目前,ML++库正在开发以下模型和技术:
卷积神经网络(CNN)
支持向量机内核(SVM)。
支持向量回归。
总体而言,ML++库包含19个主题及相关细分,分别如下:
回归(线性回归、逻辑回归、Softmax回归、指数回归、Probit回归、Cloglog回归、Tanh回归)
深度、动态、规模化神经网络(激活函数、优化算法、损失函数、规则化方法、权重初始化方法、学习率规划器)
Prebuilt神经网络(多层感知机、自编码器、Softmax网络)
生成建模(表格对抗生成网络)
自然语言处理(Word2Vec、词干提取、词袋模型、TFIDF、辅助文本处理函数)
计算机视觉(最大/最小/平均池化、最大/最小/平均池化、Prebuilt特征向量)
主成分分析
简单贝叶斯分类器(多种分布简单贝叶斯,伯努利分布简单贝叶斯,高斯分布简单贝叶斯)
支持向量分类(原始形成,对偶形成)
K-Means算法。
K最近的邻近算法。
(使用标准分数)
矩阵分解(SVD分解,Cholesky分解,QR分解)
数值分析(数值微分,Jacobi向量计算器,Hessian矩阵计算器,函数近似器,微分方程求解器)
数学变换(离散余弦变换)
线性代数模块。
统计模块
数据处理模块(特征缩放,均值归一化,OneHot表征,反OneHot表征,支持颜色空间转换类型)
实用工具(TP/FP/TN/FN函数、精度、召回率、精度、F1分数)
详情请参考原项目。
网友:这么卷,我该怎么办?
对于16岁就能做出这么好的项目,有网友不禁感叹,这个世界上的高中生在做什么?!我在他们这个年纪还在啃手指。他们已经在ICLR和NeurIPS会议上发表了论文...
一些网民说,如果高中生正在做这些事情,想象几年后博士申请会有多激烈。现在,你只需要发表三篇以上的NeurIPS论文,并在未来获得图灵奖。
看似开玩笑的话,也可以说是目前某种程度的卷。
然而,一些网民指出,该项目中有13000行代码,但没有测试?另一位网友认为,这是一个基于个人爱好的项目(petproject),不适用于实际用例。因此,这里的测试并不重要。
好的文章,需要您的鼓励
9
- 最新资讯
- 最新问答
-
制造“精益”求精、销量全球冠军 揭秘Welling威灵电机的高标准“智”造
关键字: 技术干货 展会 新品速递 2024-05-29 -
ESG催生全球环保包装风潮,swop 2024 “双碳新时代”专区引领可持续发展!
关键字: swop 2024-05-10 -
“机器人智能谐波减速器”国家重点研发计划启动 遨博智能核心产品拓展新版图
关键字: 减速器 遨博 研发计划 2024-04-30 -
IOTE 2024 第二十一届国际物联网展顺利闭幕,一座城市与一场展会的双向加速
关键字: 物联网 数字经济 2024-04-30 -
AI驱动产业升级 | IOTE 2024中国智联网生态大会暨“2023物联之星”年度榜单颁奖典礼在沪召开!
关键字: 物联网 ai 2024-04-30
-
机器人焊接焊机报TC异常怎么解决
标签: 焊接机器人,焊机,TC异常 提问:TC 2024-06-28 16:05:01 -
机器人运动轨迹的控制方式有哪两种
标签: 机器人,运动轨迹,控制方式 提问:张默 2024-06-25 10:10:02 -
具身智能什么意思
标签: 具身智能,什么意思 提问:MESSE 2024-06-19 10:37:04 -
3D视觉无序抓取系统配置要点?
标签: 3D视觉,无序抓取,系统配置 提问:QUTE 2024-06-17 13:17:05 -
3d相机机器视觉检测原理
标签: 3D相机,视觉检测 提问:木木 2024-06-17 13:03:03
- 2021-05-14 13:36:48
- 2019-09-27 11:29:38
- 2022-06-27 10:05:41
- 2019-04-12 11:27:08
- 2024-02-28 15:25:50
- 2020-08-17 15:11:43
- 2022-08-21 20:30:45
- 2022-08-24 12:09:31
- 2018-07-18 16:14:08
- 2022-08-30 15:17:40
- 2022-08-24 14:16:37
- 2022-09-13 12:17:35
- 2024-05-29
- 2024-05-10
- 2024-04-30
- 2024-04-30
- 2024-04-30
- 2024-04-26
- 2024-04-19
- 2024-04-24
- 2024-04-10
- 2024-04-12