交互式Jupyter演示的Python机器学习

图片


各位读者好!


我最近启动了自制机器学习存储库,其中包含流行的机器学习算法和方法的示例,例如线性回归,逻辑回归,K均值方法和神经网络(多层感知器)。 每个算法都包含在Jupyter NBViewer-e或Binder-e中启动的交互式演示页面。 因此,每个人都有机会更改训练数据,训练参数并立即在浏览器中查看模型的训练,可视化和预测结果,而无需在本地安装Jupyter。


该存储库的目的是实现算法 差不多 从头开始,以便对每个算法背后的数学模型有更详细的了解。 使用的主要库是NumPyPandas 。 这些库用于在矩阵上进行有效操作,以及用于加载和解析CSV数据。 在用于绘制图形和可视化训练数据的演示页面中,还使用了MatplotlibPlotly库。 在逻辑回归的情况下, SciPy库用于最小化损失函数,但在其他情况下,梯度下降是在纯NumPy / Python中实现的。 由于存储库的教学目的,避免使用诸如PyTorchTensorFlow之类的库。


目前,在存储库中实现了以下算法...


回归。 线性回归。


在与回归相关的问题中,我们尝试根据传入数据预测实数。 实际上,我们正在沿着训练数据构建线/平面/ n维平面,以便能够对不在训练集中的输入数据进行预测。 例如,如果我们要预测位于7楼N中心的2房公寓的价格,就会发生这种情况。



分类。 逻辑回归。


在与分类有关的问题中,我们根据数据的参数将数据分为几类。 分类任务的一个示例是垃圾邮件识别。 根据信件的文本(传入数据),我们将每个信件分配给两个类别之一(“垃圾邮件”或“非垃圾邮件”)。



聚类 K-均值法。


在群集任务中,我们将数据分为预先未知的群集。 这些算法不仅可以用于市场细分,还可以用于社交网络分析。



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


神经网络很可能不是一种算法,而是一种“模式”或“框架”,用于将不同的机器学习算法组织到一个系统中,以进一步分析复杂的输入数据。



使用高斯分布搜索异常


在与搜索异常相关的问题中,我们尝试将那些与大多数其他实例相比看起来“可疑”的数据实例隔离开。 例如,通过信用卡定义非典型(可疑)交易。


  • 数学模型 -理论和参考文献,供进一步阅读。



我希望您可以通过试验每种算法的演示或通过阅读它们背后的数学模型,或者通过分析每种算法的实现细节来找到该存储库


编码成功!

Source: https://habr.com/ru/post/zh-CN433886/


All Articles