<返回更多

使用sklearn中的贝叶斯算法建立药品分类任务

2020-09-14    
加入收藏

准备分类的训练数据

第一列为:输入

第二列为:输出

使用sklearn中的贝叶斯算法建立药品分类任务

药品分类数据

数据分词预处理

import jieba
cutname=lambda x : ' '.join(jieba.lcut(x))
data['药品名称']=data['药品名称'].Apply(cutname)

将数据拆分为训练集和测试集

x_train,x_test,y_train,y_test=train_test_split(data.药品名称,data.药品类型,test_size=0.3)

构建分类器

# 向量化(vectorizer) => 转换器(transformer) => 分类器(classifier)
from sklearn.feature_extraction.text import TfidfTransformer
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.naive_bayes import MultinomialNB #贝叶斯
text_clf = Pipeline([     ('vect', CountVectorizer()),
     ('tfidf', TfidfTransformer()),
     ('clf', MultinomialNB()),
 ])text_clf.fit(x_train, y_train)#训练

模型评估

print(classification_report(y_test,text_clf.predict(x_test)))
predicted = text_clf.predict(x_test)np.mean(predicted == y_test)  

 

使用sklearn中的贝叶斯算法建立药品分类任务

模型评估

使用sklearn中的贝叶斯算法建立药品分类任务

模型评估

调用分类器进行分类预测

text_clf.predict(['阿莫西林'])

 

使用sklearn中的贝叶斯算法建立药品分类任务

阿莫西林药品分类

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍最近更新
更多资讯 >>>