
NLP基础/分词
文章平均质量分 69
NLP基础/分词
u013250861
这个作者很懒,什么都没留下…
展开
-
【LLM系列之Tokenizer】如何科学地训练一个LLM分词器
对于人而言,在我们学会阅读之前,仍然可以理解语言。比如当你开始上学时,即使你不知道名词和动词之间的区别,但是你已经可以和你的同学交谈了,比如“我喜欢吃香蕉”,孩子对于这些虽然不清楚,但是知道是什么意思的。在此刻,我们学会了把语音/语言变成一种书面语言,这样你就可以读写了。一旦你学会了将文本转换为声音,你就可以回忆使用之前学过的词义库。原创 2023-07-14 15:20:06 · 375 阅读 · 0 评论 -
NLP-分词算法(一):Byte-Pair Encoding (BPE) / Byte-level BPE【BPE是char级别】
在这其中,一个小的知识点引起了我的好奇,就是在将英语训练语料输入到BERT模型之前,需要对其进行。英文字符的个数是有限的,基于字符的方式可以有效缓解词表数目过大以及OOV的问题,但由于其粒度太细,丢失了很多单词本身所具有的语意信息。比如说单词"looked"和"looking"会被划分为"look","ed”,"ing",这样在降低词表大小的同时也能学到词的语意信息。为了解决上述问题,基于Subword(子词)的算法被提出,其中的代表就是BPE算法,初始的词表大小为7,其为训练语料中所有出现过的字符。原创 2023-07-11 18:20:10 · 5885 阅读 · 0 评论 -
NLP-分词器:SentencePiece【参考Chinese-LLaMA-Alpaca在通用中文语料上训练的20K中文词表并与原版LLaMA模型的32K词表进行合并的代码】
SentencePiece 是一种无监督的文本 tokenizer 和 detokenizer,主要用于基于神经网络的文本生成系统,其中,词汇量在神经网络模型训练之前就已经预先确定了。SentencePiece 实现了subword单元(例如,字节对编码 (BPE))和 unigram 语言模型),并可以直接从原始句子训练字词模型(subword model)。这使得我们可以制作一个不依赖于特定语言的预处理和后处理的纯粹的端到端系统。本文主要给大家讲解了SentencePiece的基本原理及使用方法。原创 2023-07-11 18:08:35 · 4946 阅读 · 0 评论 -
Tokenizer/分词器:BPE(GPT、Roberta);WordPiece(Bert、Electra);SentencePiece(AlBert、T5)
分词器:BPE(GPT、Roberta);原创 2023-06-16 22:30:57 · 575 阅读 · 0 评论 -
NLP-基础任务-中文分词算法(1)-基于词典: 机械分词(词典字符串匹配):前向最大匹配、后向最大匹配、双向最大匹配【OOV:基于现有词典,不能进行新词发现处理】
NLP-基础任务:中文分词算法【基于词表:前向最大匹配、后向最大匹配、双向最大匹配】【基于统计模型:基于N-gram语言模型】【基于序列标注:基于HMM、基于CRF、基于深度学习的端到端的】原创 2022-01-27 21:08:34 · 1708 阅读 · 0 评论 -
NLP-基础任务-中文分词算法(2)-基于词典:基于N-gram语言模型的分词算法【基于词典的分词方法】【利用维特比算法求解最优路径】【比机械分词精度高】【OOV:基于现有词典,不能进行新词发现处理】
例子:“经常有意见分歧”词典:["经常","有","意见","意","见","有意见","分歧","分","歧"]概率P(x):{"经常":0.08,"有":0.04,"意见":0.08,"意":0.01,"见":0.005,"有意见":0.002,"分歧":0.04,"分":0.02, "歧":0.005}概率P(x)代表的是该词x在我们日常生活所见的文本中出现的概率。step1:根据词典,利用“前向最大匹配算法/后向最大匹配算法”找出所有可能的分词情况,如下:经常 / 有意见 / 分歧经原创 2022-02-28 19:28:00 · 833 阅读 · 0 评论 -
NLP-基础任务-中文分词算法(3)-基于字:基于序列标注的分词算法【BiLSTM+CRF】
CRF:条件随机场,一种机器学习技术。给定一组输入随机变量条件下,另一组输出随机变量的条件概率分布模型。以一组词性标注为例,给定输入X={我,喜欢,学习},那么输出为Y={名词,动词,名词}的概率应该为最大。输入序列X又称为观测序列,输出序列Y又称为状态序列。这个状态序列构成马尔可夫随机场,所以根据观测序列,得出状态序列的概率就包括,前一个状态转化为后一状态的概率(即转移概率)和状态变量到观测变量的概率(即发射概率)。CRF分词原理:CRF把分词当做字的词位分类问题,通常定义字的词位信息如下:词首原创 2022-02-28 19:47:03 · 1554 阅读 · 0 评论 -
NLP-基础任务-中文分词算法(4)-评价指标:精确率(“模型分词结果集”与“标准答案集”的交集/“模型分词结果集”)、召回率(“模型分词结果集”与“标准答案集”的交集/“标准答案集”)、F1
一、分类模型中的:精确率、召回率、F1-Measure准确率(Accuracy):对于给定的测试数据集,分类器正确分类的样本数与总样本数之比。Accuracy=TP+TNTP+TN+FP+FNAccuracy=\cfrac{TP+TN}{TP+TN+FP+FN}Accuracy=TP+TN+FP+FNTP+TN精确率(Precision)**:精指分类正确的正样本个数(TP)占分类器判定为正样本的样本个数(TP+FP)的比例。Precision=TPTP+FPPrecision=\cfrac{原创 2022-02-28 19:52:22 · 1182 阅读 · 1 评论 -
NLP-基础任务-分词-第三方库:ICTCLAS【中文分词准确率最高的第三方库】【中科院】【收费】
NLP-基础任务-分词-第三方库:ICTCLAS【中文分词准确率最高的第三方库】【中科院】【收费】原创 2022-02-13 23:15:00 · 352 阅读 · 0 评论 -
最短路径算法:维特比算法(Viterbi)(基于动态规划思想)【解决篱笆网络的最短路径问题】【应用场景:分词、命名实体识别、词性标注】【每个节点只保留其来时最优路径】
一、维特比算法(Viterbi Algorithm)讲解方式01:篱笆网络(Lattice)的最短路径问题已知下图的篱笆网络,每个节点之间的数字表示相邻节点之间的距离,举个例子来说,如果我走,这个距离是。那么如果让你从A走到E,最短路径是哪一条呢?显然大家都知道,通过穷举的方法是很容易得到最短路径,可是问题就在于如果穷举的话,需要的加法次数不用算你也知道实在是太多啦(每条路径需要计算次加法,一共条路径共次计算)!像这种没几层的篱笆网络也就罢了,如果每层13个节点,一共12层(然而这个规模对于标注问题来原创 2022-02-05 20:46:46 · 2443 阅读 · 1 评论 -
NLP-基础任务-分词算法:概述【成熟的第三方工具包:中文(jieba、哈工大LTP)、英文(NLTK、SpaCy、StanfordCoreNLP)】
深度学习-自然语言处理(NLP)-文本预处理:分词原创 2021-03-27 21:29:45 · 1390 阅读 · 0 评论