Commit 54fa983b by xiaotong

updates

parent 8cd65e1f
......@@ -152,35 +152,60 @@
\subsection{规则匹配}
%%%------------------------------------------------------------------------------------------------------------
%%% 基于树的解码 vs 基于串的解码
\begin{frame}{基于树的解码 vs 基于串的解码}
%%% 基于树的解码方法 - 超图
\begin{frame}{基于树的解码 - 超图}
\begin{itemize}
\item 前面的公式本质上描述了一种基于串的解码,即对输入的源语言句子通过句法模型进行翻译,得到译文串。不过,搜索所有的推导导致巨大的解码空间。对于树到串和树到树翻译来说,源语言句法树是可见的,因此可以使用另一种解码方法 - 基于树的解码,即把输出入的源语句法树翻译为目标语串\\
\item 如果源语言输入的是句法树,基于树的解码会找到一个推导覆盖整个句法树,之后输出所对应的目标语词串作为译文
\item 比如,可以从树的叶子结点开始,找到所有能匹配到这个节点的规则,当所有节点匹配完之后,本质上获得了一个超图
\begin{itemize}
\item<2-> 图的节点对应一个句法树句法节点
\item<2-> 图的边(或者叫超边)对应规则,边的头指向规则左部(源语言端)所对应图节点,边可以有多个尾,每个尾对应规则右部(源语言端)中的一个变量
\end{itemize}
\end{itemize}
\centering
\begin{tabular} {l | l l}
\textbf{对比} & \textbf{基于树的解码} & \textbf{基于串的解码} \\ \hline
解码方法 &
\parbox{0.35\textwidth}{
\begin{equation}
\hat{d} = \argmax_{d \in D_{\textrm{tree}}} \textrm{score}(d) \nonumber
\end{equation}
\visible<2->{
\begin{center}
\begin{tikzpicture}
{\scriptsize
\begin{scope}[sibling distance=5pt, level distance=20pt]
\Tree[.\node(cn1){VP$^{[1]}$};
[.\node(cn2){AD$^{[2]}$}; 大幅度 ]
[.\node(cn3){VP$^{[3]}$};
[.\node(cn4){VV$^{[4]}$}; 下降 ]
[.\node(cn5){AS$^{[5]}$}; 了 ]
]
]
\node [anchor=south] (treelabel) at (cn1.north) {\scriptsize{源语句法树}};
\end{scope}
\begin{scope}[xshift=1.3in,sibling distance=5pt, level distance=20pt]
\Tree[.\node(sn1){VP}; [.\node(sn2){AD}; \node(sw1){大幅度}; ] [.\node(sn3){VP};] ]
\node [anchor=south] (rulelabel) at ([yshift=0.2em,xshift=4em]sn1.north) {\scriptsize{匹配的翻译规则}};
\end{scope}
\draw [->,thick] (sn3.east) -- ([xshift=1em]sn3.east);
\node [anchor=west] (rr) at ([xshift=1em]sn3.east) {drastically VP};
\node [anchor=west,circle,draw,inner sep=2pt] (tail) at ([yshift=-3em,xshift=3em]rr.south east) {\tiny{[3]}};
\node [anchor=west,circle,draw,inner sep=2pt] (head) at ([yshift=2.5em,xshift=5em]rr.south east) {\tiny{[1]}};
\draw [-latex,thick] ([yshift=0.1em]tail.60) -- ([yshift=-0.1em]head.260);
\node [anchor=north] (headlabel) at ([xshift=0.5em]head.south) {\tiny{}};
\node [anchor=west] (taillabel) at ([yshift=1.2em,xshift=-0.3em]tail.east) {\tiny{}};
\node [anchor=south] (graphlabel) at ([yshift=0.6em]head.north) {\scriptsize{超图}};
\begin{pgfonlayer}{background}
\node [fill=green!20,inner sep=2pt,drop shadow] (rulebox) [fit = (sn1) (sn2) (sn3) (sw1) (rr)] {};
\draw [->,dotted,thick] ([yshift=2em]rulebox.east) ..controls +(east:3.5em) and +(west:1.5em).. ([yshift=1em,xshift=0.3em]tail.north);
\node [fill=red!20,inner sep=0pt] (nodebox1) [fit = (cn1)] {};
\node [fill=red!20,inner sep=0pt] (nodebox2) [fit = (sn1)] {};
\draw [<->,red] (nodebox1) edge [out=15, in=160] (nodebox2);
\end{pgfonlayer}
}
&
\parbox{0.35\textwidth}{
\begin{equation}
\hat{d} = \argmax_{d \in D} \textrm{score}(d) \nonumber
\end{equation}
\end{tikzpicture}
\end{center}
}
\\ \hline
搜索空间 & 与输入的源语句法树 & 所有推导$D$ \\
& 兼容的推导$D_{\textrm{tree}}$ & \\ \hline
适用模型 & 树到串、树到树 & 所有句法模型 \\ \hline
解码算法 & CYK + 规则二叉化 & chart解码 \\ \hline
速度 && 一般较慢
\end{tabular}
\end{frame}
......
......@@ -4085,6 +4085,7 @@ NP-BAR(NN$_1$ NP-BAR$_2$) $\to$ NN$_1$ NP-BAR$_2$
\end{minipage}
\begin{minipage}[c][5cm][t]{0.50\textwidth}
\visible<2->{
\renewcommand*{\arraystretch}{0.95}
\begin{tabular}{l l}
\multicolumn{2}{l}{\textbf{\scriptsize{抽取得到的规则}}} \\
\hline
......@@ -4095,11 +4096,13 @@ NP-BAR(NN$_1$ NP-BAR$_2$) $\to$ NN$_1$ NP-BAR$_2$
\scriptsize{$r_5$} & \scriptsize{IP(NN$_1$ VP(AD$_2$ VP(VV$_3$ AS$_4$)) $\rightarrow$} \\
\multicolumn{2}{l}{\tiny{S(NP(DT$_4$ NNS$_1$) VP(VBZ(have) ADVP(RB$_2$ VBN$_3$))}} \\
\end{tabular}
\renewcommand*{\arraystretch}{1.0}
}
\visible<3->{
\vspace{0.5em}
\renewcommand*{\arraystretch}{0.95}
\begin{tabular}{l l}
\multicolumn{2}{l}{\textbf{\scriptsize{无法得到的规则}}} \\
\hline
......@@ -4108,6 +4111,7 @@ NP-BAR(NN$_1$ NP-BAR$_2$) $\to$ NN$_1$ NP-BAR$_2$
& \scriptsize{NP(DT(the) NNS(imports))} \\
\scriptsize{$r_{?}$} & \scriptsize{IP(NN$_1$ VP$_2$) $\rightarrow$ S(NP$_1$ VP$_2$)} \\
\end{tabular}
\renewcommand*{\arraystretch}{1.0}
}
\end{minipage}
......@@ -4215,6 +4219,7 @@ NP-BAR(NN$_1$ NP-BAR$_2$) $\to$ NN$_1$ NP-BAR$_2$
\end{minipage}
\begin{minipage}[c][5cm][t]{0.50\textwidth}
\only<1>{
\renewcommand*{\arraystretch}{0.9}
\begin{tabular}{l l}
\multicolumn{2}{l}{\textbf{\scriptsize{抽取得到的规则(词对齐)}}} \\
\hline
......@@ -4225,9 +4230,11 @@ NP-BAR(NN$_1$ NP-BAR$_2$) $\to$ NN$_1$ NP-BAR$_2$
\scriptsize{$r_5$} & \scriptsize{IP(NN$_1$ VP(AD$_2$ VP(VV$_3$ AS$_4$)) $\rightarrow$} \\
\multicolumn{2}{l}{\tiny{S(NP(DT$_4$ NNS$_1$) VP(VBZ(have) ADVP(RB$_2$ VBN$_3$))}} \\
\end{tabular}
\renewcommand*{\arraystretch}{1.0}
}
\visible<4->{
\renewcommand*{\arraystretch}{0.9}
\begin{tabular}{l l}
\multicolumn{2}{l}{\textbf{\scriptsize{抽取得到的规则(子树对齐)}}} \\
\hline
......@@ -4244,6 +4251,7 @@ NP-BAR(NN$_1$ NP-BAR$_2$) $\to$ NN$_1$ NP-BAR$_2$
& \alert{\scriptsize{VP(VBZ$_3$ ADVP(RB$_1$ VBN$_2$)}} \\
\alert{\scriptsize{$r_9$}} & \alert{\scriptsize{IP(NN$_1$ VP$_2$) $\rightarrow$ S(NP$_1$ VP$_2$)}} \\
\end{tabular}
\renewcommand*{\arraystretch}{1.0}
}
\end{minipage}
......@@ -4418,7 +4426,7 @@ NP-BAR(NN$_1$ NP-BAR$_2$) $\to$ NN$_1$ NP-BAR$_2$
\end{frame}
%%%------------------------------------------------------------------------------------------------------------
\subsection{规则匹配}
\subsection{基于树结构的解码}
%%%------------------------------------------------------------------------------------------------------------
%%% 解码模型
......@@ -4466,13 +4474,71 @@ NP-BAR(NN$_1$ NP-BAR$_2$) $\to$ NN$_1$ NP-BAR$_2$
搜索空间 & 与输入的源语句法树 & 所有推导$D$ \\
& 兼容的推导$D_{\textrm{tree}}$ & \\ \hline
适用模型 & 树到串、树到树 & 所有句法模型 \\ \hline
解码算法 & CYK + 规则二叉化 & chart解码 \\ \hline
解码算法 & chart解码 & CYK + 规则二叉化 \\ \hline
速度 && 一般较慢
\end{tabular}
\end{frame}
%%%------------------------------------------------------------------------------------------------------------
%%% 基于树的解码方法 - 超图
\begin{frame}{基于树的解码 - 超图}
\begin{itemize}
\item 如果源语言输入的是句法树,基于树的解码会找到一个推导覆盖整个句法树,之后输出所对应的目标语词串作为译文
\item 比如,可以从树的叶子结点开始,找到所有能匹配到这个节点的规则,当所有节点匹配完之后,本质上获得了一个超图
\begin{itemize}
\item<2-> 图的节点对应一个句法树句法节点
\item<2-> 图的边(或者叫超边)对应规则,边的头指向规则左部(源语言端)所对应图节点,边可以有多个尾,每个尾对应规则右部(源语言端)中的一个变量
\end{itemize}
\end{itemize}
\visible<2->{
\begin{center}
\begin{tikzpicture}
{\scriptsize
\begin{scope}[sibling distance=5pt, level distance=20pt]
\Tree[.\node(cn1){VP$^{[1]}$};
[.\node(cn2){AD$^{[2]}$}; 大幅度 ]
[.\node(cn3){VP$^{[3]}$};
[.\node(cn4){VV$^{[4]}$}; 下降 ]
[.\node(cn5){AS$^{[5]}$}; 了 ]
]
]
\node [anchor=south] (treelabel) at (cn1.north) {\scriptsize{源语句法树}};
\end{scope}
\begin{scope}[xshift=1.3in,sibling distance=5pt, level distance=20pt]
\Tree[.\node(sn1){VP}; [.\node(sn2){AD}; \node(sw1){大幅度}; ] [.\node(sn3){VP};] ]
\node [anchor=south] (rulelabel) at ([yshift=0.2em,xshift=4em]sn1.north) {\scriptsize{匹配的翻译规则}};
\end{scope}
\draw [->,thick] (sn3.east) -- ([xshift=1em]sn3.east);
\node [anchor=west] (rr) at ([xshift=1em]sn3.east) {drastically VP};
\node [anchor=west,circle,draw,inner sep=2pt] (tail) at ([yshift=-3em,xshift=3em]rr.south east) {\tiny{[3]}};
\node [anchor=west,circle,draw,inner sep=2pt] (head) at ([yshift=2.5em,xshift=5em]rr.south east) {\tiny{[1]}};
\draw [-latex,thick] ([yshift=0.1em]tail.60) -- ([yshift=-0.1em]head.260);
\node [anchor=north] (headlabel) at ([xshift=0.5em]head.south) {\tiny{}};
\node [anchor=west] (taillabel) at ([yshift=1.2em,xshift=-0.3em]tail.east) {\tiny{}};
\node [anchor=south] (graphlabel) at ([yshift=0.6em]head.north) {\scriptsize{超图}};
\begin{pgfonlayer}{background}
\node [fill=green!20,inner sep=2pt,drop shadow] (rulebox) [fit = (sn1) (sn2) (sn3) (sw1) (rr)] {};
\draw [->,dotted,thick] ([yshift=2em]rulebox.east) ..controls +(east:3.5em) and +(west:1.5em).. ([yshift=1em,xshift=0.3em]tail.north);
\node [fill=red!20,inner sep=0pt] (nodebox1) [fit = (cn1)] {};
\node [fill=red!20,inner sep=0pt] (nodebox2) [fit = (sn1)] {};
\draw [<->,red] (nodebox1) edge [out=15, in=160] (nodebox2);
\end{pgfonlayer}
}
\end{tikzpicture}
\end{center}
}
\end{frame}
%%%------------------------------------------------------------------------------------------------------------
%%% 基于串的解码
......
......@@ -2565,7 +2565,7 @@ $\textrm{``you''} = \argmax_{y} \textrm{P}(y|\textbf{s}_1, \alert{\textbf{C}})$
xtick={0,1,2},
xticklabels={纽约时报,发表,评论},
xticklabel style={rotate=45,anchor=south west,font=\scriptsize,inner sep=0pt,outer sep=2pt},
xtick pos=upper,xticklabel pos=upper,
xticklabel pos=upper,
colormap={bluewhite}{color=(white) color=(blue)},
]
\addplot3[matrix plot] file [meta=index 2] {Figures/example1.dat};
......@@ -2586,7 +2586,7 @@ $\textrm{``you''} = \argmax_{y} \textrm{P}(y|\textbf{s}_1, \alert{\textbf{C}})$
xtick={0,1,2,3},
xticklabels={我,来到,这个,世界},
xticklabel style={rotate=45,anchor=south west,font=\scriptsize,inner sep=0pt,outer sep=2pt},
xtick pos=upper,xticklabel pos=upper,
xticklabel pos=upper,
colormap={bluewhite}{color=(white) color=(blue)},
colorbar,
colorbar style={
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论