Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
T
Toy-MT-Introduction
概览
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
单韦乔
Toy-MT-Introduction
Commits
dc0c0cf3
Commit
dc0c0cf3
authored
Mar 03, 2020
by
xiaotong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update section 3 (book)
parent
e8cd89f9
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
11 行增加
和
11 行删除
+11
-11
Book/Chapter3/Chapter3.tex
+11
-11
没有找到文件。
Book/Chapter3/Chapter3.tex
查看文件 @
dc0c0cf3
...
@@ -679,7 +679,7 @@ g(\mathbf{s},\mathbf{t}) \equiv \prod_{j,i \in \widehat{A}}{\textrm{P}(s_j,t_i)}
...
@@ -679,7 +679,7 @@ g(\mathbf{s},\mathbf{t}) \equiv \prod_{j,i \in \widehat{A}}{\textrm{P}(s_j,t_i)}
\parinterval
因此,IBM模型2抛弃了对对齐概率
$
\textrm
{
P
}
(
a
_
j|a
_
1
^{
j
-
1
}
,s
_
1
^{
j
-
1
}
,m,
\mathbf
{
t
}
)
$
服从均匀分布的假设。在IBM模型2中,我们认为词对齐是有倾向性的,对齐至少要与源语单词的位置和目标语单词的位置有关。具体来说,对齐位置
$
a
_
j
$
的生成概率与语言单位位置
$
j
$
、源语句子长度
$
m
$
和译文长度
$
l
$
有关,形式化表述为:
\parinterval
因此,IBM模型2抛弃了对对齐概率
$
\textrm
{
P
}
(
a
_
j|a
_
1
^{
j
-
1
}
,s
_
1
^{
j
-
1
}
,m,
\mathbf
{
t
}
)
$
服从均匀分布的假设。在IBM模型2中,我们认为词对齐是有倾向性的,对齐至少要与源语单词的位置和目标语单词的位置有关。具体来说,对齐位置
$
a
_
j
$
的生成概率与语言单位位置
$
j
$
、源语句子长度
$
m
$
和译文长度
$
l
$
有关,形式化表述为:
\begin{eqnarray}
\begin{eqnarray}
\textrm
{
P
}
(a
_
j|a
_
1
^{
j-1
}
,s
_
1
^{
j-1
}
,m,
\mathbf
{
t
}
)
\equiv
\mathbf
{
a
}
(a
_
j|j,m,l)
\textrm
{
P
}
(a
_
j|a
_
1
^{
j-1
}
,s
_
1
^{
j-1
}
,m,
\mathbf
{
t
}
)
\equiv
a
(a
_
j|j,m,l)
\label
{
eqC3.26-new
}
\label
{
eqC3.26-new
}
\end{eqnarray}
\end{eqnarray}
...
@@ -688,7 +688,7 @@ g(\mathbf{s},\mathbf{t}) \equiv \prod_{j,i \in \widehat{A}}{\textrm{P}(s_j,t_i)}
...
@@ -688,7 +688,7 @@ g(\mathbf{s},\mathbf{t}) \equiv \prod_{j,i \in \widehat{A}}{\textrm{P}(s_j,t_i)}
\parinterval
IBM模型2的其他假设均与模型1相同。把公式
\ref
{
eqC3.21-new
}
、
\ref
{
eqC3.22-new
}
和
\ref
{
eqC3.26-new
}
重新带入公式
\ref
{
eqC3.19-new
}
和
\ref
{
eqC3.18-new
}
,可以得到IBM模型2的数学描述:
\parinterval
IBM模型2的其他假设均与模型1相同。把公式
\ref
{
eqC3.21-new
}
、
\ref
{
eqC3.22-new
}
和
\ref
{
eqC3.26-new
}
重新带入公式
\ref
{
eqC3.19-new
}
和
\ref
{
eqC3.18-new
}
,可以得到IBM模型2的数学描述:
\begin{eqnarray}
\begin{eqnarray}
\textrm
{
P
}
(
\mathbf
{
s
}
|
\mathbf
{
t
}
)
&
=
&
\sum
_{
\mathbf
{
a
}}{
\textrm
{
P
}
(
\mathbf
{
s
}
,
\mathbf
{
a
}
|
\mathbf
{
t
}
)
}
\nonumber
\\
\textrm
{
P
}
(
\mathbf
{
s
}
|
\mathbf
{
t
}
)
&
=
&
\sum
_{
\mathbf
{
a
}}{
\textrm
{
P
}
(
\mathbf
{
s
}
,
\mathbf
{
a
}
|
\mathbf
{
t
}
)
}
\nonumber
\\
&
=
&
\sum
_{
a
_
1=0
}^{
l
}{
\cdots
}
\sum
_{
a
_
m=0
}^{
l
}{
\varepsilon
}
\prod
_{
j=1
}^{
m
}{
\mathbf
{
a
}
(a
_
j|j,m,l)f(s
_
j|t
_{
a
_
j
}
)
}
&
=
&
\sum
_{
a
_
1=0
}^{
l
}{
\cdots
}
\sum
_{
a
_
m=0
}^{
l
}{
\varepsilon
}
\prod
_{
j=1
}^{
m
}{
a
(a
_
j|j,m,l)f(s
_
j|t
_{
a
_
j
}
)
}
\label
{
eqC3.27-new
}
\label
{
eqC3.27-new
}
\end{eqnarray}
\end{eqnarray}
...
@@ -723,7 +723,7 @@ g(\mathbf{s},\mathbf{t}) \equiv \prod_{j,i \in \widehat{A}}{\textrm{P}(s_j,t_i)}
...
@@ -723,7 +723,7 @@ g(\mathbf{s},\mathbf{t}) \equiv \prod_{j,i \in \widehat{A}}{\textrm{P}(s_j,t_i)}
\parinterval
接着,利用公式
\ref
{
eqC3.29-new
}
的方式,可以把公式
\ref
{
eqC3.25-new
}
和
\ref
{
eqC3.27-new
}
重写表示为:
\parinterval
接着,利用公式
\ref
{
eqC3.29-new
}
的方式,可以把公式
\ref
{
eqC3.25-new
}
和
\ref
{
eqC3.27-new
}
重写表示为:
\begin{eqnarray}
\begin{eqnarray}
\textrm
{
IBM模型1:
\ \ \ \
}
\textrm
{
P
}
(
\mathbf
{
s
}
|
\mathbf
{
t
}
)
&
=
&
\frac
{
\epsilon
}{
(l+1)
^{
m
}}
\prod\limits
_{
j=1
}^{
m
}
\sum\limits
_{
i=0
}^{
l
}
f(s
_
j|t
_
i)
\label
{
eq:final-model1
}
\\
\textrm
{
IBM模型1:
\ \ \ \
}
\textrm
{
P
}
(
\mathbf
{
s
}
|
\mathbf
{
t
}
)
&
=
&
\frac
{
\epsilon
}{
(l+1)
^{
m
}}
\prod\limits
_{
j=1
}^{
m
}
\sum\limits
_{
i=0
}^{
l
}
f(s
_
j|t
_
i)
\label
{
eq:final-model1
}
\\
\textrm
{
IBM模型2:
\ \ \ \
}
\textrm
{
P
}
(
\mathbf
{
s
}
|
\mathbf
{
t
}
)
&
=
&
\epsilon
\prod\limits
_{
j=1
}^{
m
}
\sum\limits
_{
i=0
}^{
l
}
\mathbf
{
a
}
(i|j,m,l) f(s
_
j|t
_
i)
\label
{
eq:final-model2
}
\textrm
{
IBM模型2:
\ \ \ \
}
\textrm
{
P
}
(
\mathbf
{
s
}
|
\mathbf
{
t
}
)
&
=
&
\epsilon
\prod\limits
_{
j=1
}^{
m
}
\sum\limits
_{
i=0
}^{
l
}
a
(i|j,m,l) f(s
_
j|t
_
i)
\label
{
eq:final-model2
}
\label
{
eqC3.31-new
}
\label
{
eqC3.31-new
}
\end{eqnarray}
\end{eqnarray}
...
@@ -821,8 +821,8 @@ $\frac{\partial g(z)}{\partial z} = \alpha \beta z^{\beta-1} = \frac{\beta}{z}\a
...
@@ -821,8 +821,8 @@ $\frac{\partial g(z)}{\partial z} = \alpha \beta z^{\beta-1} = \frac{\beta}{z}\a
\parinterval
将
$
\frac
{
\partial
\big
[
\prod
_{
j
=
1
}^{
m
}
\sum
_{
i
=
0
}^{
l
}
f
(
s
_
j|t
_
i
)
\big
]
}{
\partial
f
(
s
_
u|t
_
v
)
}$
进一步代入
$
\frac
{
\partial
L
(
f,
\lambda
)
}{
\partial
f
(
s
_
u|t
_
v
)
}$
,得到
$
L
(
f,
\lambda
)
$
的导数
\parinterval
将
$
\frac
{
\partial
\big
[
\prod
_{
j
=
1
}^{
m
}
\sum
_{
i
=
0
}^{
l
}
f
(
s
_
j|t
_
i
)
\big
]
}{
\partial
f
(
s
_
u|t
_
v
)
}$
进一步代入
$
\frac
{
\partial
L
(
f,
\lambda
)
}{
\partial
f
(
s
_
u|t
_
v
)
}$
,得到
$
L
(
f,
\lambda
)
$
的导数
\begin{eqnarray}
\begin{eqnarray}
&
&{
\frac
{
\partial
L(f,
\lambda
)
}{
\partial
f(s
_
u|t
_
v)
}}
\nonumber
\\
&
&{
\frac
{
\partial
L(f,
\lambda
)
}{
\partial
f(s
_
u|t
_
v)
}}
\nonumber
\\
&
=
&{
\frac
{
\epsilon
}{
(l+1)
^{
m
}}
\cdot
\
color
{
red
}{
\frac
{
\partial
\big
[ \prod\limits_{j=1}^{m} \sum\limits_{i=0}^{l} f(s_j|t_{a_j}) \big]
}{
\partial
f(s
_
u|t
_
v)
}
}
-
\lambda
_{
t
_
v
}}
\nonumber
\\
&
=
&{
\frac
{
\epsilon
}{
(l+1)
^{
m
}}
\cdot
\
frac
{
\partial
\big
[ \prod\limits_{j=1}^{m} \sum\limits_{i=0}^{l} f(s_j|t_{a_j}) \big]
}{
\partial
f(s
_
u|t
_
v)
}
-
\lambda
_{
t
_
v
}}
\nonumber
\\
&
=
&{
\frac
{
\epsilon
}{
(l+1)
^{
m
}}
\
cdot
\color
{
red
}{
\frac
{
\sum
_{
j=1
}^{
m
}
\delta
(s
_
j,s
_
u)
\cdot
\sum
_{
i=0
}^{
l
}
\delta
(t
_
i,t
_
v)
}{
\sum
_{
i=0
}^{
l
}
f(s
_
u|t
_
i)
}
\prod\limits
_{
j=1
}^{
m
}
\sum\limits
_{
i=0
}^{
l
}
f(s
_
j|t
_
i)
}
-
\lambda
_{
t
_
v
}}
&
=
&{
\frac
{
\epsilon
}{
(l+1)
^{
m
}}
\
frac
{
\sum
_{
j=1
}^{
m
}
\delta
(s
_
j,s
_
u)
\cdot
\sum
_{
i=0
}^{
l
}
\delta
(t
_
i,t
_
v)
}{
\sum
_{
i=0
}^{
l
}
f(s
_
u|t
_
i)
}
\prod\limits
_{
j=1
}^{
m
}
\sum\limits
_{
i=0
}^{
l
}
f(s
_
j|t
_
i)
-
\lambda
_{
t
_
v
}}
\label
{
eqC3.38-new
}
\label
{
eqC3.38-new
}
\end{eqnarray}
\end{eqnarray}
...
@@ -939,16 +939,16 @@ c_{\mathbb{E}}(\mathbf{s}_u|\mathbf{t}_v)=\sum\limits_{i=1}^{N} c_{\mathbb{E}}(
...
@@ -939,16 +939,16 @@ c_{\mathbb{E}}(\mathbf{s}_u|\mathbf{t}_v)=\sum\limits_{i=1}^{N} c_{\mathbb{E}}(
\end{figure}
\end{figure}
%---------------------------
%---------------------------
\noindent
\hspace
{
2em
}
同样的,EM算法可以直接用于训练IBM模型2。对于句对
$
\mathbf
{
(
}
s
,
\mathbf
{
t
}
)
$
,
$
m
=
|
\mathbf
{
s
}
|
$
,
$
l
=
|
\mathbf
{
t
}
|
$
,E-Step的计算公式如下,其中参数
$
f
(
s
_
j|t
_
i
)
$
与IBM模型1一样:
\noindent
\hspace
{
2em
}
同样的,EM算法可以直接用于训练IBM模型2。对于句对
$
(
\mathbf
{
s
}
,
\mathbf
{
t
}
)
$
,
$
m
=
|
\mathbf
{
s
}
|
$
,
$
l
=
|
\mathbf
{
t
}
|
$
,E-Step的计算公式如下,其中参数
$
f
(
s
_
j|t
_
i
)
$
与IBM模型1一样:
\begin{eqnarray}
\begin{eqnarray}
c
_{
\mathbb
{
E
}}
(s
_
u|t
_
v;
\mathbf
{
s
}
,
\mathbf
{
t
}
)
&
=
&
\sum\limits
_{
j=1
}^{
m
}
\sum\limits
_{
i=0
}^{
l
}
\frac
{
f(s
_
u|t
_
v)
\mathbf
{
a
}
(i|j,m,l)
\delta
(s
_
j,s
_
u)
\delta
(t
_
i,t
_
v)
}
{
\sum
_{
k=0
}^{
l
}
f(s
_
u|t
_
v)a(k|j,m,l)
}
\\
c
_{
\mathbb
{
E
}}
(s
_
u|t
_
v;
\mathbf
{
s
}
,
\mathbf
{
t
}
)
&
=
&
\sum\limits
_{
j=1
}^{
m
}
\sum\limits
_{
i=0
}^{
l
}
\frac
{
f(s
_
u|t
_
v)
a
(i|j,m,l)
\delta
(s
_
j,s
_
u)
\delta
(t
_
i,t
_
v)
}
{
\sum
_{
k=0
}^{
l
}
f(s
_
u|t
_
v)a(k|j,m,l)
}
\\
c
_{
\mathbb
{
E
}}
(i|j,m,l;
\mathbf
{
s
}
,
\mathbf
{
t
}
)
&
=
&
\frac
{
f(s
_
j|t
_
i)
\mathbf
{
a
}
(i|j,m,l)
}
{
\sum
_{
k=0
}^{
l
}
f(s
_
j|t
_
k)a(k,j,m,l)
}
c
_{
\mathbb
{
E
}}
(i|j,m,l;
\mathbf
{
s
}
,
\mathbf
{
t
}
)
&
=
&
\frac
{
f(s
_
j|t
_
i)
a
(i|j,m,l)
}
{
\sum
_{
k=0
}^{
l
}
f(s
_
j|t
_
k)a(k,j,m,l)
}
\label
{
eqC3.49-new
}
\label
{
eqC3.49-new
}
\end{eqnarray}
\end{eqnarray}
\noindent
\hspace
{
2em
}
M-Step的计算公式如下,其中参数
$
\mathbf
{
a
}
(
i|j,m,l
)
$
表示调序概率:
\noindent
\hspace
{
2em
}
M-Step的计算公式如下,其中参数
$
a
(
i|j,m,l
)
$
表示调序概率:
\begin{eqnarray}
\begin{eqnarray}
f(s
_
u|t
_
v)
&
=
\frac
{
\sum
_{
k=0
}^{
K
}
c
_{
\mathbb
{
E
}}
(s
_
u|t
_
v;
\mathbf
{
s
}^{
[k]
}
,
\mathbf
{
t
}^{
[k]
}
)
}
{
\sum
_{
s
_
u
}
\sum
_{
k=0
}^{
K
}
c
_{
\mathbb
{
E
}}
(s
_
u|t
_
v;
\mathbf
{
s
}^{
[k]
}
,
\mathbf
{
t
}^{
[k]
}
)
}
\\
f(s
_
u|t
_
v)
&
=
\frac
{
\sum
_{
k=0
}^{
K
}
c
_{
\mathbb
{
E
}}
(s
_
u|t
_
v;
\mathbf
{
s
}^{
[k]
}
,
\mathbf
{
t
}^{
[k]
}
)
}
{
\sum
_{
s
_
u
}
\sum
_{
k=0
}^{
K
}
c
_{
\mathbb
{
E
}}
(s
_
u|t
_
v;
\mathbf
{
s
}^{
[k]
}
,
\mathbf
{
t
}^{
[k]
}
)
}
\\
\mathbf
{
a
}
(i|j,m,l)
&
=
\frac
{
\sum
_{
k=0
}^{
K
}
c
_{
\mathbb
{
E
}}
(i|j;
\mathbf
{
s
}^{
[k]
}
,
\mathbf
{
t
}^{
[k]
}
)
}
{
\sum
_{
i
}
\sum
_{
k=0
}^{
K
}
c
_{
\mathbb
{
E
}}
(i|j;
\mathbf
{
s
}^{
[k]
}
,
\mathbf
{
t
}^{
[k]
}
)
}
a
(i|j,m,l)
&
=
\frac
{
\sum
_{
k=0
}^{
K
}
c
_{
\mathbb
{
E
}}
(i|j;
\mathbf
{
s
}^{
[k]
}
,
\mathbf
{
t
}^{
[k]
}
)
}
{
\sum
_{
i
}
\sum
_{
k=0
}^{
K
}
c
_{
\mathbb
{
E
}}
(i|j;
\mathbf
{
s
}^{
[k]
}
,
\mathbf
{
t
}^{
[k]
}
)
}
\label
{
eqC3.51-new
}
\label
{
eqC3.51-new
}
\end{eqnarray}
\end{eqnarray}
...
@@ -989,7 +989,7 @@ f(s_u|t_v) &=\frac{\sum_{k=0}^{K}c_{\mathbb{E}}(s_u|t_v;\mathbf{s}^{[k]},\mathbf
...
@@ -989,7 +989,7 @@ f(s_u|t_v) &=\frac{\sum_{k=0}^{K}c_{\mathbb{E}}(s_u|t_v;\mathbf{s}^{[k]},\mathbf
\parinterval
可以看出,一组
$
\tau
$
和
$
\phi
$
(记为
$
<
\tau
,
\phi
>
$
)可以决定一个对齐
$
\mathbf
{
a
}$
和一个源语句子
$
\mathbf
{
s
}$
。相反的,一个对齐
$
\mathbf
{
a
}$
和一个源语句子
$
\mathbf
{
s
}$
可以对应多组
$
<
\tau
,
\phi
>
$
。如图
\ref
{
fig:3-30
}
所示,不同的
$
<
\tau
,
\phi
>
$
对应同一个源语言句子和词对齐。它们的区别在于目标语单词``Scientists''生成的源语言单词``科学家''和``们''的顺序不同。我们把不同的
$
<
\tau
,
\phi
>
$
对应到的相同的源语句子
$
\mathbf
{
s
}$
和对齐
$
\mathbf
{
a
}$
记为
$
<
\mathbf
{
s
}
,
\mathbf
{
a
}
>
$
。因此计算
$
\textrm
{
P
}
(
\mathbf
{
s
}
,
\mathbf
{
a
}
|
\mathbf
{
t
}
)
$
时需要把每个可能结果的概率加起来,如下:
\parinterval
可以看出,一组
$
\tau
$
和
$
\phi
$
(记为
$
<
\tau
,
\phi
>
$
)可以决定一个对齐
$
\mathbf
{
a
}$
和一个源语句子
$
\mathbf
{
s
}$
。相反的,一个对齐
$
\mathbf
{
a
}$
和一个源语句子
$
\mathbf
{
s
}$
可以对应多组
$
<
\tau
,
\phi
>
$
。如图
\ref
{
fig:3-30
}
所示,不同的
$
<
\tau
,
\phi
>
$
对应同一个源语言句子和词对齐。它们的区别在于目标语单词``Scientists''生成的源语言单词``科学家''和``们''的顺序不同。我们把不同的
$
<
\tau
,
\phi
>
$
对应到的相同的源语句子
$
\mathbf
{
s
}$
和对齐
$
\mathbf
{
a
}$
记为
$
<
\mathbf
{
s
}
,
\mathbf
{
a
}
>
$
。因此计算
$
\textrm
{
P
}
(
\mathbf
{
s
}
,
\mathbf
{
a
}
|
\mathbf
{
t
}
)
$
时需要把每个可能结果的概率加起来,如下:
\begin{equation}
\begin{equation}
\textrm
{
P
}
(
\mathbf
{
s
}
,
a
|
\mathbf
{
t
}
)=
\sum
_{{
<
\tau
,
\phi
>
}
\in
{
<
\mathbf
{
s
}
,a>
}}{
\textrm
{
P
}
(
\tau
,
\phi
|t)
}
\textrm
{
P
}
(
\mathbf
{
s
}
,
\mathbf
{
a
}
|
\mathbf
{
t
}
)=
\sum
_{{
<
\tau
,
\phi
>
}
\in
{
<
\mathbf
{
s
}
,a>
}}{
\textrm
{
P
}
(
\tau
,
\phi
|t)
}
\label
{
eqC3.52-new
}
\label
{
eqC3.52-new
}
\end{equation}
\end{equation}
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论