NLP入门

NLP入门+文本预处理

什么是自然语言处理?

让计算机去理解人类语言

认识文本预处理

文本预处理及作用

前提:之前用pandas等进行数据分析,也属于文本预处理的范围

文本预处理作用:将文本转换成模型能够识别的形式,进而实现模型的训练

文本预处理的基本方法:

分词:

分词的意义:

一般实现模型训练的时候,模型接受的文本基本最小单位是词语,因此我们需要对文本进行分词

词语是语意理解的基本单元

英文具有天然的空格分隔符,而中文分词的目的:寻找一个合适的分词边界,进行准确分词

常用分词工具:

jieba分词工具

精确模式:就是按照人类擅长的表达词汇的习惯来分词

全模式分词:将尽可能成词的词汇分割出来

搜索引擎模式:

在精确模式分词的基础上,将长粒度的词再次切分

支持中文繁体分词

支持用户自定义词典

词典的意义:

可以根据自定义词典,修改jieba分词方式,优先考虑词典里面的词来切分

格式:词语 词频(可省略) 词性(可省略)

命名实体识别(NER)

定义:

命名实体:通常指: 人名,地名,机构名等专有名词

NER:从一段文本中识别出上述描述的命名实体

实现方式:

模型训练(后续项目)

词性标注

定义:

对每个词语进行词性的标注: 动词,名词,形容词等

文本张量的表示方式

文本张量表示

意义:将文本转换为向量(数字)的形式,使得模型能够识别进而实现训练,一般是进行词向量的表示实现的方式:

one-hot

word2Vec

wordEmbedding

One-Hot 词向量表示

定义:针对每一个词汇,都会用一个向量表示,向量的长度是n,n代表去重 之后的词汇总量,而且向量只有0,和1两种数字

俗称:独热编码,01编码

ONe-Hot编码的缺点

割裂了词与词之间的联系

如果n过大,会导致占用大量的内存(维度爆炸)

Word2Vec模型

Word2Vec是一种无监督训练方法,本质是训练一个模型,将模型的参数矩阵当作所有词汇的词向量表示

两种训练方式: cbow,skipgram

CBOW介绍

给一段文本,选择一定的窗口,然后利用上下文预测中间目标值

相关推荐
老马啸西风6 小时前
v0.29.2 敏感词性能优化之基本类型拆箱、装箱的进一步优化的尝试
性能优化·开源·nlp·github·敏感词
老马啸西风20 小时前
v0.29.1 敏感词性能优化之内部类+迭代器内部类
性能优化·开源·nlp·github·敏感词
Gyoku Mint1 天前
提示词工程(Prompt Engineering)的崛起——为什么“会写Prompt”成了新技能?
人工智能·pytorch·深度学习·神经网络·语言模型·自然语言处理·nlp
老马啸西风3 天前
sensitive-word 敏感词性能提升14倍优化全过程 v0.28.0
安全·开源·nlp·word·敏感词·sensitive-word
和鲸社区3 天前
《斯坦福CS336》作业1开源,从0手搓大模型|代码复现+免环境配置
人工智能·python·深度学习·计算机视觉·语言模型·自然语言处理·nlp
nju_spy5 天前
机器学习 - Kaggle项目实践(8)Spooky Author Identification 作者识别
人工智能·深度学习·机器学习·nlp·tf-idf·glove·南京大学
Go_Zezhou6 天前
在线性代数里聊聊word embedding
线性代数·算法·机器学习·nlp
冰糖猕猴桃7 天前
【AI - nlp】Transformer输入部分要点
人工智能·ai·nlp·transformer
大千AI助手7 天前
WMT2014:机器翻译领域的“奥林匹克盛会“
人工智能·深度学习·神经网络·自然语言处理·nlp·机器翻译·wmt2014
胖达不服输7 天前
「日拱一码」076 深度学习——自然语言处理NLP
人工智能·python·深度学习·自然语言处理·nlp