我正在构建一个NLP模型来对房地产文本进行分类。问题是,在创建数据束时,许多单词都被赋予了一个xxunk特殊标记。
我用来生成TextClasDataBunch对象的代码:
count = 0
error = True
while error:
try:
data_clas = TextClasDataBunch.from_csv(path, 'text.csv', vocab=data_lm.train_ds.vocab, bs=2)
error = False
print(f'failure count is {count}\n')
except:
count = count + 1
print(f'failure count is {count}')上面的代码将parcel control number, property account number, parcel id, Property SBL, and PARID分类为xxbos parcel xxunk number,xxbos parcel number,xxbos xxunk xxunk,xxbos xxunk acres,xxbos xxmaj xxunk。xxunk的优势可能会降低我的模型的有效性。
有没有一种方法可以在fast.ai标记器中包含稀有单词?我看过this的问题,但目前没有答案。
发布于 2021-04-26 18:56:42
对未知数的处理取决于任务。一般来说,保留'xxunk‘是好的。但是如果你想删除它,你可以指定你想要使用的词汇。
此外,如果可能的话,考虑将你的代码转移到fastai v2。它更容易使用,并且有更好的文档记录。
https://stackoverflow.com/questions/67244296
复制相似问题