cs224n-第十课 机器翻译(SMT,NMT)

机器翻译模型

  • 1 Statistical Machine Translation(SMT)
    SMT是基于统计的机器翻译:

    • 假设模型是中文—> 英语,给定中文句子x,为了找到最匹配的英语句子y,定义目标函数:
      a r g m a x y P ( y ∣ x ) argmax_yP(y|x) argmaxyP(yx)
    • 根据Bayes规则,将目标函数转化为如下函数:
      a r g m a x y P ( x ∣ y ) P ( y ) argmax_yP(x|y)P(y) argmaxyP(xy)P(y)
    • 对齐的规则(一对多,或者,多对一),计算太复杂,y的种类过多,可以设置阈值,丢弃较低的假设。
  • 2 Neural Machine Translation(NMT)
    NMT是神经网络的机器翻译:
    网络结构称为seq2seq,它包含两个RNNs

    • 编码器RNN生成源语句的编码,运行神经网络生成解码器RNN提供初始隐藏状态
    • 解码器RNN是一种以编码为条件生成目标句的语言模型

    seq2seq可以运用更多的领域:

    • 摘要(长文本 —> 短文本)
    • 对话(前一句话 ----> 下一句话)
    • 解析(输入文本 ----> 输出解析序列)
    • 代码生成(自然语言 —> Python代码)

    解码方式:

    • 原始抽样,代价太大,太复杂。
    • 贪心算法,每次选取最大价值的翻译,问题的是之前的结果没有办法修改和撤销。
    • beam search,主要在于k值的选取,可以用一个优先队列进行维护。

机器翻译的难题:

  • 词表外的单词处理
  • 训练数据和测试数据之间领域不匹配,即测试数据的领域在训练数据中没有
  • 较长文本中,上下文的维护很难,会有记忆消失等情况
  • 常识很难处理,类似于中文古诗之类
  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值