一、自然语言处理(Natural Language Processing,简称NLP)被誉为人工智能皇冠上的明珠,是计算机科学和人工智能领域的一个重要方向。它主要研究人与计算机之间,使用自然语言进行有效通信的各种理论和方法。简单来说,计算机以用户的自然语言数据作为输入,在其内部通过定义的算法进行加工、计算等系列操作后(用以模拟人类对自然语言的理解),再返回用户所期望的结果。
自然语言技术面临的挑战:
语言学问题:同义词问题、情感倾向问题、长文本处理问题、歧义性问题
计算角度
使用深度学习解决自然语言处理任务的套路
- 处理数据。 确认网络能够接收的数据形式,然后对数据进行处理。
- 实现网络。 搭建网络的过程。
- 模型训练。 训练模型调整参数的过程。
- 评估&上线。 对训练出的模型效果进行评估,确认模型性能。
二、 在自然语言处理任务中,词向量(Word Embedding)是表示自然语言里单词的一种方法,即把每个词都表示为一个N维空间内的点,即一个高维空间内的向量。通过这种方法,实现把自然语言计算转换为向量计算。
3.CBOW和Skip-gram的算法实现
CBOW是一个具有3层结构的神经网络,分别是:
- 输入层: 一个形状为C×V的one-hot张量,其中C代表上线文中词的个数,通常是一个偶数&