如何从这些句子中提取信息

时间:2014-07-24 22:47:43

标签: nlp nltk stanford-nlp opennlp information-extraction

我得到了如下句子的列表:

他们是我从职位描述中提取的一些句子。我想提取以下信息:学位类型,专业,必需或首选。 有

结果应该是这样的: {    学位:学士,    专业:计算机科学,    必需:是的 }

这些句子中没有明显的规则。我怎样才能实现这个目标?


Bachelor ’ s degree in Computer Science or equivalent
Pursuing B.S. or advanced degree in computer science or related technical/engineering degree .
Bachelor 's Degree in Computer Science or equivalent experience
Youre educated ( BS/MS in Computer Science or other technical degree ) .
•BS in Computer Science , Digital Media or similar technical degree with 3 + years of experience
· Bachelors degree .
Bachelor 's degree in computer science , design or related field
Ability to absorb , master and leverage emerging technologies
BA/BS degree or equivalent practical experience
Education Required : Bachelors Degree
• Bachelor 's degree in related field , OR four ( 4 ) years of experience in a directly related field .

3 个答案:

答案 0 :(得分:1)

因此,您正在处理非结构化数据,我希望使用以下步骤,您可以达到相当高的准确度。

  1. 创建一个查找表,其中列出了您在每个所需变量(如学位,教育等)中可能出现的所有关键字。您需要挖掘各种在线资源来获取这些关键字。
  2. 将您的数据拆分为句子或逐行,并对列表进行迭代。
  3. 迭代时,在查找表中查找关键词并找到有用的行。
  4. 创建分层规则以准确提取变量,并将其附加到结果中。
  5. 分层规则概述:

    1. 例如,学位名称将完全按字母顺序排列。
    2. 经验将是字母数字。
    3. 追求的术语将指向变量名称Major
    4. 尝试在每次代码迭代时修改这些规则。继续添加新规则。 这只是基本方法,我相信如果您对方法进行一些迭代,您将能够提取信息。

答案 1 :(得分:0)

您可能需要收集专业和学位列表(例如:http://en.wikipedia.org/wiki/List_of_tagged_degrees)以提取学位和专业。然后基于一些一般规则(或设计分类器决定“必需”或“不需要”)。

答案 2 :(得分:0)

这样做的另一个建议是:

  • 首先:清理数据 - 删除所有标点符号,停止 单词,不需要的符号等。
  • 第二:列出对此感兴趣的关键词。
  • 第三:将数据拆分为单词(nltk中的word_tokenize)
  • 第四:制作你正在寻找的价值词典。
  • 第五:在阅读单词列表匹配时在字典中查找 它与您的关键字列表,然后将其附加到新的输出 字典。

希望这有帮助。