【自然语言处理】实验一:基于NLP工具的中文分词

目录

前言

[1. 导入jieba分词器](#1. 导入jieba分词器)

[2. 用精确模式进行中文分词](#2. 用精确模式进行中文分词)

[3. 用全模式进行中文分词](#3. 用全模式进行中文分词)

[4. 用搜索引擎进行中文分词](#4. 用搜索引擎进行中文分词)

[5. 利用 lcut返回结果列表(list)](#5. 利用 lcut返回结果列表(list))

总结


🌈嗨!我是Filotimo__🌈。很高兴与大家相识,希望我的博客能对你有所帮助。

💡本文由Filotimo__✍️原创,首发于CSDN📚。

📣如需转载,请事先与我联系以获得授权⚠️。

🎁欢迎大家给我点赞👍、收藏⭐️,并在留言区📝与我互动,这些都是我前进的动力!

🌟我的格言:森林草木都有自己认为对的角度🌟。

前言

jieba分词库提供了三种分词模式:精确模式、全模式和搜索引擎模式。

这里是三种分词模式的特点:

1.精确模式:试图将句于最精确地切开,精确分词是默认分词;

2.全模式:把句子中所有的可能是词语的都扫描出来,速度非常快,但不能解决歧义;

  1. 搜索引擎模式:在精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引警分词。

实验步骤:

1. 导入jieba分词器

代码:

python 复制代码
pip install jieba -i https://pypi.tuna.tsinghua.edu.cn/simple
python 复制代码
import jieba
sentence="""现如今,人工智能已经成为大众耳熟能详的词汇,而自然语言处理却很少有人了解,
自然语言处理属于人工智能的一个子领域,它对计算机和人类的交互方式有许多重要的影响。"""

截图:

2. 用精确模式进行中文分词

精确模式是默认的分词模式,它试图将文本精确地切分成词语,适用于文本分析和挖掘等任务。在精确模式下,jieba分词库会对待分的句子进行全词匹配,找出所有可能的词语,然后依据词典中的词语频率计算出最可能的切分结果。

精确模式的调用方法是:jieba.cut(text, cut_all=False),其中 cut_all=False 表示精确模式。

代码:

python 复制代码
seg_list1=jieba.cut(sentence,cut_all=False)
print("精确模式:"+"/".join(seg_list1))
print("cut分词结果的类型为:",type(seg_list1))

截图:

3. 用全模式进行中文分词

全模式是一种比较宽松的分词模式,它会将文本中所有可能的词语都分出来,适用于一些对速度要求比较高的场景。在全模式下,jieba分词库会对待分的句子进行正向最大匹配,即从前往后扫描文本,找到最长的可能词语,然后将其切分出来,再从新的位置开始继续扫描。

全模式的调用方法是:jieba.cut(text, cut_all=True),其中 cut_all=True 表示全模式。

代码:

python 复制代码
seg_list2=jieba.cut(sentence,cut_all=True)
print("全模式:"+"/".join(seg_list2))

截图:

4. 用搜索引擎进行中文分词

搜索引擎模式是一种更加智能的分词模式,它在精确模式的基础上,对长词再次进行切分,适用于搜索引擎等场景。在搜索引擎模式下,jieba分词库会使用最大概率法分出一些比较长的词语,然后在这些长词中再次使用全模式进行切分,最终得到最可能的切分结果。

搜索引擎模式的调用方法是:jieba.cut_for_search(text)

代码:

python 复制代码
seg_list3=jieba.cut_for_search(sentence)
print("搜索引擎模式:"+"/".join(seg_list3))

截图:

5. 利用 lcut返回结果列表(list)

jieba.lcut 是 jieba 库中用于中文分词的一个方法,jieba 是一个常用的中文分词工具,能将中文文本切分成词汇,这个方法特别适用于需要得到分词列表的场景。

代码:

python 复制代码
seg_list4=jieba.lcut(sentence)
print("lcut切分结果(列表形式):",seg_list4)

截图:


总结

分词是中文处理中的关键步骤,它将连续的文本划分为有意义的词汇单元,为后续的文本分析和处理奠定了基础。

不同的工具选择和参数调整对分词效果有显著影响,我们要选择合适的工具去进行分词处理。

相关推荐
Kratzdisteln3 分钟前
【MVCD】PPT提纲汇总
经验分享·python
chao_66666614 分钟前
解决 PowerShell 中文乱码问题
网络·学习·powershell
意疏23 分钟前
节点小宝4.0 正式发布:一键直达,重新定义远程控制!
人工智能
喵了meme25 分钟前
Linux学习日记24:Linux网络编程基础
linux·网络·学习
BullSmall27 分钟前
《庄子》导读
学习
HL_风神31 分钟前
设计原则之迪米特
c++·学习·设计模式
一个无名的炼丹师32 分钟前
GraphRAG深度解析:从原理到实战,重塑RAG检索增强生成的未来
人工智能·python·rag
HL_风神34 分钟前
设计原则之合成复用
c++·学习·设计模式
Yan-英杰1 小时前
BoostKit OmniAdaptor 源码深度解析
网络·人工智能·网络协议·tcp/ip·http
用户8356290780511 小时前
用Python轻松管理Word页脚:批量处理与多节文档技巧
后端·python