首頁 > 軟體

深入理解PyTorch中的nn.Embedding的使用

2022-07-04 14:00:20

一、前置知識

1.1 語料庫(Corpus)

太長不看版: NLP任務所依賴的語言資料稱為語料庫。

詳細介紹版: 語料庫(Corpus,複數是Corpora)是組織成資料集的真實文字或音訊的集合。 此處的真實是指由該語言的母語者製作的文字或音訊。 語料庫可以由從報紙、小說、食譜、廣播到電視節目、電影和推文的所有內容組成。 在自然語言處理中,語料庫包含可用於訓練 AI 的文字和語音資料。

1.2 詞元(Token)

為簡便起見,假設我們的語料庫只有三個英文句子並且均已經過處理(全部小寫+去掉標點符號):

corpus = ["he is an old worker", "english is a useful tool", "the cinema is far away"]

我們往往需要將其詞元化(tokenize)以成為一個序列,這裡只需要簡單的 split 即可:

def tokenize(corpus):
    return [sentence.split() for sentence in corpus]


tokens = tokenize(corpus)
print(tokens)
# [['he', 'is', 'an', 'old', 'worker'], ['english', 'is', 'a', 'useful', 'tool'], ['the', 'cinema', 'is', 'far', 'away']]


IT145.com E-mail:sddin#qq.com