[英]How to train and test a simple binary classifier from CSV file?
我用推文 bigram 創建了一個下面的 CSV 文件,我想訓練一個模型來預測標簽。 我在網上找到的大多數示例都包含帶有附加參數的數值特征,這使得它們難以理解。 在這里,我問了一個非常簡單的例子,以了解究竟應該用 python(使用 scikit-learn 之類的庫)來訓練和測試這個最簡單的 CSV 數據集的分類模型(任何模型)。
bigram, label
I love, 0
love you, 0
I hate, 1
hate you, 1
...
我希望這篇文章也能幫助其他機器學習初學者。
您正在嘗試解決 NLP 問題。 典型的機器學習算法不適用於文本。 您需要將此文本轉換為數字。 Python Spacy 或 NLTK 庫旨在解決這個問題。 通常它會創建一個單詞詞匯表,每個單詞都會被分配一個數字。 這意味着輸入將連接到數字列表,並且可以應用算法。
這是示例代碼,但是,還有更多內容。
from sklearn.pipeline import Pipeline
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.naive_bayes import MultinomialNB
from sklearn.svm import LinearSVC
# Naïve Bayes:
text_clf_nb = Pipeline([('tfidf', TfidfVectorizer()),
('clf', MultinomialNB()),
])
text_clf_nb.fit(X_train, y_train)
predictions = text_clf_nb.predict(X_test)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.