这是我想要在线搜索但不知道它叫什么的情况。
我在文本文件中有一组职位描述,有些只有一两句长,大多数是一段或两段。我想写一个脚本,给定一套规则,当它找到我想要的工作描述时会通知我。
例如,假设我正在寻找PHP编程工作,但不是全职工作而不是设计职位。所以我的“规则手册”可能是:
want: PHP
want: web programming
want: telecommuting
do not want: designing
do not want: full-time position
我可以使用什么方法将这些文件分类为“传递”(符合我要查找的描述)和“失败”(描述不相关)?我正在考虑的一些想法:
designing
,所以当它确实存在时它是不相关的!”designing
和design
应该以相同的方式处理,以及单词拼写错误,例如programing
。有谁知道这个“过滤过程”被调用了什么,和/或有任何关于如何实现这个目标的建议或方法?
答案 0 :(得分:1)
您基本上有文本分类或文档分类问题。这是二进制分类的特定情况,它本身就是监督学习的特定情况。这是一个研究得很好的问题,有很多工具可以做到。基本上你给学习或训练过程提供了一套好的文件和不良文件,这些过程找到与正面和负面文件强烈相关的单词,并输出一个能够将看不见的文件分类为正面或不正面的功能。朴素贝叶斯是这类任务最简单的学习算法,它会做得很好。 Logistic回归和支持向量机等有更好的算法可能会有所改善,但它们更复杂。
要确定哪些变体单词实际上彼此等同,您需要进行某种词干。 Porter stemmer是一个常见的选择。