--- tags: Presentation, Label Sequence slideOptions: transition: slide --- # Weekly Meeting 12/09 --- ## Outline - 種樹問題 - 線性種樹問題 - 非線性種樹問題 - 部分間隔問題 - 速率題 - 相遇問題 - 追及問題 - 待討論 - 拆句or不拆句 --- ## 種樹問題 ---- ### 線性種樹問題 ---- - 線性種樹問題 - Initial 句型: $種幾旁, 每單位量, 量變, 有, 起始端$ - Transformed 句型: $總長, 樹距, 起始端, 棵數, 種幾旁$ <font size=6.5>$$ \begin{eqnarray} 棵數 &=& 一旁棵數 \times 種幾旁 \\ 一旁棵數 &=& \frac{總長}{樹距}+起始端 \\ 起始端 &=& \left\{\begin{matrix} 1, & \text{if 兩端都種} \\ -1, & \text{if 兩端都不種} \\ 0, & \text{if 一端種一端不種} \\ \end{matrix}\right.\end{eqnarray} $$</font> ---- - 範例一 - Raw data - 在一條公路的兩旁,每隔4公尺種一棵榕樹,路的兩端都種,共種了474棵。這條公路有多長? - 語意分析後補齊資訊的data - 在一條公路的兩旁,每隔4公尺種一棵榕樹,路的兩端都種,共種了474棵==榕樹==。這條公路有多長? ---- - Solving Steps example: - **Step 1: Sentence Type Labeling** - {在一條公路的兩旁|種幾旁},{每隔4公尺種一棵榕樹|每單位量},{路的兩端都種|起始端},{共種了474棵榕樹|量變}。{這條公路有多長|有}? ---- - **Step 2: Conversion** - {在一條公路的兩旁|種幾旁},{每隔4公尺種一棵榕樹|每單位量},{路的兩端都種|起始端},{共種了474棵榕樹|有}。{這條公路有多長|有}? ---- - **Step 3: Transformation** - {在一條公路的兩旁|種幾旁},{每隔4公尺種一棵榕樹|樹距},{路的兩端都種|起始端},{共種了474棵榕樹|棵數}。{這條公路有多長|總長}? ---- - **Step 4: Frame Matching** - 因為有 *總長, 樹距, 起始端, 棵數, 種幾旁* 這個 sequence - 所以對到 **線性種樹問題** 這個frame ---- - **Step 5: Calculation** $$ \begin{eqnarray} 棵數 &=& 一旁棵數 \times 種幾旁 \\ 一旁棵數 &=& \frac{總長}{樹距}+起始端 \\ 起始端 &=& \left\{\begin{matrix} 1, & \text{if 兩端都種} \\ -1, & \text{if 兩端都不種} \\ 0, & \text{if 一端種一端不種} \\ \end{matrix}\right.\end{eqnarray} $$ - <font size=6>{在一條公路的兩旁|種幾旁},{每隔4公尺種一棵榕樹|樹距},{路的兩端都種|起始端},{共種了474棵榕樹|棵數}。{這條公路有多長|總長}?</font> ---- - 範例二 - Raw data - 一條長18公尺的走廊,每隔2公尺綁一顆氣球,頭尾兩端都要綁,一共要綁幾顆氣球? - 語意分析後補齊資訊的data - (不變) ---- - Solving Steps example: - **Step 1: Sentence Type Labeling** - {一條長18公尺的走廊|每單位量},{每隔2公尺綁一顆氣球|每單位量},{頭尾兩端都要綁|起始端},{一共要綁幾顆氣球|量變}? ---- - **Step 2: Conversion** - {一條長18公尺的走廊|每單位量},{每隔2公尺綁一顆氣球|每單位量},{頭尾兩端都要綁|起始端},{一共要綁幾顆氣球|有}? ---- - **Step 3: Transformation** - {一條長18公尺的走廊|總長},{每隔2公尺綁一顆氣球|樹距},{頭尾兩端都要綁|起始端},{一共要綁幾顆氣球|棵數}? ---- - **Step 4: Frame Matching** - 因為有 *總長, 樹距, 起始端, 棵數* 這個 sequence - 其中題目沒有$種幾旁$的子句type,預設$種幾旁=1(一旁)$ - 所以對到 **線性種樹問題** 這個frame ---- - **Step 5: Calculation** $$ \begin{eqnarray} 棵數 &=& 一旁棵數 \times 種幾旁 \\ 一旁棵數 &=& \frac{總長}{樹距}+起始端 \\ 起始端 &=& \left\{\begin{matrix} 1, & \text{if 兩端都種} \\ -1, & \text{if 兩端都不種} \\ 0, & \text{if 一端種一端不種} \\ \end{matrix}\right.\end{eqnarray} $$ - <font size=6>{一條長18公尺的走廊|總長},{每隔2公尺綁一顆氣球|樹距},{頭尾兩端都要綁|起始端},{一共要綁幾顆氣球|棵數}?</font> ---- ### 非線性種樹問題 ---- - 非線性種樹問題 - Initial 句型: $屬性, 每單位量, 有, 量變$ - Transformed 句型: $周長, 樹距, 棵數$ $$ 棵數=\frac{周長}{樹距} $$ ---- - Raw data - 有一個周長157公尺的圓形池塘,沿著池塘周圍,每隔15.7公尺設置一張椅子供行人休息,這個池塘共設置了幾張椅子? - 語意分析後補齊資訊的data - (不變) ---- - Solving Steps example: - **Step 1: Sentence Type Labeling** - {有一個周長157公尺的圓形池塘|屬性},{沿著池塘周圍|語境},{每隔15.7公尺設置一張椅子供行人休息|樹距},{這個池塘共設置了幾張椅子|量變}? ---- - **Step 2: Conversion** - {有一個周長157公尺的圓形池塘|屬性},{每隔15.7公尺設置一張椅子供行人休息|每單位量},{這個池塘共設置了幾張椅子|有}? ---- - **Step 3: Transformation** - {有一個周長157公尺的圓形池塘|周長},{每隔15.7公尺設置一張椅子供行人休息|樹距},{這個池塘共設置了幾張椅子|棵數}? ---- - **Step 4: Frame Matching** - 因為有 *周長, 樹距, 棵數* 這個 sequence - 所以對到 **非線性種樹問題** 這個frame ---- - **Step 5: Calculation** $$ 棵數=\frac{周長}{樹距} $$ - {有一個周長157公尺的圓形池塘|周長},{沿著池塘周圍|語境},{每隔15.7公尺設置一張椅子供行人休息|樹距},{這個池塘共設置了幾張椅子|棵數}? ---- ### 部分間隔問題 ---- - 部分間隔問題 - Initial 句型: $每單位量, 屬性, 算間隔$ - Transformed 句型: $總長, 間隔距離, 間隔數$ $$ 總長 = 間隔距離 \times 間隔數 $$ ---- - Raw data - 有一條跑道,每隔15公尺做一個記號,從第1個記號到第10個記號之間,相距多少公尺? - 語意分析後補齊資訊的data - 有一條跑道,==跑道==每隔15公尺做一個記號,從==跑道的==第1個記號到==跑道的==第10個記號之間,相距多少公尺? ---- - **Step 1: Sentence Type Labeling** - {有一條跑道|有},{跑道每隔15公尺做一個記號|每單位量},{從跑道的第1個記號到跑道的第10個記號之間|算間隔},{相距多少公尺|屬性}? ---- - **Step 2: Conversion** - {有一條跑道|有},{跑道每隔15公尺做一個記號|每單位量},{從跑道的第1個記號到跑道的第10個記號之間|間隔數},{相距多少公尺|屬性}? ---- - **Step 3: Transformation** - {有一條跑道|有},{跑道每隔15公尺做一個記號|間隔距離},{從跑道的第1個記號到跑道的第10個記號之間|間隔數},{相距多少公尺|總長}? ---- - **Step 4: Frame Matching** - 因為有 *總長, 間隔距離, 間隔數* 這個 sequence - 所以對到 **部分間隔問題** 這個frame ---- - **Step 5: Calculation** $$ 總長 = 間隔距離 \times 間隔數 $$ - {有一條跑道|有},{跑道每隔15公尺做一個記號|間隔距離},{從跑道的第1個記號到跑道的第10個記號之間|間隔數},{相距多少公尺|總長}? --- ## 速率問題 ---- ### 相遇問題 - Initial 句型: $時間,距離,速率,相遇時間,相遇問題關鍵字$ - Transformed 句型: $總長,甲速,乙速,相遇時間,相遇問題關鍵字$ $$ 總長=(甲速+乙速)\times 相遇時間 \\ $$ ---- - Solving Steps example: - **Step 1: Sentence Type Labeling** - {小成騎腳踏車的分速是150公尺|速率},{小功騎腳踏車的分速是190公尺|速率},{兩人分別從家裡同時出發|相遇問題關鍵字},{相向而行|相遇問題關鍵字},{5分鐘後相遇|相遇時間},{兩人的家相距幾公尺|距離}? ---- - **Step 2: Conversion** - {小成騎腳踏車的分速是150公尺|速率},{小功騎腳踏車的分速是190公尺|速率},{兩人分別從家裡同時出發|相遇問題關鍵字},{相向而行|相遇問題關鍵字},{5分鐘後相遇|相遇時間},{兩人的家相距幾公尺|距離}? ---- - **Step 3: Transformation** - {小成騎腳踏車的分速是150公尺|甲速},{小功騎腳踏車的分速是190公尺|乙速},{兩人分別從家裡同時出發|相遇問題關鍵字},{相向而行|相遇問題關鍵字},{5分鐘後相遇|相遇時間},{兩人的家相距幾公尺|總長}? ---- - **Step 4: Frame Matching** - 因為有 *總長,甲速,乙速,相遇時間,相遇問題關鍵字* 這個 sequence - 所以對到 **相遇問題** 這個frame ---- - **Step 5: Calculation** $$ 總長=(甲速+乙速)\times 相遇時間 $$ - {小成騎腳踏車的分速是150公尺|甲速},{小功騎腳踏車的分速是190公尺|乙速},{兩人分別從家裡同時出發|相遇問題關鍵字},{相向而行|相遇問題關鍵字},{5分鐘後相遇|相遇時間},{兩人的家相距幾公尺|總長}? ---- - **Step 5: Calculation** (範例二) $$ 總長=(甲速+乙速)\times 相遇時間 $$ - {玩具汽車移動的速率是5公尺/分|甲速},{玩具機器人移動的速率是2公尺/分|乙速},{兩種玩具同時同地反方向出發|相遇問題關鍵字},{10分鐘後|相遇時間},{兩種玩具相距多遠|總長}? --- ### 追及問題 - Initial 句型: $速率_1, 速率_2, 追上時間, 先走時間, 追及路程, \\ \space 追及時間, 時間, 追上$ - transformation 句型: $慢速, 快速, 追上時間, 先走時間, 追及路程, 追及時間$ - $$\begin{eqnarray} 追及路程 &=& 慢速 \times 先走時間 \\ 追及時間 &=& 追上時間 - 先走時間 \\ 追及路程 &=& (快速 - 慢速) \times 追及時間 \end{eqnarray}$$ ---- - Solving Steps example: - **Step 1: Sentence Type Labeling** - {在公路上行走|語境},{小文每分鐘走90公尺|速率},{小燕每分鐘走120公尺|速率},{小文先出發|語境},{小文出發16分鐘後|時間},{小燕追上小文|追上},{小文比小燕先出發幾分鐘|先走時間}? ---- - **Step 2: Conversion** - {小文每分鐘走90公尺|速率},{小燕每分鐘走120公尺|速率},{小文出發16分鐘後小燕追上小文|追上時間},{小文比小燕先出發幾分鐘|先走時間}? ---- - **Step 3: Transformation** - {小文每分鐘走90公尺|**慢速**},{小燕每分鐘走120公尺|**快速**},{小文出發16分鐘後小燕追上小文|追上時間},{小文比小燕先出發幾分鐘|先走時間}? ---- - **Step 4: Frame Matching** - 因為有 *慢速, 快速, 追上時間, 先走時間* 這個 sequence - 所以對到 **追及問題** 這個frame ---- - **Step 5: Calculation** - $\begin{eqnarray} 追及路程 &=& 慢速 \times 先走時間 \\ 追及時間 &=& 追上時間 - 先走時間 \\ 追及路程 &=& (快速 - 慢速) \times 追及時間 \end{eqnarray}$ - {小文每分鐘走90公尺|**慢速**},{小燕每分鐘走120公尺|**快速**},{小文出發16分鐘後小燕追上小文|追上時間},{小文比小燕先出發幾分鐘|先走時間}? --- ### 追及問題(另解) - Initial 句型: $速率_1, 速率_2, 追及時間, 先走時間, 總時間, \\ \space 先走距離, 追及距離, 追及問題關鍵字$ - transformation 句型: $慢速, 快速, 追及時間, 先走時間, 總時間, \\ \space 先走距離, 追及距離, 追及問題關鍵字$ ---- - $$\begin{eqnarray} 先走距離 &=& 慢速\times 先走時間 \\ 追及距離 &=& 慢速\times 追及時間 \\ 總時間 &=& 先走時間+追及時間 \\ \\ 快速\times 追及時間 &=& 先走距離+追及距離 \\ &=& 慢速\times 總時間 \end{eqnarray} $$ ---- - Solving Steps example: - **Step 1: Sentence Type Labeling** - {在公路上行走|語境},{小文每分鐘走90公尺|速率},{小燕每分鐘走120公尺|速率},{小文先出發|語境},{小文出發16分鐘後|時間},{小燕追上小文|追及問題關鍵字},{小文比小燕先出發幾分鐘|先走時間}? ---- - **Step 2: Conversion** - {小文每分鐘走90公尺|速率},{小燕每分鐘走120公尺|速率},{小文出發16分鐘後|時間},{小燕追上小文|追及問題關鍵字},{小文比小燕先出發幾分鐘|先走時間}? ---- - **Step 3: Transformation** - {小文每分鐘走90公尺|**慢速**},{小燕每分鐘走120公尺|**快速**},{小文出發16分鐘後|==追及時間+先走時間=總時間==},{小燕追上小文|追及問題關鍵字},{小文比小燕先出發幾分鐘|先走時間}? ---- - **Step 4: Frame Matching** - 因為有 *慢速, 快速, ==總時間==, 追及問題關鍵字* 這個 sequence - 所以對到 **追及問題** 這個frame ---- - **Step 5: Calculation** - $$\begin{eqnarray} 先走距離 &=& 慢速\times 先走時間 \\ 追及距離 &=& 慢速\times 追及時間 \\ 總時間 &=& 先走時間+追及時間 \\ 快速\times 追及時間 &=& 先走距離+追及距離 \\ &=& 慢速\times 總時間 \end{eqnarray} $$ - <font size=6>{小文每分鐘走90公尺|**慢速**},{小燕每分鐘走120公尺|**快速**},{小文出發16分鐘後小燕追上小文|==追及時間+先走時間=總時間==},{小文比小燕先出發幾分鐘|先走時間}? </font> ---- - **Step 5: Calculation** (範例二) - $$\begin{eqnarray} 先走距離 &=& 慢速\times 先走時間 \\ 追及距離 &=& 慢速\times 追及時間 \\ 總時間 &=& 先走時間+追及時間 \\ 快速\times 追及時間 &=& 先走距離+追及距離 \\ &=& 慢速\times 總時間 \end{eqnarray} $$ - <font size=6>{哥哥每分鐘走45公尺|**快速**},{弟弟每分鐘走40公尺|**慢速**},{兩人同方向而行|語境},{哥哥在弟弟出發後2分鐘出發|先走時間},{多久可以追上弟弟|追及時間}?</font> ---- <font size=5>$$\begin{array}{ccc|ccc} \hline & 另解 & & & 原解 & \\ \hdashline 先走距離 &=& 慢速\times 先走時間 & 追及路程 &=& 慢速 \times 先走時間 \\ 追及距離 &=& 慢速\times 追及時間 & 追及時間 &=& 追上時間 - 先走時間 \\ 總時間 &=& 先走時間+追及時間 & 追及路程 &=& (快速 - 慢速) \times 追及時間\\ 快速\times 追及時間 &=& 先走距離+追及距離 & \\ &=& 慢速\times 總時間 & \\ \hline \end{array} $$</font> --- ## 待討論 ---- ### 拆句or不拆句 * 在原先的定義中,我們是期望所有的Frame Components都已經先拆好句子。但Frame Component有時候會合在一起說,卻又難以從中拆句。 ---- * 種樹問題的兩旁,有可能和其他Frame Component合併成一句 * 在道路==兩旁==,每隔18公尺設立一根電線桿,兩端都不設,全部共設立了58根電線桿,這條道路全長幾公尺? * 一條道路全長1370.2公尺,已知道路==兩旁==從頭到尾共設立了54盞路燈,頭尾皆有設,平均每盞路燈相距幾公尺? ---- * 種樹問題的起始端,有可能被拆成數句 * 有一條道路的一旁每隔3.5公尺種1棵樹,C公尺共種了23棵樹(==頭尾皆有種==)。 * 想要在一條長765公尺的道路一旁,每隔9公尺種一棵樹,==路的一端種,另一端不種==,共需要幾棵樹苗? ---- * 語意分析模組是否支援拆句? * 如果不拆句,是不是可以用Keyword的方式去找出Frame Components。 * 定義一些該題型特有的Keyword,只要Match到就可以分成該類別。跟計算有關的Frame Component則可以參與計算。 * ==(一端不.*一端)|(一端.*一端不)== * 想要在一條長765公尺的道路一旁,每隔9公尺種一棵樹,==路的一端種,另一端不種==,共需要幾棵樹苗? * 缺點﹔Keyword的方式可能只有應用題work,基本題可能無法