我所理解的增量学习的思想是,经过培训后,我保存我的模型,当我有新的数据时,我不再用新的数据来训练旧的数据,我只是加载我保存的模型,并使用新的数据进行再次训练,而新的经过训练的模型将建立在旧的数据之上。
我在WEKA中搜索了这一点,我发现这可以使用“增量算法”来完成。我知道Hoefdding是J48算法的增量版本,但我不知道增量学习是如何实现的。
如果有人能解释这在WEKA是否可行,以及如何做到的话。
发布于 2015-10-20 10:46:28
为了在WEKA中进行增量学习,您必须选择实现UpdatableClassifer接口的分类器。有10个分类器可以做到这一点。请注意,这只能使用编码或命令行来完成。
您必须首先根据培训数据构建模型,然后保存模型。在此之后,您使用相同的模式,并培训更多。
使用HoefddingTree算法,如下所示:
java weka.classifiers.trees.HoeffdingTree -L 2 -S 0 -E 1.0E-7 -H 0.1 -M 0.01 -G 200.0 -N 0.0 -t Training.arff -no-cv -d ht.model
java weka.classifiers.trees.HoeffdingTree -t Training.arff -T Testing.arff -l ht.model -d ht.updated.model 当然,在更新模型时,不需要再次指定培训参数,因为这些设置已经保存在模型中。
有关详细信息,请参阅:
http://weka.8497.n7.nabble.com/WEKA-Incremental-Learning-Training-td35691.html
https://weka.wikispaces.com/Classification-Train/test%20set#Classification-Building a Classifier-Incrementalhttps://stackoverflow.com/questions/33093730
复制相似问题