Machine learning 使用scikit学习预测网站上的好内容

Machine learning 使用scikit学习预测网站上的好内容,machine-learning,scikit-learn,prediction,Machine Learning,Scikit Learn,Prediction,我从一个网站上得到了一年的数据。我想训练一种机器学习算法,根据某些变量(例如字数、发布时间等)预测新内容的成功率 我想获取一个新的数据,输入它的某些特征,并获得它在站点上运行的概率 此外,我希望继续向训练集中添加未来的数据,并不断训练算法,使其随着时间的推移变得更智能 我的问题是:我应该如何使用scikit学习来完成这项工作?您遇到的是一个二进制分类问题,即您必须确定给定的输入是否正确 尝试不同的回归算法,scikits learn可以让切换算法变得非常容易,让您可以看到哪些算法有效,哪些算法无

我从一个网站上得到了一年的数据。我想训练一种机器学习算法,根据某些变量(例如字数、发布时间等)预测新内容的成功率

我想获取一个新的数据,输入它的某些特征,并获得它在站点上运行的概率

此外,我希望继续向训练集中添加未来的数据,并不断训练算法,使其随着时间的推移变得更智能


我的问题是:我应该如何使用scikit学习来完成这项工作?

您遇到的是一个二进制分类问题,即您必须确定给定的输入是否正确

尝试不同的回归算法,scikits learn可以让切换算法变得非常容易,让您可以看到哪些算法有效,哪些算法无效

在我的脑海中,我会尝试以下几种方法:

  • 支持向量机
  • 随机森林(scikits中随机树的森林)
  • 回归(脊线、套索、IRLS、逻辑)
  • 朴素贝叶斯
  • k近邻
如何评估给定方法的质量?使用交叉验证(如果您有足够的数据,则重复10次,否则重复5次)。scikits学习手册有一个完整的章节(5.1)专门介绍这一点

向训练集中添加新数据需要重新训练模型。取决于你手头的计算能力,这可能是个问题,也可能不是。如果你有很多例子,添加一个不会有太大的改变,所以一定要用一些新的例子重新训练你的算法。这将节省计算时间

使用训练集的算法称为离线算法。另一方面,在线算法每次出现一个新的例子时都会学习。如果你真的需要,试试在线方法,比如k近邻

如果您需要示例代码,scikit学习文档非常有用: - -


如果您构建scikit,则不必阅读0.10版本的文档,而应该阅读最新的稳定文档,或者从github上托管的主分支学习开发版本的文档: