今天在翻阅《机器学习》时,看到了P≠NP,记忆中我查阅过相关资料,但没什么印象了,因此写一篇博客记录。
时间复杂度
多项式复杂度
O(nlogn)、O(n^2)
多项式时间复杂度的副类别有:
常量时间:O(1)
线性时间:O(n)
平方时间:O(n^2)
立方时间:O(n^3)
注:当前计算机无法承受复杂度高于多项式复杂度。
指数复杂度
O(2^n)、O(n^logn)
阶乘复杂度
O(n!)
定义
P问题:指的是在多项式时间复杂度内可解的问题。
NP问题:指的是在多项式时间复杂度内可验证解是否正确的问题。也叫做非确定性多项式问题。典型的NP问题有:Hamilton问题、哥德巴赫猜想等。
当前,学术界普遍认为P≠NP,这也就造成了机器训练中,必然会有过拟合的现象。若P=NP,则说明自动编程是存在的。