在語言模型檔案中更新詞彙以提高識別正確率

2021-05-26 05:47:58 字數 679 閱讀 7085

完成cmu sphinx toolkit到unicode的移植後,由於其自身支援的中文詞彙太少且過於簡單,實際生活中的很多詞彙無法識別,由於其缺少開發文件,只能在**跟蹤的過程裡心煩了。

於是想,肯定需要在詞典檔案中增加新詞彙吧,如果其本身是按照ciphone序列進行識別的話,應該就能識別出新詞彙。

後來在詞典檔案中增加了幾個特定詞彙,發現識別結果未發生任何變化。

於是又對dmp模型檔案進行分析,發現裡面也有詞典中的部分詞彙(預設為5000個,簡體中文,unigram),於是猜測是否需要更新詞彙到dmp模型檔案中呢?

由於dmp模型檔案本身是二進位制寫入的,於是在執行過程中,進行手動改寫原有部分詞彙為新詞彙(不以記憶體對映檔案開啟即可),最終發現最後識別出新詞彙了。

ok!結論:

由於cmu sphinx toolkit的開發文件幾乎沒有,而源**中的注釋資訊也不充分,於是純粹的跟蹤**的是件費神的事兒,看來某些時候還得有懷疑的心態並去嘗試,也許會得到意想不到的結果。

通過這次嘗試,最終確定sphinx是將dmp模型檔案和詞典檔案繫結在一起(內部建立索引),對於新詞彙兩者需要同時更新,下一步需要進行dmp模型檔案的剖析工作。當然dmp模型檔案中其實是存在其它資訊的,比如概率資訊等。想得到更精確的識別結果,可能也並不是簡單的更新詞彙就行,但至少也有了個突破口吧!

嗯,還得繼續琢磨。。。

ACI 模型(更新中)

fabric所包含的物理和邏輯元件都記錄在mim中 management information model mim可以使用樹狀的mit表示 management information tree 每個mit節點表示一組,或乙個可管理的物件 mo,managed object mo可以是物理交換機,...

Pyhanlp自然語言處理中的新詞識別

新詞發現 本 新詞發現 模組基於資訊熵和互資訊兩種演算法,可以在無語料的情況下提取一段長文字中的詞語,並支援過濾掉系統中已存在的 舊詞 得到新詞列表。呼叫方法 靜態方法 一句話靜態呼叫介面已經封裝到hanlp中 提取詞語 param text 大文字 param size 需要提取詞語的數量 ret...

Pyhanlp自然語言處理中的新詞識別

新詞發現 本 新詞發現 模組基於資訊熵和互資訊兩種演算法,可以在無語料的情況下提取一段長文字中的詞語,並支援過濾掉系統中已存在的 舊詞 得到新詞列表。呼叫方法 靜態方法 一句話靜態呼叫介面已經封裝到 hanlp中 提取詞語 param text 大文字 param size 需要提取詞語的數量 re...