我是数据科学的初学者。我发现一些机器学习算法在给定特定类型的数据(即数字、分类、文本、图形)时表现更好。我在网上搜索了这个主题,但没有运气。
我想知道根据给定的机器学习算法,哪种数据表现最好?
最好简单解释一下为什么某些类型的数据适合某些机器学习算法?
希望这个问题的答案能帮助数据科学的初学者。
更新:如果您能解释最适合以下算法的数据类型是更好的。朴素贝叶斯、SVM、回归、K-Means、深度神经网络。
我是数据科学的初学者。我发现一些机器学习算法在给定特定类型的数据(即数字、分类、文本、图形)时表现更好。我在网上搜索了这个主题,但没有运气。
我想知道根据给定的机器学习算法,哪种数据表现最好?
最好简单解释一下为什么某些类型的数据适合某些机器学习算法?
希望这个问题的答案能帮助数据科学的初学者。
更新:如果您能解释最适合以下算法的数据类型是更好的。朴素贝叶斯、SVM、回归、K-Means、深度神经网络。
鉴于您提供的算法列表,这些算法属于 ML 算法的 3 大分类。
1)分类算法——朴素贝叶斯分类、决策树、随机森林、kNN、支持向量机(SVM)、神经网络等。
2)回归算法——线性回归、Logistic回归、Lasso回归等。
(注:Logistic Regression虽然名字里有Regression,但本质上是一种分类算法。
3)聚类算法——K-Means聚类、模糊C均值、高斯混合等。
您可能还知道 ML 算法有 4 种类型:
1)监督学习
2)无监督学习
3)强化学习
4)半监督学习
其中 4. 第一和第二是最重要的。
当我们有一个标记的数据集时应用监督学习,即我们已经是我们的输出变量/因变量。例如,包含房屋大小(自变量)和相应房价(因变量)的数据集。我们可以根据房子的大小来预测新数据点的房价。另一个例子是,当我们已经有一个有害或无害的肿瘤列表时,确定一个肿瘤是有害的还是无害的。在监督学习中,我们知道问题陈述并拥有获得答案的所有必要特征。
在无监督学习中,我们没有标记数据。我们没有任何输出变量。我们不知道问题陈述。当我们需要在数据集中找到一个结构并从中提取有意义的见解时,就会应用它。例如,沃尔玛的数据集包含其客户的购买模式。鉴于此,沃尔玛将要求其数据科学家提取一些含义。数据科学家可能会选择应用 K-Means 聚类并找出客户是如何细分的。A组客户——购买X、Y、Z产品;B 组客户——购买 U、V、X 产品。
处理监督学习问题时使用分类和回归算法,处理无监督学习时使用聚类算法。
现在回到您的原始查询,1)朴素贝叶斯 - 最适用于包含多个特征(自变量)和一个输出变量的数据集,该变量采用两个离散值(是/否)。因此,分类数据。
2)SVM——最好应用于包含无限数量特征的数据集,您需要将这些特征减少到一个数字,以便可以计算它。由于它是一种分类算法,因此它最适用于分类数据。
3) 回归——线性回归应用于连续数值数据集,其中因变量和自变量呈现线性关系。例如,房屋大小与房价。逻辑回归是一种分类算法,因此它最适用于分类数据。
3)K-Means——K-Means可以应用于多种类型的数据集。它所做的是将数据点分割成簇。具有相似特征的数据点聚集在一起。
4) 神经网络——神经网络可以是浅层神经网络和深度神经网络,这两者都可以应用于监督或无监督问题,因为它对这两种情况都有单独的算法。它是最强大和最流行的 ML 算法类。它可以用于每个问题陈述。它背后的主要直觉是从自己的错误中学习。我对神经网络了解不多,所以不再写更多。
如果你想了解更多关于 ML 和神经网络的知识,你可以申请Andrew Ng 的机器学习课程。对于像我们这样的初学者来说,这是最好的课程。