python如何分类数据_python – 如何训练大型数据集进行分类

根据对特征提取的精心提出,您可以使用scikit库中的tfidvectorizer从推文中提取重要的单词.使用默认配置,再加上一个简单的LogisticRegression,它给我0.8精度.希望有所帮助.

以下是如何使用它来解决问题的示例:

train_df_raw = pd.read_csv('train.csv',header=None, names=['label','tweet'])

test_df_raw = pd.read_csv('test.csv',header=None, names=['label','tweet'])

train_df_raw = train_df_raw[train_df_raw['tweet'].notnull()]

test_df_raw = test_df_raw[test_df_raw['tweet'].notnull()]

test_df_raw = test_df_raw[test_df_raw['label']!=2]

y_train = [x if x==0 else 1 for x in train_df_raw['label'].tolist()]

y_test = [x if x==0 else 1 for x in test_df_raw['label'].tolist()]

X_train = train_df_raw['tweet'].tolist()

X_test = test_df_raw['tweet'].tolist()

print('At vectorizer')

vectorizer = TfidfVectorizer()

X_train = vectorizer.fit_transform(X_train)

print('At vectorizer for test data')

X_test = vectorizer.transform(X_test)

print('at Classifier')

classifier = LogisticRegression()

classifier.fit(X_train, y_train)

predictions = classifier.predict(X_test)

print 'Accuracy:', accuracy_score(y_test, predictions)

confusion_matrix = confusion_matrix(y_test, predictions)

print(confusion_matrix)

Accuracy: 0.8

[[135 42]

[ 30 153]]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值