新闻资讯

「广州正规私家侦探公司」跨语言情感分析(中/英)

情感,文章_关于情感方面的文章_「情感好文章」

任务: NLPCC2013跨语言情感分类(英语->中文)

环境: Ubuntu服务器(4个英特尔(R)至强(R)CPU E5-2609 v3@1.90GHz),Anacanda2.4(64位),python2.7

基本方法: (1)中文支持向量机分类; (2)英文SVM分类; (3)英文SVM自学

评估标准: 准确性

准确性= #system_correct / #system_total

其中#system_correct指示准确分类的评论数,而#system_total指示测试集中的评论总数.

2. 数据预处理

主要包括XML源文件解析,语料库翻译和特殊符号的删除.

(1)解析XML

所需模块:

from xml.etree import ElementTree as ET  #引入解析xml文件的模块
importre
importgTrans

详细代码: googleTranslate.extractXMLEnglishText()

(2)调用google Translator API进行翻译

培训数据从中文翻译成英文,测试数据从中文翻译成英文. 翻译完成后,每个注释都有两种表示形式: 中文和英文.

所需模块:

importre
importstring
importurllib,urllib2  #引入接入网络接口API的模块
importgTrans

详细代码: googleTranslate.translate(文本,f,t)

参数说明: text是输入文本,f是原始语言,t是目标语言

(3)删除标点符号

语料库中有很多符号会影响分类效果,因此需要单独删除.

详细代码: googleTranslate.delPunctuationStr(str)

3. 模型训练

def subClassifier(language):
     #合并同语言的训练数据,提取训练数据,代码省略
     #classifier() 训练模型
classifier(train_data, train_target,test_data, test_target, language)

调用模块: 调用python的机器学习模块sklearn并使用pipline简化该过程.

算法: 朴素贝叶斯,支持向量机,随机森林.

(1)英语分类器

def classifier(train_data, train_target, test_data, test_target, ‘english’)

培训数据: 标记为英语的语料库+少量标记为中文的语料库翻译为英语标记为语料库

测试数据: 将未标记的中文测试语料库翻译成英语语料库

参数设置:

以SVM为例:

text_clf_svm = Pipeline([('vect', CountVectorizer(stop_words ='english')),
     ('tfidf', TfidfTransformer()),
     ('clf', svm.SVC( C=1,kernel = 'linear')),
     ])

(2)中文分类器

def classifier(train_data, train_target, test_data, test_target, ‘chinese’)

训练数据: 将带注释的英语语料翻译成中文带注释的语料+少量带注释的中文带语

测试数据: 未标记的中文测试语料

参数设置: 与(1)相同

(3)自学习分类器

def coTrain(train_data_list, train_target_list, iternum, language)

联系我们

CONTACT US

广州及时雨私家侦探(广州本地私家侦探公司)

微信:185-2064-4544

电话:185-2064-4544

地址:广州市天河区

广州出轨调查