当前位置:首页 > 自然语言处理 > 正文

自然语言处理需要什么技术


⑴自然语言处理的相关技术

数据稀疏性与平滑技术
大规模数据统计方法与有限的训练语料之间必然会出现数据稀疏性问题,导致零概率问题,相当于经典的Zip'f定律。 例如IBM、Brown:3.66亿个英语语料库训练三元组。 在测试语料库中,14.7%的三元词和2.2%的二元词没有出现在训练语料库中。
数据稀疏问题定义:“数据稀疏问题,也称为零频率问题,当分析包含从未出现在训练语料库中的配置时。 那么就不可能根据观察到的频率来估计概率,并且必须使用一些其他可以从训练数据中概括(这些配置)的估计方案。
为了将理论模型付诸实践,人们进行了许多尝试和努力,诞生了许多经典的平滑技术。 它们的基本思想是“减少在中遇到的N-gram的条件概率分布”这样,就可以减少没有出现的N-gram。 “Gram条件概率分布非零”,数据平滑后保证概率和为1。 具体如下:Add-One(拉普拉斯)平滑加一平滑方法,又称为拉普拉斯定律,保证每个N-gram在训练语料中至少出现一次。 以bigram为例,公式如图:
其中,V是所有bigram的数量。 Good-TuringSmoothing的基本思想是利用频率类别信息来平滑频率。 将频率为c的N-gram的频率调整为c*:
直接的改进策略是“对出现在某个阈值以上的克不进行平滑处理,阈值一般为8到10”。 更多方法,请参阅SimpleGood-Turing。 InterpolationSmoothing无论是加一还是GoodTuring平滑技术,对看起来不一样的N-gram都一样对待,这难免不合理(事件发生的概率存在差异)。 因此,我们在这里引入一种线性插值平滑技术。 其基本思想是将高阶模型和低阶模型线性组合,用低元n-gram模型对高元n-gram模型进行线性插值。 因为当没有足够的数据来估计高维n-gram模型的可能性时,低维n-gram模型通常可以提供有用的信息。 公式如下,如右图1所示:
扩展方法(上下文相关)如右图2所示:
λs可以估计为EM算法。 具体步骤如下:首先,确定三类数据:训练数据、保留数据和测试数据。 然后根据训练数据构建初始语言模型并确定初始λs(例如均为1)。 );最后,基于EM算法迭代优化λs,以最大化hero-outdata概率的变化(如下图)。


⑵自然语言处理使用的是哪种多媒体输入输出技术
良好的图灵平滑技术。 Goodturing平滑技术对所有没有出现的问题一视同仁,自然语言处理使用Goodturing平滑技术,也称为多媒体输入输出技术。 所有输入和输出都是可能的。