Complexity theory 机器学习问题的计算复杂性是什么?

Complexity theory 机器学习问题的计算复杂性是什么?,complexity-theory,Complexity Theory,给定一个ML问题,如计算机视觉或NLP,这些问题的计算复杂性是什么 我能认为使用训练模型是解决“难”问题(棘手)的有效方法吗?自然语言处理和计算机视觉是计算机科学中存在数千种算法的领域。因此,一般来说,不可能给出如此广泛领域的计算复杂性。算法的复杂度从次线性到NP难。例如,子字符串搜索具有复杂度O(mn),其中m是子字符串的大小,n是要搜索的文本的大小。其中,NLP中的as自动摘要是一个AI完全问题,使其成为NLP中最困难的问题之一 对于问题的第二部分,答案是否定的。使用训练模型不会降低解决困难

给定一个ML问题,如计算机视觉或NLP,这些问题的计算复杂性是什么


我能认为使用训练模型是解决“难”问题(棘手)的有效方法吗?

自然语言处理
计算机视觉
是计算机科学中存在数千种算法的领域。因此,一般来说,不可能给出如此广泛领域的计算复杂性。算法的复杂度从次线性到NP难。例如,
子字符串搜索
具有复杂度O(mn),其中m是子字符串的大小,n是要搜索的文本的大小。其中,NLP中的as
自动摘要
是一个
AI完全
问题,使其成为
NLP中最困难的问题之一


对于问题的第二部分,答案是否定的。使用训练模型不会降低解决困难(棘手)问题的复杂性

NLP的复杂性是相当模糊的:你到底想实现什么?在词性标注的情况下,您需要指定您关注的输入内容:句子长度、词汇量。。。你用的是什么标签?有些只是预先训练好的模型,可以根据各种特征预测标签(单词在句子中的位置,是否以某些特定字符结尾…)

在这种情况下,您需要知道预测底层分类器的新数据点的复杂性

但是,反过来,评估分类器(或回归器)的复杂性可能相当复杂,因为它们依赖于许多其他算法,这些算法可以以多种方式实现(稀疏数据/密集数据…)。我在我的博客上写了一篇详细的文章:。主要结论是,即使是“简单”算法,理论复杂性也与观察到的复杂性不匹配(至少对于小样本而言)

现在,回到词性标记,让我们想象一下,它是在一个长度
n
的句子上执行的(它可能基于隐马尔可夫模型,结论可能完全不同)。请注意,特征提取包含固定数量的步骤,每个步骤在固定时间内进行计算(相邻字、二进制特征)。对于每个单词,特征评估为
O(1)

使用线性核(预测方法的复杂性将取决于使用支持向量机选择的核),您必须预测每个单词的类别。与每个单词相关联的特征数量是有界的(大约40个),您只是在计算两个(稀疏)向量之间的内积。同样,您可以将其视为<代码> 0(1)< /代码>。因此,基于线性支持向量机对
n
单词的句子进行词性标注是
O(n)

尽管我关注的是一个非常简单的例子,但你可以看到这个话题会变得多么大