Commit f32af827 by 单韦乔

合并分支 'caorunzhe' 到 'shanweiqiao'

Caorunzhe

查看合并请求 !1021
parents 952319ba ff80b1bc
...@@ -680,8 +680,6 @@ b &=& \omega_{\textrm{high}}\cdot |\seq{x}| \label{eq:14-4} ...@@ -680,8 +680,6 @@ b &=& \omega_{\textrm{high}}\cdot |\seq{x}| \label{eq:14-4}
%---------------------------------------------------------------------- %----------------------------------------------------------------------
\parinterval 有了词格这样的结构,多模型集成又有了新的思路。首先,可以将多个模型的译文融合为词格。注意,这个词格会包含这些模型无法生成的完整译文句子。之后,用一个更强的模型在词格上搜索最优的结果。这个过程有可能找到一些“新”的译文,即结果可能是从多个模型的结果中重组而来的。词格上的搜索模型可以基于多模型的融合,也可以使用一个简单的模型,这里需要考虑的是将神经机器翻译模型适应到词格上进行推断\upcite{DBLP:conf/aaai/SuTXJSL17}。其过程基本与原始的模型推断没有区别,只是需要把模型预测的结果附着到词格中的每条边上,再进行推断。 \parinterval 有了词格这样的结构,多模型集成又有了新的思路。首先,可以将多个模型的译文融合为词格。注意,这个词格会包含这些模型无法生成的完整译文句子。之后,用一个更强的模型在词格上搜索最优的结果。这个过程有可能找到一些“新”的译文,即结果可能是从多个模型的结果中重组而来的。词格上的搜索模型可以基于多模型的融合,也可以使用一个简单的模型,这里需要考虑的是将神经机器翻译模型适应到词格上进行推断\upcite{DBLP:conf/aaai/SuTXJSL17}。其过程基本与原始的模型推断没有区别,只是需要把模型预测的结果附着到词格中的每条边上,再进行推断。
\parinterval\ref{fig:14-11}对比了不同模型集成方法的区别。从系统开发的角度看,假设选择和模型预测融合的复杂度较低,适合快速开发原型系统,而且性能稳定。译文重组需要更多的模块,系统调试的复杂度较高,但是由于看到了更大的搜索空间,因此系统性能提升的潜力较大\footnote{一般来说词格上的Oracle 要比$n$-best译文上的Oracle 的质量高。}
%---------------------------------------------------------------------- %----------------------------------------------------------------------
\begin{figure}[htp] \begin{figure}[htp]
\centering \centering
...@@ -691,6 +689,8 @@ b &=& \omega_{\textrm{high}}\cdot |\seq{x}| \label{eq:14-4} ...@@ -691,6 +689,8 @@ b &=& \omega_{\textrm{high}}\cdot |\seq{x}| \label{eq:14-4}
\end{figure} \end{figure}
%---------------------------------------------------------------------- %----------------------------------------------------------------------
\parinterval\ref{fig:14-11}对比了不同模型集成方法的区别。从系统开发的角度看,假设选择和模型预测融合的复杂度较低,适合快速开发原型系统,而且性能稳定。译文重组需要更多的模块,系统调试的复杂度较高,但是由于看到了更大的搜索空间,因此系统性能提升的潜力较大\footnote{一般来说词格上的Oracle 要比$n$-best译文上的Oracle 的质量高。}
%---------------------------------------------------------------------------------------- %----------------------------------------------------------------------------------------
% NEW SECTION % NEW SECTION
%---------------------------------------------------------------------------------------- %----------------------------------------------------------------------------------------
......
...@@ -134,7 +134,7 @@ ...@@ -134,7 +134,7 @@
%---------------------------------------------------------------------------------------- %----------------------------------------------------------------------------------------
\subsubsection{3. 双语句对挖掘} \subsubsection{3. 双语句对挖掘}
\parinterval 在双语平行语料缺乏的时候,从可比语料中挖掘可用的双语句对也是一种有效的方法\upcite{finding2006adafre,DBLP:journals/coling/MunteanuM05,DBLP:conf/emnlp/WuZHGQLL19}。可比语料是指源语言和目标语言虽然不是完全互译的文本,但是蕴含了丰富的双语对照知识,可以从中挖掘出可用的双语句对来训练。相比双语平行语料来说,可比语料相对容易获取,比如,多种语言报道的新闻事件、多种语言的维基百科词条和多种语言翻译的书籍等。如图\ref{fig:16-4}中的维基百科词条所示 \parinterval 在双语平行语料缺乏的时候,从可比语料中挖掘可用的双语句对也是一种有效的方法\upcite{finding2006adafre,DBLP:journals/coling/MunteanuM05,DBLP:conf/emnlp/WuZHGQLL19}。可比语料是指源语言和目标语言虽然不是完全互译的文本,但是蕴含了丰富的双语对照知识,可以从中挖掘出可用的双语句对来训练。相比双语平行语料来说,可比语料相对容易获取,比如,多种语言报道的新闻事件、多种语言的维基百科词条(图\ref{fig:16-4})和多种语言翻译的书籍等
%---------------------------------------------- %----------------------------------------------
\begin{figure}[htp] \begin{figure}[htp]
...@@ -372,7 +372,7 @@ ...@@ -372,7 +372,7 @@
\begin{eqnarray} \begin{eqnarray}
{\funp{P}(\seq{y}|\seq{x})} & = & {\sum_{\seq{p}}{\funp{P}(\seq{p}|\seq{x})\funp{P}(\seq{y}|\seq{p})}} {\funp{P}(\seq{y}|\seq{x})} & = & {\sum_{\seq{p}}{\funp{P}(\seq{p}|\seq{x})\funp{P}(\seq{y}|\seq{p})}}
\label{eq:16-7} \label{eq:16-6}
\end{eqnarray} \end{eqnarray}
\noindent 其中,$\seq{p}$表示一个枢轴语言句子。$\funp{P}(\seq{p}|\seq{x})$$\funp{P}(\seq{y}|\seq{p})$的求解可以直接复用既有的模型和方法。不过,枚举所有的枢轴语言句子$\seq{p}$是不可行的。因此一部分研究工作也探讨了如何选择有效的路径,从$\seq{x}$经过少量$\seq{p}$到达$\seq{y}$\upcite{DBLP:conf/naacl/PaulYSN09} \noindent 其中,$\seq{p}$表示一个枢轴语言句子。$\funp{P}(\seq{p}|\seq{x})$$\funp{P}(\seq{y}|\seq{p})$的求解可以直接复用既有的模型和方法。不过,枚举所有的枢轴语言句子$\seq{p}$是不可行的。因此一部分研究工作也探讨了如何选择有效的路径,从$\seq{x}$经过少量$\seq{p}$到达$\seq{y}$\upcite{DBLP:conf/naacl/PaulYSN09}
...@@ -399,7 +399,7 @@ ...@@ -399,7 +399,7 @@
\begin{figure}[h] \begin{figure}[h]
\centering \centering
\input{Chapter16/Figures/figure-knowledge-distillation-based-translation-process} \input{Chapter16/Figures/figure-knowledge-distillation-based-translation-process}
\caption{基于知识蒸馏的翻译过程} \caption{基于教师-学生框架的翻译过程}
\label{fig:16-12} \label{fig:16-12}
\end{figure} \end{figure}
%---------------------------------------------- %----------------------------------------------
...@@ -408,7 +408,7 @@ ...@@ -408,7 +408,7 @@
\begin{eqnarray} \begin{eqnarray}
{\funp{P}(\seq{y}|\seq{x})} & \approx & {\funp{P}(\seq{y}|\seq{p})} {\funp{P}(\seq{y}|\seq{x})} & \approx & {\funp{P}(\seq{y}|\seq{p})}
\label{eq:16-8} \label{eq:16-7}
\end{eqnarray} \end{eqnarray}
\parinterval 和基于枢轴语言的方法相比,基于知识蒸馏的方法无需训练源语言到枢轴语言的翻译模型,也就无需经历两次翻译过程。不过,基于知识蒸馏的方法仍然需要显性地使用枢轴语言进行桥接,因此仍然面临着“源语言$\to$枢轴语言$\to$目标语言”转换中信息丢失的问题。比如,当枢轴语言到目标语言翻译效果较差时,由于教师模型无法提供准确的指导,学生模型也无法取得很好的学习效果。 \parinterval 和基于枢轴语言的方法相比,基于知识蒸馏的方法无需训练源语言到枢轴语言的翻译模型,也就无需经历两次翻译过程。不过,基于知识蒸馏的方法仍然需要显性地使用枢轴语言进行桥接,因此仍然面临着“源语言$\to$枢轴语言$\to$目标语言”转换中信息丢失的问题。比如,当枢轴语言到目标语言翻译效果较差时,由于教师模型无法提供准确的指导,学生模型也无法取得很好的学习效果。
...@@ -456,7 +456,7 @@ ...@@ -456,7 +456,7 @@
\parinterval {\small\bfnew{多语言单模型方法}}\index{多语言单模型方法}(Multi-lingual Single Model-based Method\index{Multi-lingual Single Model-based Method})也可以被看做是一种迁移学习。多语言单模型方法尤其适用于翻译方向较多的情况,因为为每一个翻译方向单独训练一个模型是不实际的,不仅因为设备资源和时间上的限制,还因为很多翻译方向都没有双语平行数据\upcite{DBLP:journals/tacl/JohnsonSLKWCTVW17,DBLP:conf/lrec/RiktersPK18,dabre2020survey}。比如,要翻译100个语言之间互译的系统,理论上就需要训练$100 \times 99$个翻译模型,代价十分巨大。这时就可以使用多语言单模型方法。 \parinterval {\small\bfnew{多语言单模型方法}}\index{多语言单模型方法}(Multi-lingual Single Model-based Method\index{Multi-lingual Single Model-based Method})也可以被看做是一种迁移学习。多语言单模型方法尤其适用于翻译方向较多的情况,因为为每一个翻译方向单独训练一个模型是不实际的,不仅因为设备资源和时间上的限制,还因为很多翻译方向都没有双语平行数据\upcite{DBLP:journals/tacl/JohnsonSLKWCTVW17,DBLP:conf/lrec/RiktersPK18,dabre2020survey}。比如,要翻译100个语言之间互译的系统,理论上就需要训练$100 \times 99$个翻译模型,代价十分巨大。这时就可以使用多语言单模型方法。
\parinterval 多语言单模型系统是指用单个模型具有多个语言方向翻译的能力。对于源语言集合$\seq{G}_x$和目标语言集合$\seq{G}_y$,多语言单模型的学习目标是学习一个单一的模型,这个模型可以进行任意源语言到任意目标语言的翻译,即同时支持所有$\{(l_x,l_y)|x \in \seq{G}_x,y \in \seq{G}_y)\}$的翻译。多语言单模型方法又可以进一步分为一对多\upcite{DBLP:conf/acl/DongWHYW15}、多对一\upcite{DBLP:journals/tacl/LeeCH17}和多对多\upcite{DBLP:conf/naacl/FiratCB16}的方法。不过这些方法本质上是相同的,因此这里以多对多翻译为例进行介绍。 \parinterval 多语言单模型系统是指具有多个语言方向翻译能力的单模型系统。对于源语言集合$\seq{G}_x$和目标语言集合$\seq{G}_y$,多语言单模型的学习目标是学习一个单一的模型,这个模型可以进行任意源语言到任意目标语言的翻译,即同时支持所有$\{(l_x,l_y)|x \in \seq{G}_x,y \in \seq{G}_y)\}$的翻译。多语言单模型方法又可以进一步分为一对多\upcite{DBLP:conf/acl/DongWHYW15}、多对一\upcite{DBLP:journals/tacl/LeeCH17}和多对多\upcite{DBLP:conf/naacl/FiratCB16}的方法。不过这些方法本质上是相同的,因此这里以多对多翻译为例进行介绍。
\parinterval 在模型结构方面,多语言模型与普通的神经机器翻译模型相同,都是标准的编码器-解码器结构。多语言单模型方法的一个假设是:不同语言可以共享同一个表示空间。因此,该方法使用同一个编码器处理所有的源语言句子,使用同一个解码器处理所有的目标语言句子。为了使多个语言共享同一个解码器(或编码器),一种简单的方法是直接在输入句子上加入语言标记,让模型显性地知道当前句子属于哪个语言。如图\ref{fig:16-15}所示,在此示例中,标记“ <spanish>”表示目标句子为西班牙语,标记“ <german>”表示目标句子为德语,则模型在进行翻译时便会将句子开头加有 “<spanish>”标签的句子翻译为西班牙语\upcite{DBLP:journals/tacl/JohnsonSLKWCTVW17}。假设训练时有英语到西班牙语 “<spanish> Hello”$\to$“Hola”和法语到德语“<german> Bonjour”$\to$“Hallo” 的双语句对,则在解码时候输入英语“<german> Hello”时就会得到解码结果“Hallo”。 \parinterval 在模型结构方面,多语言模型与普通的神经机器翻译模型相同,都是标准的编码器-解码器结构。多语言单模型方法的一个假设是:不同语言可以共享同一个表示空间。因此,该方法使用同一个编码器处理所有的源语言句子,使用同一个解码器处理所有的目标语言句子。为了使多个语言共享同一个解码器(或编码器),一种简单的方法是直接在输入句子上加入语言标记,让模型显性地知道当前句子属于哪个语言。如图\ref{fig:16-15}所示,在此示例中,标记“ <spanish>”表示目标句子为西班牙语,标记“ <german>”表示目标句子为德语,则模型在进行翻译时便会将句子开头加有 “<spanish>”标签的句子翻译为西班牙语\upcite{DBLP:journals/tacl/JohnsonSLKWCTVW17}。假设训练时有英语到西班牙语 “<spanish> Hello”$\to$“Hola”和法语到德语“<german> Bonjour”$\to$“Hallo” 的双语句对,则在解码时候输入英语“<german> Hello”时就会得到解码结果“Hallo”。
%---------------------------------------------- %----------------------------------------------
...@@ -513,9 +513,9 @@ ...@@ -513,9 +513,9 @@
\begin{itemize} \begin{itemize}
\vspace{0.5em} \vspace{0.5em}
\item {\small\bfnew{基于无监督的分布匹配}}。该步骤利用一些无监督的方法来得到一个包含噪声的初始化词典$D$ \item {\small\bfnew{基于无监督的分布匹配}}。该阶段利用一些无监督的方法来得到一个包含噪声的初始化词典$D$
\vspace{0.5em} \vspace{0.5em}
\item {\small\bfnew{基于有监督的微调}}。利用两个单语词嵌入和第一中学习到的种子字典执行一些对齐算法来迭代微调,例如,{\small\bfnew{普氏分析}}\index{普氏分析}(Procrustes Analysis\index{Procrustes Analysis}\upcite{1966ASchnemann} \item {\small\bfnew{基于有监督的微调}}。利用两个单语词嵌入和第一阶段中学习到的种子字典执行一些对齐算法来迭代微调,例如,{\small\bfnew{普氏分析}}\index{普氏分析}(Procrustes Analysis\index{Procrustes Analysis}\upcite{1966ASchnemann}
\vspace{0.5em} \vspace{0.5em}
\end{itemize} \end{itemize}
...@@ -555,9 +555,9 @@ ...@@ -555,9 +555,9 @@
\begin{eqnarray} \begin{eqnarray}
\widehat{\mathbi{W}} & = & \argmin_{\mathbi{W} \in O_{d}(\mathbb{R})}{\|\mathbi{W} \mathbi{X}'- \mathbi{Y}' \|_{\mathrm{F}}} \nonumber \\ \widehat{\mathbi{W}} & = & \argmin_{\mathbi{W} \in O_{d}(\mathbb{R})}{\|\mathbi{W} \mathbi{X}'- \mathbi{Y}' \|_{\mathrm{F}}} \nonumber \\
& = & \mathbi{U} \mathbi{V}^{\rm{T}} \\ \label{eq:16-9} & = & \mathbi{U} \mathbi{V}^{\rm{T}} \\ \label{eq:16-8}
\textrm{s.t.\ \ \ \ } \mathbi{U} \Sigma \mathbi{V}^{\rm{T}} &= &\operatorname{SVD}\left(\mathbi{Y}' \mathbi{X}'^{\rm{T}}\right) \textrm{s.t.\ \ \ \ } \mathbi{U} \Sigma \mathbi{V}^{\rm{T}} &= &\operatorname{SVD}\left(\mathbi{Y}' \mathbi{X}'^{\rm{T}}\right)
\label{eq:16-10} \label{eq:16-9}
\end{eqnarray} \end{eqnarray}
\noindent 其中, $\|\cdot\|_{\mathrm{F}}$表示矩阵的Frobenius范数,即矩阵元素绝对值的平方和再开方,$d$是词嵌入的维度,$O_d(\mathbb{R})$表示$d\times d$的实数空间,$\operatorname{SVD}(\cdot)$表示奇异值分解。利用上式可以获得新的$\mathbi{W}$,通过$\mathbi{W}$可以归纳出新的$D$,如此迭代进行微调最后即可以得到收敛的$D$ \noindent 其中, $\|\cdot\|_{\mathrm{F}}$表示矩阵的Frobenius范数,即矩阵元素绝对值的平方和再开方,$d$是词嵌入的维度,$O_d(\mathbb{R})$表示$d\times d$的实数空间,$\operatorname{SVD}(\cdot)$表示奇异值分解。利用上式可以获得新的$\mathbi{W}$,通过$\mathbi{W}$可以归纳出新的$D$,如此迭代进行微调最后即可以得到收敛的$D$
...@@ -609,7 +609,7 @@ ...@@ -609,7 +609,7 @@
%---------------------------------------------------------------------------------------- %----------------------------------------------------------------------------------------
\subsubsection{2. 无监督权重调优} \subsubsection{2. 无监督权重调优}
\parinterval 有了短语表之后,剩下的问题是如何在没有双语数据的情况下进行模型调优,从而把短语表、语言模型、调序模型等模块融合起来\upcite{DBLP:conf/acl/Och03}。在统计机器翻译系统中,短语表可以提供短语的翻译,而语言模型可以保证从短语翻译拼装得到的句子的流畅度,因此统计机器翻译模型即使在没有权重调优的基础上也已经具备了一定的翻译能力。所以一个简单而有效的无监督方法就是使用未经过模型调优的统计机器翻译模型进行回译,也就是将目标语言句子翻译成源语言句子后,再将翻译得到的源语句言子当成输入而目标语言句子当成标准答案,完成权重调优。 \parinterval 有了短语表之后,剩下的问题是如何在没有双语数据的情况下进行模型调优,从而把短语表、语言模型、调序模型等模块融合起来\upcite{DBLP:conf/acl/Och03}。在统计机器翻译系统中,短语表可以提供短语的翻译,而语言模型可以保证从短语表中翻译拼装得到的句子的流畅度,因此统计机器翻译模型即使在没有权重调优的基础上也已经具备了一定的翻译能力。所以一个简单而有效的无监督方法就是使用未经过模型调优的统计机器翻译模型进行回译,也就是将目标语言句子翻译成源语言句子后,再将翻译得到的源语句言子当成输入而目标语言句子当成标准答案,完成权重调优。
\parinterval 经过上述的无监督模型调优后,就获得了一个效果更好的翻译模型。这时候,可以使用这个翻译模型去产生质量更高的数据,再用这些数据来继续对翻译模型进行调优,如此反复迭代一定次数后停止。这个方法也被称为{\small\bfnew{迭代优化}}\index{迭代优化}(Iterative Refinement\index{Iterative Refinement}\upcite{DBLP:conf/emnlp/ArtetxeLA18} \parinterval 经过上述的无监督模型调优后,就获得了一个效果更好的翻译模型。这时候,可以使用这个翻译模型去产生质量更高的数据,再用这些数据来继续对翻译模型进行调优,如此反复迭代一定次数后停止。这个方法也被称为{\small\bfnew{迭代优化}}\index{迭代优化}(Iterative Refinement\index{Iterative Refinement}\upcite{DBLP:conf/emnlp/ArtetxeLA18}
...@@ -628,7 +628,7 @@ ...@@ -628,7 +628,7 @@
%---------------------------------------------------------------------------------------- %----------------------------------------------------------------------------------------
\subsubsection{1. 基于无监督统计机器翻译的方法} \subsubsection{1. 基于无监督统计机器翻译的方法}
\parinterval 一个简单的方法是,借助已经成功的无监督方法来为神经机器翻译模型提供少量双语监督信号。初始的监督信号可能很少或者包含大量噪声,因此需要逐步优化数据来重新训练出更好的模型。这也是目前绝大多数无监督神经机器翻译方法的核心思路。这个方案最简单实现就是借助已经构建的无监督统计机器翻译模型,用它产生伪双语数据来训练神经机器翻译模型 ,然后进行迭代回译来进行数据优化\upcite{DBLP:conf/acl/ArtetxeLA19}。这个方法的优点是直观,并且性能稳定,容易调试(所有模块都互相独立)。缺点是复杂繁琐,涉及许多超参数调整工作,而且训练代价较大。 \parinterval 一个简单的方法是,借助已经成功的无监督方法来为神经机器翻译模型提供少量双语监督信号。初始的监督信号可能很少或者包含大量噪声,因此需要逐步优化数据来重新训练出更好的模型。这也是目前绝大多数无监督神经机器翻译方法的核心思路。这个方案最简单实现就是借助已经构建的无监督统计机器翻译模型,用它产生伪双语数据来训练神经机器翻译模型 ,然后进行迭代回译来进行数据优化\upcite{DBLP:conf/acl/ArtetxeLA19}。这个方法的优点是直观,并且性能稳定,容易调试(所有模块都互相独立)。缺点是复杂繁琐,涉及许多超参数调整工作,而且训练代价较大。
%---------------------------------------------------------------------------------------- %----------------------------------------------------------------------------------------
% NEW SUB-SUB-SECTION % NEW SUB-SUB-SECTION
...@@ -817,19 +817,19 @@ ...@@ -817,19 +817,19 @@
\begin{eqnarray} \begin{eqnarray}
\funp{L}_{\rm{disc}}& = &-\log\funp{P}(d|\mathbi{H}) \funp{L}_{\rm{disc}}& = &-\log\funp{P}(d|\mathbi{H})
\label{eq:16-12} \label{eq:16-10}
\end{eqnarray} \end{eqnarray}
\noindent 在此基础上,加上原始的翻译模型损失函数$\funp{L}_{\rm{gen}}$ \noindent 在此基础上,加上原始的翻译模型损失函数$\funp{L}_{\rm{gen}}$
\begin{eqnarray} \begin{eqnarray}
\funp{L}_{\rm{gen}}& = & -\log\funp{P}(y|x)\label{eq:16-13} \funp{L}_{\rm{gen}}& = & -\log\funp{P}(y|x)\label{eq:16-11}
\end{eqnarray} \end{eqnarray}
\noindent 最终可以得到融合后的损失函数,如下: \noindent 最终可以得到融合后的损失函数,如下:
\begin{eqnarray} \begin{eqnarray}
\funp{L} & = & \funp{L}_{\rm{disc}}+\funp{L}_{\rm{gen}}\label{eq:16-14} \funp{L} & = & \funp{L}_{\rm{disc}}+\funp{L}_{\rm{gen}}\label{eq:16-12}
\end{eqnarray} \end{eqnarray}
......
...@@ -453,7 +453,7 @@ ...@@ -453,7 +453,7 @@
\parinterval 正是这种上下文现象的多样性,使评价篇章级翻译模型的性能变得相对困难。目前篇章级机器翻译主要针对一些常见的上下文现象进行优化,比如代词翻译、省略、连接和词汇衔接等,而{\chapterfour}介绍的BLEU等通用自动评价指标通常对这些上下文依赖现象不敏感,因此篇章级翻译需要采用一些专用方法来对这些具体现象进行评价。 \parinterval 正是这种上下文现象的多样性,使评价篇章级翻译模型的性能变得相对困难。目前篇章级机器翻译主要针对一些常见的上下文现象进行优化,比如代词翻译、省略、连接和词汇衔接等,而{\chapterfour}介绍的BLEU等通用自动评价指标通常对这些上下文依赖现象不敏感,因此篇章级翻译需要采用一些专用方法来对这些具体现象进行评价。
\parinterval 在统计机器翻译时代就已经有大量的研究工作专注于篇章信息的建模,这些工作大多针对某一具体的上下文现象,比如,篇章结构\upcite{DBLP:conf/anlp/MarcuCW00,foster2010translating,DBLP:conf/eacl/LouisW14}、代词回指\upcite{DBLP:conf/iwslt/HardmeierF10,DBLP:conf/wmt/NagardK10,DBLP:conf/eamt/LuongP16,}、词汇衔接\upcite{tiedemann2010context,DBLP:conf/emnlp/GongZZ11,DBLP:conf/ijcai/XiongBZLL13,xiao2011document}和篇章连接词\upcite{DBLP:conf/sigdial/MeyerPZC11,DBLP:conf/hytra/MeyerP12,}等。区别于篇章级统计机器翻译,篇章级神经机器翻译不需要针对某一具体的上下文现象构造相应的特征,而是通过翻译模型本身从上下文句子中抽取和融合的上下文信息。通常情况下,篇章级机器翻译可以采用局部建模的手段将前一句或者周围几句作为上下文送入模型。针对需要长距离上下文的情况,也可以使用全局建模的手段直接从篇章的所有句子中提取上下文信息。近几年多数研究工作都在探索更有效的局部建模或全局建模方法,主要包括改进输入\upcite{DBLP:conf/discomt/TiedemannS17,DBLP:conf/naacl/BawdenSBH18,DBLP:conf/wmt/GonzalesMS17,DBLP:journals/corr/abs-1910-07481}、多编码器结构\upcite{DBLP:journals/corr/JeanLFC17,DBLP:journals/corr/abs-1805-10163,DBLP:conf/emnlp/ZhangLSZXZL18}、层次结构\upcite{DBLP:conf/naacl/MarufMH19,DBLP:conf/acl/HaffariM18,DBLP:conf/emnlp/YangZMGFZ19,DBLP:conf/ijcai/ZhengYHCB20}以及基于缓存的方法\upcite{DBLP:conf/coling/KuangXLZ18,DBLP:journals/tacl/TuLSZ18}等。 \parinterval 在统计机器翻译时代就已经有大量的研究工作专注于篇章信息的建模,这些工作大多针对某一具体的上下文现象,比如,篇章结构\upcite{DBLP:conf/anlp/MarcuCW00,foster2010translating,DBLP:conf/eacl/LouisW14}、代词回指\upcite{DBLP:conf/iwslt/HardmeierF10,DBLP:conf/wmt/NagardK10,DBLP:conf/eamt/LuongP16,}、词汇衔接\upcite{tiedemann2010context,DBLP:conf/emnlp/GongZZ11,DBLP:conf/ijcai/XiongBZLL13,xiao2011document}和篇章连接词\upcite{DBLP:conf/sigdial/MeyerPZC11,DBLP:conf/hytra/MeyerP12,}等。区别于篇章级统计机器翻译,篇章级神经机器翻译不需要针对某一具体的上下文现象构造相应的特征,而是通过翻译模型从上下文句子中抽取并融合上下文信息。通常情况下,篇章级机器翻译可以采用局部建模的手段将前一句或者周围几句作为上下文送入模型。针对需要长距离上下文的情况,也可以使用全局建模的手段直接从篇章的所有句子中提取上下文信息。近几年多数研究工作都在探索更有效的局部建模或全局建模方法,主要包括改进输入\upcite{DBLP:conf/discomt/TiedemannS17,DBLP:conf/naacl/BawdenSBH18,DBLP:conf/wmt/GonzalesMS17,DBLP:journals/corr/abs-1910-07481}、多编码器结构\upcite{DBLP:journals/corr/JeanLFC17,DBLP:journals/corr/abs-1805-10163,DBLP:conf/emnlp/ZhangLSZXZL18}、层次结构\upcite{DBLP:conf/naacl/MarufMH19,DBLP:conf/acl/HaffariM18,DBLP:conf/emnlp/YangZMGFZ19,DBLP:conf/ijcai/ZhengYHCB20}以及基于缓存的方法\upcite{DBLP:conf/coling/KuangXLZ18,DBLP:journals/tacl/TuLSZ18}等。
\parinterval 此外,篇章级机器翻译面临的另外一个挑战是数据稀缺。篇章级机器翻译所需要的双语数据需要保留篇章边界,数量相比于句子级双语数据要少很多。除了在之前提到的端到端方法中采用预训练或者参数共享的手段(见{\chaptersixteen}),也可以采用新的建模手段来缓解数据稀缺问题。这类方法通常将篇章级翻译流程进行分离:先训练一个句子级的翻译模型,再通过一些额外的模块来引入上下文信息。比如,在句子级翻译模型的推断过程中,通过在目标端结合篇章级语言模型引入上下文信息\upcite{DBLP:conf/discomt/GarciaCE19,DBLP:journals/tacl/YuSSLKBD20,DBLP:journals/corr/abs-2010-12827},或者基于句子级的翻译结果,使用两阶段解码等手段引入上下文信息,进而对句子级翻译结果进行修正\upcite{DBLP:conf/aaai/XiongH0W19,DBLP:conf/acl/VoitaST19,DBLP:conf/emnlp/VoitaST19} \parinterval 此外,篇章级机器翻译面临的另外一个挑战是数据稀缺。篇章级机器翻译所需要的双语数据需要保留篇章边界,数量相比于句子级双语数据要少很多。除了在之前提到的端到端方法中采用预训练或者参数共享的手段(见{\chaptersixteen}),也可以采用新的建模手段来缓解数据稀缺问题。这类方法通常将篇章级翻译流程进行分离:先训练一个句子级的翻译模型,再通过一些额外的模块来引入上下文信息。比如,在句子级翻译模型的推断过程中,通过在目标端结合篇章级语言模型引入上下文信息\upcite{DBLP:conf/discomt/GarciaCE19,DBLP:journals/tacl/YuSSLKBD20,DBLP:journals/corr/abs-2010-12827},或者基于句子级的翻译结果,使用两阶段解码等手段引入上下文信息,进而对句子级翻译结果进行修正\upcite{DBLP:conf/aaai/XiongH0W19,DBLP:conf/acl/VoitaST19,DBLP:conf/emnlp/VoitaST19}
...@@ -463,7 +463,7 @@ ...@@ -463,7 +463,7 @@
\subsection{篇章级翻译的评价}\label{sec:17-3-2} \subsection{篇章级翻译的评价}\label{sec:17-3-2}
\parinterval BLEU等自动评价指标能够在一定程度上反映译文的整体质量,但是并不能有效地评估篇章级翻译模型的性能。这是由于很多标准测试集中需要篇章上下文的情况比例相对较少。而且,$n$-gram的匹配很难检测到一些具体的语言现象,这使得研究人员很难通过BLEU得分来判断篇章级翻译模型的效果。 \parinterval BLEU等自动评价指标能够在一定程度上反映译文的整体质量,但是并不能有效地评估篇章级翻译模型的性能。这是由于很多标准测试集中需要篇章上下文的情况相对较少。而且,$n$-gram的匹配很难检测到一些具体的语言现象,这使得研究人员很难通过BLEU得分来判断篇章级翻译模型的效果。
\parinterval 为此,研究人员总结了机器翻译任务中存在的上下文现象,并基于此设计了相应的自动评价指标。比如针对篇章中代词的翻译问题,首先借助词对齐工具确定源语言中的代词在译文和参考答案中的对应位置,然后通过计算译文中代词的准确率和召回率等指标对代词翻译质量进行评价\upcite{DBLP:conf/iwslt/HardmeierF10,DBLP:conf/discomt/WerlenP17}。针对篇章中的词汇衔接,使用{\small\sffamily\bfseries{词汇链}}\index{词汇链}(Lexical Chain\index{Lexical Chain}\footnote{词汇链指篇章中语义相关的词所构成的序列。}等来获取能够反映词汇衔接质量的分数,然后通过加权的方式与常规的BLEU或METEOR等指标结合在一起\upcite{DBLP:conf/emnlp/WongK12,DBLP:conf/discomt/GongZZ15}。针对篇章中的连接词,使用候选词典和词对齐工具对源文中连接词的正确翻译结果进行计数,计算其准确率\upcite{DBLP:conf/cicling/HajlaouiP13} \parinterval 为此,研究人员总结了机器翻译任务中存在的上下文现象,并基于此设计了相应的自动评价指标。比如针对篇章中代词的翻译问题,首先借助词对齐工具确定源语言中的代词在译文和参考答案中的对应位置,然后通过计算译文中代词的准确率和召回率等指标对代词翻译质量进行评价\upcite{DBLP:conf/iwslt/HardmeierF10,DBLP:conf/discomt/WerlenP17}。针对篇章中的词汇衔接,使用{\small\sffamily\bfseries{词汇链}}\index{词汇链}(Lexical Chain\index{Lexical Chain}\footnote{词汇链指篇章中语义相关的词所构成的序列。}等来获取能够反映词汇衔接质量的分数,然后通过加权的方式与常规的BLEU或METEOR等指标结合在一起\upcite{DBLP:conf/emnlp/WongK12,DBLP:conf/discomt/GongZZ15}。针对篇章中的连接词,使用候选词典和词对齐工具对源文中连接词的正确翻译结果进行计数,计算其准确率\upcite{DBLP:conf/cicling/HajlaouiP13}
...@@ -525,7 +525,7 @@ ...@@ -525,7 +525,7 @@
\mathbi{d}&=&\textrm{Attention}(\mathbi{h},\mathbi{h}^{\textrm {pre}},\mathbi{h}^{\textrm {pre}}) \mathbi{d}&=&\textrm{Attention}(\mathbi{h},\mathbi{h}^{\textrm {pre}},\mathbi{h}^{\textrm {pre}})
\label{eq:17-3-3} \label{eq:17-3-3}
\end{eqnarray} \end{eqnarray}
其中,$\mathbi{h}$作为Query(查询),$\mathbi{h}^{\textrm pre}$为Key(键)和Value(值)。然后通过门控机制将待翻译句子中每个位置的编码表示和该位置对应的上下文信息进行融合,具体方式如下: 其中,$\mathbi{h}$为Query(查询),$\mathbi{h}^{\textrm {pre}}$为Key(键)和Value(值)。然后通过门控机制将待翻译句子中每个位置的编码表示和该位置对应的上下文信息进行融合,具体方式如下:
\begin{eqnarray} \begin{eqnarray}
\lambda_{t}&=&\sigma(\mathbi{W}_{\lambda}[\mathbi{h}_{t};\mathbi{d}_{t}]+\mathbi{b}_{\lambda}) \lambda_{t}&=&\sigma(\mathbi{W}_{\lambda}[\mathbi{h}_{t};\mathbi{d}_{t}]+\mathbi{b}_{\lambda})
\label{eq:17-3-5}\\ \label{eq:17-3-5}\\
...@@ -639,7 +639,7 @@ ...@@ -639,7 +639,7 @@
\sectionnewpage \sectionnewpage
\section{小结及拓展阅读} \section{小结及拓展阅读}
\parinterval 使用更上下文进行机器翻译建模是极具潜力的研究方向,包括多模态翻译在内的多个领域也非常活跃。有许多问题值得进一步思考与讨论: \parinterval 使用更多的上下文进行机器翻译建模是极具潜力的研究方向,包括多模态翻译在内的多个领域也非常活跃。有许多问题值得进一步思考与讨论:
\begin{itemize} \begin{itemize}
\vspace{0.5em} \vspace{0.5em}
......
...@@ -125,13 +125,13 @@ ...@@ -125,13 +125,13 @@
\parinterval 交互式机器翻译系统主要通过用户的反馈来提升译文的质量,不同类型的反馈信息则影响着系统最终的性能。根据反馈形式的不同,可以将交互式机器翻译分为以下几种: \parinterval 交互式机器翻译系统主要通过用户的反馈来提升译文的质量,不同类型的反馈信息则影响着系统最终的性能。根据反馈形式的不同,可以将交互式机器翻译分为以下几种:
\begin{itemize} \begin{itemize}
\vspace{0.5em} \vspace{0.5em}
\item 基于前缀的交互式机器翻译。早期的交互式机器翻译系统都是采用基于前缀的方式。基于翻译系统生成的初始译文,翻译人员从左到右检查翻译的正确性,并在第一个错误的位置进行更正。这为系统提供了一种双重信号:表明该位置上的单词必须是翻译人员修改过后的单词,并且该位置之前的单词都是正确的。之后系统根据已经检查过的前缀再生成后面的译文\upcite{DBLP:conf/acl/WuebkerGDHL16,Zens2003EfficientSF,DBLP:journals/coling/BarrachinaBCCCKLNTVV09,DBLP:journals/csl/PerisC19} \item 基于前缀的交互式机器翻译。早期的交互式机器翻译系统都是采用基于前缀的方式。翻译人员使用翻译系统生成的初始译文,从左到右检查翻译的正确性,并在第一个错误的位置进行更正。这为系统提供了一种双重信号:表明该位置上的单词必须是翻译人员修改过后的单词,并且该位置之前的单词都是正确的。之后系统根据已经检查过的前缀再生成后面的译文\upcite{DBLP:conf/acl/WuebkerGDHL16,Zens2003EfficientSF,DBLP:journals/coling/BarrachinaBCCCKLNTVV09,DBLP:journals/csl/PerisC19}
\vspace{0.5em} \vspace{0.5em}
\item 基于片段的交互式机器翻译。根据用户提供的反馈来生成更好的翻译结果是交互式翻译系统的关键。而基于前缀的系统则存在一个严重的缺陷,当翻译系统获得确定的翻译前缀之后,再重新生成译文时会将原本正确的翻译后缀遗漏了,因此会引入新的错误。在基于片段的交互式机器翻译系统中,翻译人员除了纠正第一个错误的单词,还可以指定在未来迭代中保留的单词序列。之后系统根据这些反馈信号再生成新的译文\upcite{Peris2017InteractiveNM,DBLP:journals/mt/DomingoPC17} \item 基于片段的交互式机器翻译。根据用户提供的反馈来生成更好的翻译结果是交互式翻译系统的关键。而基于前缀的系统则存在一个严重的缺陷,当翻译系统获得确定的翻译前缀之后,再重新生成译文时会将原本正确的翻译后缀遗漏了,因此会引入新的错误。在基于片段的交互式机器翻译系统中,翻译人员除了纠正第一个错误的单词,还可以指定在未来迭代中保留的单词序列。之后系统根据这些反馈信号再生成新的译文\upcite{Peris2017InteractiveNM,DBLP:journals/mt/DomingoPC17}
\vspace{0.5em} \vspace{0.5em}
\item 基于评分的交互式机器翻译。随着计算机算力的提升,有时会出现“机器等人”的现象,因此需要提升人参与交互的效率也是需要考虑的。与之前的系统不同,基于评分的交互式机器翻译系统不需要翻译人员选择、纠正或删除某个片段,而是使用翻译人员对译文的评分来强化机器翻译的学习\upcite{DBLP:journals/corr/abs-1805-01553,DBLP:conf/emnlp/NguyenDB17} \item 基于评分的交互式机器翻译。随着计算机算力的提升,有时会出现“机器等人”的现象,因此提升人参与交互的效率也是需要考虑的。与之前的系统不同,基于评分的交互式机器翻译系统不需要翻译人员选择、纠正或删除某个片段,而是使用翻译人员对译文的评分来强化机器翻译的学习\upcite{DBLP:journals/corr/abs-1805-01553,DBLP:conf/emnlp/NguyenDB17}
\vspace{0.5em} \vspace{0.5em}
\end{itemize} \end{itemize}
...@@ -264,7 +264,7 @@ ...@@ -264,7 +264,7 @@
\item {\small\bfnew{视频字幕翻译}}。随着互联网的普及,人们可以通过互联网接触到大量境外影视作品。由于人们可能没有相应的外语能力,通常需要翻译人员对字幕进行翻译。因此,这些境外视频的传播受限于字幕翻译的速度和准确度。现在的一些视频网站在使用语音识别为视频生成源语言字幕的同时,通过机器翻译技术为各种语言的受众提供质量尚可的目标语言字幕,这种方式为人们提供了极大的便利。 \item {\small\bfnew{视频字幕翻译}}。随着互联网的普及,人们可以通过互联网接触到大量境外影视作品。由于人们可能没有相应的外语能力,通常需要翻译人员对字幕进行翻译。因此,这些境外视频的传播受限于字幕翻译的速度和准确度。现在的一些视频网站在使用语音识别为视频生成源语言字幕的同时,通过机器翻译技术为各种语言的受众提供质量尚可的目标语言字幕,这种方式为人们提供了极大的便利。
\item {\small\bfnew{社交}}。社交是人们的重要社会活动。人们可以通过各种各样的社交软件做到即时通讯,进行协作或者分享自己的观点。然而受限于语言问题,人们的社交范围往往不会超出自己所掌握的语种范围,很难方便地进行跨语言社交。随着机器翻译技术的发展,越来越多的社交软件开始支持自动翻译,用户可以轻易地将各种语言的内容翻译成自己的母语,方便了人们的交流,让语言问题不再成为社交的障碍。 \item {\small\bfnew{社交}}。社交是人们的重要社会活动。人们可以通过各种各样的社交软件做到即时通讯,进行协作或者分享自己的观点。然而受限于语言问题,人们的社交范围往往不会超出自己所掌握的语种范围,因此很难方便地进行跨语言社交。随着机器翻译技术的发展,越来越多的社交软件开始支持自动翻译,用户可以轻易地将各种语言的内容翻译成自己的母语,方便了人们的交流,让语言问题不再成为社交的障碍。
\item {\small\bfnew{同声传译}}。在一些国际会议中,与会者来自许多不同的国家,为了保证会议的流畅,通常需要专业翻译人员进行同声传译。同声传译需要在不打断演讲的同时,不间断地将讲话内容进行口译,对翻译人员的要求极高。现在,一些会议开始采用语音识别来将语音转换成文本,同时使用机器翻译技术进行翻译的方式,达到同步翻译的目的。这项技术已经得到了多个企业的关注,并在很多重要会议上进行尝试,取得了很好的反响。不过同声传译达到可以真正使用的程度还需一定时间的打磨,特别是会议场景下,准确进行语音识别和翻译仍然具有挑战性。 \item {\small\bfnew{同声传译}}。在一些国际会议中,与会者来自许多不同的国家,为了保证会议的流畅,通常需要专业翻译人员进行同声传译。同声传译需要在不打断演讲的同时,不间断地将讲话内容进行口译,对翻译人员的要求极高。现在,一些会议开始采用语音识别来将语音转换成文本,同时使用机器翻译技术进行翻译的方式,达到同步翻译的目的。这项技术已经得到了多个企业的关注,并在很多重要会议上进行尝试,取得了很好的反响。不过同声传译达到可以真正使用的程度还需一定时间的打磨,特别是会议场景下,准确进行语音识别和翻译仍然具有挑战性。
......
...@@ -49,7 +49,7 @@ ...@@ -49,7 +49,7 @@
\parinterval 除了翻译品质维度以外,机器翻译还可以从以下三个维度来讨论:语种维度、领域维度和应用模式维度。关于语种维度,机器翻译技术应该为全球用户服务,提供所有国家至少一种官方语言到其他国家语言的自动互译功能。该维度面临的最大问题是双语数据稀缺。关于领域维度,通用领域翻译系统的翻译能力,对于垂直领域数据来说是不足的。最典型的问题是不能恰当地翻译垂直领域术语,计算机不能无中生有。比较直接可行的解决方案至少有两个,一是引入垂直领域术语双语词典来改善机器翻译效果;二是收集加工一定规模的垂直领域双语句对来优化翻译模型。这两种工程方法虽然简单,但效果不错,并且两者结合对于翻译模型性能的提升帮助更大。但很多时候垂直领域双语句对的收集代价太高,可行性低,因此垂直领域翻译问题本质上就转换成为垂直领域资源稀缺问题和领域自适应学习问题。除此之外,小样本学习、迁移学习等机器学习技术也被一些研究人员用来解决垂直领域翻译问题。关于应用模式维度,可以从下面几个方面进行讨论: \parinterval 除了翻译品质维度以外,机器翻译还可以从以下三个维度来讨论:语种维度、领域维度和应用模式维度。关于语种维度,机器翻译技术应该为全球用户服务,提供所有国家至少一种官方语言到其他国家语言的自动互译功能。该维度面临的最大问题是双语数据稀缺。关于领域维度,通用领域翻译系统的翻译能力,对于垂直领域数据来说是不足的。最典型的问题是不能恰当地翻译垂直领域术语,计算机不能无中生有。比较直接可行的解决方案至少有两个,一是引入垂直领域术语双语词典来改善机器翻译效果;二是收集加工一定规模的垂直领域双语句对来优化翻译模型。这两种工程方法虽然简单,但效果不错,并且两者结合对于翻译模型性能的提升帮助更大。但很多时候垂直领域双语句对的收集代价太高,可行性低,因此垂直领域翻译问题本质上就转换成为垂直领域资源稀缺问题和领域自适应学习问题。除此之外,小样本学习、迁移学习等机器学习技术也被一些研究人员用来解决垂直领域翻译问题。关于应用模式维度,可以从下面几个方面进行讨论:
\begin{itemize} \begin{itemize}
\item 通常,机器翻译的典型应用包括在线翻译公有云服务,用户接入非常简单,只需要联网使用浏览器就可以自由免费使用。在某些行业,用户对数据翻译安全性和保密性的要求非常高,其中可能还会涉及个性化定制,这是在线翻译公有云服务无法满足的,于是,在本地部署机器翻译私有云离线机器翻译技术和服务成了新的应用模式。在本地部署私有云的问题在于:需要用户自己购买 GPU 服务器并建机房,对硬件的投入高。也许将来机器翻译领域会出现新的应用模式:类似服务托管模式的在线私有云或专有云,以及混合云服务(公有云、私有云和专有云的混合体)。 \item 通常,机器翻译的典型应用包括在线翻译公有云服务,用户接入非常简单,只需要联网使用浏览器就可以自由免费使用。在某些行业,用户对数据翻译安全性和保密性的要求非常高,其中可能还会涉及个性化定制,这是在线翻译公有云服务无法满足的,于是,在本地部署机器翻译私有云,应用离线机器翻译技术和服务成了新的应用模式。在本地部署私有云的问题在于:需要用户自己购买 GPU 服务器并建机房,对硬件的投入高。也许将来机器翻译领域会出现新的应用模式:类似服务托管模式的在线私有云或专有云,以及混合云服务(公有云、私有云和专有云的混合体)。
\item 离线机器翻译技术可以为更小型的智能翻译终端设备提供服务,如大家熟知的翻译机、翻译笔、翻译耳机等智能翻译设备。在不联网的情况下,这些设备能实现高品质机器翻译功能,这类应用模式具有很大的潜力。但这类应用模式需要解决的问题也很多:首先是模型大小、翻译速度和翻译品质的问题;其次,考虑不同操作系统(如Linux、Android Q 和iOS)和不同架构(如x86、MIPS、ARM 等)的CPU 芯片的智能适配兼容问题。将来,离线翻译系统还可以通过芯片安装到办公设备上,如传真机、打印机和复印机等,辅助人们实现支持多语言的智能办公。目前,人工智能芯片发展的速度非常快,而机器翻译芯片研发面临的最大问题是缺少应用场景和上下游的应用支撑,一旦时机成熟,机器翻译芯片的研发和应用也有可能会爆发。 \item 离线机器翻译技术可以为更小型的智能翻译终端设备提供服务,如大家熟知的翻译机、翻译笔、翻译耳机等智能翻译设备。在不联网的情况下,这些设备能实现高品质机器翻译功能,这类应用模式具有很大的潜力。但这类应用模式需要解决的问题也很多:首先是模型大小、翻译速度和翻译品质的问题;其次,考虑不同操作系统(如Linux、Android Q 和iOS)和不同架构(如x86、MIPS、ARM 等)的CPU 芯片的智能适配兼容问题。将来,离线翻译系统还可以通过芯片安装到办公设备上,如传真机、打印机和复印机等,辅助人们实现支持多语言的智能办公。目前,人工智能芯片发展的速度非常快,而机器翻译芯片研发面临的最大问题是缺少应用场景和上下游的应用支撑,一旦时机成熟,机器翻译芯片的研发和应用也有可能会爆发。
...@@ -57,7 +57,7 @@ ...@@ -57,7 +57,7 @@
\begin{itemize} \begin{itemize}
\item 文档解析技术可以帮助实现Word文档翻译、PDF文档翻译、WPS 文档翻译、邮件翻译等更多格式文档自动翻译的目标,也可以作为插件嵌入到各种办公平台中,成为智能办公好助手。 \item 文档解析技术可以帮助实现Word文档翻译、PDF文档翻译、WPS 文档翻译、邮件翻译等更多格式文档自动翻译的目标,也可以作为插件嵌入到各种办公平台中,成为智能办公好助手。
\item 语音识别与机器翻译是绝配,语音翻译用途广泛,比如翻译机、语音翻译APP和会议AI同传应用。但目前最大的问题主要体现在两个方面,一是很多实际应用场景中语音识别效果欠佳,造成错误蔓延,导致机器翻译结果不够理想;二是就算小语种的语音识别效果很好,但资源稀缺型小语种翻译性能不够好。 \item 语音识别与机器翻译是绝配,语音翻译用途广泛,比如翻译机、语音翻译APP和会议AI同传应用。但目前存在一些问题,比如很多实际应用场景中语音识别效果欠佳,造成错误蔓延,导致机器翻译结果不够理想;另外就算小语种的语音识别效果很好,但资源稀缺型小语种翻译性能不够好,最终的语音翻译效果就不会好。
\item OCR技术可以帮助实现扫描笔和翻译笔的应用、出国旅游的拍照翻译功能,将来还可以与穿戴式设备相结合,比如智能眼镜等等。视频字幕翻译能够帮助我们欣赏没有中文字幕的国外电影和电视节目,比如到达任何一个国家,打开电视都能够看到中文字幕,也是非常酷的应用。 \item OCR技术可以帮助实现扫描笔和翻译笔的应用、出国旅游的拍照翻译功能,将来还可以与穿戴式设备相结合,比如智能眼镜等等。视频字幕翻译能够帮助我们欣赏没有中文字幕的国外电影和电视节目,比如到达任何一个国家,打开电视都能够看到中文字幕,也是非常酷的应用。
\end{itemize} \end{itemize}
......
...@@ -52,7 +52,7 @@ ...@@ -52,7 +52,7 @@
\node [secnode,anchor=south west,fill=cyan!20,minimum width=14.0em,align=center] (sec13) at ([yshift=0.5em,xshift=0.5em]part4.south west) {第十三章\hspace{1em} 神经机器翻译模型训练}; \node [secnode,anchor=south west,fill=cyan!20,minimum width=14.0em,align=center] (sec13) at ([yshift=0.5em,xshift=0.5em]part4.south west) {第十三章\hspace{1em} 神经机器翻译模型训练};
\node [secnode,anchor=west,fill=cyan!20,minimum width=14.0em,align=center] (sec14) at ([xshift=0.6em]sec13.east) {第十四章\hspace{1em} 神经机器翻译模型推断}; \node [secnode,anchor=west,fill=cyan!20,minimum width=14.0em,align=center] (sec14) at ([xshift=0.6em]sec13.east) {第十四章\hspace{1em} 神经机器翻译模型推断};
\node [secnode,anchor=south west,fill=green!30,minimum width=9em,minimum height=4.5em,align=center] (sec15) at ([yshift=0.8em]sec13.north west) {第十五章\\ 神经机器翻译 \\ 结构优化}; \node [secnode,anchor=south west,fill=green!30,minimum width=9em,minimum height=4.5em,align=center] (sec15) at ([yshift=0.8em]sec13.north west) {第十五章\\ 神经机器翻译 \\ 结构优化};
\node [secnode,anchor=south west,fill=green!30,minimum width=9em,minimum height=4.5em,align=center] (sec16) at ([xshift=0.8em]sec15.south east) {第十六章\\ 低资源 \\ 机器翻译}; \node [secnode,anchor=south west,fill=green!30,minimum width=9em,minimum height=4.5em,align=center] (sec16) at ([xshift=0.8em]sec15.south east) {第十六章\\ 低资源 \\ 神经机器翻译};
\node [secnode,anchor=south west,fill=green!30,minimum width=9em,minimum height=4.5em,align=center] (sec17) at ([xshift=0.8em]sec16.south east) {第十七章\\ 多模态、多层次 \\ 机器翻译}; \node [secnode,anchor=south west,fill=green!30,minimum width=9em,minimum height=4.5em,align=center] (sec17) at ([xshift=0.8em]sec16.south east) {第十七章\\ 多模态、多层次 \\ 机器翻译};
\node [secnode,anchor=south west,fill=amber!25,minimum width=28.7em,align=center] (sec18) at ([yshift=0.8em]sec15.north west) {第十八章\hspace{1em} 机器翻译应用技术}; \node [secnode,anchor=south west,fill=amber!25,minimum width=28.7em,align=center] (sec18) at ([yshift=0.8em]sec15.north west) {第十八章\hspace{1em} 机器翻译应用技术};
\node [rectangle,draw,dotted,thick,inner sep=0.1em,fill opacity=1] [fit = (sec13) (sec14)] (nmtbasebox) {}; \node [rectangle,draw,dotted,thick,inner sep=0.1em,fill opacity=1] [fit = (sec13) (sec14)] (nmtbasebox) {};
......
...@@ -89,7 +89,7 @@ ...@@ -89,7 +89,7 @@
\noindent 顾问:姚天顺\ \ 王宝库\\ \noindent 顾问:姚天顺\ \ 王宝库\\
\noindent \textsc{\url{https://opensource.niutrans.com/mtbook/index.html}}\\ \noindent \textsc{\url{https://opensource.niutrans.com/mtbook/homepage.html}}\\
\noindent \textsc{\url{https://github.com/NiuTrans/MTBook}}\\ \noindent \textsc{\url{https://github.com/NiuTrans/MTBook}}\\
\noindent {\red{Licensed under the Creative Commons Attribution-NonCommercial 4.0 Unported License (the ``License''). You may not use this file except in compliance with the License. You may obtain a copy of the License at \url{http://creativecommons.org/licenses/by-nc/4.0}. Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an \textsc{``as is'' basis, without warranties or conditions of any kind}, either express or implied. See the License for the specific language governing permissions and limitations under the License.}}\\ \noindent {\red{Licensed under the Creative Commons Attribution-NonCommercial 4.0 Unported License (the ``License''). You may not use this file except in compliance with the License. You may obtain a copy of the License at \url{http://creativecommons.org/licenses/by-nc/4.0}. Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an \textsc{``as is'' basis, without warranties or conditions of any kind}, either express or implied. See the License for the specific language governing permissions and limitations under the License.}}\\
...@@ -144,7 +144,7 @@ ...@@ -144,7 +144,7 @@
%\include{Chapter10/chapter10} %\include{Chapter10/chapter10}
%\include{Chapter11/chapter11} %\include{Chapter11/chapter11}
%\include{Chapter12/chapter12} %\include{Chapter12/chapter12}
\include{Chapter13/chapter13} %\include{Chapter13/chapter13}
%\include{Chapter14/chapter14} %\include{Chapter14/chapter14}
%\include{Chapter15/chapter15} %\include{Chapter15/chapter15}
%\include{Chapter16/chapter16} %\include{Chapter16/chapter16}
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论