machine-learning - 优化网络爬虫的关键字权重

标签 machine-learning statistics modeling

我正在编写一个网络爬虫,它扫描一组特定的关键字,然后根据我分配给每个关键字的累积分数为其遇到的每个域分配一个全局分数(programming=1,clojure=2) 、javascript=-1 等...)。

我已将关键字评分设置为 -10 到 10 的滑动范围,并且我的初始值基于我自己对相关和不相关的假设。

我觉得我的评分模型可能有缺陷,我更愿意提供与我试图捕获的标准相匹配的域列表到分析工具中,并根据某种统计分析来优化我的关键字权重。

为“已知良好域”列表生成最佳评分模型的适当分析技术是什么?这个问题适合贝叶斯学习、蒙特卡罗模拟或其他技术吗?

最佳答案

因此,给定一组相关和不相关域的训练集,您希望构建一个模型,将新域分类到其中一个类别。我假设您将使用的功能是域中出现的术语,即这可以被定义为 document classification问题。

一般来说,您的假设是正确的,让基于统计的机器学习算法为您进行“评分”比为关键字分配手动评分效果更好。

解决该问题的一个简单方法是使用贝叶斯学习,具体来说,朴素贝叶斯可能是一个不错的选择。

从您手动标记的域生成数据集(例如,从每个域收集多个页面并将每个页面视为一个文档)后,您可以使用其中一种机器学习框架来试验各种算法,例如WEKA

有关如何处理文本文档并将其加载到 WEKA 的入门知识可以在 here 中找到。 。加载数据后,您可以使用该框架来试验各种分类算法,例如朴素贝叶斯、SVM 等。找到最适合您需求的方法后,您可以导出结果模型并通过 WEKA 的 Java API 使用它。

关于machine-learning - 优化网络爬虫的关键字权重,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22643005/

相关文章:

r - 我应该如何处理多项选择/响应(检查所有适用的)数据?

javascript - "best"如何让网页访问者构建数学或统计工具?

c# - RavenDB 为日历应用程序建模

uml - UML 语义变化是必要的吗?

python - 使用 Python 实现计算机视觉深度学习中的感知器算法

python - 分类指标无法处理二进制目标和连续目标的混合

machine-learning - 为什么要对卷积神经网络进行预训练

python - OneHotEncoder categorical_features 已弃用,如何转换特定列

python - 在我们可以使用列变量进行建模之前,列的方差有多大是可以接受的?

UML 状态机,本地转换与外部转换