文章自动打分算法

作者&投稿:暴曲 (若有异议请与网页底部的电邮联系)
~

文章自动打分简称 AES (Automated Essay Scoring),AES 系统利用 NLP 技术自动对文章进行打分,可以减轻阅卷人员的负担。目前有不少大型的考试都采用了 AES 算法进行作文打分,例如 GRE 考试,GRE 考试会有一位阅卷老师和 AES 系统一起打分,如果 AES 的分数和阅卷老师的分数相差过大,才有再增加一位阅卷老师进行打分。本文主要介绍两种比较经典的自动打分算法。

自动打分算法从优化目标或者损失函数来说大致可以分为三种:

传统的自动打分算法通常会人工设置很多特征,例如语法错误,N 元组,单词数量,句子长度等,然后训练机器学习模型进行打分。目前也有很多使用了神经网络的方法,通过神经网络学习出文章的特征。

下面介绍两种打分算法:

出自论文《Regression based Automated Essay Scoring》。给定很多需要打分的文章后,首先需要构造出文章的特征,用到了人工设置特征和向量空间特征。

拼写错误 Spelling Errors :使用 pyenchant 包统计出拼写错误单词数量占总单词数量的比例。

统计特征 Statistical Features :统计字符数量,单词数量,句子数量,段落数量,停止词数量,命名实体数量,标点符号数量 (反映文章的组织情况),文本长度 (反映写作流畅程度),不同词汇的数量与总单词数的占比 (反映词汇量水平)。

词性统计 POS count :统计各种词性出现的频率,例如名词,动词,形容词,副词等,词性通过 nltk 包获取。

语法流畅特征 Grammatical Fluency :使用 link grammar (链语法) 解析句子,然后统计 links 的个数;统计 n 元组出现的概率;统计词性 n 元组出现的概率。

可读性 Readability :可读性分数是衡量文本组织以及文本句法和语义复杂程度的一个指标。采用了 Kincaid 可读性分数作为一个特征,计算公式如下

本体特征 Ontological Features :为每个句子打上标签,例如研究、假设、主张、引用、支持和反对等。

可以将一篇文章投影到一个向量空间模型中 (VSM),此时文章可以用向量空间中的一个特征向量表示,例如可以用 one-hot 编码表示一篇文章,长度等于词汇表长度,如果一个单词出现在文章中,则对应的位置置为 1,如下:

另外也可以使用 TF-IDF 向量表示文本,但是采用这种表示方式单词之间不存在任何关联,为了解决这个问题,文章中使用了一个单词相关性矩阵 W 加上线性变换从而引入单词之间的相关性。

单词的相关性矩阵 W 通过 word2vec 生成的词向量计算,即 W (i,j) = 单词 i 和单词 j 词向量的余弦相似度。

最后,为了考虑文章中单词的顺序问题,将文章拆分成 k 个段落,然后分别计算向量空间特征,融合在一起。

得到上述特征之后,采用 SVR 算法进行回归学习。数据集是 kaggle ASAP 比赛数据集,数据集包含 8 个集合的文章,评价指标采用 KAPPA 和相关系数,以下是一些实验效果。

这是在 8 个集合上分别使用 linear kernel 和 rbf kernel 的效果。

这是和人类打分者的对比。

以下内容出自论文《Neural Networks for Automated Essay Grading》,可以采用回归或者分类的方法进行训练,模型如下图所示。

论文中主要使用了三种方法构造出文章的特征向量:

论文中主要用了三种神经网络结构,NN (前向神经网络),LSTM 和 BiLSTM。所有的网络都会输出一个向量 h(out),根据 h(out) 构造出损失函数,下面分别是回归和分类的损失函数。

回归损失

分类损失

第一种模型:NN (前向神经网络)

使用了两层前向神经网络,网络输入的文章特征向量是 Glove 词向量的平均值或者训练的词向量平均值。h(out) 的计算公式如下。

第二种模型:LSTM

LSTM 模型接受的输入是文章所有单词的词向量序列,然后将 LSTM 最后输出的向量作为文章的特征向量 h(out)。

第三种模型:BiLSTM

因为文章通常比较长,单向的 LSTM 容易丢失前面的信息,因此作者也使用了 BiLSTM 模型,将前向 LSTM 和后向 LSTM 模型的输出加在一起作为 h(out)。

