最近,一个非常全面的算法资源在GitHub上火了起来。不仅有相应的原理介绍和实现代码,还提供了demo。目前,GitHub上的star数已超过2900颗。在这个资源中,一共有5种算法,分别是:线性回归、逻辑回归、K-means算法、基于高斯分布的异常检测、多层感知器(MLP)。对于每一种算法,都会有数学原理的解释,Python实现的例子,以及交互式的JupyterNotebookDemo。大多数情况下,这些算法的讲解都是基于吴恩达的机器学习课程。基于这些资源,你可以进行相应的数据训练、算法配置,并在浏览器中即时查看结果、图表和预测。资源是什么?五种算法分为三类:监督学习、非监督学习和神经网络。每一大类都有相应的介绍,并给出相应的适用范围。然后是对应算法的资源。以神经网络为例,该类别下的算法为多层感知器,共有4个资源。第一个资源是文档,介绍了神经网络和多层感知器背后的原理和实现逻辑,并提供了相应的参考资料供进一步学习。第二个资源是代码,展示了如何在Python中实现多层感知器。基本上每段代码前都有相应的注释,说明代码的作用和注意事项。后两个资源基于JupyterNotebook的Demo,使用算法和数据集训练模型,进一步熟悉多层感知器算法的使用。使用MNIST数据集训练手写数字(0-9)的分类器。另一个用途是使用Fashion-MNIST数据集来训练服装分类器。有什么先决条件?资源门槛不高,最基本的要求是安装Python。因为项目中的所有demo都可以在浏览器中运行,所以本地不需要安装Jupyter。JupyterNotebook中使用的所有数据集都可以在数据文件夹中找到。谁做得好?本资源由乌克兰工程师OleksiiTrekhleb制作,他目前在软件技术咨询公司EPAMSystems担任高级软件工程师。他说,建立这个库的目的不是用第三方库的“一行”来实现机器学习算法,而是从头开始实践,让大家更好地理解每个算法背后的原理。传送门https://github.com/trekhleb/homemade-machine-learning
