Volume:Proceedings of the Human Language Technology Conference of the North American Chapter of the Association for Computational Linguistics: HLT-NAACL 2004
Authors:Kevyn Collins-Thompson | James P Callan 、
Year:2004
Venues:NAACL | HLT

数据不公开:
550英文document,12个等级,448715个token,17928个type,来自不同主题

1 introduction
公式的方法~线性回归模型
我们的统计模型~
1)捕捉每个单词的更细节的特征~我们在更短的文章甚至小于10个单词时,准确率也很高
2)统计的方法可以获得概率分布,而不仅仅是一个预测

2 Description of Web Corpus
token定义为任何一个word的出现
type定义为一个word字符串,无论出现多少次也只算一次
数据:550英文document,12个等级,448715个token,17928个type,来自不同主题
我们的假设是:即使文本内容的主题不一样,单词的使用模式和文本的难度是有明显关系的

3 Related Work
之前的可读性评价依赖于两个主要因素:
1)the familiarity of semantic units(words or phrases)语义单元的熟悉度,如word或短语
2)the complexity of syntax. 句法的复杂
最为常用的是‘vocabulary-based measures’:
使用一个单词列表来估计语法难度,而不是number of syllables in a word,例如以下都是用单词列别的一些类型来估计语法难度
the Lexile measure (Stenner et al., 1988)
the Revised Dale-Chall formula (Chall and Dale,1995)
the Fry Short Passage measure (Fry, 1990).
--Lexile (version 1.0) uses the Carroll- Davies-Richman corpus of 86,741 types (Carroll et al., 1971);
--Dale-Chall uses the Dale 3000 word list;
Fry's Short Passage Measure uses Dale & O'Rourke's
--‘The Living Word Vocabulary’ of 43,000 types (Dale
and O'Rourke, 1981)

和Si and Callan(2001)这篇最早的也是唯一的使用语言模型的方法相比:
2001:只使用了science一个主题,分为3个难度,贝叶斯,没有实现特征选择方法的分析,所以并不知道它们的分类是是否将话题预测和难度预测混为一谈
我们:不限主题,12个难度等级,训练集更大,也使用贝叶斯,但是每个类别并不是独立的,我们使用了混合等级模型,大大提高了准确率。也没有把句子长度作业一个句法成分。测试了特征提取以及模型的泛化能力

4 The Smoothed Unigram Model

多项式和ngram的理解~~~~嘻嘻~~

4 The Smoothed Unigram Model
我们根据12个等级训练了12个语言模型,模型是基于unigrams,假设给定难度等级的情况下一个token的概率适合周围的token无关的。一个unigram语言模型是由types列表和它们各自的概率所定义的。即使这个一个weak model,它也能够比更复杂的模型用更少的数据训练,最后得到好的准确率。
4.1 Prediction with Multinomial Naïve Bayes

5 Implementation
5.1 smoothing
在测试集中会不包含训练集里的一些类型或者是很少出现,这就需要在训练的模型中采用smoothing。因此,我们调整了概率分布,将观察到的类型的概率转移一部分到没出现或出现很少的类型中。
首先对每个等级的模型分别做smoothing,使用了Simple Good-Turing smoothing;接下来,唉等级语言模型之间使用的smoothing。这不是标准的文本分类方法,标准的文本分类方法是要把每个类别独立对待的。然而对于文本难度而言,我们假设nearbygrade models是高度相关的,因此即使在一个grade的训练数据当中不包含某个类型,我们也可以通过interpolating
estimates from nearby grade models来估计出它的概率。例如,如果type w旨在至少一个grade语言模型中出现过,我们可以在所有grade models中用带有高斯核的回归来做,得到一个平滑值P(w|G)。如果w没有在任何模型中出现过,就是用传统的semantic变量,用一个type length的函数来估计。

5.2 Feature Selection
第一步是去除停用词,也就是频率最高的types。但是因为在难度较低的文本里,停用词占了大多数,所以我们不去除停用词。
第二步是移除低频词,也就是每个模型中出现次数少于2-5次的词。但是因为我们做平滑的时候是在模型之间做的,所以我们选择了在整个语料中出现次数少于3次的词。
不想普通的文本分类场景,我们也希望避免highly grade-specific的类型。例如,在grade3 model中出现频率非常高的一个type却从来没有在其他model中出现过,就更可能是site-specific noise而不是genuine vocabulary item。因此我们去除了grade低于3的model里的任何出现过的types,无论出现的频率有多么高。我们基于剩下的types的预测特定grade的能力来对剩下的types进行打分。我们使用了lag-odds ratio的形式,它对多项式贝叶斯分类器有很好的性能。

5.3 Implementation Specifics
为了降低prediction variance,对模型做了两个改变
1)没有选择可能性最大的grde语言模型,而是计算了top N结果的加权平均,N=2,权重是似然概率的相对差异
2)考虑到更长的文本中的vocabulary variation,我们把document分成了100token组成的passages。然后对每个passage做了一个grade预测。之前有人的工作表明,一个文本75%的理解率是一个理想的目标,所以我们选择占到75%分布的对应的geade level来获得最后的预测,必要的时候要用到插值。

6 evaluation
评估包括model的四个方面
1)衡量在web语料上训练的模型在别的以前没有出现过的语料上的泛化能力
2)passage长度对accuracy的影响
3)评估额外的训练数据对模型accuracy的影响
4)model在别的语言中的适用能力,实验中用的法语
6.1 Overall Accuracy and Generalization Ability
对比的accuracy:
我们的mdoel
UNK:text中unknown的比例
types:per 100-token passage里的type即unique单词的个数
MLF:passage和大语料的相对log平均概率
FK:FK公式

