【NLP】文本处理的基本方法【jieba分词、命名实体、词性标注】

news2024/9/20 7:52:43

文章目录

  • 1、本章目标
  • 2、什么是分词
  • 3、jieba的使用
    • 3.1、精确模式分词
    • 3.2、全模式分词
    • 3.3、搜索引擎模式分词
    • 3.4、中文繁体分词
    • 3.5、使用用户自定义词典
  • 4、什么是命名实体识别
  • 5、什么是词性标注
  • 6、小结
  • 7、jieba词性对照表⭐

🍃作者介绍:双非本科大三网络工程专业在读,阿里云专家博主,专注于Java领域学习,擅长web应用开发、数据结构和算法,初步涉猎人工智能和前端开发。
🦅个人主页:@逐梦苍穹
📕所属专栏:人工智能
🌻gitee地址:xzl的人工智能代码仓库
✈ 您的一键三连,是我创作的最大动力🌹

1、本章目标

  • 了解什么是分词, 词性标注, 命名实体识别及其它们的作用.
  • 掌握分词, 词性标注, 命名实体识别流行工具的使用方法.

2、什么是分词

分词就是将连续的字序列按照一定的规范重新组合成词序列的过程。
我们知道,在英文的行文中,单词之间是以空格作为自然分界符的,
而中文只是字、句和段能通过明显的分界符来简单划界,唯独词没有一个形式上的分界符,
分词过程就是找到这样分界符的过程.
分词的作用:

词作为语言语义理解的最小单元, 是人类理解文本语言的基础
因此也是AI解决NLP领域高阶任务,如自动问答、机器翻译、文本生成的重要基础环节。

流行中文分词工具jieba:

愿景:"结巴"中文分词,做最好的 Python 中文分词组件

jieba的特性:

  1. 支持多种分词模式
    1. 精确模式
    2. 全模式
    3. 搜索引擎模式
  2. 支持中文繁体分词
  3. 支持用户自定义词典

3、jieba的使用

3.1、精确模式分词

试图将句子最精确地切开,适合文本分析:

# -*- coding: utf-8 -*-
# @Author: CSDN@逐梦苍穹
# @Time: 2024/8/9 2:09
import jieba

content = "无线电法国别研究"
jieba.cut(content, cut_all=False)  # cut_all默认为False

# 将返回一个生成器对象: <generator object Tokenizer.cut at 0x7f065c19e318>

# 若需直接返回列表内容, 使用jieba.lcut即可
words = jieba.lcut(content, cut_all=False)
print(words)  # 结果: ['无线电', '法国', '别', '研究']

输出:
image.png

3.2、全模式分词

把句子中所有的可以成词的词语都扫描出来,速度非常快,但是不能消除歧义
代码和上面的精确模式类似,只不过"cut_all=True":
image.png
输出:
image.png

3.3、搜索引擎模式分词

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

# -*- coding: utf-8 -*-
# @Author: CSDN@逐梦苍穹
# @Time: 2024/8/9 2:14
import jieba

content = "无线电法国别研究"
jieba.cut_for_search(content)

# 将返回一个生成器对象: <generator object Tokenizer.cut at 0x7f065c19e318>

# 若需直接返回列表内容, 使用jieba.lcut_for_search即可
words = jieba.lcut_for_search(content)
# 对'无线电'等较长词汇都进行了再次分词.
print(words)  # ['无线', '无线电', '法国', '别', '研究']

输出:
image.png

3.4、中文繁体分词

针对中国香港、中国台湾地区的繁体文本进行分词:

# -*- coding: utf-8 -*-
# @Author: CSDN@逐梦苍穹
# @Time: 2024/8/9 2:16
import jieba

content = "煩惱即是菩提,我暫且不提"
words = jieba.lcut(content)
print(words)  # ['煩惱', '即', '是', '菩提', ',', '我', '暫且', '不', '提']

输出:
image.png

3.5、使用用户自定义词典

添加自定义词典后,jieba能够准确识别词典中出现的词汇,提升整体的识别准确率
词典格式:

  1. 每一行分三部分:词语、词频(可省略)、词性(可省略),用空格隔开,顺序不可颠倒
  2. 词典样式如下, 具体词性含义请参照文末的 jieba词性对照表,将该词典存为userdict.txt,方便之后加载使用。

userdict.txt:
image.png
解释如下:
image.png
代码:

# -*- coding: utf-8 -*-
# @Author: CSDN@逐梦苍穹
# @Time: 2024/8/9 2:29
import jieba

words = jieba.lcut("八一双鹿更名为八一南昌篮球队!")
# 没有使用用户自定义词典前的结果:
print(words)  # ['八', '一双', '鹿', '更名', '为', '八一', '南昌', '篮球队', '!']

