共用方式為


如何準備資料並為自訂 NER 定義結構描述

若要建立自訂 NER 模型,您將需要品質資料來進行定型。 本文涵蓋應該如何選取和準備資料,以及定義結構描述。 定義結構描述是專案開發生命週期的第一個步驟,以及定義您需要模型在執行階段從文字中擷取的實體類型/類別。

結構描述設計

結構描述會定義您需要模型在執行階段從文字中擷取的實體類型/類別。

  • 檢閱資料集中的文件,以熟悉其格式和結構。

  • 識別您想要從資料中擷取的實體

    例如,如果您要從支援電子郵件中擷取實體,則可能需要擷取「客戶名稱」、「產品名稱」、「要求日期」和「連絡人資訊」。

  • 避免實體類型不明確。

    當您選取的實體類型彼此類似時,就會發生「混淆」。 結構描述愈不清楚,需要用於區分不同實體類型的已標示資料就愈多。

    例如,如果您要從法律合約中擷取資料,若要擷取「第一方的名稱」和「第二方的名稱」,您將需要新增更多範例來克服混淆,因為雙方的名稱看起來很類似。 因為這可節省時間和投入量,並產生更好的結果,所以請避免混淆。

  • 避免複雜實體。 複雜實體可能難以從文字精確地挑選,請考慮將其細分為多個實體。

    例如,如果「位址」未細分為較小的實體,則擷取「位址」會是一項挑戰。 位址出現的方式有很多變化,其會採用大量的標示實體來教授模型,以擷取全部位址,而不會將其分解。 不過,如果您將「位址」取代為「街道名稱」、「郵政信箱」、「城市」、「州/省」和「郵遞區號」,則此模型將需要每個實體有較少的標籤。

選取資料

您用來定型模型的資料品質會大幅影響模型效能。

  • 使用實際資料來反映您網域的問題空間,以有效地定型模型。 您可以使用綜合資料來加速初始模型定型程序,但綜合資料可能與您的實際資料不同,並讓您的模型在使用時效率不佳。

  • 請盡可能地平衡資料分散,而不要偏離實際分散過多。 例如,如果您要定型模型,以從可能採用許多不同格式和語言的法律文件中擷取實體,您應該提供說明點多樣性的範例,如您在現實生活中所見。

  • 盡可能使用多種資料,以避免模型過度學習。 若定型資料中多樣性過少,可能導致您的模型學習到錯誤關聯性,而這些關聯性在實際的資料中可能不存在。

  • 請避免資料中出現重複的文件。 重複資料會對定型流程、模型計量和模型效能產生負面影響。

  • 請考慮資料的來源。 如果您要從某個人、部門或部分案例中收集資料,您可能會遺漏多樣性,這對您的模型而言可能很重要。

注意

如果您的文件採用多種語言,則請在建立專案期間選取 [啟用多語言] 選項,並將 [語言] 選項設定為大部分文件的語言。

資料準備

您必須將定型資料上傳至儲存體帳戶中的 Blob 容器,才能建立專案。 您可以直接從 Azure 或使用 Azure 儲存體總管工具來建立和上傳訓練文件。 使用 Azure 儲存體總管工具可讓您快速上傳更多資料。

您只可以使用 .txt 文件。 如果您的資料是其他格式,則您可以使用 CLUtils 剖析命令來變更您的文件格式。

您可以上傳已標註的資料集,或是上傳未標註的資料集,然後在 Language Studio 中標示資料

測試集

定義測試集時,請務必包括定型集中沒有的範例文件。 定義測試集是計算模型效能的重要步驟。 此外,請確定測試集包括代表專案中所有已使用實體的文件。

下一步

如果您還沒有這麼做,請建立自訂 NER 專案。 如果這是您第一次使用自訂 NER,請考慮遵循快速入門來建立範例專案。 您也可以查看操作文章,以取得建立專案所需的詳細資料。