【问题标题】:How to find whether a url is of ecommerce or non ecommerce website, programatically?如何以编程方式查找网址是电子商务网站还是非电子商务网站?
【发布时间】:2012-02-16 05:32:48
【问题描述】:

在一个项目中,有一个模块接受一个 URL 并确定它是“电子商务”还是“非电子商务”网站。

我尝试了以下方法:

  1. 使用 Apache mahout,分类:URL ---> 获取 html 转储 ---> 预处理 html 转储 a) 删除所有 html 标签

    b) 删除停用词(又名常用词),如 CDATA、href、value 和、of、等。

    c) 训练模型,然后对其进行测试。

以下我用于训练的参数

bin/mahout trainclassifier \ -i training-data \ -o bayes-model \ > -type bayes -ng 1

测试:

/bin/mahout testclassifier \
  -d test-data \
  -m bayes-model \
  -type bayes -source hdfs -ng 1 -method sequential

准确度我得到了 73%,而 cbayes 算法得到了 52%。

我正在考虑通过提取电子商务网站中的信息来改进预处理阶段,例如“结帐按钮”、“支付宝链接”、“价格/美元符号”、“货到付款”、“30 天”等文本保证”等。

关于如何提取此信息或以任何其他方式将网站预测为电子商务或非电子商务的任何建议?

【问题讨论】:

  • 请在下一次更仔细地格式化您的问题。顺便说一句,70% 的准确率对于开始来说是相当不错的。

标签: java machine-learning classification mahout


【解决方案1】:

我很惊讶您仅使用普通的 html 提取和贝叶斯分类器就能获得如此高的准确度。

但您似乎在结帐按钮和价格等功能上走在了正确的轨道上。

这是我昨天在阅读有关 Yandex 时发现的一篇论文:

"To find out or to buy? Product review vs. Web shop classifier"

这是关于如何区分这两个网站以及他们使用的一些技术。他们还使用 SVM 代替朴素贝叶斯。

【讨论】:

  • 谢谢托马斯。 Paper 的目标是与我们类似的用例。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-06-11
  • 1970-01-01
  • 2023-03-28
  • 1970-01-01
  • 1970-01-01
  • 2011-10-17
  • 1970-01-01
相关资源
最近更新 更多