python获取文本,python怎么提取信息

  python获取文本,python怎么提取信息

  1、信息提取

  首先通过句子分割器将文档的原文分割成句子,然后通过标记评估器将每个句子进一步分割成单词。其次,标注每句话的词性。以nltk中的默认工具为例,连接句子切分器、分词器和词性标注器。

  defie _预处理(文档):

  #nltk默认句子分段器

  sentences=nltk . sent _ token ize(document)

  #nltk默认断字符

  sentences=[nltk . word _ token ize(sent)for sent sentings]

  #nltk默认词性标签

  sentings=[nltk . pos _ tag(sent)for sentings]2、词块划分

  词块划分是实体识别的基础技术,对多个词进行顺序划分和标记。

  例如名词短语分块(名词短语分块)

  使用正则表达式定义语法来划分名词短语块。

  3、开发和评估词块划分器

  分区器可以使用evaluate()方法来评估分区器的性能。

  以下是使用一元标记构建单词块分隔符的研究。然而,不是确定每个单词的正确单词标记,而是根据每个单词的单词标记来确定正确单词块标记。

  #使用一元注释器构建块分隔符。根据每个单词的词性标注,尽量确定正确的组块标注。

  classunigrachunker(nltk。ChunkParserI):

  #构造函数

  def__init__(self,train_sents):

  #将训练数据转换成适合训练标注器的形式。tree2conlltags()方法将每个块树映射到一个三元组列表(单词、标签、块)。

  train _ data=[(t,c)forw,t,cinnltk . chunk . tree 2 conltags(sent)]

  forsentintrain_sents]

  #训练一元阻挡者

  #self.tagger=nltk。UnigramTagger(train_data)

  #训练二进制拦截器

  self.tagger=nltk。BigramTagger(train_data)

  #句子是有标记的句子。

  defparse(自我,句子):

  #提取词性标记

  pos_tags=[posfor(word,pos)insentence]

  #使用注释器为词性标签标记IOB块

  tagged _ pos _ tags=self . tagger . tag(pos _ tags)

  #提取块标记

  chunktags=[chunktagfor(pos,chunktag)intagged_pos_tags]

  #将组块标记与原句结合

  conlltags=[(word,pos,chunktag)for((word,pos),chunktag)

  inzip(句子、组块标签)]

  #转换为块树

  Returnnltk。大块。ConllTags2Tree (ConllTags)以上是python提取文本信息的方法。希望能帮到你。更多的知识可以在流行的IT软件开发工作室获得。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: