跳轉到主要內容
Hypothesis Filtering 容器會結合多個 Deep Learning 活動與一個 Extraction Rules 活動。Deep Learning 活動的輸出會傳遞給 Extraction Rules 活動,而後者會設定條件來選取所需的值。 即使 Deep Learning 活動可以達到非常高品質的欄位擷取效果,在某些情況下你可能仍希望控制 Deep Learning 活動的輸出。為此,你可以將一個或多個 Deep Learning 活動與一個 Extraction Rules 活動結合使用,由 Extraction Rules 活動對由 Deep Learning 活動取得的值套用條件。 當神經網路找到的是整個詞語或字串,而你只需要其中特定部分,或需要過濾掉意外擷取到的雜訊時,輸出控制便相當重要。這也有助於在較大的欄位 (例如地址) 中識別部分內容,而這些內容可能會被神經網路忽略。此外,它還可讓你在相同值出現多個實例時,選擇最佳假設結果。例如,當供應商名稱在單一文件上印製了多次時,你可以從多個實例中選取最準確的擷取結果。
此技術目前以預覽形式提供,未來版本將持續改進。

設定假設篩選容器

  1. 按一下包含 Deep Learning 活動的方塊,然後選取 Filter Hypotheses。系統會建立新的假設篩選容器,並將所選的 Deep Learning 活動放入其中。
  2. (選用) 將更多 Deep Learning 活動拖曳到假設篩選容器中。這可讓你結合並比較兩個或多個 Deep Learning 活動的輸出。例如,同時處理文字欄位與表格時,可能需要兩個活動。
  3. 在容器中新增 Extraction Rules 活動。你可以按一下預留位置來建立新的活動,或是將現有的活動拖曳到容器中。
  4. 設定 Extraction Rules 活動。對於每一個由 Deep Learning 活動找到的值,新增 Deep Learning 搜尋元素並設定其屬性。你可以一次新增某個 Deep Learning 活動的所有輸出欄位。Deep Learning 搜尋元素支援所有限制搜尋區域與尋找元素條件的屬性。
  5. 將假設篩選容器的輸入與輸出連接到文件處理工作流程中的其他方塊。假設篩選容器的輸出欄位將與 Extraction Rules 活動的輸出欄位相同。
如果你決定不再控制 Deep Learning 活動的輸出,請在容器內任意位置按一下,然後選取 Don’t Filter Hypotheses。容器將會被拆解,但活動本身不會被刪除,你仍然可以在修改後的文件處理工作流程中使用它們。

範例

以下只是一些範例,用來說明如何使用 Hypothesis Filtering 容器。不過,在許多其他情況下,你也可以使用此功能來控制神經網路的輸出,並微調欄位的擷取結果。只有你能判斷針對你正在處理的文件需要進行哪些調整,我們也鼓勵你在每一種 Deep Learning 活動結果可能因調整而受益的情況下,都嘗試使用這項技術。 以下範例都使用相同的範例技能,其中兩個 Deep Learning 活動的輸出會傳送到 Extraction Rules 活動。

技能工作流程

AD_HypothesisFiltering_Container
  • Deep Learning 活動會擷取文字欄位。
  • Deep Learning 2 活動會擷取表格資料。
  • Hypothesis Filtering 容器會篩選並合併其結果。

抽取規則活動中搜尋元素的結構

AD_HypothesisFiltering_SearchElementTree 每個搜尋元素都會對應到一個欄位。

範例 1:修正由 Deep Learning 活動找到的值

在此範例中,Deep Learning 活動找到的文件編號值過長,因此建立一個新的搜尋元素來修正該值。 Deep Learning 活動找到的文件編號值也包含破折號後方的部分: AD_HypothesisFiltering_ValueTooLong
  1. 為了修正 Document_Number 值,會建立一個新的搜尋元素。這個名為 DocNumber_Corrected 的搜尋元素,應位於 Document_Number 搜尋元素的區域內,並且只包含限定數量的字元。
AD_HypothesisFiltering_CorrectedProperties
  1. 透過在元素的程式碼中加入以下這一行,將新元素的搜尋區域限制為符合 Document_Number 的區域:
RestrictSearchArea: Document_Number.Region;
  1. 更正後的搜尋元素會對應到擷取文件編號的欄位:
AD_HypothesisFiltering_CorrectedMapping 因此,擷取出的文件編號將不會包含連字號後面的部分: AD_HypothesisFiltering_ValueCorrected

範例 2:從多個重複值中選擇一個

在此範例中,一個 Deep Learning 活動經訓練以找出所有的文件號碼實例,但 skill 的最終輸出只需要一個文件號碼欄位。為達成此目的,需要針對 Document Number 欄位停用 Allow Multiple Items 設定,並指定條件來選取正確的文件號碼實例。 建議先將已標記的文件集儲存到資料夾中。當您對某個欄位停用 Allow Multiple Items 設定時,該欄位所有多餘的實例都會從標記中刪除。在 Deep Learning 活動中訓練出的模型仍然可以運作,但若您想要修改並重新訓練它,就需要載入原始的文件集。
  1. 已針對 Document Number 欄位停用 Allow Multiple Items 設定 (可按一下 Manage Fields 來存取此設定) 。
AD_HypothesisFiltering_NoMultiples
  1. 具有多個實例的 Document_Number 搜尋元素無法對應到 Document Number 欄位。因此,會從 Deep Learning 活動的文件號碼輸出建立一個新的 Deep Learning 搜尋元素,並將其對應到 Document Number 欄位。
AD_HypothesisFiltering_MapNoMultiples
  1. Deep Learning 活動找到的多個文件號碼實例會用來建立一棵假設樹,其中只會選擇一個作為 Document_Number 搜尋元素的值。
AD_HypothesisFiltering_HypTree
  1. 若要找到特定實例,會針對 Document_Number 搜尋元素新增一些條件 (在此例中,我們要尋找最上方的文件號碼實例) 。
AD_HypothesisFiltering_TopmostInstance

範例 3:合併兩個深度學習活動的輸出

Hypothesis Filtering 容器可讓您合併兩個或多個 Deep Learning 活動的結果,以便相互比對,或在同一個活動中進一步微調這些結果。 在此範例中,需要兩個 Deep Learning 活動,因為單一 Deep Learning 活動無法同時訓練來擷取文字欄位和表格。 已新增一個條件,規定 Company_Address 搜尋元素必須一律位於 Goods_Table 搜尋元素上方。如此一來,即使其他地址列印在頁面底部,也能找到正確的地址。 AD_HypothesisFiltering_AboveTable