日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

N-Gram的数据结构

發(fā)布時(shí)間:2024/7/5 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 N-Gram的数据结构 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

ARPA的n-gram語(yǔ)法如下:

[html] view plaincopyprint? \data\ ngram 1=64000 ngram 2=522530 ngram 3=173445 \1-grams: -5.24036 'cause -0.2084827 -4.675221 'em -0.221857 -4.989297 'n -0.05809768 -5.365303 'til -0.1855581 -2.111539 </s> 0.0 -99 <s> -0.7736475 -1.128404 <unk> -0.8049794 -2.271447 a -0.6163939 -5.174762 a's -0.03869072 -3.384722 a. -0.1877073 -5.789208 a.'s 0.0 -6.000091 aachen 0.0 -4.707208 aaron -0.2046838 -5.580914 aaron's -0.06230035 -5.789208 aarons -0.07077657 -5.881973 aaronson -0.2173971

具體說(shuō)明見(jiàn) :ARPA的n-gram語(yǔ)言模型格式

整個(gè)ARPA-LM由很多個(gè)n-gram項(xiàng)組成,分別說(shuō)明這兩個(gè)的數(shù)據(jù)結(jié)構(gòu)

一,n-gram數(shù)據(jù)結(jié)構(gòu)

n-gram的數(shù)據(jù)結(jié)構(gòu)如下:

typedef struct { real log_prob ; real log_bo ; int *words ; } ARPALMEntry ;

words,表示當(dāng)前的n-gram所涉及的單詞,如果是1-gram,那就只有一個(gè),如果是2-gram,那么words就包括這兩個(gè)單詞的序號(hào)。
log_bo,表示ngram的回退概率。
log_prob,表示ngram的組合概率。

二,ARPA-LM數(shù)據(jù)結(jié)構(gòu)

多個(gè)項(xiàng)組成的整個(gè)n-gram語(yǔ)言模型的數(shù)據(jù)結(jié)構(gòu)如下:
[cpp] view plaincopyprint?

class ARPALM { public: Vocabulary *vocab ; int order ; ARPALMEntry **entries ; // 語(yǔ)言模型的所有項(xiàng),組成一個(gè)數(shù)組 int *n_ngrams ; // 一元語(yǔ)言模型、二元語(yǔ)言模型、三元語(yǔ)言模型等組成的數(shù)組,數(shù)組每一項(xiàng)都表示對(duì)應(yīng)的的元有多少個(gè)。 char *unk_wrd ; // 詞典中不在語(yǔ)言模型中的詞。 int unk_id ;// 詞典中不在語(yǔ)言模型中的詞ID,這個(gè)ID指定為詞典的最后一個(gè)序號(hào)。 int n_unk_words ; int *unk_words ; private: bool *words_in_lm ; // 布爾類型數(shù)組,標(biāo)識(shí)詞是否在語(yǔ)言模型中。 }

vocab,用于構(gòu)建語(yǔ)言模型的詞典指針。詞典定義見(jiàn):詞典內(nèi)存存儲(chǔ)模型
entries,語(yǔ)言模型的所有ngram項(xiàng),是ARPALMEntry類型的一個(gè)二維數(shù)組。entries[0]存儲(chǔ)1-gram,entries[1]存儲(chǔ)2-gram,依此類推。
n_ngrams,整型數(shù)組,依次包含1-gram,2-gram,3-gram,....所包含的ngram項(xiàng)個(gè)數(shù)。
unk_wrd,詞典中可以不在語(yǔ)言模型中的詞。
unk_id,詞典中可以不在語(yǔ)言模型中的詞的ID,這個(gè)ID指定為詞典的最后一個(gè)詞序號(hào)。
n_unk_words,在讀語(yǔ)言模型之后,統(tǒng)計(jì)在詞典中,但沒(méi)有用來(lái)建立語(yǔ)言模型的詞個(gè)數(shù),如果沒(méi)有指定unk_wrd的話,是不允許的,就表示所有的詞典中的詞都應(yīng)該用來(lái)建語(yǔ)言模型。
unk_words,存儲(chǔ)6中統(tǒng)計(jì)的詞序號(hào)。
words_in_lm,這個(gè)標(biāo)識(shí)詞典中的詞是否在語(yǔ)言模型中出現(xiàn)。

轉(zhuǎn)載于:https://www.cnblogs.com/jonky/p/10154115.html

總結(jié)

以上是生活随笔為你收集整理的N-Gram的数据结构的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。