創(chuàng)新互聯(lián)www.cdcxhl.cn八線動(dòng)態(tài)BGP香港云服務(wù)器提供商,新人活動(dòng)買多久送多久,劃算不套路!

本篇文章給大家分享的是有關(guān)Python怎么實(shí)現(xiàn)馬耳可夫鏈算法,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
python實(shí)現(xiàn)馬耳可夫鏈算法有個(gè)簡(jiǎn)便的方法,通過實(shí)現(xiàn)馬耳可夫鏈算法,來通過輸入的文本,“隨機(jī)”的生成一些有用的文本。
說明:
1. 程序使用了字典,字典和散列可不是一個(gè)東西,字典是鍵值對(duì)的集合,而散列是一種能夠常數(shù)階插入,刪除,不過可以用散列來實(shí)現(xiàn)字典。
2. 字典的setdefault()方法使得程序少了許多條件判斷。
3. random.choice()可以隨機(jī)取出一個(gè)序列中的元素。
4. 每?jī)蓚€(gè)前綴詞確定一個(gè)后綴。
實(shí)現(xiàn)代碼:
import random
import sys
MAXGEN = 10000
NONWORD = '\n'
w1 = w2 = NONWORD
statetab = {}
text = sys.stdin.read()
words = text.split()
for word in words:
statetab.setdefault((w1, w2),[]).append(word)
w1, w2 = w2, word
# add tail
statetab.setdefault((w1, w2),[]).append(NONWORD)
# show mar words
w1 = w2 = NONWORD
for i in xrange(MAXGEN):
suf = statetab[(w1,w2)]
t = random.choice(suf)
if t == NONWORD:
break
print t
w1, w2 = w2, t以上就是Python怎么實(shí)現(xiàn)馬耳可夫鏈算法,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見到或用到的。希望你能通過這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道。
當(dāng)前標(biāo)題:Python怎么實(shí)現(xiàn)馬耳可夫鏈算法-創(chuàng)新互聯(lián)
文章源于:http://chinadenli.net/article20/edsjo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、品牌網(wǎng)站建設(shè)、云服務(wù)器、靜態(tài)網(wǎng)站、用戶體驗(yàn)、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容