1 Star 0 Fork 2

daniufei/Movie-QA-System

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
question_classification.py 1.59 KB
一键复制 编辑 原始数据 按行查看 历史
aaa 提交于 2019-05-16 09:47 . success
#-*- coding: UTF-8 -*-
#对问题进行分类
from sklearn.naive_bayes import MultinomialNB
from sklearn.feature_extraction.text import TfidfVectorizer
import jieba
class Question_classify():
def __init__(self):
# 读取训练数据
self.train_x,self.train_y=self.read_train_data()
# 训练模型
self.model=self.train_model_NB()
# 获取训练数据
def read_train_data(self):
train_x=[]
train_y=[]
# 读取文件内容
with(open("./questions/label.txt", "r", encoding="utf-8")) as fr:
lines = fr.readlines()
for one_line in lines:
temp = one_line.split(' ')
#print(temp)
word_list=list(jieba.cut(str(temp[1]).strip()))
# 将这一行加入结果集
train_x.append(" ".join(word_list))
train_y.append(temp[0])
return train_x,train_y
# 训练并测试模型-NB
def train_model_NB(self):
X_train, y_train = self.train_x, self.train_y
self.tv = TfidfVectorizer()
train_data = self.tv.fit_transform(X_train).toarray()
clf = MultinomialNB(alpha=0.01)
clf.fit(train_data, y_train)
return clf
# 预测
def predict(self,question):
question=[" ".join(list(jieba.cut(question)))]
test_data=self.tv.transform(question).toarray()
y_predict = self.model.predict(test_data)[0]
print("questions type:",y_predict)
return int(y_predict)
if __name__ == '__main__':
qc=Question_classify()
qc.predict("暗道上映时间")
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/daniufei/Movie-QA-System.git
git@gitee.com:daniufei/Movie-QA-System.git
daniufei
Movie-QA-System
Movie-QA-System
master

搜索帮助

D67c1975 1850385 1daf7b77 1850385