统计模型把句子看做,单词的依次排列,即多个单词的复合条件概率。词是文章的原子单位,nlp的基本思路是,向量化词(可计算),为文档建模,之后进行分类、相关性分析等处理。
一、bow(bag of word)
单词的组合,表示文档。不考虑单词的顺序和上下文。
二、n-gram模型
除了bow还考虑上下文
三、词的向量化(数学建模):
1、one hot representation 除了一个维度是1,剩余的都是0
2、distributed representation
one hot太稀疏,所以先让神经网络学习向量空间的映射,从稀疏表示变成分布式表示(深度学习的特色就是自动提取特征)。每个词映射为一个小向量,其中有多个分量数值不是0(所以叫分布式的表示)
3、word embedding:就是将单词word映射到另外一个空间,其中这个映射具有injective(单射)和structure-preserving(序和结构可以保持)的特点。通俗的翻译可以认为是单词嵌入,就是把X所属空间的单词映射为到Y空间的多维向量,那么该多维向量相当于嵌入到Y所属空间中,一个萝卜一个坑。word embedding,就是找到一个映射或者函数,生成在一个新的空间上的表达,该表达就是word representation。
4、目前常用的表示形式(model)
tfidf
LSA(latent semantic analysis):基于矩阵的信息压缩
LDA(latent dirichlet allocation):在doc和word之间引入topic,用2个层次的概率分布来描述语言的内在联系。
word2vec(与语言模型同时得到):输出层用霍夫曼编码来提高学习的速度。篇章层面叫thought vector
整个路径上每个分支的概率乘积就表达了对应的上下文环境。这个东西在深度学习里实际上就是一个编码器(encoder)
FastText: 有监督,只使用bow,不使用顺序.适合于语法类比
VarEmbed:
WordRank: WordRank更适合语义类比
GloVe:
5、word2vec的2种思路 CBOW skip-gram
CBOW:前后的环境确定,寻找当前词的概率。
skip-gram:当前词确定,探索前后的词组合
四、学习方式
一》(基于词频,直接使用概率的数学表达式)
1、每个词的出现,只和前面有限的词有关系,需要确定的参数个数是 O(N^n)一般n=3是效果和复杂度的均衡。
2、计算步骤:1》提取词汇表 2》根据语料库统计词频率,根据频率近似模拟概率(要求语料库足够大)
二》神经网络表示
1、输入是表示各个词的向量(先进行数字化)序列
2、输出是相应序列下的各个词汇的概率
3、网络结构和参数来体现词的前驱,和联合概率分布
三》深度学习的语言模型(各种RNN)
LSTM
GRU
五、分词
1、(复杂)最大匹配,基于词典和规则
2、全切分路径选择方法: 全切分方法就是将所有可能的切分组合全部列出来,并从中选择最佳的一条切分路径。关于路径的选择方式,一般有n最短路径方法,基于词的n元语法模型方法等。
2、字标注(用机器学习出来字构成词的概率),比如条件随机场(CRF, Conditional Random Fields) HMM(HiddenMarkov Model)最大熵
3、统计与字典相结合
4、深度学习 (RNN、 LSTM)
5、相关的库
结巴分词的原理 http://blog.csdn.net/john_xyz/article/details/54645527
https://github.com/fxsjy/jieba CRF HMM 目前看最靠谱
https://github.com/NLPchina/ansj_seg n-Gram+CRF+HMM
IKAnalyzer 基于匹配,效果一般
相关推荐
基于统计模型的自然语言处理NLP技术应用简介
中国科学院大学网络安全学院NLP的语言统计模型与神经网络模型复习资料 中国科学院大学网络安全学院NLP的语言统计模型与神经网络模型复习资料 中国科学院大学网络安全学院NLP的语言统计模型与神经网络模型复习资料 ...
统计语言模型在自然语言处理,尤其是信息检索领域,展现了其强大的潜力和广泛的应用前景。通过持续的技术创新和理论探索,统计模型有望在未来进一步提高信息检索系统的效率和准确性,推动自然语言处理技术向更高层次...
统计语言模型(Statistical Language Model,简称SLM)是自然语言处理(NLP)领域的重要组成部分,广泛应用于机器翻译、语音识别、文本分类等多个场景。《统计语言模型研究及其应用》一文深入探讨了统计语言模型在...
综上所述,统计语言模型为自然语言处理领域提供了强大的工具,尤其是在处理文本分类、识别以及生成等问题时。随着深度学习技术的发展,近年来也出现了许多基于神经网络的语言模型,它们在很多任务上已经超越了传统的...
《统计自然语言处理》是一本深入探讨自然语言处理(NLP)领域的经典著作,它将统计方法与计算语言学紧密结合,为理解和应用自然语言提供了一种数据驱动的视角。NLP是计算机科学的一个分支,专注于如何使计算机能够...
学习NLP需要掌握一些基础书籍,例如宗成庆的《统计自然语言处理》、刘群等译的《自然语言理解》等。课程考核可能包括报告、源代码提交、期末笔试等,目的是检验学生对理论知识的理解和实际应用能力。通过深入学习和...
《统计自然语言处理》是一本深入探讨自然语言处理(NLP)领域的专著,主要侧重于使用统计方法解决语言问题。统计自然语言处理是计算机科学和人工智能的一个分支,旨在通过数学统计和机器学习技术理解、生成和处理...
内容包括形式语言与自动机及其在自然语言处理中的应用、语言模型、隐马尔可夫模型、语料库技术、汉语自动分词与词性标注、句法分析、词义消歧、统计机器翻译、语音翻译、文本分类、信息检索与问答系统、自动文摘和...
《统计自然语言处理》是宗成庆教授撰写的一本深入浅出的自然语言处理(NLP)教程,尤其适合初学者入门。NLP是计算机科学领域的一个重要分支,它旨在理解和生成人类自然语言,使计算机能够处理和理解文本或语音信息。 ...
自然语言处理(NLP)是计算机科学领域的一个重要分支,它专注于使计算机能够理解、解析、生成和操作人类自然语言。这些课件涵盖了NLP的多个核心主题,为学习者提供了一个全面的学习路径。 首先,"L1 - Introduction...
统计语言模型是早期的语言模型,主要代表是n-gram模型。n-gram模型基于马尔可夫假设,即当前词的出现概率只与其前面的n-1个词相关。例如,一阶马尔可夫模型(bigram)假设当前词只依赖于前一个词,而二阶马尔可夫...
统计自然语言处理则是NLP的一个重要分支,它借助概率论和统计学的方法来分析和处理语言数据,以此来解决实际的语言理解问题。 本书涵盖了以下核心知识点: 1. **语言模型**:语言模型是NLP的基础,它用于估计一个...
自然语言处理(NLP)是计算机科学领域的一个关键分支,主要涉及如何使计算机理解、解析、生成和操作人类语言。哈工大的智能技术与自然语言处理技术课程提供了一个全面的NLP学习路径,从基础到高级,涵盖了多个关键...
统计语言模型是自然语言处理中的核心概念,它旨在利用数学模型描述语言的内在规律,以理解和生成人类语言。这种模型广泛应用于语音识别、手写体文字识别、机器翻译、键盘输入和信息检索等多个领域。传统的语言模型...
《统计自然语言处理》是一门深入探讨如何利用统计方法解决自然语言处理问题的学科。它在人工智能和计算语言学领域占据着核心地位,是理解和构建智能系统与人类语言交互的关键。这一完整版的讲义涵盖了从基础理论到...
《NLP汉语自然语言处理原理与实践》是郑捷撰写的一本深入探讨自然语言处理(NLP)在汉语环境中的应用和技术的书籍。NLP作为人工智能的一个重要分支,旨在让计算机理解和生成人类语言,这对于信息检索、机器翻译、...