中文內容夾雜英文,出現[UNK],該如何解決?

#2
by sfkuo - opened

中文內容夾雜英文,出現[UNK],該如何解決? 謝謝

輸入的內容為:為監測與防治此新興傳染病我國於2020年1月15日起公告COVID19為第五類法定傳染病並於2020年1月21日確診第一起境外移入確診個案另於1月28日確診第1例本土個案為境外移入造成之家庭群聚感染

輸出結果:為監測與防治此新興傳染病。我國於2020年1月15日起公告[UNK][UNK][UNK][UNK][UNK]19為第五類法定傳染病,並於2020年1月21日確診第一起境外移入確診個案,另於1月28日確診第1例本土個案,為境外移入造成之家庭群聚感染。

你好,我在原本的解碼實現方式較為簡單,是直接運用模型預測的 token id 轉換回文字,所以當文字中包含模型不認得的文字(即詞表外)就會出現 [UNK]。
然而我們可以透過文字與token的映射表來取回[UNK]範圍的文字,如此便可以修復這個問題。

我簡單的示範一下這部分如何進行,調整後應該就可以解決你的問題:
https://colab.research.google.com/drive/1dE5UtjNIlESEpJURF0mEcHt_FmyuySdD?usp=sharing

由於要調整到zhpr會牽涉到較大的重構,目前我並沒有計畫去更新原本的解碼策略,但是歡迎提出PR :)

請讓這個議題懸掛在這邊,直到zhpr更新為止。

Sign up or log in to comment