machine-learning - 使用基于规则的方法而不是适当的算法进行二元分类

标签 machine-learning rules classification bayesian

问题陈述有点像这样:

Given a website, we have to classify it into one of the two predefined classes (say whether its an e-commerce website or not?)

我们已经为此尝试了朴素贝叶斯算法,其中包括多种预处理技术(停用词删除、词干提取等)和适当的功能。

我们希望将准确度提高到 90 或更接近,但我们无法从这种方法中获得这一结果。

这里的问题是,在手动评估准确性时,我们会在网页上寻找一些标识符(例如结账按钮、商店/购物、 Paypal 等等),这些标识符有时会在我们的算法中丢失。

我们在想,如果我们对这些标识符太确定,为什么我们不创建一个基于规则的分类器,我们将根据一组规则对页面进行分类(将被编写为基于某些优先级)。

例如如果它包含商店/购物并具有结账按钮,那么它是一个电子商务页面。 还有许多类似的规则,按一定的优先顺序排列。

根据一些规则,我们也会访问网站的其他页面(目前,我们仅访问主页,这也是精度不高的原因)。

基于规则的方法我们将面临哪些潜在问题?或者这对我们的用例来说会更好?

使用复杂的算法(例如 FOIL、AQ 等)创建这些规则是个好主意吗?

最佳答案

The issue here is, while evaluating the accuracy manually, we look for a few identifiers on web page (e.g. Checkout button, Shop/Shopping,paypal and many more) which are sometimes missed in our algorithms.

那么为什么不将此信息包含在您的分类方案中呢?在 html 中找到付款/结帐按钮并不难,因此这些按钮的存在绝对应该是功能。一个好的分类器依赖于两件事——好的数据和好的特征。确保两者都有!

如果您必须执行基于规则的分类器,那么可以将其或多或少地视为决策树。如果您使用函数式编程语言,这很容易做到 - 基本上只是递归,直到到达端点,此时您会得到一个分类。

关于machine-learning - 使用基于规则的方法而不是适当的算法进行二元分类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10503816/

相关文章:

python - 如何在 Panda DataFrame 中拟合预测值

java - 客户端和服务器端规则引擎?

c++ - C++代码的规则引擎

exception - 违反业务规则是否应该引发异常?

python - 使用预训练的 Inception_v4 模型

python - 解码Jpeg/内容: 0 'refers to a tensor that does not exist

machine-learning - 基于配置文件对列表进行排序的推荐规则

machine-learning - 机器学习中的成本函数是如何确定的?

python - 10折交叉验证python单变量回归

algorithm - 多维数据分类