深度学习PyTorch入门(四)
机器翻译 机器翻译(MT): 将一段文本从一种语言自动翻译为另一种语言,用神经网络解决这个问题通常称为神经机器翻译(NMT)。 主要特征: 输出是单词序列而不是单个单词。 输出序列的长度可能与源序列的长度不同。 数据预处理 将数据集清洗、转化为神经网络的输入minbatch 字符在计算机里是以编码的形式存在,我们通常所用的空格是 \x20 ,是在标准ASCII可见字符 0x20~0x7e 范围内。 而 \xa0 属于 latin1 (ISO/IEC_8859-1)中的扩展字符集字符,代表不间断空白符nbsp(non-breaking space),超出gbk编码范围,是需要去除的特殊字符。再数据预处理的过程中,我们首先需要对数据进行清洗。 分词 字符串—单词组成的列表 建立词典 单词组成的列表—单词id组成的列表 载入数据集 Encoder-Decoder encoder:输入到隐藏状态 decoder:隐藏状态到输出 Sequence to Sequence模型 模型: 训练 预测 具体结构: Beam Search 简单greedy search: 维特比算法:选择整体分数最高的句子(搜索空间太大) 集束搜索: 注意力机制 在“编码器—解码器(seq2seq)”⼀节⾥,解码器在各个时间步依赖相同的背景变量(context vector)来获取输⼊序列信息。当编码器为循环神经