首页
Python
Java
前端
数据库
Linux
Chatgpt专题
开发者工具箱
ngram专题
ngram模型中文语料实验step by step(1)-分词与统计
ngram模型是统计语言的最基本的模型了,这里将给出用中文语料做实验建立ngram模型的个人总结,主要参考sun拼音2.0的代码以及有点意思拼音输入法,会参考srilmstevejian.cublog.cn。我会尽量逐步完成所有的实验总结。 分词与统计 对于中文语料和英文不同需要我们先进行分词,当然如果是切分好空格隔开的语料就简单许多。假设是普通的语料,sun拼音的做法是采用正向最大匹配分词
阅读更多...
ngram模型中文语料实验step by step(2)-ngram模型数据结构表示及建立
n元ngram模型本质上就是trie树的结构 ,逐层状态转移。在sun拼音中是采用的是逐层按照顺序用vector表示,查找的时候逐层二分查找。sun拼音的建立ngram模型的方法也是以按照字典序排好序的<ngram元组,次数>序列作为输入建立起来的。 利用顺序存储+二分查找应该是最节省空间的了。但是效率要受一定影响。其余的trie树实现包括可以利用map(hash_map更耗费空间一点),su
阅读更多...
elasticsearch(11)通过ngram分词机制实现搜索推荐
转载自简书本文链接地址: Elasticsearch通过ngram分词机制实现搜索推荐 1、什么是ngram 例如英语单词 quick,5种长度下的ngram ngram length=1,q u i c kngram length=2,qu ui ic ckngram length=3,qui uic ickngram length=4,quic uickngram length=
阅读更多...
ngram低维表示学习笔记
本文是学习N-GRAM-BASED LOW-DIMENSIONAL REPRESENTATION FOR DOCUMENT CLASSIFICATION 的笔记。如果英文好的,请直接看论文。 ngram是词袋模型的子类。对于提取上下文语义有重要意义,然而n很大时,维度将非常高,运算复杂度剧增。而工业界中的认为都对响应速度要求特别高。ngram低维表示能降低维度,大大提高效率。 ngram简介
阅读更多...
基于 NGram 分词,优化 Es 搜索逻辑,并深入理解了 matchPhraseQuery 与 termQuery
基于 NGram 分词,优化 Es 搜索逻辑,并深入理解了 matchPhraseQuery 与 termQuery 前言问题描述排查索引库分词(发现问题)如何去解决这个问题?IK 分词器NGram 分词器使用替换 NGram 分词器后进行测试matchPhraseQuery 查询原理termQuery 查询原理总结 前言 之前不是写过一个全局搜索的功能吗,用户在使用的时候,
阅读更多...
基于 NGram 分词,优化 Es 搜索逻辑,并深入理解了 matchPhraseQuery 与 termQuery
基于 NGram 分词,优化 Es 搜索逻辑,并深入理解了 matchPhraseQuery 与 termQuery 前言问题描述排查索引库分词(发现问题)如何去解决这个问题?IK 分词器NGram 分词器使用替换 NGram 分词器后进行测试matchPhraseQuery 查询原理termQuery 查询原理总结 前言 之前不是写过一个全局搜索的功能吗,用户在使用的时候,
阅读更多...
win8 64bit下srilm+cygwin实现ngram语言模型
ngram语言模型+win8 64bit下安装srilm+cygwin实现 最近导师给了个新项目关于信息抽取(给了三篇论文,实验室混一年,动手能力没怎么提高但是看论文倒是飞快),会用到语言模型,虽然自己本身NLP出身但是实现论文的方法会涉及很多工程性问题。 论文需要实现ngram中的Good Turing平滑和回退模型的Katz Backoff平滑(怪自己研一的主修课没认真实践,扫了一遍研一课
阅读更多...
win8 64bit下srilm+cygwin实现ngram语言模型
ngram语言模型+win8 64bit下安装srilm+cygwin实现 最近导师给了个新项目关于信息抽取(给了三篇论文,实验室混一年,动手能力没怎么提高但是看论文倒是飞快),会用到语言模型,虽然自己本身NLP出身但是实现论文的方法会涉及很多工程性问题。 论文需要实现ngram中的Good Turing平滑和回退模型的Katz Backoff平滑(怪自己研一的主修课没认真实践,扫了一遍研一课
阅读更多...