2

我只是遵循代碼here(對sklearn 0.17稍作修改)。在那個例子中,數據只是列表或numpy數組。現在我想在磁盤上準備一個玩具訓練數據集,並使用datasets.load_files加載它進行多標籤分類。但是,只需遵循load_files慣例,然後將同一文件複製到多個文件夾中,就不會爲dataset.target生成列表(又名。標籤集)。準備一個多標記分類的訓練數據集

那麼準備多標記分類數據集的正確方法是什麼?

回答

1

我不認爲load_files支持多標籤類,老實說,我從來沒有使用scikit學習加載數據,我總是使用熊貓進行初始數據加載和預處理。對於你的情況的一個選擇是將存儲你的數據爲csv,序列化的標籤作爲管道分隔列表

例如文件data.csv可能是

recipe_name,classes 
'stir fried broccoli',chinese|vegetarian 
'kung po chicken',chinese|meat 
'sauerkraut salad',vegetarian|polish 

而且需要按如下加載:

import pandas as pd 
df = pd.read_csv('data.csv') 
X_train = df.recipe_name 
y_train = df.classes.str.split('|') 
+0

謝謝@maxymoo,這是一個很好的觀點。我抓取和存儲多個文件,所以也許我只會使用標籤列表命名每個文檔,不再使用文件夾結構,並編寫一個函數來分析文件名並讀取內容... – treslumen

+1

如果您正在爬網,您可能會想要考慮使用像mongodb或postgres這樣的數據庫,從長遠來看,您可能會爲此感到高興,而不是有大量文件在浮動。你也可以在數據庫上做一些可以方便使用的預處理。 – maxymoo

相關問題