【自然语言处理】实验一:基于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)

截图:


总结

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

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

相关推荐
世人万千丶1 天前
Flutter 框架跨平台鸿蒙开发 - 恐惧清单应用
学习·flutter·华为·开源·harmonyos·鸿蒙
美酒没故事°1 天前
Open WebUI安装指南。搭建自己的自托管 AI 平台
人工智能·windows·ai
yuzhuanhei1 天前
Visual Studio 配置C++opencv
c++·学习·visual studio
云烟成雨TD1 天前
Spring AI Alibaba 1.x 系列【6】ReactAgent 同步执行 & 流式执行
java·人工智能·spring
Csvn1 天前
🌟 LangChain 30 天保姆级教程 · Day 13|OutputParser 进阶!让 AI 输出自动转为结构化对象,并支持自动重试!
python·langchain
AI攻城狮1 天前
用 Obsidian CLI + LLM 构建本地 RAG:让你的笔记真正「活」起来
人工智能·云原生·aigc
鸿乃江边鸟1 天前
Nanobot 从onboard启动命令来看个人助理Agent的实现
人工智能·ai
lpfasd1231 天前
基于Cloudflare生态的应用部署与开发全解
人工智能·agent·cloudflare
俞凡1 天前
DevOps 2.0:智能体如何接管故障修复和基础设施维护
人工智能
一轮弯弯的明月1 天前
贝尔数求集合划分方案总数
java·笔记·蓝桥杯·学习心得