免责声明:我是机器学习领域的新手,请原谅我
如果我的问题有点天真...我已经在互联网上搜索了
关于这个话题,没有发现任何有趣的东西,所以我在这里问..
我想知道ML算法是否可以视为存储数据的一种方式?
有些程序“包含” PI的几千个小数(例如https://www.quora.com/What-is-the-smallest-C-program-generating-pi-without-using-the-math-library):在某种程度上,它是PI的前1000个小数的“压缩”版本,对吗?
ML(例如Deep Neural Net)似乎以相同的方式存储信息。我们能否确定一个深度神经网络中存储了多少位?我们可以使用ML算法数据结构来压缩信息并在以后检索它(即使它不是100%准确的)吗? ...
是否有(不是太技术性的)论文来讨论这些可能性?
谢谢 :)
最佳答案
在您发布的链接中,将存储PI的完整(无限长)信息,而不仅仅是1000个小数。但这需要无限的时间/迭代来获得全部;-)。
对你的问题:
就像您提到的,学习者/分类器存储有关您训练他们的数据的信息。但是它们的目的不是要取回原始数据,而是对新数据进行分类/评估。所以我谨慎地说:
“不,我们不能简单地使用AI算法压缩数据,也无法获得原始数据”。
一种特殊情况是K-Nearest-Neighbor算法。
在这里,您可以还原原始数据,但是那是因为它没有压缩,只是以超维数据点的形式保存。
您问题中最难的部分是如何量化存储在分类器(深度神经网络)中的信息。如果您有Hopfield-Network(可保存并识别图像/图案,但不是深度神经网络),则可以通过计算保存的图案及其大小来量化信息。对于决策树,您可以计算规则(也许可以获取每个规则的信息增益)。对于神经网络,您可以获取神经元的数量,也可以获取每个或全部的熵。但是正如您看到的那样,要指定存储在经过训练的学习算法中的信息确实是一个很难回答的问题。
希望我能回答您的一些问题。
干杯
关于machine-learning - 使用机器学习算法的数据结构来存储信息(内存),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45030055/