jieba.load_userdict("userdict.txt")
words = jieba.lcut("八一双鹿更名为八一南昌篮球队!")
# 使用了用户自定义词典后的结果:
print(words)  # ['八一双鹿', '更名', '为', '八一', '南昌', '篮球队', '!']

运行结果:
image.png

4、什么是命名实体识别

命名实体:通常我们将人名、地名、机构名等专有名词统称命名实体.

如:周杰伦、黑山县、孔子学院、24辊方钢矫直机.

顾名思义:命名实体识别(Named Entity Recognition,简称NER)就是识别出一段文本中可能存在的命名实体
举个例子:

鲁迅, 浙江绍兴人, 五四新文化运动的重要参与者, 代表作朝花夕拾.
==>
鲁迅(人名) / 浙江绍兴(地名)人 / 五四新文化运动(专有名词) / 重要参与者 / 代表作 / 朝花夕拾(专有名词)


命名实体识别的作用:

同词汇一样,命名实体也是人类理解文本的基础单元,
因此也是AI解决NLP领域高阶任务的重要基础环节。

5、什么是词性标注

词性:语言中对词的一种分类方法,以语法特征为主要依据、兼顾词汇意义对词进行划分的结果

常见的词性有14种,如:名词、动词、形容词等

顾名思义:词性标注(Part-Of-Speech tagging, 简称POS)就是标注出一段文本中每个词汇的词性
举个例子:

我爱自然语言处理
==>
我/rr, 爱/v, 自然语言/n, 处理/vn

解释:

  1. rr: 人称代词
  2. v: 动词
  3. n: 名词
  4. vn: 动名词

词性标注的作用: 词性标注以分词为基础,是对文本语言的另一个角度的理解,因此也常常成为AI解决NLP领域高阶任务的重要基础环节.
使用jieba进行中文词性标注:

# -*- coding: utf-8 -*-
# @Author: CSDN@逐梦苍穹
# @Time: 2024/8/9 2:38
import jieba.posseg as pseg  # 专门用于分词和词性标注

# 结果返回一个装有pair元组的列表, 每个pair元组中分别是词汇及其对应的词性, 具体词性含义请参照[附录: jieba词性对照表]()
words = pseg.lcut("我爱北京天安门")
print(words)  # [pair('我', 'r'), pair('爱', 'v'), pair('北京', 'ns'), pair('天安门', 'ns')]

输出:
image.png

6、小结

  1. 学习了什么是分词:
    1. 分词就是将连续的字序列按照一定的规范重新组合成词序列的过程。我们知道,在英文的行文中,单词之间是以空格作为自然分界符的,而中文只是字、句和段能通过明显的分界符来简单划界,唯独词没有一个形式上的分界符, 分词过程就是找到这样分界符的过程.
  2. 学习了分词的作用:
    1. 词作为语言语义理解的最小单元, 是人类理解文本语言的基础. 因此也是AI解决NLP领域高阶任务, 如自动问答, 机器翻译, 文本生成的重要基础环节.
  3. 学习了流行中文分词工具jieba:
    1. 支持多种分词模式:精确模式、全模式、搜索引擎模式
    2. 支持中文繁体分词
    3. 支持用户自定义词典
  4. 学习了jieba工具的安装和分词使用
  5. 学习了什么是命名实体识别:
    1. 命名实体:通常我们将人名、地名、机构名等专有名词统称命名实体。
    2. 顾名思义,命名实体识别(Named Entity Recognition,简称NER)就是识别出一段文本中可能存在的命名实体。
  6. 命名实体识别的作用:
    1. 同词汇一样,命名实体也是人类理解文本的基础单元,因此是AI解决NLP领域高阶任务的重要基础环节
  7. 学习了什么是词性标注:
    1. 词性:语言中对词的一种分类方法,以语法特征为主要依据、兼顾词汇意义对词进行划分的结果, 常见的词性有14种,如:名词、动词、形容词等
    2. 顾名思义,词性标注(Part-Of-Speech tagging, 简称POS)就是标注出一段文本中每个词汇的词性
  8. 学习了词性标注的作用:
    1. 词性标注以分词为基础,是对文本语言的另一个角度的理解,因此也常常成为AI解决NLP领域高阶任务的重要基础环节
  9. 学习了使用jieba进行词性标注

7、jieba词性对照表⭐

- a 形容词  
    - ad 副形词  
    - ag 形容词性语素  
    - an 名形词  
- b 区别词  
- c 连词  
- d 副词  
    - df   
    - dg 副语素  