添加 TF-IDF 向量

以上模型的输出 h(out) 都可以再加上 TF-IDF 向量提升性能,首先需要对 TF-IDF 向量降维,然后和模型的输出拼接在一起,如下图所示 (BiLSTM 为例子)。

《Regression based Automated Essay Scoring》
《Neural Networks for Automated Essay Grading》




知网的查重率是怎么算的
知网查重率=论文中重复字数\/论文总字数。1、知网查重系统按照连续出现13个字符类似就会判为重复的标准计算论文重复率。当用户将论文上传至查重系统中时,查重系统会对论文进行分层处理。2、之后对每一章节进行查重,查重系统会计算每一个章节的重复率,在查重完毕后,会自动计算论文的总重复率,并标注在...

数据结构及算法分析目录
第3章,我们探讨栈与队列,这两个数据结构在编程中极其重要。3.1和3.2分别讲解了栈和队列的定义、操作以及存储结构,3.3小结和习题让你掌握核心概念。后续章节涵盖更多主题,如4.1串的深入理解、5.1数组的应用、6.1树和二叉树的构造,以及7.1图论的入门。8章查找算法和9章排序算法,分别处理信息...

为什么电子签名、电子公章已经渐渐取代传统签名盖章了?
第一个是标识签名的身份,通过包括但不限于姓名、身份证、手机号、指纹和人脸识别等在内的关键要素或技术,可以确保电子合同签署主体的真实性。第二个是防篡改,通过哈希算法,国际上的哈希算法是用一种算法对某一个具体的文件进行计算,会得到串码,串码是否被改动意味着文件是否被改动。第三个是时间...

算法学:计算精髓目录
确保信息的安全与有效性。最后,更宏伟蓝图部分,第13章将算法学与软件工程相结合,第14章讨论反应式系统,而第15章则揭示了算法学与智能的未来联系。文章末尾,后记提供了习题选解,供读者进一步练习和巩固所学知识。同时,参考书目注释和英汉对照表为深入研究者提供了丰富的参考资料。

算法设计与分析:C++语言描述目录
本文将深入探讨算法设计与分析,特别使用C++语言进行描述。首先,我们从基础开始:第一部分:算法与分析基础 第一章,介绍算法问题求解的基本概念和原理,帮助理解如何运用算法解决实际问题。第二章,深入剖析算法分析,讲解时间复杂度和空间复杂度等核心概念,以衡量算法的效率。接着,我们探索特殊的数据结构在...

豆瓣评分是怎么来的?
这个评分会自动出现在豆瓣各处,中间没有审核,平时也没有编辑盯着看。每过若干分钟,程序会自动重跑一遍,把最新打分的人的意见包括进来。”由于豆瓣、时光网不同于烂番茄网站上的专业影评人评分,任何人都可以在上面打分(甚至在影片上映前就可以打分),所以存在着有人为了各自的利益和目的而恶意刷高...

有人对九章算法有了解吗?可以介绍一下吗
第八章“方程”:一次方程组问题;第九章“勾股”:利用勾股定理求解的各种问题.《九章算术》的数学成就 《九章算术》中的数学成就是多方面的: (1)、在算术方面的主要成就有分数运算、比例问题和“盈不足”算法。《九章算术》是世界上最早系统叙述了分数运算的著作,在第二、三、六章中有许多比例...

第十章 数据推荐算法——基于潜在因子算法的推荐
基于潜在因子算法也是广泛应用与推荐领域的算法,之所以称其为潜在因子,其原因在于这些因子不是通过表面的现象即可实施推荐的,是通过用户的历史行为挖掘出用户本身的特征,以及分析现有商品的本质特征进行的推荐。它是在各个领域都可以采用的推荐算法,推荐效果同因子的分析效果有很大关系。基于流行度的推荐...

算法设计与分析的作品目录
第1章 入门第2章 渐近符号第3章 算法分析方法第4章 递归第5章 分治算法第6章 动态规划第7章 贪心算法第8章 图算法第9章 网络流与匹配第10章 线性规划第11章 NP完全理论第12章 回溯第13章 分支限界第14章 启发式搜索第15章 数论第16章 计算几何参考文献 ...

