亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何解決 tf-idf 詞匯錯誤?

如何解決 tf-idf 詞匯錯誤?

瀟瀟雨雨 2023-10-25 10:21:50
我在訓練數據上從 sklearn 訓練了一個 TFIDF,當我將詞匯應用到新數據上時,它給了我一個關鍵錯誤,因為它沒有從中學習。我該如何解決它?這是我的代碼。   def feature_engineering(self, inputs):        x = [self.analyser(seq) for seq in inputs]        return x    def fit(self, inputs):        if self.vocabulary and self.analyser:            pass        else:            vectorizer = TfidfVectorizer(                ngram_range=(self.config_dict["min_n_gram"], self.config_dict["max_n_gram"]), lowercase=False,                stop_words=None,min_df=2)            vectorizer.fit(inputs)            self.analyser = vectorizer.build_analyzer()            self.vocabulary = vectorizer.vocabulary_            save_object(os.path.join(self.feature_extraction_folder, "analyzer.pickle"), self.analyser)            save_object(os.path.join(self.feature_extraction_folder, "vocabulary.pickle"), self.vocabulary)    def transform(self, inputs):        vocab_size = len(self.vocabulary)        inputs = self.feature_engineering(inputs)        inputs = [[self.vocabulary[x] for x in l] for l in inputs]##This line generate an error        return np.array(inputs)
查看完整描述

1 回答

?
慕少森

TA貢獻2019條經驗 獲得超9個贊

使用 if 語句解決我的問題

inputs = [[self.vocabulary[x] for x in l if x in self.vocabulary.keys()] for l in inputs]```


查看完整回答
反對 回復 2023-10-25
  • 1 回答
  • 0 關注
  • 136 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號