概率語言模型 Probabilistic Language Modeling (三) --- 訓練工具彙總
傳統演算法
1) BerkeleyLM 是用java寫的,號稱跟KenLM差不多,記憶體比srilm小
https://github.com/adampauls/berkeleylm
2)MITLM (The MIT Language Modeling toolkit) 引數優化做的比較好
https://code.google.com/p/mitlm/ or https://github.com/mitlm/mitlm
3)SRILM(The SRI language modeling toolkit) 老牌語言模型工具,SRI(Stanford Research Institute)開發,使用比較廣泛,c++版本
http://www.speech.sri.com/projects/srilm/
另外Maximum entropy (MaxEnt) language models is蘇pported in the SRILM toolkit
https://phon.ioc.ee/dokuwiki/doku.php?id=people:tanel:srilm-me.en
4)IRSTLM (IRST language modeling toolkit) 義大利TrentoFBK-IRST實驗室開發處理較大規模的訓練資料,integrated into Moses (a popular open source Statistical Machine Translation decoder)
http://hlt-mt.fbk.eu/technologies/irstlm or https://github.com/irstlm-team/irstlm
5)KenLM (Kenneth Heafield's language model toolkit) 最大特點是速度快、佔用記憶體少。號稱比SRILM要好一些,支援單機大資料的訓練,包括c++和python兩個介面
http://kheafield.com/code/kenlm/ or https://github.com/kpu/kenlm
6)Bigfatlm Provides Hadoop training of Kneser-ney language models, written in Java
https://github.com/jhclark/bigfatlm
7)Kylm (Kyoto Language Modeling Toolkit) written in Java,Output in WFST format for use with WFST decoders
http://www.phontron.com/kylm/ or https://github.com/neubig/kylm
8) OpenGrm Language modelling toolkit for use with OpenFst, makes and modifies n-gram language models encoded as weighted finite-state transducers (FSTs)
http://opengrm.org/
深度學習
1)RNNLM(Recurrent neural network language model toolkit)
http://rnnlm.org/ or http://www.fit.vutbr.cz/~imikolov/rnnlm/
2)BRNNLM (Bayesian recurrent neural network for language model)
http://chien.cm.nctu.edu.tw/bayesian-recurrent-neural-network-for-language-modeling
3)RWTHLM (RWTH Aachen University Neural Network Language Modeling Toolkit, includes feedforward, recurrent, and long short-term memory neural networks)
http://www-i6.informatik.rwth-aachen.de/web/Software/rwthlm.php
4)Character-Aware Neural Language Models,employs a convolutional neural network (CNN)over characters to use as inputs into an long short-term memory (LSTM)recurrent neural network language model (RNN-LM)
https://github.com/yoonkim/lstm-char-cnn
相關推薦
概率語言模型 Probabilistic Language Modeling (三) --- 訓練工具彙總
傳統演算法 1) BerkeleyLM 是用java寫的,號稱跟KenLM差不多,記憶體比srilm小 https://github.com/adampauls/berkeleylm 2)MITLM (The MIT Language Modeling toolkit) 引
概率語言模型 Probabilistic Language Modeling (二) --- 模型估計演算法介紹
1. 緣由–資料稀疏問題 假設k泛指某一事件,N(k)表示事件k觀察到的頻數,極大似然法使用相對頻數作為對事件k的概率估計為p(k)=N(k)N,在語言模型中,訓練語料中大量的事件N(k)=0,這顯然沒有反映真實情況,這種零值的概率估計會導致語言模型演算法的失
斯坦福大學自然語言處理第四課 語言模型(Language Modeling)筆記
一、課程介紹 斯坦福大學於2012年3月在Coursera啟動了線上自然語言處理課程,由NLP領域大牛Dan Jurafsky 和 Chirs Manning教授授課:https://class.coursera.org/nlp/ 以下是本課程的學習筆記,以課程PPT/
stanford nlp第四課“語言模型(Language Modeling)”
一、課程介紹 斯坦福大學於2012年3月在Coursera啟動了線上自然語言處理課程,由NLP領域大牛Dan Jurafsky 和 Chirs Manning教授授課:https://class.coursera.org/nlp/ 以下是本課程的學習筆記,以課程PPT
神經概率語言模型
統計語言建模的目標是學習語言中單詞序列的聯合概率函式。由於 the curse of dimensionality,這本質上是困難的:測試模型的單詞序列可能與訓練期間看到的所有單詞序列不同。一種基於n-gram的傳統的但非常成功的方法是,通過連線訓練集中看到的非常短的重疊序列來獲得泛化。我們建議通過學習詞的分
語言模型1-word2vec為什麼能訓練出相似向量
導語 由於接到一點語言模型的任務,自然也就看到了word2vec這個比較火的課題。網上的課程和材料相對都比較多,一般一開始都會說word2vec的優點能描述出單詞的相似關係,然後就是理論或者程式碼。但是都沒有解釋或者沒有清楚地解釋為什麼word2vec能為功能性差不多的單詞
概率語言模型分詞方法
4.6 概率語言模型的分詞方法 從統計思想的角度來看,分詞問題的輸入是一個字串C=C1,C2,……,Cn,輸出是一個詞串S=W1,W2,……,Wm,其中m<=n。對於一個特定的字串C,會有多個切分方案S對應,分詞的任務就是在這些S中找出概率最大的一個切分方案,也就是
MIT自然語言處理第三講:概率語言模型(第四、五、六部分)
MIT自然語言處理第三講:概率語言模型(第四部分) 自然語言處理:概率語言模型 Natural Language Processing: Probabilistic Language Modeling 作者:Regina Barzilay(MIT,EECS Dep
概率語言模型及其變形系列(2)-LDA及Gibbs Sampling
本系列博文介紹常見概率語言模型及其變形模型,主要總結PLSA、LDA及LDA的變形模型及引數Inference方法。初步計劃內容如下第三篇:LDA變形模型-Twitter LDA,TimeUserLDA,ATM,Labeled-LDA,MaxEnt-LDA等第四篇:基於變形L
Coursera概率圖模型(Probabilistic Graphical Models)第三週程式設計作業分析
Markov Networks for OCR 光學字元識別的馬爾科夫網路 說到光學字元識別(OCR),此前筆者首先想到的會是卷積神經網路,而單詞識別則會考慮使用遞迴神經網路。而本週的作業則基於馬爾科夫網路構建了一個較為基礎OCR系統,目的也主要是讓我們對馬爾科夫網路有個感
【Language model】使用RNN LSTM訓練語言模型 寫出45°角仰望星空的文章
開篇 這篇文章主要是實戰內容,不涉及一些原理介紹,原理介紹為大家提供一些比較好的連結: 1. Understanding LSTM Networks : RNN與LSTM最為著名的文章,貼圖和內容都恰到好處,為研究人員提供很好的參考價值。 中文漢化版:(譯
深度學習語言模型的通俗講解(Deep Learning for Language Modeling)
感想 這是臺灣大學Speech Processing and Machine Learning Laboratory的李巨集毅 (Hung-yi Lee)的次課的內容,他的課有大量生動的例子,把原理也剖析得很清楚,感興趣的同學可以去看看,這裡是我對它的一次課的筆記,我覺得
讀《數學之美》第三章 統計語言模型
其它 bigram 利用 理解 googl track 推斷 art google 自然語言從產生開始。逐漸演變為一種基於上下文相關的信息表達和傳遞方式,在計算機處理自然語言時,一個最主要的問題就是為自然語言上下文相關的特性建立數學模型,叫做統計語言模型(Statist
NLP(三)_統計語言模型
完全 概念 精度 馬爾科夫 編輯距離 一定的 角度 等於 nsh 概念 統計語言模型:是描述自然語言內在的規律的數學模型。廣泛應用於各種自然語言處理問題,如語音識別、機器翻譯、分詞、詞性標註,等等。簡單地說,語言模型就是用來計算一個句子的概率的模型 即P(W1,W2,W3.
word2vec 中的數學原理三 背景知識 語言模型
tps 詳解 art 技術 nbsp log 分享圖片 word2vec 自己 主要參考: word2vec 中的數學原理詳解 自己動手寫 word2vec word2vec 中的數學原理三 背景知識 語言模型
Coursera概率圖模型(Probabilistic Graphical Models)第一周編程作業分析
期望 and find 不同的 列表 mali 一周 模型 course Computing probability queries in a Bayesian network 計算貝葉斯網絡中的概率查詢 1.基礎因子操作 作業中因子的結構 phi =
Coursera概率圖模型(Probabilistic Graphical Models)第四周編程作業分析
map tel ica join 正常 最大化 expected 聯合 else Decision Making 作決策 這一周的內容在老版本的CS228課程中,是作為第六周的一個小節講的(老版本的CS229只有9周的課程),而在概率圖模型的教材裏邊對應的是第22章
自然語言處理中的語言模型預訓練方法
16px 預測 網絡語言 緩解 lang 大數 一中 標準 小數 自然語言處理中的語言模型預訓練方法 最近,在自然語言處理(NLP)領域中,使用語言模型預訓練方法在多項NLP任務上都獲得了不錯的提升,廣泛受到了各界的關註。就此,我將最近看的一些相關論文進行總結,選取了幾
語音識別系統語言模型的訓練和聲學模型的改進
10個 ext 個數 靜音 介紹 準備 上下 詞匯表 數據 一、訓練語言模型 詞與詞之間存在著合乎句法與否的約束,語言模型就是用來表示這些約束的,它可以提供字與字之間的上下文信息和語義信息。N-gram模型,即對訓練音頻文件所對應的文本文件進行統計,提取不同字
為什麼使用神經網路訓練得到的語言模型不需要做資料平滑
我們都知道,在自然語言處理的語言模型裡面,最核心的就是計算得到一個句子的概率,為了得到這個概率,我們需要計算得到一系列的條件概率。這些條件概率就是整個語言模型的引數。 為了得到條件概率,我們可以有兩種不同的方法。 第一種就是使用統計概率方法,通過統計的方法得到不同的詞對的條件概率。這種方