美文网首页
分词练习

分词练习

作者: 嚯嘻嘻哈哈 | 来源:发表于2018-05-28 11:53 被阅读0次

一、实验目标

尝试使用jieba对《龙族》进行分词,并进行分词效果比较分析

二、使用工具

在线分词工具、jieba

三、分词步骤

1.代码演示:

# encoding:utf-8

from __future__import print_function, unicode_literals

import sys

sys.path.append("../")

import jieba

jieba.load_userdict("venv/userdict.txt")

import jieba.analyse

import jieba.possegas pseg

jieba.add_word('楚子航')

jieba.add_word('尼伯龙根')

jieba.del_word('废柴')

test_sent =open('venv/dragon.txt','r', encoding='utf8' ).read()

words = jieba.cut(test_sent)

print('/'.join(words))

print("="*40)

words = jieba.cut(test_sent, cut_all=True)

print('/'.join(words))

print("="*40)

result = pseg.cut(test_sent)

for win result:

print(w.word, "/", w.flag, ", ", end=' ')

print("\n" +"="*40)

list = jieba.analyse.extract_tags(test_sent, topK=20, withWeight=False, allowPOS=())

for keysin list:

print(keys)

2.分词效果:

初学阶段使用网络教程的示例代码:

# encoding=utf-8

import jieba

seg_list = jieba.cut("我来到北京清华大学", cut_all=True)

print("Full Mode: " +"/ ".join(seg_list))# 全模式

seg_list = jieba.cut("我来到北京清华大学", cut_all=False)

print("Default Mode: " +"/ ".join(seg_list))# 精确模式

seg_list = jieba.cut("他来到了网易杭研大厦")# 默认是精确模式

print(", ".join(seg_list))

seg_list = jieba.cut_for_search("小明硕士毕业于中国科学院计算所,后在日本京都大学深造")# 搜索引擎模式

print(", ".join(seg_list))

经尝试,得到类似结果,并将其运用到自己的分词中

四种不同模式的分词效果

3.自定义词典:(省略了词频和词性)

自定义词典词语表

使用add_word(word, freq=None, tag=None)和del_word(word)可在程序中动态修改词典

修改前

jieba.add_word('楚子航')

jieba.add_word('尼伯龙根')

jieba.del_word('我们')

jieba.del_word('没有')

jieba.del_word('什么')

jieba.del_word('自己')

jieba.del_word('一个')

jieba.del_word('他们')

jieba.del_word('知道')

jieba.del_word('像是')

修改后

4.关键词提取:

import jieba.analyse

list = jieba.analyse.extract_tags(test_sent, topK=20, withWeight=False, allowPOS=())

for keys in list:

print(keys)

test_sent 为待提取的文本;topK 为返回几个 TF/IDF 权重最大的关键词,选择默认值 20

withWeight 为是否一并返回关键词权重值,选择默认值False;allowPOS 仅包括指定词性的词,默认值为空,即不筛选

关键词提取(部分)

5.词性标注

jieba.posseg.POSTokenizer(tokenizer=None)新建自定义分词器,tokenizer参数可指定内部使用的jieba.Tokenizer分词器。jieba.posseg.dt为默认词性标注分词器

使用jieba.posseg来进行词性标注

import jieba.posseg as pseg

result = pseg.cut(test_sent)

for w in result:

print(w.word, "/", w.flag, ", ", end=' ')

print("\n" +"="*40)

运行部分结果:

部分结果展示

四、问题分析

部分关键词提取仍存在语气词等,因处理文档较大,需要自定义去除很多字段

结果存在欠缺

因为没有设置编码格式,调用外部文档出现问题。

import jieba

jieba.load_userdict("venv/userdict.txt")

test_sent =open('venv/dragon.txt','r', encoding='utf8' ).read()

五、分词工具包

来源百度
来源百度

六、分词工具对比

使用在线分词工具结果

在线分词工具

使用jieba自行编程来进行分词

运行结果

相关文章

  • 分词练习1——分词工具包

    关于分词工具包的体验:分词练习2——分词体验 现有的分词工具包 (1)NLPIR NLPIR汉语分词系统,又名IC...

  • 分词练习

    使用ICTCLAS(NLPIR)在线分词工具和jieba分词组件进行分词练习。 一. ICTCLAS 1.简介 汉...

  • 分词练习2——分词体验

    接分词练习1——分词工具包 分词效果尝试 接下来我将体验NLPIR和jieba分词的效果,其中,NLPIR使用在线...

  • 分词练习

    一、实验目标 尝试使用jieba对《龙族》进行分词,并进行分词效果比较分析 二、使用工具 在线分词工具、jieba...

  • 分词练习

    1.常用的分词工具包 perminusminusStanford 汉语分词工具哈工大语言云ICTCLAS——Ans...

  • 分词练习

    在本次分词练习中,使用文本如下: 菊外人指不知道王菊是谁,也没看过创造101,但是已经被给王菊投票相关信息包围的人...

  • 分词练习

    一、使用jieba进行分词1. 中文分词(Chinese Word Segmentation)指将一个汉字序列切分...

  • 分词练习

    一、jieba分词1.在cmd中安装结巴分词 python setup.py install 并在python环境...

  • 分词练习

    1、现有的分词工具中科院计算所NLPIRansj分词器哈工大的LTP清华大学THULAC斯坦福分词器Hanlp分词...

  • jieba分词练习

    实验内容: 使用Python分词模块:Jieba,对四川大学公共管理学院2015-2018年308条新闻内容进行分...

网友评论

      本文标题:分词练习

      本文链接:https://www.haomeiwen.com/subject/iqiwjftx.html