【问题标题】:Machine Learning/Artificial Intelligence - Classify column based on the value / pattern机器学习/人工智能 - 根据值/模式对列进行分类
【发布时间】:2016-05-31 18:17:57
【问题描述】:

我一直在尝试一些框架和算法,但我找不到一个能做我想做的事——即根据值对数据列进行分类。

我尝试使用贝叶斯算法,但它不是很精确,因为我不能期望正在搜索的数据在训练集中 - 但我可以期望模式在训练中。

我没有机器学习/人工智能方面的背景,但在真正深入实施之前,我一直在寻找一些工作示例。

我构建了一个较小的 ARFF 来举例说明。也尝试了很多 Weka 分类算法,但都没有给我很好的结果。

@relation recommend

@attribute class {name,email,taxid,phone}
@attribute text String

@data
name,'Erik Kolh'
name,'Eric Candid'
name,'Allan Pavinan'
name,'Jubaru Guttenberg'
name,'Barabara Bere'
name,'Chuck Azul'
email,'erik@gmail.com'
email,'steven@spielberg.com'
email,'dogs@cats.com'
taxid,'123611216'
taxid,'123545413'
taxid,'562321677'
taxid,'671312678'
taxid,'123123216'
phone,'438-597-7427'
phone,'478-711-7678'
phone,'321-651-5468'

我的期望是训练一个像上面这样的庞大数据集并根据模式获得推荐,例如:

joao@bing.com -> email
Joao Vitor -> name
400-123-5519 -> phone

您能否建议任何算法、示例或想法进行研究? 我找不到合适的,也许只是缺乏词汇。

谢谢!

【问题讨论】:

  • 写几个正则表达式有什么问题?
  • 嗯,对于给定的数据集,这是可能的,但我所拥有的场景比这更复杂。例如,我有一个名为 Name 的字段和另一个名为 Company Name 的字段,我想获得有关“Stack Overflow Inc”作为公司和“Joao Vitor”作为名称的建议。
  • @JoaoVitor 你得到最终解决方案了吗?我面临着完全相同的问题。需要帮助。

标签: algorithm machine-learning artificial-intelligence weka


【解决方案1】:

您正在尝试做的事情称为命名实体识别 (NER)。 Weka 在这里很可能不是真正的帮助。图书馆槌 (http://mallet.cs.umass.edu) 可能是一个不错的选择。我会推荐一种基于条件随机场 (CRF) 的方法。

如果您想继续使用 weka,则需要更改您的功能空间。然后朴素贝叶斯将对您提供的数据进行处理 例如。为

添加功能
  • 单词是否只有字符
  • 是否为字母数字
  • 是否为数值数据
  • 数字的数量,
  • 是否开始被captilized
  • ...(发挥创意)

【讨论】:

  • 我绝对不想和Weka呆在一起,提到它是因为我试图用它取得好成绩,但没有成功。我正在看推荐的工具/算法,谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-08-19
  • 1970-01-01
  • 2023-01-03
  • 2019-05-23
  • 2020-06-20
  • 1970-01-01
  • 2018-08-15
相关资源
最近更新 更多