人工智能 · 2024年1月25日 0

掌握这10个机器学习算法,成为数据科学家

想成为数据科学家?你得是个博闻强识,又对新鲜事物保持好奇心的人。正因为如此,数据科学家会掌握几乎所有的常见算法,并精通其中一门,这样可以快速适应新领域的问题。

今天我们就来聊聊,每一位数据科技家都应该了解的10大机器学习算法。下面是关于普遍机器学习算法和快速资源的风暴之旅,准好了吗?烧脑挑战开始:

1. 主成分分析(PCA)/奇异值分解(SVD)

PCA是一种非监督学习,用来理解由向量组成的数据集的全局特性的方法。这里分析了数据点的协方差模型,用来了解哪些维度(大部分)/数据点(有时)更重要,即在它们自身之间具有高方差,但与其他变量时协方差较低。

这种思考模型主要用于考量具有最高特征值的特征向量。此外,SVD本质上也是一种计算有序成分的方法,但你不需要通过获取数据点的协方差矩阵来实现它。

掌握这10个机器学习算法,成为数据科学家

这种算法通过获取已缩减维度的数据点,有助于解决多维度产生的冲击。

Libraries:


Introductory Tutorial:

2.1 最小二乘法和多项式拟合

还记得你在大学里学的数值分析编码吗?通过拟合直线和曲线得到一个方程。现在,你可以使用它们来适配机器学习中的曲线,用于非常小的低维数据集。对于大数据或多维度的数据集,你可能会需要过度拟合,所以不用费心。普通最小二乘法(OLS)具有封闭形式的解决方案,因此你不需要使用复杂的优化技术。

掌握这10个机器学习算法,成为数据科学家

很明显,你可以使用这种算法拟合简单曲线/回归。

Libraries:

Introductory Tutorial:

2.2 约束性线性回归

最小二乘法可能会被数据中的离群点、假维度和噪声干扰。因此,我们需要用约束来减少数据集上拟合的线的方差。正确的方法是拟合一个权重可控的线性回归模型。模型可以用L1正则(LASSO)或L2正则(Ridge Regression)或二者混合(elastic回归)。经过正则处理后对均方损失进行优化。

掌握这10个机器学习算法,成为数据科学家

使用这些算法拟合具有约束性的回归线,避免从模型中过度拟合和掩藏干扰维度。

Libraries:
Introductory Tutorial(s):

3. K-均值聚类

这是所有人都喜欢的非监督学习聚类算法。给定一组矢量形式的数据点,我们可以基于它们之间的距离生成数据点群。它是一种期望最大化的算法,反复地移动群组的中心,然后聚集每个群组中心点。此算法所采用的输入是生成群组的数量,并且它将尝试汇集群组的迭代次数。

掌握这10个机器学习算法,成为数据科学家

从名称中就可以看出,你可以使用这种算法在数据集中创建K集群。

Library:
Introductory Tutorial(s):

4. 逻辑回归

逻辑回归是一种约束线性回归,它的结果进行了非线性变换(常用的是sigmoid函数,或者tanh也可以),因此把输出限制成了+/-类的输出(在sigmoid中是1和0)。

交叉熵损失函数(Cross-Entropy Loss)用梯度下降法(Gradient Descent)优化。对初学者来说,逻辑回归用于分类,而不是回归。你也可以把逻辑回归看作一层神经网络。逻辑回归通过使用梯度下降法或者L-BFGS算法优化。NLP自然语言处理者们通常把它称之为最大熵分类器。

掌握这10个机器学习算法,成为数据科学家

使用LR来训练非常简单,却是十分强有力的分类器。

Library:
Introductory Tutorial(s):

5.SVM(支持向量机)

SVM(支持向量机)是线性模型,类似线性/逻辑回归。不同之处在于它们具有不同的基于边际损失函数(支持向量的推导是我所看到过的最美的数理成果之一,和特征值的计算可以媲美)。你可以使用诸如B-FGS甚至SGD等优化方法来优化损失函数。

掌握这10个机器学习算法,成为数据科学家

SVMs的另一个创新是,在特征工程中kernel使用。如果你有很好的领域洞察力,你可以用更好的kernel来代替旧的RBF kernel,并从中受益。

SVMs独一无二的特性就是可以学习一个类别的分类器

SVMs可以用来训练分类器(甚至回归函数)。

Library:
Introductory Tutorial(s):

6. 前馈神经网络

这些基本上是多层逻辑回归分类器。许多层权重由非线性(SigMOID,TANH,Relu+SULTMax和cool new SELU)分隔。它另一个比较知名的名字是多层感知器。前馈神经网络作为自动编码器,可用于分类和非监督特征学习。

掌握这10个机器学习算法,成为数据科学家
掌握这10个机器学习算法,成为数据科学家