![](https://img-blog.csdnimg.cn/20190918135101160.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
机器学习经典算法实现
文章平均质量分 97
原价99.9,限时19.9🔥火爆订阅中(五日后恢复原价)。本专栏内包含基于原生Python从零实现经典机器学习算法,通过自复现帮助新手小白对算法有更深刻的认识,理论与实践相结合,每一篇文章都附带有完整的代码+原理讲解。
海洋 之心
阿里云社区专家博主,图神经网络-大数据-推荐系统研究者,专注于计算机领域前沿技术的分享等人工智能算法研究工作
展开
-
Python实现经典机器学习算法(附代码+原理介绍)
本专栏内包含基于原生Python从零实现经典机器学习算法,通过自复现帮助新手小白对算法有更深刻的认识,理论与实践相结合,每一篇文章都附带有完整的代码+原理讲解。原创 2023-03-24 19:49:47 · 9706 阅读 · 5 评论 -
Python实现逻辑回归(Logistic Regression)
逻辑回归是一种经典机器学习分类算法,它被广泛应用于二元分类问题中,该算法的目的是预测二元输出变量(比如0和1),逻辑回归算法有很多应用,比如预测股票市场、客户购买行为、疾病诊断等等。它被广泛应用于医学、金融、社交网络、搜索引擎等各个领域。原创 2023-03-26 10:29:47 · 27489 阅读 · 9 评论 -
Python实现Adam优化器
Adam (Adaptive Moment Estimation) 是一种自适应学习率的优化算法,结合了 Momentum 和 RMSprop 的优点,能够更快地收敛并且具有较好的泛化性能。原创 2021-11-27 15:02:29 · 3436 阅读 · 0 评论 -
Python实现Adadelta优化器
Adadelta 是一种自适应学习率的优化算法,它是对 Adagrad 的改进,主要通过减少 Adagrad 算法中的学习率下降速度和累积梯度平方和的计算来解决 Adagrad 的问题。原创 2021-11-27 14:48:33 · 1161 阅读 · 0 评论 -
Python实现Adagrad优化器
Adagrad 是一种基于梯度历史信息自适应调整学习率的优化算法,其核心思想是将学习率适应性地调整为每个参数的历史梯度平方根的倒数。具体来说,Adagrad 对每个参数维护一个累积梯度平方和,并将学习率按照这个平方和的倒数进行缩放,以适应每个参数的梯度变化。原创 2021-11-21 15:52:19 · 1637 阅读 · 0 评论 -
Python实现RMSprop优化器
RMSprop 是一种自适应学习率的优化算法,它可以有效地应对不同特征的梯度变化差异较大的情况,以及避免梯度消失或爆炸的问题。原创 2021-11-27 14:52:35 · 1432 阅读 · 0 评论 -
Python实现Nesterov accelerated gradient优化器
NAG(Nesterov accelerated gradient)是一种基于动量的优化算法,它在 Momentum 的基础上提出了 Nesterov 加速梯度(Nesterov accelerated gradient)的概念,以进一步提高训练效率。原创 2021-11-27 14:34:21 · 1693 阅读 · 1 评论 -
Python实现Momentum优化器
Momentum 是一种基于梯度的优化算法,其核心思想是在梯度下降的基础上增加动量的概念,以加速训练过程并增强优化结果的稳定性。原创 2021-11-27 14:12:16 · 1431 阅读 · 0 评论 -
Python实现拟牛顿法(Quasi-Newton Methods)
👑 最近粉丝群中很多朋友私信咨询一些决策树、逻辑回归等机器学习相关的编程问题,为了能更清晰的说明,所以建立了本专栏专门记录基于原生Python实现一些入门必学的机器学习算法,帮助广大零基础用户达到轻松入门,为了更深刻算法的基本原理,本专栏没有采用第三方库来实现(sklearn),而是采用原生Python自己复现相关算法,从而帮助新手理解算法的内部细节。👑 本专栏适用人群:🚨🚨🚨机器学习初学者刚刚接触sklearn的用户群体,专栏将具体讲解如何基于原生Python来实现一些经典机器学习算法,原创 2023-09-12 01:00:00 · 352 阅读 · 0 评论 -
Python实现坐标下降法(Coordinate Descent)
👑 最近粉丝群中很多朋友私信咨询一些决策树、逻辑回归等机器学习相关的编程问题,为了能更清晰的说明,所以建立了本专栏专门记录基于原生Python实现一些入门必学的机器学习算法,帮助广大零基础用户达到轻松入门,为了更深刻算法的基本原理,本专栏没有采用第三方库来实现(sklearn),而是采用原生Python自己复现相关算法,从而帮助新手理解算法的内部细节。👑 本专栏适用人群:🚨🚨🚨机器学习初学者刚刚接触sklearn的用户群体,专栏将具体讲解如何基于原生Python来实现一些经典机器学习算法,原创 2023-09-11 02:00:00 · 438 阅读 · 1 评论 -
Python实现网格搜索(Grid Search)
网格搜索(`Grid Search`)算法是一种超参数优化算法,用于在给定的 `参数空间` 中寻找最佳超参数组合,以提高模型的性能。该算法基于穷举搜索的思想,通过遍历所有可能的参数组合来确定最佳参数。原创 2023-08-05 08:23:10 · 707 阅读 · 0 评论 -
Python实现K折交叉验证(K-Fold Cross-Validation)
K折交叉验证可以有效地评估机器学习算法的性能,并减少测试结果的方差。它特别适用于数据集较小的情况,因为它允许我们在不浪费过多数据的情况下进行多次测试。原创 2023-08-05 08:21:50 · 817 阅读 · 0 评论 -
Python实现循环神经网络RNN(Recurrent Neural Network)
循环神经网络(`Recurrent Neural Network,RNN`)是一种特殊的神经网络,它在处理序列数据时具有优异的表现。与其他神经网络不同的是,RNN可以在处理时考虑先前的状态,使其在处理序列数据时具有记忆能力。原创 2023-08-05 08:18:55 · 470 阅读 · 0 评论 -
Python实现卷积神经网络CNN(Convolutional Neural Network)
神经网络中的卷积操作是指卷积层对输入数据进行的操作,是一种特殊的线性变换。它可以将卷积核(也称为 `滤波器`)与输入数据的局部区域进行卷积,从而提取出输入数据的特征。原创 2023-08-05 08:17:21 · 1264 阅读 · 0 评论 -
Python实现多层感知机(MLP)
本专栏内包含基于原生Python从零实现经典机器学习算法,通过自复现帮助新手小白对算法有更深刻的认识,理论与实践相结合,每一篇文章都附带有完整的代码+原理讲解。原创 2023-08-03 06:02:35 · 883 阅读 · 0 评论 -
集成学习套袋法Bagging原理详解
集成学习(Ensemble Learning)是一种将多个弱分类器或回归器组合成强分类器或回归器的机器学习技术。它的基本思想是通过对多个模型的预测进行投票或加权平均来提高模型的准确性和稳定性。原创 2023-07-12 18:21:37 · 214 阅读 · 0 评论 -
Python实现牛顿法(Newton’s Method)
牛顿法使用当前点的梯度和海森矩阵来构造一个局部的二次模型,即在当前点的邻域内,目标函数可以近似为一个二次函数。然后,通过求解该二次函数的极值点来确定下一步迭代的方向和步长。具体而言,牛顿法将二次函数的导数设置为零,求解得到极值点,即为下一步迭代的方向。原创 2023-07-01 06:46:34 · 419 阅读 · 0 评论 -
Python实现坐标下降法(Coordinate Descent)
坐标下降法(Coordinate Descent)是一种基于迭代的优化算法,用于优化目标函数,特别适用于目标函数为凸函数的情况。该算法的主要思想是每次只优化一个坐标,其他坐标保持不变。坐标下降法在机器学习和数值优化等领域得到了广泛应用。原创 2023-06-10 08:29:17 · 503 阅读 · 1 评论 -
Python实现梯度下降法(Gradient Descent)
梯度下降法(`Gradient Descent`)是一种常用的数值优化算法,用于最小化一个函数的值。它通过迭代的方式来更新模型参数,以找到使目标函数最小化的参数值。在机器学习和深度学习中,梯度下降法被广泛应用于求解模型参数。原创 2023-06-02 19:22:47 · 685 阅读 · 0 评论 -
Python实现GBDT(Gradient Boosted Decision Tree)
GBDT(`Gradient Boosting Decision Tree`)是一种基于决策树的集成学习算法,也是一种迭代式的 boosting 算法。其基本思路是将多个 `弱分类器` (决策树)进行迭代加权,来提升模型的准确性。在每一次迭代中,GBDT 会根据上一轮模型的预测结果计算出残差(实际值与预测值之差),并将 `残差` 作为下一轮模型的训练目标。原创 2023-05-30 12:12:23 · 749 阅读 · 0 评论 -
Python实现AdaBoost(Adaptive Boosting)
AdaBoost(Adaptive Boosting)是一种经典的集成学习算法,其思想是将多个弱分类器(weak classifier)组合成一个强分类器(strong classifier),以提高分类性能。它是由 Yoav Freund和Robert Schapire在1996年提出的。原创 2023-05-22 09:19:39 · 809 阅读 · 1 评论 -
Python实现随机森林(Random Forest)
随机森林(`Random Forest`)是一种基于决策树的集成学习算法,由 `Leo Breiman` 和 `Adele Cutler` 在2001年提出。它将多个决策树组合起来进行预测,以提高预测的准确性和稳定性。原创 2023-05-10 19:11:36 · 2965 阅读 · 1 评论 -
Python实现高斯混合聚类(GMM)
高斯混合聚类(`Gaussian Mixture Model,GMM`)是一种基于概率模型的聚类算法。它假设每个簇都由多个高斯分布组成,即每个簇的数据点都是从不同的高斯分布中采样得到的。在高斯混合模型中,每个簇由以下三个参数定义:均值向量(`mean vector`)、协方差矩阵(`covariance matrix`)和权重(`weight`)。原创 2023-05-02 09:48:44 · 1819 阅读 · 0 评论 -
Python实现岭回归(Ridge Regression)
岭回归(Ridge Regression)是一种常见的线性回归的扩展形式,它通过引入 `L2正则化项` 来解决线性回归模型中可能存在的过拟合问题。原创 2023-04-29 09:13:21 · 1368 阅读 · 0 评论 -
Python实现Lasso回归(Lasso Regression)
Lasso算法(`Least Absolute Shrinkage and Selection Operator`,最小绝对值收缩和选择算法)是一种线性回归算法,其主要特点是能够在线性回归的基础上增加 `L1正则化项`,从而达到特征选择的目的。与传统的线性回归不同,Lasso算法可以让部分特征的系数变为0,从而实现特征的 `自动选择和降维`。原创 2023-04-25 16:27:02 · 2122 阅读 · 0 评论 -
Python实现PCA降维(Principal Component Analysis)
PCA(Principal Component Analysis)是一种经典的降维方法,它可以将高维数据转换为低维数据,而不会损失太多的信息。PCA通过对数据进行线性变换,将原始数据从高维空间投影到低维空间,使得新的特征向量能够较好地表示原始数据的主要特征。因此,`PCA` 常用于数据的可视化、降噪、压缩和特征提取等方面。原创 2023-04-18 09:22:01 · 970 阅读 · 1 评论 -
Python实现DBSCAN(Based Spatial Clustering of Applications with Noise)
DBSCAN(Density-Based Spatial Clustering of Applications with Noise)是一种基于密度的聚类算法,由Martin Ester、Hans-Peter Kriegel、Jörg Sander和Xiaowei Xu在1996年提出。DBSCAN算法的优点是可以处理任意形状的聚类,并且可以自动识别噪声点。缺点是算法对于参数的选择比较敏感,尤其是领域半径和最小样本数。此外,DBSCAN算法在处理高维数据时可能存在问题。原创 2023-04-17 08:44:38 · 638 阅读 · 0 评论 -
Python实现KMeans(K-means Clustering Algorithm)
KMeans算法是一种无监督学习算法,用于将一组数据点划分为多个簇(cluster)。这些簇由数据点的相似性决定,即簇内的数据点相似度高,而不同簇之间的相似度较低。KMeans算法的目标是最小化簇内的方差,从而使得同一簇内的数据点更加紧密。原创 2023-04-03 08:29:28 · 910 阅读 · 3 评论 -
Python实现K近邻(KNN)
K近邻算法(K-Nearest Neighbor,简称KNN算法)是一种基本的机器学习算法,它是一种无参数的、懒惰学习(lazy learning)算法。KNN算法可以用于分类和回归问题。在KNN算法中,未知样本的类别或者值,是由与它最近的K个已知样本的类别或者值来决定的,其中K是一个正整数。原创 2023-03-30 09:50:52 · 1098 阅读 · 5 评论 -
Python实现朴素贝叶斯(Naive Bayes)
朴素贝叶斯(Naive Bayes)算法是一种基于概率论和贝叶斯定理的分类算法。它的核心思想是,对于给定的数据集,通过先验概率和条件概率计算出每个类别的后验概率,然后将样本分配给具有最大后验概率的类别。原创 2023-03-29 09:29:25 · 1891 阅读 · 2 评论 -
Python实现决策树(Decision Tree)
决策树是一种基本的分类和回归方法,可以用于二元和多元分类以及连续和离散的数值预测。决策树的构建过程就是递归地选择最优的特征并根据该特征对数据进行分裂的过程,直到满足某种条件为止,然后构建出一颗决策树。在进行分类预测时,对输入数据从根节点开始沿着特定的路径向下走,直到到达某个叶节点,此时该叶节点所对应的类别就是该输入数据的预测类别。原创 2023-03-28 13:17:36 · 1970 阅读 · 0 评论 -
Python实现多元线性回归(Multiple Linear Regression)
多元线性回归是一种用于建立多个自变量与因变量之间关系的统计学方法。在多元线性回归中,我们可以通过多个自变量来预测一个因变量的值。每个自变量对因变量的影响可以用回归系数来表示。原创 2023-03-27 09:38:12 · 2657 阅读 · 0 评论