算法导论第六章-堆排序(一)
ps:最近一直忙于接入安卓sdk,很少有时间去看算法导论了。。今天白天陪妹子看了场电影——超时空同居,感觉还不错,男主最终选择了善良抛弃了暴富,值得称赞,但从整部片子来看,2018的上海确实充满着利欲熏心的感觉,这也是现在社会的主要基调吧,挺令人遗憾的。深夜给算法导论第六章开个头,顺便试了...

秦都区15935311834: 计算机自动评判英文作文是什么原理? -
葛素异舒: 主要应用统计中的回归原理,以文章的一些容易量化的表面变量(如文章长度,单词长度,标点符号,语法等)作为自变量,而已文章应得的分数作为因变量,通过观察文章可量化的一些因素来给文章打分.

秦都区15935311834: 晋江文学城积分算发 -
葛素异舒: 新版的积分公式如下:全文点击数/章节数*Ln(全文字数)*平均打分+(Ln(书评字数)*书评打分)之和+精华书评特别加分(说明:ln只是一个大概的参数,实质的公式里,log的底数是一个经过反复调节的数,所以,该公式只能大致指明各项因素的比重,无法进行严格代入计算.) 除楼主所说以外每章3000-5000字为佳,此外就是点击收藏和评论(打分有效)

秦都区15935311834: 晋江发表小说积分是怎么算的? -
葛素异舒: 新版积分公式首先取消原来的1~10十档评分制,改为-2~2五档评分制,鲜花加分,拍砖扣分,灌水聊天不变分,比原来的只加不减,不能随意灌水更加灵活合理. 新版的积分公式如下: 全文点击数/章节数*Ln(全文字数)*平均打分+(Ln(...

秦都区15935311834: ac自动机是什么,会帮你自动ac吗 -
葛素异舒: 简要介绍一下AC自动机:Aho-Corasick automation,该算法在1975年产生于贝尔实验室,是著名的多模匹配算法之一.一个常见的例子就是给出n个单词,再给出一段文章(长度是m),让你找出有多少个单词在文章里出现过.要搞懂AC自动机,先得有字典树Trie的基础知识(也有人说需要KMP的知识,我觉得暂且不要理会这个.但是在看这篇文章之前,Trie字典树,你是必须要先搞懂.与其他字符匹配不同,KMP算法是单模式串的字符匹配算法,AC自动机是多模式串的字符匹配算法.

秦都区15935311834: 可以写作文自动评分的学习软件 -
葛素异舒: 估计你说的是OFFICE公软件.你可以用微软的MicrosoftOffice,版本很多,也可以用国产的WPS,版本也很多,不知你是不是要的这个.

秦都区15935311834: 怎么给百度文库的文章评分 -
葛素异舒: 打开文档页面,右侧上方有文档信息一栏,金色的数字就是打分结果.将鼠标浮动在数字上面,会有五星显示,点击相应分数就可以了.

秦都区15935311834: 阅卷老师揭秘高考作文是如何评分 -
葛素异舒: 语文作文实行双评,当双评差值(两位老师给同一篇作文打的分数差值)小于双评差值阈限时,阅卷系统以双评的两位评卷老师的平均值作为该题的得分.双评差值阈限一般不大于作文分值的六分之一,60分作文的双评差值阈限一般是6分.当...

秦都区15935311834: 新浪博客等级的算法
葛素异舒: 一、博客访问的积分:每点击一次博客就有一分 积分是新浪博客对用户努力的认可和奖励.鼓励用户坚持写博,让记录、交流、分享成为健康的生活新方式.用户可以用获得积分换取更多的新服务.在新版博客中所有用户积分起点为 0,旧版用...

秦都区15935311834: 新浪博客等级与积分算法以及如何提高访问量
葛素异舒: 鼓励用户坚持写博,让记录、交流、分享成为健康的生活新方式.用户可以用获得积分换取更多的新服务.在新版博客中所有用户积分起点为 0,旧版用户主动升级博客将获赠 100 积分. 获取积分很简单: 1.一天内有过博客登录记录的获得1 ...

秦都区15935311834: p - >fail什么意思AC自动机里的. -
葛素异舒:[答案] 一个常见的例子就是给出n个单词,再给出一段包含m个字符的文章,让你找出有多少个单词在文章里出现过. 要搞懂AC自动机,先得有模式树(字典树)Trie和KMP模式匹配算法的基础知识. AC自动机算法分为3步:构造一棵Trie树,构造失败指针...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网