和许多人一样,我对机器学习很感兴趣。我上过关于这个主题的课程,并且一直在阅读一些论文。我有兴趣找出是什么让机器学习难以解决问题。理想情况下,我想了解如何量化或表达机器学习问题的复杂性。
显然,如果一个模式非常嘈杂,可以查看不同算法的更新技术,并观察到某些特定的机器学习算法由于嘈杂的标签而错误地将自身更新到错误的方向,但这是非常定性的争论,而不是一些分析/ 可量化的推理。
那么,如何量化问题或模式的复杂性来反映机器学习算法面临的困难呢?也许来自信息论的东西,我真的不知道。
和许多人一样,我对机器学习很感兴趣。我上过关于这个主题的课程,并且一直在阅读一些论文。我有兴趣找出是什么让机器学习难以解决问题。理想情况下,我想了解如何量化或表达机器学习问题的复杂性。
显然,如果一个模式非常嘈杂,可以查看不同算法的更新技术,并观察到某些特定的机器学习算法由于嘈杂的标签而错误地将自身更新到错误的方向,但这是非常定性的争论,而不是一些分析/ 可量化的推理。
那么,如何量化问题或模式的复杂性来反映机器学习算法面临的困难呢?也许来自信息论的东西,我真的不知道。
在机器学习理论中,通常使用领域的VC维度来分类“How hard it is to learn it”
k
如果存在一组样本,则据说具有 VC 维度的域k
,这样无论它们的标签如何,建议的模型都可以“粉碎它们”(使用模型的某些配置完美地拆分它们)。
维基百科页面提供了作为域的 2D 示例,并以线性分隔符作为模型:
以上试图证明在 2D 中存在一组点,这样无论标签是什么,都可以拟合线性分隔符来分割它们。但是,对于 2D 中的每 4 个点,都有一些标签分配,因此线性分隔符无法拆分它们:
因此,具有线性分隔符的 2D 空间的 VC Dimension 为 3。
此外,如果域和模型的 VC 维数为无穷大,则称该问题不可学习
如果你有足够的数学背景,并且对机器学习的理论感兴趣,可以试试Amnon Shashua 关于 PAC 的讲座