- e 叹词  
- f 方位词  
- g 语素  
- h 前接成分  
- i 成语 
- j 简称略称  
- k 后接成分  
- l 习用语  
- m 数词  
    - mg 
    - mq 数量词  
- n 名词  
    - ng 名词性语素  
    - nr 人名  
    - nrfg    
    - nrt  
    - ns 地名  
    - nt 机构团体名  
    - nz 其他专名  
- o 拟声词  
- p 介词  
- q 量词  
- r 代词  
    - rg 代词性语素  
    - rr 人称代词  
    - rz 指示代词  
- s 处所词  
- t 时间词  
    - tg 时语素  
- u 助词  
    - ud 结构助词 得
    - ug 时态助词
    - uj 结构助词 的
    - ul 时态助词 了
    - uv 结构助词 地
    - uz 时态助词 着
- v 动词  
    - vd 副动词
    - vg 动词性语素  
    - vi 不及物动词  
    - vn 名动词  
    - vq 
- x 非语素词  
- y 语气词  
- z 状态词  
    - zg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1994907.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

打卡第34天------动态规划-01背包

我目前刷leetcode上的题的时候&#xff0c;不仅每天按照代码随想录的算法训练营的进度来刷题&#xff0c;也会自己开始在leetcode上刷题了&#xff0c;有些简单的题目&#xff0c;不用看题解就能做出来了&#xff0c;这也是一种进步呀。希望可以尽快找到下家工作单位&#xff0…

前端全屏错误窗错解决方案

如果你的项目全屏错误窗报错&#xff0c;可以在vue.config.js中进行设置 const { defineConfig } require(vue/cli-service) module.exports defineConfig({transpileDependencies: true,lintOnSave: false,devServer: {client: {overlay: false,},} })

doxygen制作接口文档

系列文章目录 文章目录 系列文章目录前言一、下载二、安装三、代码注释四、使用doxygen生成文档 前言 每次手动写接口文档太痛苦了&#xff0c;现在福利来了–doxygen Doxygen是软件开发中广泛使用的文档生成器工具。它自动从源代码注释生成文档&#xff0c;解析有关类、函数和…

上播狂卖下播全退!用户抛弃直播间,网红们疯狂刷单注水……

最近&#xff0c;直播带货行业瓜好像多的有点吃不动了&#xff01;‍ 头部的一哥二哥三哥们&#xff0c;卖课的卖课、分家的分家&#xff0c;吵架的吵架……好不热闹。 就好比国民女婿董宇辉&#xff0c;在和东方甄选、俞敏洪周旋了小半年后&#xff0c;终于还是从打工人变成…

【送激活码,免费升级】GuitarPro发布8.1.3新版 guitar pro最新版中文官网下载 guitar pro激活码

打谱神器 Guitar Pro 迎来了 2024 最新版&#xff01;所有购买过 Guitar Pro 8 的用户&#xff0c;现在就可以免费升级 V8.1.3 了&#xff0c;您可以通过软件内的升级提醒进行升级&#xff0c;或者直接下载下面的新包覆盖安装。 Guitar Pro8.13最新安装包下载&#xff08;Win&…

【JVM】深入JIT优化机制

1.JIT优化技术 在将高级语言转化为计算机可识别的机器语言时&#xff0c;常用的两种方式是编译和解释。Java在编译过程中&#xff0c;首先将代码编译成字节码。但是&#xff0c;字节码并不能直接在机器上执行。因此&#xff0c;JVM中内置了解释器&#xff08;Interpreter&…

汇编语言1 - 什么是汇编语言?

1. 什么是汇编语言&#xff1f; 1.1. 汇编语言的定义1.2. 汇编语言与机器语言 1.2.1. 相同点1.2.2. 不同点 2. 汇编语言的主要特点3. 汇编语言的基本组成4. 汇编器 4.1. 主要工作流程4.2. 常见的汇编器 4.2.1. NASM&#xff08;Netwide Assembler&#xff09;4.2.2. MASM&…

PPT免费图片素材网站分享

一、Pixabay 网址&#xff1a;https://pixabay.com/ 图片类型&#xff1a;高清、免费、商用 使用方法&#xff1a;找到想要的图片之后&#xff0c;右键复制之后粘贴到PPT即可使用。同时&#xff0c;点击下载可以找到不同尺寸的PPT素材 二、花瓣网 网址&#xff1a;https://…

B树和B+树的插入、删除

1. B树 1.1 B树的定义 树也称树&#xff0c;它是一颗多路平衡查找树。我们描述一颗树时需要指定它的阶数&#xff0c;阶数表示了一个结点最多有多少个孩子结点&#xff0c;用字母表示阶数。当取时&#xff0c;就是我们常见的二叉搜索树。 一颗阶的树定义如下&#xff1a; 每…

