使用 Python 进行自制机器学习

2025-05-28

使用 Python 进行自制机器学习

图片来源

我最近推出了一个自制机器学习库,其中包含Python实现的流行机器学习算法和方法(例如线性/逻辑回归、K 均值聚类、神经网络)的示例,并解释了其背后的数学原理。每个算法都提供了交互式的Jupyter Notebook演示,方便你使用训练数据和算法配置,并立即在浏览器中查看结果、图表和预测。大多数情况下,这些解释都基于吴恩达这门优秀的机器学习课程

该代码库的目的并非使用第三方库的“单行代码”来实现机器学习算法,而是从零开始练习实现这些算法,并更好地理解每个算法背后的数学原理。因此,所有算法的实现都被称为“自制”。

主要使用的 Python 库是NumPyPandas。这两个库用于高效的矩阵运算以及加载/解析 CSV 数据集。在Jupyter Notebook演示中, MatplotlibPlotly等库用于数据可视化。

目前已涵盖以下主题:

回归:线性回归

在回归问题中,我们进行实数预测。基本上,我们尝试沿着训练样本绘制一条线/平面/n维平面。

使用示例:股票价格预测、销售分析、任意数字的依赖关系等。

分类:逻辑回归

在分类问题中,我们根据某些特征来划分输入示例。

使用示例:垃圾邮件过滤器、语言检测、查找类似文档、手写字母识别等。

聚类:K均值算法

在聚类问题中,我们根据未知特征对训练样本进行划分。算法本身决定使用什么特征进行划分。

使用示例:市场细分、社交网络分析、组织计算集群、天文数据分析、图像压缩等。

神经网络:多层感知器(MLP)

神经网络本身不是一种算法,而是一个供许多不同的机器学习算法协同工作并处理复杂数据输入的框架。

使用示例:作为所有其他算法的替代,图像识别,语音识别,图像处理(应用特定风格),语言翻译等。

异常检测:高斯分布

异常检测(也称为离群值检测)是识别与大多数数据有显著差异而引起怀疑的罕见项目、事件或观察结果。

使用示例:入侵检测、欺诈检测、系统健康监控、从数据集中删除异常数据等。

— — — — — — — — —

希望您觉得这个代码库有用。无论是尝试演示、阅读数学部分,还是简单地探索源代码,都可以。祝您编程愉快!

文章来源:https://dev.to/trekhleb/homemade-machine-learning-in-python-4gbj
PREV
你身边的 SOLID 原则
NEXT
JavaScript 中的算法和数据结构