你将如何教机器如何计数?

数据挖掘 机器学习
2022-02-22 20:32:59
var digits = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"];
var numbers = [digits[0], digits[1]...digits[9], digits[1] + digits[0], digits[1] + digits[1]...];

你会用什么来建立一个模型,predictNextNumber(19)=20通过理解计数是如何工作的?

2个回答

我建议使用监督学习并采用线性模型:线性回归

这是一个完美的线性系统(y=x+1),所以线性回归可以正常工作,即完美。此外,您可以使用无限量的数据来训练系统,因此应该很容易训练;-) 我开玩笑...我认为两个数据点就足够了,因为它是完全线性的!

在教学上,当您尝试支持向量机 (SVM) 等基于模拟的方法时,这个极其简单的线性系统的琐碎性会变得更加有趣——它也应该能够提供完美的结果、决策树或随机森林,甚至是朴素贝叶斯回归者。

虽然从非常简单的系统开始学习很有用,但我建议快速转向更复杂的东西,即不要过于拘泥于琐碎的线性模型。不要忘记数据科学和机器学习的力量在于其统计性质,因此请尝试找到一个包含输入中一些统计变化的测试用例。

希望这可以帮助!

将足够多的示例输入到学习算法中。在伪代码中:

L = learn_plus_one()
L.teach("12","13")
L.teach("3","4")
L.teach("99","100")

在教了足够多的例子之后,它应该知道73加一等于74,尽管它对加法一无所知,但它只是从例子中发现了规律。

那么它learn_plus_one看起来像什么?那可能是一个神经网络,或者任何其他机器学习系统。你的问题很模糊,所以我不能具体。