之前在做文本分類時,發(fā)現(xiàn)在不同業(yè)務(wù)上的文本分類流程是一致的,即輸入輸出一致,故把此抽離出來形成一個基礎(chǔ)工具,方便對數(shù)據(jù)有基礎(chǔ)的感知和對算法有基本的選型。不管你是做前端、后端還是算法,都可以拿來一試。
一、簡介
本工具主要是基于scikit-learn和tensorflow-keras而形成,主要目的是為了提供更加簡單快捷的baseline搭建流程。主要組件都是基于業(yè)務(wù)實踐而選擇的較為高效的方法。
(1)特征級別:字級別(char)和詞級別(word)
(2)特征表示:詞頻、ngram、tfidf、word2vec等
(3)模型:貝葉斯、邏輯回歸、fastText、TextCNN、TextRNN等
(4)模型集成:串聯(lián)和并聯(lián)等
(5)模型評估:precision_score、recall_score、f1_score等
二、使用
2.1 第三方包模式
python setup.py install(or develop) # 可以跟使用其他python程序包一樣使用該工具包
2.2 命令行模式
# 模型訓(xùn)練
python youmin_textclassifier_train.py -n="test" -t="./data_sample/train_data.txt" -e="./data_sample/test_data.txt" -o="./data/"
# 模型預(yù)測
python youmin_textclassifier_predict.py -n="test" -o="./data/" -p="./data_sample/predict_data.txt" -d="./data/predict.txt"
2.3 項目引用包模式
cd examples
python3 classify.py base_on_list
python3 classify.py base_on_file
python3 classify.py base_on_dir
附錄
[1] 感謝TextGrocery
[2] 項目詳情頁youmin_textclassifier,如果覺得對自己有幫助的小伙伴請幫忙star~~
[3] 個人博客DebugNLP,歡迎各路同學(xué)互相交流
[4] 本文所有代碼只用于技術(shù)交流,拒絕任何商用活動,使用者如有任何問題、建議和意見,歡迎發(fā)郵件至 yongjin.weng@foxmail.com