最新句子可读性算法

opp*_*rog 5 nlp machine-learning text-mining

我正在研究一种估算句子难度的算法,但是我发现的方法似乎太老了,无法利用现代计算机的功能。

今天使用的算法大部分是在40到60年前开发的。Flesch-Kincaid是最受欢迎的,并且仍被国防部以及许多州和企业用作文档标准。我看过Flesch-Kincaid等级水平,Gunning Fog指数,SMOG指数,Fry可读性公式和Coleman-Liau指数。

我决定使用自动可读性索引:

ARI = 4.71 * (characters / words) + .5 * (words / sentences) - 21.43;
Run Code Online (Sandbox Code Playgroud)

在我看来,基于基于语料库的词频列表为每个词分配一个值,然后将这些值用于旧的可读性公式,这似乎并不困难。
可以针对前1000至5000个最常见的单词执行此操作。为某些不同种类的单词和词性制作单独的列表可能也很有效。连词的出现肯定是句子复杂的标志。

有什么公式可以做到这一点吗?

小智 0

当您在机器学习公式中看到硬编码常量时,请保持怀疑......

自动可读性索引中的数字代表适合用于构建它的数据集以及选择用来表示它的特征的模型。除了适合性之外,我认为作为一种常见的衡量标准,根据学校成绩进行校准是另一个好处。

您将词频添加到可读性中的想法听起来是一个很棒的功能。毕竟,语法简单的句子中的一个不熟悉的单词可能会使其变得难以阅读。

您应该选择在给定词频的情况下表示句子的方式。例如整个句子的概率、不常见单词的数量、最小频率等。

然后您应该构建一个数据集并从中学习模型的参数。最直接的方法是使用手动标记的句子数据集以提高可读性。然而,构建这样一个数据集似乎非常耗时。

您可以通过使用一些可读性水平一般已知的来源来绕过这个问题,并根据来源标记句子的可读性。例如,来自简单英语维基百科的句子应该比来自维基百科的句子更具可读性。常见可读性级别的其他来源可以是华尔街日报和网络论坛。对这些句子进行一些手动标记,以便对齐和校准您的可读性值。

通过使用此技术,您可以权衡标签准确性和标签数量。由于事实证明机器学习可以在存在白噪声甚至恶意错误的情况下完成,因此这种权衡通常是有益的。