这一章,我们来聊聊神经网络这个神奇的东西。神经网络,可以说是语言模型的“心脏”,没有它,语言模型就像蒸米饭没有大米一样,难以成型。你可能会问,能不能不用神经网络,用其他算法呢?当然可以,但效果嘛,可以说是天壤之别,基本上都写不出连贯的句子来。
举个例子,我们常用的手机输入法联想功能,其实就有点类似于语言模型。它们都是根据我们的输入来预测下一个词汇。但你知道吗?手机输入法的联想功能一般用的都不是神经网络,而是像贝叶斯算法、隐马尔可夫模型或者决策树这样的传统算法。这些算法虽然能写出一些句子,但它们的缺点也很明显。
比如,你输入“明月”,它可能会联想到“几时”,甚至能继续联想出“明月几时有,把酒问青天”这样的句子。但仔细一看,你就会发现它其实并不能真正理解文本之间的依赖关系。有时候,它可能会写出像“今天晚上吃火锅非常的辣椒真的确”这样的句子,明显不通顺。这是因为它是根据数据库中已有的短语或句子来拼接的,而不是真正理解文本的含义。
所以,相比之下,神经网络在语言模型方面就显得更加智能、效果更好了。这也是为什么我们在本书中制作语言模型时,会选择使用神经网络的原因。
那么,基于神经网络的语言模型到底在学习什么呢?下一章,我们就来揭晓这个秘密,一起看看神经网络是如何帮助语言模型变得更聪明、更懂我们的吧!