当一个人在任何复杂的数据上训练一个模型时,不可避免地会在大量可能的模型中得到一个特定的模型,这些模型会做出类似(甚至是相同)的预测。
例如,我们都可以在 mnist 上训练一个中性网络,并且我生成的模型将具有与您的模型不同的权重和偏差,即使它们做出相同的预测。
但是是否有任何算法不产生一个模型,而是产生对所有可能描述数据的模型空间的描述?
这甚至有意义吗?在某种程度上,据我所知,模型代表了一组先验(偏差和权重)。这种事情不做是因为太贵了吗?
以下面的谜语为例,“一个男人和他的儿子发生了一场可怕的事故,被紧急送往医院接受重症监护。医生看着男孩,惊呼道:“我不能给这个男孩做手术,他是我的儿子!” 这怎么可能?'''
您可能有一个先验说“大多数外科医生是男性”,而另一个先验说“大多数父母都是异性恋”。你有两个模型可以解释数据,当然它们是相互排斥的:要么男孩有两个父亲,要么外科医生是他的母亲。
关键是,这两个模型都可以解释数据,在你获得更多数据之前你不知道哪个模型是正确的。此外,同样重要的是,您可以将每个模型的关系映射到您的先验信念,因此当您了解哪个是有效的时,您可以相应地更新您的先验。
产生所有可能模型的概率空间的技术或算法似乎是一种潜在的强大工具。然而我在任何地方都找不到这种东西。
是否有任何算法或机器学习技术可以做到这一点?此外,根据您的先验,您甚至如何根据所有可能的有效模型的可能性在数学上描述它们的可能性空间?
谢谢你的帮助!