Tokenizer字典

      在〈Tokenizer字典〉中尚無留言

keras 的 Tokenizer 是將單字轉成數位化的好工具,相關函數及運作原理如下。

安裝套件

製作字典需安裝如下套件

pip install scikit-learn nltk gensim xlrd openpyxl pandas tensorflow==2.10.1

Tokenizer的用途

Tokenizer 把傳入的文章轉成單字,然後給予每個單字一個編號,編號由 1 開始。每個句子必需置於 list 之中。tok.fit_on_texts() 就是開始執行編號變成字典的方法,tok.word_index 則可以列印這部字典編碼的結果。

🔒 底下內容僅限會員閱讀。

立即登入

tok.texts_to_sequences() 把每單字轉成編碼格式。如果單字不在字典內,則略過,比如下面的 “hello” 及 “kevin”,不在字典內就不顯示。

🔒 底下內容僅限會員閱讀。

立即登入

keras.utils 裏的 pad_sequences() 會將每個句子的編碼擴展成 maxlen 的長度,這是為了將所有的句子變成一樣的長度,長度不足就以 0 填入。

🔒 底下內容僅限會員閱讀。

立即登入

儲存字典

當文章很龐大時,讀取的時間就會非常久,製作字典也很耗時。所以把製作好的字典儲存起來,待下次要使用時直接載入字典即可,這樣就不用重讀文章重新製作字典。

底下代碼 dictory.py 將讀入160 萬篇文章,刪除停用詞及不相關的單字後,製作成字典。最後再使用 pickle.dump() 再將字典儲成 eng_dictionary.pkl 檔。

🔒 底下內容僅限會員閱讀。

立即登入

讀入字典

讀入字典的方式,使用  pickle.load() 方法

🔒 底下內容僅限會員閱讀。

立即登入

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *