Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
M
mtbookv2
概览
Overview
Details
Activity
Cycle Analytics
版本库
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
问题
0
Issues
0
列表
Board
标记
里程碑
合并请求
0
Merge Requests
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
Snippets
成员
Collapse sidebar
Close sidebar
活动
图像
聊天
创建新问题
作业
提交
Issue Boards
Open sidebar
NiuTrans
mtbookv2
Commits
f5473923
Commit
f5473923
authored
4 years ago
by
曹润柘
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
5-8
parent
04de1cda
隐藏空白字符变更
内嵌
并排
正在显示
4 个修改的文件
包含
14 行增加
和
14 行删除
+14
-14
Chapter5/chapter5.tex
+5
-5
Chapter6/chapter6.tex
+4
-4
Chapter7/chapter7.tex
+2
-2
Chapter8/chapter8.tex
+3
-3
没有找到文件。
Chapter5/chapter5.tex
查看文件 @
f5473923
...
...
@@ -153,7 +153,7 @@ IBM模型由Peter F. Brown等人于上世纪九十年代初提出\upcite{DBLP:jo
% NEW SUBSUB-SECTION
%----------------------------------------------------------------------------------------
\subsubsection
{
3. 人工翻译 vs
.
机器翻译
}
\subsubsection
{
3. 人工翻译 vs 机器翻译
}
\parinterval
人在翻译时的决策是非常确定并且快速的,但计算机处理这个问题时却充满了概率化的思想。当然它们也有类似的地方。首先,计算机使用统计模型的目的是把翻译知识变得可计算,并把这些“知识”储存在模型参数中,这个模型和人类大脑的作用是类似的
\footnote
{
这里并不是要把统计模型等同于生物学或者认知科学上的人脑,这里是指它们处理翻译问题时发挥的作用类似。
}
;其次,计算机对统计模型进行训练相当于人类对知识的学习,二者都可以被看作是理解、加工知识的过程;再有,计算机使用学习到的模型对新句子进行翻译的过程相当于人运用知识的过程。在统计机器翻译中,模型学习的过程被称为训练,目的是从双语平行数据中自动学习翻译“知识”;而使用模型处理新句子的过程是一个典型的预测过程,也被称为解码或推断。图
\ref
{
fig:5-4
}
的右侧标注在翻译过程中训练和解码的作用。最终,统计机器翻译的核心由三部分构成
\ \dash
\
建模、训练和解码。本章后续内容会围绕这三个问题展开讨论。
%----------------------------------------------------------------------------------------
...
...
@@ -401,7 +401,7 @@ g(\seq{s},\seq{t}) &= &\prod_{(j,i)\in \widehat{A}}\funp{P}(s_j,t_i)
\label
{
eq:5-10
}
\end{eqnarray}
\noindent
其中,
$
\seq
{
t
}
=
t
_
1
...t
_
l
$
表示由
$
l
$
个单词组成的句子,
$
\funp
{
P
}_{
\textrm
{
lm
}}
(
\seq
{
t
}
)
$
表示语言模型给句子
$
\seq
{
t
}$
的打分。具体而言,
$
\funp
{
P
}_{
\textrm
{
lm
}}
(
\seq
{
t
}
)
$
被定义为
$
\funp
{
P
}
(
t
_
i|t
_{
i
-
1
}
)(
i
=
1
,
2
,...,l
)
$
的连乘
\footnote
{
为了确保数学表达的准确性,本书中定义
$
\funp
{
P
}
(
t
_
1
|t
_
0
)
\equiv
\funp
{
P
}
(
t
_
1
)
$}
,其中
$
\funp
{
P
}
(
t
_
i|t
_{
i
-
1
}
)(
i
=
1
,
2
,...,l
)
$
表示前面一个单词为
$
t
_{
i
-
1
}$
时,当前单词为
$
t
_
i
$
的概率。语言模型的训练方法可以参看
{
\chaptertwo
}
相关内容。
\noindent
其中,
$
\seq
{
t
}
=
\{
t
_
1
...t
_
l
\}
$
表示由
$
l
$
个单词组成的句子,
$
\funp
{
P
}_{
\textrm
{
lm
}}
(
\seq
{
t
}
)
$
表示语言模型给句子
$
\seq
{
t
}$
的打分。具体而言,
$
\funp
{
P
}_{
\textrm
{
lm
}}
(
\seq
{
t
}
)
$
被定义为
$
\funp
{
P
}
(
t
_
i|t
_{
i
-
1
}
)(
i
=
1
,
2
,...,l
)
$
的连乘
\footnote
{
为了确保数学表达的准确性,本书中定义
$
\funp
{
P
}
(
t
_
1
|t
_
0
)
\equiv
\funp
{
P
}
(
t
_
1
)
$}
,其中
$
\funp
{
P
}
(
t
_
i|t
_{
i
-
1
}
)(
i
=
1
,
2
,...,l
)
$
表示前面一个单词为
$
t
_{
i
-
1
}$
时,当前单词为
$
t
_
i
$
的概率。语言模型的训练方法可以参看
{
\chaptertwo
}
相关内容。
\parinterval
回到建模问题上来。既然语言模型可以帮助系统度量每个译文的流畅度,那么可以使用它对翻译进行打分。一种简单的方法是把语言模型
$
\funp
{
P
}_{
\textrm
{
lm
}}{
(
\seq
{
t
}
)
}$
和公式
\eqref
{
eq:5-8
}
中的
$
g
(
\seq
{
s
}
,
\seq
{
t
}
)
$
相乘,这样就得到了一个新的
$
g
(
\seq
{
s
}
,
\seq
{
t
}
)
$
,它同时考虑了翻译准确性(
$
\prod
_{
j,i
\in
\widehat
{
A
}}{
\funp
{
P
}
(
s
_
j,t
_
i
)
}$
)和流畅度(
$
\funp
{
P
}_{
\textrm
{
lm
}}
(
\seq
{
t
}
)
$
):
\begin{eqnarray}
...
...
@@ -605,7 +605,7 @@ g(\seq{s},\seq{t}) & \equiv & \prod_{j,i \in \widehat{A}}{\funp{P}(s_j,t_i)} \ti
\subsection
{
词对齐
}
\parinterval
IBM模型的一个基本的假设是词对齐假设。词对齐描述了源语言句子和目标语句子之间单词级别的对应。具体来说,给定源语句子
$
\seq
{
s
}
=
s
_
1
...s
_
m
$
和目标语译文
$
\seq
{
t
}
=
t
_
1
...t
_
l
$
,IBM模型假设词对齐具有如下两个性质。
\parinterval
IBM模型的一个基本的假设是词对齐假设。词对齐描述了源语言句子和目标语句子之间单词级别的对应。具体来说,给定源语句子
$
\seq
{
s
}
=
\{
s
_
1
...s
_
m
\}
$
和目标语译文
$
\seq
{
t
}
=
\{
t
_
1
...t
_
l
\}
$
,IBM模型假设词对齐具有如下两个性质。
\begin{itemize}
\vspace
{
0.5em
}
...
...
@@ -634,7 +634,7 @@ g(\seq{s},\seq{t}) & \equiv & \prod_{j,i \in \widehat{A}}{\funp{P}(s_j,t_i)} \ti
%----------------------------------------------
\end{itemize}
\parinterval
通常,把词对齐记为
$
\seq
{
a
}$
,它由
$
a
_
1
$
到
$
a
_
m
$
共
$
m
$
个词对齐连接组成,即
$
\seq
{
a
}
=
a
_
1
...a
_
m
$
。
$
a
_
j
$
表示第
$
j
$
个源语单词
$
s
_
j
$
对应的目标语单词的位置。在图
\ref
{
fig:5-16
}
的例子中,词对齐关系可以记为
$
a
_
1
=
0
, a
_
2
=
3
, a
_
3
=
1
$
,即第1个源语单词“在”对应到目标语译文的第0个位置,第2个源语单词“桌子”对应到目标语译文的第3个位置,第3个源语单词“上”对应到目标语译文的第1个位置。
\parinterval
通常,把词对齐记为
$
\seq
{
a
}$
,它由
$
a
_
1
$
到
$
a
_
m
$
共
$
m
$
个词对齐连接组成,即
$
\seq
{
a
}
=
\{
a
_
1
...a
_
m
\}
$
。
$
a
_
j
$
表示第
$
j
$
个源语单词
$
s
_
j
$
对应的目标语单词的位置。在图
\ref
{
fig:5-16
}
的例子中,词对齐关系可以记为
$
a
_
1
=
0
, a
_
2
=
3
, a
_
3
=
1
$
,即第1个源语单词“在”对应到目标语译文的第0个位置,第2个源语单词“桌子”对应到目标语译文的第3个位置,第3个源语单词“上”对应到目标语译文的第1个位置。
%----------------------------------------------------------------------------------------
% NEW SUB-SECTION
...
...
@@ -668,7 +668,7 @@ g(\seq{s},\seq{t}) & \equiv & \prod_{j,i \in \widehat{A}}{\funp{P}(s_j,t_i)} \ti
\label
{
eq:5-19
}
\end{eqnarray}
\noindent
其中
$
s
_
j
$
和
$
a
_
j
$
分别表示第
$
j
$
个源语言单词及第
$
j
$
个源语言单词对齐到的目标位置,
\seq
{
s
}${{}_
1
^{
j
-
1
}}$
表示前
$
j
-
1
$
个源语言单词(即
\seq
{
s
}${}_
1
^{
j
-
1
}
=
s
_
1
...s
_{
j
-
1
}$
),
\seq
{
a
}${}_
1
^{
j
-
1
}$
表示前
$
j
-
1
$
个源语言的词对齐(即
\seq
{
a
}${}_
1
^{
j
-
1
}
=
a
_
1
...a
_{
j
-
1
}$
),
$
m
$
表示源语句子的长度。公式
\eqref
{
eq:5-19
}
将
$
\funp
{
P
}
(
\seq
{
s
}
,
\seq
{
a
}
|
\seq
{
t
}
)
$
分解为四个部分,具体含义如下:
\noindent
其中
$
s
_
j
$
和
$
a
_
j
$
分别表示第
$
j
$
个源语言单词及第
$
j
$
个源语言单词对齐到的目标位置,
\seq
{
s
}${{}_
1
^{
j
-
1
}}$
表示前
$
j
-
1
$
个源语言单词(即
\seq
{
s
}${}_
1
^{
j
-
1
}
=
\{
s
_
1
...s
_{
j
-
1
}
\}
$
),
\seq
{
a
}${}_
1
^{
j
-
1
}$
表示前
$
j
-
1
$
个源语言的词对齐(即
\seq
{
a
}${}_
1
^{
j
-
1
}
=
\{
a
_
1
...a
_{
j
-
1
}
\
}
$
),
$
m
$
表示源语句子的长度。公式
\eqref
{
eq:5-19
}
将
$
\funp
{
P
}
(
\seq
{
s
}
,
\seq
{
a
}
|
\seq
{
t
}
)
$
分解为四个部分,具体含义如下:
\begin{itemize}
\vspace
{
0.5em
}
...
...
This diff is collapsed.
Click to expand it.
Chapter6/chapter6.tex
查看文件 @
f5473923
...
...
@@ -219,7 +219,7 @@
\parinterval
不过
$
<
\seq
{
s
}
,
\seq
{
a
}
>
$
中有多少组
$
<
\tau
,
\pi
>
$
呢?通过图
\ref
{
fig:6-5
}
中的例子,可以推出
$
<
\seq
{
s
}
,
\seq
{
a
}
>
$
应该包含
$
\prod
_{
i
=
0
}^{
l
}{
\varphi
_
i
!
}$
个不同的二元组
$
<
\tau
,
\pi
>
$
。 这是因为在给定源语言句子和词对齐时,对于每一个
$
\tau
_
i
$
都有
$
\varphi
_{
i
}
!
$
种排列。
\parinterval
进一步,
$
\funp
{
P
}
(
\tau
,
\pi
|
\seq
{
t
}
)
$
可以被表示如图
\ref
{
fig:6-7
}
的形式。其中
$
\tau
_{
i
1
}^{
k
-
1
}$
表示
$
\tau
_{
i
1
}
\
tau
_{
i
2
}
\cdots
\tau
_{
i
(
k
-
1
)
}$
,
$
\pi
_{
i
1
}^{
k
-
1
}$
表示
$
\pi
_{
i
1
}
\pi
_{
i
2
}
\cdots
\pi
_{
i
(
k
-
1
)
}$
。可以把图
\ref
{
fig:6-7
}
中的公式分为5个部分,并用不同的序号和颜色进行标注。每部分的具体含义是:
\parinterval
进一步,
$
\funp
{
P
}
(
\tau
,
\pi
|
\seq
{
t
}
)
$
可以被表示如图
\ref
{
fig:6-7
}
的形式。其中
$
\tau
_{
i
1
}^{
k
-
1
}$
表示
$
\tau
_{
i
1
}
\
cdots
\tau
_{
i
(
k
-
1
)
}$
,
$
\pi
_{
i
1
}^{
k
-
1
}$
表示
$
\pi
_{
i
1
}
\cdots
\pi
_{
i
(
k
-
1
)
}$
。可以把图
\ref
{
fig:6-7
}
中的公式分为5个部分,并用不同的序号和颜色进行标注。每部分的具体含义是:
%----------------------------------------------
\begin{figure}
[htp]
...
...
@@ -281,13 +281,13 @@
\label
{
eq:6-15
}
\end{eqnarray}
}
\parinterval
而上面提到的
$
t
_
0
$
所对应的这些空位置是如何生成的呢?即如何确定哪些位置是要放置空对齐的源语言单词。在IBM模型3中,假设在所有的非空对齐源语言单词都被生成出来后(共
$
\varphi
_
1
+
\
varphi
_
2
+
\
cdots
{
\varphi
}_
l
$
个非空对源语单词),这些单词后面都以
$
p
_
1
$
概率随机地产生一个“槽”用来放置空对齐单词。这样,
${
\varphi
}_
0
$
就服从了一个二项分布。于是得到
\parinterval
而上面提到的
$
t
_
0
$
所对应的这些空位置是如何生成的呢?即如何确定哪些位置是要放置空对齐的源语言单词。在IBM模型3中,假设在所有的非空对齐源语言单词都被生成出来后(共
$
\varphi
_
1
+
\cdots
{
\varphi
}_
l
$
个非空对源语单词),这些单词后面都以
$
p
_
1
$
概率随机地产生一个“槽”用来放置空对齐单词。这样,
${
\varphi
}_
0
$
就服从了一个二项分布。于是得到
{
\begin{eqnarray}
\funp
{
P
}
(
\varphi
_
0|
\seq
{
t
}
)
&
=
&
\big
(
\begin{array}
{
c
}
\varphi
_
1+
\
varphi
_
2+
\
cdots
\varphi
_
l
\\
\varphi
_
1+
\cdots
\varphi
_
l
\\
\varphi
_
0
\\
\end{array}
\big
)p
_
0
^{
\varphi
_
1+
\
varphi
_
2+
\
cdots
\varphi
_
l-
\varphi
_
0
}
p
_
1
^{
\varphi
_
0
}
\end{array}
\big
)p
_
0
^{
\varphi
_
1+
\cdots
\varphi
_
l-
\varphi
_
0
}
p
_
1
^{
\varphi
_
0
}
\label
{
eq:6-16
}
\end{eqnarray}
}
...
...
This diff is collapsed.
Click to expand it.
Chapter7/chapter7.tex
查看文件 @
f5473923
...
...
@@ -142,7 +142,7 @@
\begin{definition}
短语
{
\small
对于一个句子
$
\seq
{
w
}
=
w
_
1
...w
_
n
$
,任意子串
$
w
_
i...w
_
j
$
(
$
i
\leq
j
$
且
$
0
\leq
i,j
\leq
n
$
)都是句子
$
\seq
{
w
}$
的一个
{
\small\bfnew
{
短语
}}
。
对于一个句子
$
\seq
{
w
}
=
\{
w
_
1
...w
_
n
\}
$
,任意子串
$
\{
w
_
i...w
_
j
\}
$
(
$
i
\leq
j
$
且
$
0
\leq
i,j
\leq
n
$
)都是句子
$
\seq
{
w
}$
的一个
{
\small\bfnew
{
短语
}}
。
}
\end{definition}
%-------------------------------------------
...
...
@@ -154,7 +154,7 @@
\begin{definition}
句子的短语切分
{
\small
如果一个句子
$
\seq
{
w
}
=
w
_
1
...w
_
n
$
可以被切分为
$
m
$
个子串,则称
$
\seq
{
w
}$
由
$
m
$
个短语组成,记为
$
\seq
{
w
}
=
p
_
1
...p
_
m
$
,其中
$
p
_
i
$
是
$
\seq
{
w
}$
的一个短语,
$
\{
p
_
1
,...,p
_
m
\}
$
也被称作句子
$
\seq
{
w
}$
的一个
{
\small\bfnew
{
短语切分
}}
。
如果一个句子
$
\seq
{
w
}
=
\{
w
_
1
...w
_
n
\}
$
可以被切分为
$
m
$
个子串,则称
$
\seq
{
w
}$
由
$
m
$
个短语组成,记为
$
\seq
{
w
}
=
\{
p
_
1
...p
_
m
\}
$
,其中
$
p
_
i
$
是
$
\seq
{
w
}$
的一个短语,
$
\{
p
_
1
,...,p
_
m
\}
$
也被称作句子
$
\seq
{
w
}$
的一个
{
\small\bfnew
{
短语切分
}}
。
}
\end{definition}
%-------------------------------------------
...
...
This diff is collapsed.
Click to expand it.
Chapter8/chapter8.tex
查看文件 @
f5473923
...
...
@@ -340,11 +340,11 @@ d & = & {r_1} \circ {r_2} \circ {r_3} \circ {r_4}
\item
对于
$
(
x,y
)
\in
\varPhi
$
,存在
$
m
$
个双语短语
$
(
x
_
i,y
_
j
)
\in
\varPhi
$
,同时存在(1,
$
...
$
,
$
m
$
)上面的一个排序
$
\sim
=
\{\pi
_
1
, ... ,
\pi
_
m
\}
$
,且:
\vspace
{
-1.5em
}
\begin{eqnarray}
x
&
=
&
\alpha
_
0 x
_
1
\alpha
_
1 x
_
2
...
\alpha
_{
m-1
}
x
_
m
\alpha
_
m
\label
{
eq:8-2
}
\\
y
&
=
&
\beta
_
0 y
_{
\pi
_
1
}
\beta
_
1 y
_{
\pi
_
2
}
...
\beta
_{
m-1
}
y
_{
\pi
_
m
}
\beta
_
m
x
&
=
&
\alpha
_
0 x
_
1 ...
\alpha
_{
m-1
}
x
_
m
\alpha
_
m
\label
{
eq:8-2
}
\\
y
&
=
&
\beta
_
0 y
_{
\pi
_
1
}
...
\beta
_{
m-1
}
y
_{
\pi
_
m
}
\beta
_
m
\label
{
eq:8-3
}
\end{eqnarray}
其中,
$
{
\alpha
_
0
, ... ,
\alpha
_
m
}$
和
${
\beta
_
0
, ... ,
\beta
_
m
}$
表示源语言和目标语言的若干个词串(包含空串)。则
$
\funp
{
X
}
\to
\langle
x,y,
\sim
\rangle
$
是与词对齐相兼容的层次短语规则。这条规则包含
$
m
$
个变量,变量的对齐信息是
$
\sim
$
。
其中,
$
\{\alpha
_
0
, ... ,
\alpha
_
m
\}
$
和
$
\{\beta
_
0
, ... ,
\beta
_
m
\
}
$
表示源语言和目标语言的若干个词串(包含空串)。则
$
\funp
{
X
}
\to
\langle
x,y,
\sim
\rangle
$
是与词对齐相兼容的层次短语规则。这条规则包含
$
m
$
个变量,变量的对齐信息是
$
\sim
$
。
\end{enumerate}
}
\end{definition}
...
...
This diff is collapsed.
Click to expand it.
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论