#python #pandas #fasttext
#python #pandas #fasttext
Вопрос:
Я использую module.predict
из FastText. Согласно документации, количество отображаемых меток должно быть указано k
параметром. Однако в моем случае это не работает, и в результате я получаю только метку с наибольшей вероятностью. Вот мой код:
import pandas as pd
import fasttext as ft
# here you load the csv into pandas dataframe
df=pd.read_csv('../input_data/data.csv')
# here you load your fasttext module
model=ft.load_model('../model/model.bin')
# line by line, you make the predictions and store them in a list
predictions=[]
for line in df['subject']:
pred_label=model.predict(line, k=5, threshold=0.5)
predictions.append(pred_label)
# you add the list to the dataframe, then save the datframe to new csv
df[['prediction','value']]=predictions
print(df)
df.to_csv('csv_file_w_pred.csv',sep=',',index=False)
Что я делаю не так?
С уважением
Ответ №1:
Ваш порог равен 0,5. Только одна метка может быть выше этого одновременно, поскольку вероятности суммируются до 1.