[英]"Token second\team not found and default index is not set" error in torchtext function
這是我的代碼,function 適用於訓練集,但對於測試集返回此錯誤RuntimeError: Token second\team not found and default index is not set
train_data, train_labels = text_classification._create_data_from_iterator(
vocab, text_classification._csv_iterator(train_csv_path, ngrams, yield_cls=True), False)
test_data, test_labels = text_classification._create_data_from_iterator(
vocab, text_classification._csv_iterator(test_csv_path, ngrams, yield_cls=True), False)
有誰知道出了什么問題?
詞匯表充當將str
轉換為int
的數據的查找表。 當給定字符串(在本例中為“second\team”)未出現在詞匯表中時,有兩種策略可以彌補:
KeyError
中調用{}[1]
時出現類似 KeyError 的情況{}.get(1, "I don't know!")
的默認值。 您的代碼目前正在執行 #1。 你似乎想要#2,你可以使用vocab.set_default_index
來實現。 構建詞匯時,添加specials=["<unk>"]
誇爾格,然后調用vocab.set_default_index(vocab['<unk>'])
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.