“卖水人”的生意经,要比机器人厂商更懂机器人

技术公司的生存法则。 生态链中每个角色都有自己的生存法则。对于机器人产业链中的技术“卖水人”&#xff0c;它的核心生存法则除了要闷头搞技术&#xff0c;更重要的是要比机器人厂商更懂机器人&#xff0c;这不仅很大程度决定了自身的技术路线&#xff0c;更决定了能否切中…

labelme标注的图像分割json文件转图片格式

label标注的标签是json格式&#xff0c;会对选择的区域进行打点标记&#xff0c;所有的点围成不规则的多边形区域&#xff0c;中间的部分就是分割的区域 这里编写了python脚本&#xff0c;可以把json文件转为图片格式&#xff0c;这里是png格式 目标摆放如下 转化结果如下&…

论文精读1

Equivariant Pretrained Transformer for Unified Geometric Learning on Multi-Domain 3D Molecules 核心公式&#xff1a; 论文导图 创新在统一分子建模和块级去噪预训练。

vue3中 ref 和 reactive 的区别

相同&#xff1a;均是声明响应式对象。且声明的响应式对象是深层的 1. 数据类型不同&#xff1a;ref用于包装JavaScript基本类型的数据&#xff08;如字符串、数字、布尔值等&#xff09;&#xff0c;而reactive可以用于包装JavaScript对象和数组等复杂类型的数据。 2.访问方式…

医疗器械维修行业的惊人真相!

在医疗领域&#xff0c;医疗器械维修行业有着不为人知的惊人真相。 其一&#xff0c;维修人才极度稀缺。医疗器械的技术不断革新&#xff0c;复杂程度日益提高&#xff0c;然而专业维修人员的数量增长却远远跟不上。这导致一些设备故障无法及时修复&#xff0c;影响医疗服务的…

消费企业如何实现对经销商的动态管理?包括哪些维度?

在数字化浪潮席卷全球的当下时代&#xff0c;消费企业正站在转型升级的十字路口。在这种背景下&#xff0c;传统的经销管理模式已经不能满足市场对于效率、透明度和个性化的需求。当前经销渠道从增量市场竞争转入存量市场竞争&#xff0c;消费企业需通过加速数字化转型来快速提…

软件测试行业到底有没有前景和出路?2024辞职后涨薪5K+,凭什么?

前言 软件测试工程师的工作要求&#xff1a; 文档评审&#xff0c;用例评审&#xff0c;需求评审&#xff1b; 测试用例设计&#xff0c;自动化测试脚本开发&#xff0c;测试架构设计、写作测试文档&#xff08;测试计划、测试方案、测试用例等&#xff09;&#xff1b; 执行…

七夕来临,看鲜花商家如何通过小魔推短视频矩阵引爆流量

相信不少朋友都知道&#xff0c;前两天“秋天里的第一杯奶茶”这个热点又刷爆了朋友圈&#xff0c;“秋天的第一杯蜜雪”只用了短短1天时间&#xff0c;视频就已经收获10万赞、16万转发获得了强势围观&#xff01; 明天8月10日就是农历的七夕了&#xff0c;而鲜花行业的商家&a…

【javaWeb技术】·外卖点餐小程序(脚手架学习1·数据库)

&#x1f308; 个人主页&#xff1a;十二月的猫-CSDN博客 &#x1f525; 系列专栏&#xff1a; &#x1f3c0;系统学javaWeb开发_十二月的猫的博客-CSDN博客 &#x1f4aa;&#x1f3fb; 十二月的寒冬阻挡不了春天的脚步&#xff0c;十二点的黑夜遮蔽不住黎明的曙光 【免费】项…

将PPT中的元素保存为高清图片

PPT制作流程图&#xff0c;思维导图或者演示图片非常方便&#xff0c;本文主要记录如何将一个在PPT中画好的图片导出为高清图片。 1.在ppt中设计图片 以我在PPT中画的图片为例&#xff0c;将所有元素选中&#xff0c;右键组合&#xff0c;成为一个整体 2.另存为增强型元文件 …

文件系统管理问题总结

文件系统的基本组成 1.什么是linux文件系统 Linux 最经典的⼀句话是&#xff1a;「⼀切皆⽂件」&#xff0c;不仅普通的⽂件和⽬录&#xff0c;就连块设备、管道、socket 等&#xff0c;也 都是统⼀交给⽂件系统管理的。 Linux ⽂件系统会为每个⽂件分配两个数据结构&#…