達觀杯文字智慧型處理挑戰賽

2021-08-29 09:58:06 字數 1227 閱讀 5961

筆者嘗試了一下達觀杯的比賽,**如下圖所示:

import pandas as pd

import imp

from sklearn.linear_model import logisticregression

from sklearn.feature_extraction.text import countvectorizer

df_test = pd.read_csv(r'testset.csv')

df_train = pd.read_csv(r'trainset.csv')

df_train.drop(columns=['article','id'],inplace=true)

df_test.drop(columns=['article'],inplace=true)

vectorizer = countvectorizer(ngram_range=(1, 2),min_df=3,max_df=0.9,max_features=10000)

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

lg = logisticregression(c=4,dual=true)

lg.fit(x_train,y_train)

y_test = lg.predict(x_test)

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)

print("完成")

執行結果是:

pandas.errors.parsererror: error tokenizing data. c error: out of memory

這是因為我的電腦記憶體太小,導致了記憶體溢位,因此換一台電腦就可以得到最終得分為72分的答案了。筆者最終排名位於全國前300名,算是乙個個人感覺還不錯的成績了。

--------------------- 

達觀杯文字智慧型處理挑戰賽練習

比賽官方對資料的說明是資料報含兩個檔案 train set.csv和test set.csv 一.初識資料 train set.csv 此資料集用於訓練模型,每一行對應一篇文章。文章分別在 字 和 詞 的級別上做了脫敏處理。共有四列 第一列是文章的索引 id 第二列是文章正文在 字 級別上的表示,即...

達觀杯 文字智慧型處理挑戰賽 02

原理 將每篇文章看成一袋子詞,並忽略每個詞出現的順序。即將整段文字以詞為單位切分開,然後每篇文章可以表示成乙個長向量,向量中的每一維代表乙個單詞,而該維對應的權重則反映了這個詞在原文章中的重要程度。權重與詞在文字 現的頻率有關,而其中不考慮詞與詞之間的上下文關係。詞袋模型的三步驟 分詞 統計修訂詞特...

達觀杯文字智慧型挑戰賽任務二(TF IDF)

簡介 tf idf term frequency inverse document frequency 是一種用於資訊檢索與資料探勘的常用加權技術。tf意思是詞頻 term frequency idf意思是逆文字頻率指數 inverse document frequency 原理 tfidf的主要思...