何时使用有监督或无监督学习?

Posted

技术标签:

【中文标题】何时使用有监督或无监督学习?【英文标题】:When to use supervised or unsupervised learning? 【发布时间】:2017-12-08 00:45:12 【问题描述】: 使用监督或非监督学习的基本标准是什么? 什么时候比另一个更好? 是否存在只能使用其中一种的特定情况?

谢谢

【问题讨论】:

【参考方案1】:

    如果您有标记的数据集,则可以同时使用这两种数据集。如果您没有标签,则只能使用无监督学习。

    这不是“更好”的问题。这是你想要达到什么目标的问题。例如。聚类数据通常是无监督的——您希望算法告诉您数据的结构。分类是有监督的,因为你需要教你的算法什么是什么,以便对看不见的数据进行预测。

    见 1。

附带说明:这些都是非常广泛的问题。我建议您熟悉一些 ML 基础。

好的播客例如在这里:http://ocdevel.com/podcasts/machine-learning

Jake VanderPlas 的非常好的书/笔记本:http://nbviewer.jupyter.org/github/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/Index.ipynb

【讨论】:

【参考方案2】:

取决于您的需求。如果您有一组现有数据,包括您希望预测的目标值(标签),那么您可能需要supervised learning(例如是真还是假;或者这些数据是否代表鱼、猫或狗?简单地说- 你已经有了正确答案的例子,你只是在告诉算法要预测什么)。您还需要区分您需要分类还是回归。分类是当您需要将预测值分类到给定的类别时(例如,这个人是否可能患上糖尿病 - 是或否?换句话说 - 离散值)和回归是当您需要预测连续值时(1,2 , 4.56, 12.99, 23 等)。有许多监督学习算法可供选择(k-最近邻、朴素贝叶斯、SVN、岭......)

相反 - 如果您没有标签(或目标值),请使用 unsupervised learning。您只是在尝试识别出现的数据集群。例如。 k-Means、DBScan、谱聚类……)

所以这取决于并且没有确切的答案,但一般来说你需要:

    收集并查看数据。您需要了解您的数据,然后才能决定选择哪种方式或哪种算法最适合您的需求。

    训练您的算法。确保拥有干净且良好的数据,并记住,在无监督学习的情况下,您可以跳过此步骤,因为您没有目标值。你马上测试你的算法

    测试您的算法。运行并查看您的算法表现如何。在监督学习的情况下,您可以使用一些训练数据来评估您的算法的执行情况。

网上有很多关于机器学习的书籍,也有很多关于这个主题的在线讲座。

【讨论】:

以上是关于何时使用有监督或无监督学习?的主要内容,如果未能解决你的问题,请参考以下文章

6分钟了解所有机器学习模型

有监督学习和无监督学习

有监督学习无监督学习半监督学习

有监督学习和无监督学习的区别

监督学习,无监督学习和半监督学习

有监督学习和无监督学习算法怎么理解?