我们的分类器性能超过了上述semantic difficulty,但是没有捕捉到syntactic information

6.2 Effect of Passage Length on Accuracy
结果:我们的model用的ngram,对passage长度不那么敏感,更能够捕捉word级别的难度,例如即使两个词有一样多的音节且都在~语料中出现同样的次数,模型也能够根据每个单词的grade usage来区分难度

6.3 Effect of Training Set Size on Accuracy

6.4 Application to French Web Pages
通过figure4可以看出,在level低时预测的难度偏高,可能是由于取top2的平均导致bias。

7 discussion
1)smoothing大大降低了对每个grade model的训练数据的要求
2)我们对grade level的相对概率而不是绝对概率感兴趣,这样更为合理,因为绝对概率对不同主题的训练数据model拟合的太近了
3)have normalized incoming types to accommodate the morphology of a language, the same core classifier approach may still be applicable, at least for some family of languages.

A Language Modeling Approach to Predicting Reading Difficulty-paer的更多相关文章

  1. 斯坦福大学自然语言处理第四课“语言模型(Language Modeling)”

    http://52opencourse.com/111/斯坦福大学自然语言处理第四课-语言模型(language-modeling) 一.课程介绍 斯坦福大学于2012年3月在Coursera启动了在 ...

  2. Recurrent Neural Network Language Modeling Toolkit代码学习

    Recurrent Neural Network Language Modeling Toolkit  工具使用点击打开链接 本博客地址:http://blog.csdn.net/wangxingin ...

  3. RNN and Language modeling in TensorFlow

    RNNs and Language modeling in TensorFlow From feed-forward to Recurrent Neural Networks (RNNs) In th ...

  4. 课程五(Sequence Models),第一 周(Recurrent Neural Networks) —— 2.Programming assignments:Dinosaur Island - Character-Level Language Modeling

    Character level language model - Dinosaurus land Welcome to Dinosaurus Island! 65 million years ago, ...

  5. Language Modeling with Gated Convolutional Networks

    语言模型 所谓的语言模型,即是指在得知前面的若干个单词的时候,下一个位置上出现的某个单词的概率. 最朴素的方法是N-gram语言模型,即当前位置只和前面N个位置的单词相关.如此,问题便是,N小了,语言 ...

  6. 【NLP】Conditional Language Modeling with Attention

    Review: Conditional LMs Note that, in the Encoder part, we reverse the input to the ‘RNN’ and it per ...

  7. NLP | 自然语言处理 - 语言模型(Language Modeling)

    转:http://blog.csdn.net/lanxu_yy/article/details/29918015 为什么需要语言模型? 想象“语音识别”这样的场景,机器通过一定的算法将语音转换为文字, ...

  8. 语言模型(Language Modeling)与统计语言模型

    1. n-grams 统计语言模型研究的是一个单词序列出现的概率分布(probability distribution).例如对于英语,全体英文单词构成整个状态空间(state space). 边缘概 ...

  9. Language Modeling with Gated Convolutional Networks(句子建模之门控CNN)--模型简介篇

    版权声明:本文为博主原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/liuchonge/article/deta ...

随机推荐

  1. SELinux/SEAndroid 实例简述(二) TE语言规则【转】

    本文转载自:https://blog.csdn.net/shell812/article/details/54930246 版权声明:本文为博主原创文章,未经博主允许不得转载.    https:// ...

  2. Bytom 技术 FAQ

    比原项目仓库: Github地址:https://github.com/Bytom/bytom Gitee地址:https://gitee.com/BytomBlockchain/bytom 1.如何 ...

  3. Learning-Python【22】:面向对象初识

    一.面向过程:是一种编程思想,核心是过程二字,过程指的是解决问题的步骤,即先干什么再干什么然后干什么,基于该编程思想写程序就好比在设计一条流水线,是一种机械式的思维方式 优点:把复杂问题流程化,进而简 ...

  4. js打开新页面的方式:

    1.超链接<a href="http://www.jb51.net" title="脚本之家">Welcome</a>等效于js代码wi ...

  5. stlcky footers布局小技巧

    sticky-footer解决方案 在网页设计中,Sticky footers设计是最古老和最常见的效果之一,大多数人都曾经经历过.它可以概括如下:如果页面内容不够长的时候,页脚块粘贴在视窗底部:如果 ...

  6. ssm 出现 Method threw 'org.apache.ibatis.binding.BindingException' exception.Invalid bound statement (not found)……

    运行数据库的增删改查时出现 500状态码 并且提示 Method threw 'org.apache.ibatis.binding.BindingException' exception.Invali ...

  7. ASM ClassReader failed to parse class file - probably due to a new Java class file version that isn't supported yet………

    在照着这里例子学习ssm时,在部署阶段遇到了这个问题“ASM ClassReader failed to parse class file - probably due to a new Java c ...

  8. [Android - Recovery] 如何刷入第三方recovery

    https://www.xda-developers.com/how-to-install-twrp/ 方便复制 adb reboot bootloader fastboot flash recove ...

  9. [Database] Oracle 中的where 可以后接group by

    SELECT e.DEPTNO,COUNT(e.EMPNO) FROM emp e WHERE e.DEPTNO=10 GROUP BY e.DEPTNO

  10. 3、VNC

    VNC(Virtual Network Computing,虚拟网络计算机) VNC分为两部分组成:VNC server 和 VNC viewer VNC安装 1.yum install tigerv ...