论文部分内容阅读
中文现代小说的作者识别实际上一种文本分类问题,即根据作者写作风格进行分类,从而识别出未知作品所归属的作者。笔者选择基于五四运动时期的现代小说作为研究对象,是因为五四时期作品的时代跨度小,作者笔锋相近,通过对作者文风相近的文章进行分类,可以达到文本分类中按照作者进行分类的最好效果。文本分类的主要流程是获取数据、文本预处理、特征提取、设计程序模型、使用程序模型、预测结果。笔者所做的工作如下:首先是获取数据,使用爬虫技术从网络爬取数据,本文项目语言选择Python,使用Scrapy框架爬取数据。笔者选择7名作者共164篇文章,并按照8:2的比率分成训练集和测试集。文本预处理部分包括数据清洗、分词、文本表示等。从网络爬取的数据包含很多Html语句和空行等,首先清除掉;之后利用Jieba分词工具进行中文分词处理,分词后的文本中包含16万个词汇,属于非结构化的自然语言,想要机器可以识别,需要表示成结构化的机器语言,即文本表示;文本表示出笔者使用词袋模型,把所有词语表示成机器可以识别的数字语言,比如139863、52411等。为了达到文本分类的更好效果,笔者使用TFIDF进行特征提取。根据本文按照作者写作风格进行分类的特点,对于TFIDF公式中的TF进行额外处理。TFIDF代码中有去掉高频词部分,对于文章中经常出现的词语像“啊”、“吧”之类,在特征提取前先剔除掉。根据这一特征,笔者想到一些像人名、地名等的高频词并不能体现作者写作风格,却在机器学习中起重要作用。在特征提取后,去掉这些词语并不影响作者识别的效果。多次测试表明,当TDIDF为0.09时,出现的词语大都是人名、地名等,去掉这些高频词能提高作者识别的准确率。目前经常使用的机器学习算法有朴素贝叶斯、逻辑回归、支持向量机、K近邻、决策树、神经网络等。笔者尝试分别使用这些模型建模,并进行参数调优,使各模型达到最佳效果后进行多次测试,发现朴素贝叶斯、支持向量机、神经网络在测试中准确率可以达到100%,多次测试后神经网络预测平均效果最佳,笔者选择使用神经网络作为最佳测试模型,并添加TFIDF特殊处理进行最终测试。评测标准使用针对训练集的精确率、召回率、f1-score,和针对测试集的准确率,为了防止过拟合和欠拟合,测试过程会综合各项指标最为依据。本文的改进点有两处:一处是对于TFIDF特征提取后去掉高频词,通过多次测试找到TFIDF平衡值为0.09时,多是人名、地名等,去掉它们可以提高作者识别的准确率;第二处是作者风格相似度的量化,推演出计算作者相似度的公式,即送入测试文本,根据测试公式便可以计算出作者之间的相似度。作者相似度的量化对于按照作者写作风格分类有借鉴价值。文本所有工作都是笔者在导师的指导下独立完成,通过本文的研究,笔者步入了人工智能的门槛,以后会继续对于TFIDF和神经网络进行研究,希望能够为中文文本分类添砖加瓦,也希望本文的分类成果能够对于作者识别研究的工作者有所帮助。