达观杯自然语言处理初步代码

此为深度之眼训练营学习笔记,代码源自该训练营,数据由达观杯竞赛提供。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【学习笔记】本代码来自深度之眼训'j练营,数据是达观杯竞赛提供数据

import pandas as pd
from sklearn.linear_model import LogisticRegression
from sklearn.feature_extraction.text import CountVectorizer

print("开始加载数据")
df_train = pd.read_csv('E:/机器学习/new_data/train_set.csv')
df_test = pd.read_csv('E:/机器学习/new_data/test_set.csv')
df_train.drop(columns=['article', 'id'], inplace=True)    #删除列
df_test.drop(columns=['article'], inplace=True)
 
print("数据加载完成")

#ngram_range:词组切分的长度范围
#max_df:最大词频或次数,大于此值,不会被当作关键词
#min_df:最小词频或次数,小于此值,不会被当作关键词
#max_features:默认为None,可设为int,对所有关键词的term frequency进行降序排序,只取前max_features个作为关键词集
vectorizer = CountVectorizer(ngram_range=(1,2), min_df=3, max_df=0.9, max_features=100000)
vectorizer.fit(df_train['word_seg'])
x_train = vectorizer.transform(df_train['word_seg'])
x_test = vectorizer.transform(df_test['word_seg'])
y_train = df_train['class']-1

print("开始拟合数据-用逻辑回归")
lg = LogisticRegression(C=4, dual=True)
lg.fit(x_train, y_train)

print("开始预测类别")
y_test = lg.predict(x_test)

print("预测结果输出到文件")
df_test['class'] = y_test.tolist()
df_test['class'] = df_test['class'] + 1
df_result = df_test.loc[:, ['id', 'class']]
df_result.to_csv('./result.csv', index=False)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值