Machine learning 基于有限记忆流的感知机训练
我想用流数据中的随机梯度规则来训练感知器。我的内存非常有限,只能存储Machine learning 基于有限记忆流的感知机训练,machine-learning,neural-network,bigdata,artificial-intelligence,perceptron,Machine Learning,Neural Network,Bigdata,Artificial Intelligence,Perceptron,我想用流数据中的随机梯度规则来训练感知器。我的内存非常有限,只能存储N$示例 假设我的总体由点组成,如下图所示: 现在,假设我的第一个N示例以以下方式出现,我可以将它们正确分类,如下图所示: 现在的问题是,如果下一个N示例是这样的: 我对它们进行了分类,如图所示。问题是,由于我无法为以前的N示例训练感知器(因为我只能存储N示例,而以前的N示例需要扔掉),因此下一个N示例的训练与以前的N示例的超平面相矛盾 如何从流数据训练感知器?我需要存储所有示例还是有其他方法?如果数据源每次都是相同的,那
N
$示例
假设我的总体由点组成,如下图所示:
现在,假设我的第一个N
示例以以下方式出现,我可以将它们正确分类,如下图所示:
现在的问题是,如果下一个N
示例是这样的:
我对它们进行了分类,如图所示。问题是,由于我无法为以前的N
示例训练感知器(因为我只能存储N
示例,而以前的N
示例需要扔掉),因此下一个N
示例的训练与以前的N
示例的超平面相矛盾
如何从流数据训练感知器?我需要存储所有示例还是有其他方法?如果数据源每次都是相同的,那么数据分布如此不同不是很不可能吗
否则,您可能只保存每个群体的k个样本,直到您的内存限制生效,然后使用这些更广泛分布的数据进行训练。您需要以某种方式总结以前的训练,然后将该总结纳入新的训练中 一种简单的方法是将每个类别表示为集群质心的
k
(集群总体)副本。当您在每个新数据集上进行训练时,请包含适当加权质心的代码
类似的方法是改变训练算法,将该权重直接纳入改变评估系数的方式中。“学习率”在这里很有用
您还可以在线搜索在使用流式数据的培训中完成的工作;我只给了你一个简单版本的创业方法