NER 資料集 Template

    用於訓練自訂命名實體辨識模型的序列標記資料集範本

    NLP

    Overview

    命名實體辨識(NER)資料集訓練 AI 模型識別和分類文字中指涉真實世界實體的文字片段——人物、組織、地點、日期、貨幣值、產品、醫學術語、法律引用和其他領域特定的實體類型。NER 是一項基礎性的 NLP 能力,為資訊提取、知識圖譜建構、文件索引、個資偵測和眾多下游應用提供支持。

    雖然預訓練的 NER 模型能合理地處理常見實體類型(人物、組織、地點),但大多數企業應用需要辨識通用模型遺漏的領域特定實體類型。金融 NER 必須識別股票代碼、監管機構、金融工具和申報類型。法律 NER 必須辨識判例引用、法規引用、法院名稱和法律專業術語。醫療 NER 必須識別藥品名稱、劑量、解剖學術語和臨床程序。這些專業實體類型需要領域特定的訓練資料。

    NER 資料集在標記層級使用 BIO(或 IOB2)標記方案:B-ENTITY 標記實體片段的開始,I-ENTITY 標記實體內的延續標記,O 標記不屬於任何實體的標記。更具表達力的方案如 BIOES(新增 Single 用於單標記實體和 End 用於多標記實體的最後標記)可透過提供更豐富的邊界資訊來提升模型效能。標記方案的選擇應在整個資料集中保持一致。

    Dataset Schema

    typescript
    // Token-level NER format
    interface NERExample {
      tokens: string[];
      ner_tags: string[];     // BIO-tagged labels aligned with tokens
      metadata?: {
        source: string;
        domain: string;
        sentence_id: string;
      };
    }
    
    // Span-level NER format (alternative)
    interface SpanNERExample {
      text: string;
      entities: {
        start: number;       // Character offset start
        end: number;         // Character offset end
        label: string;       // Entity type
        text: string;        // Entity surface form
      }[];
    }
    
    // Entity type definitions
    interface EntitySchema {
      types: {
        name: string;        // e.g., "MEDICATION"
        description: string;
        examples: string[];
      }[];
    }
    NER 資料集結構定義:標記層級 BIO 格式、片段層級格式和實體類型定義

    Sample Data

    json
    [
      {
        "tokens": ["Dr.", "Sarah", "Chen", "prescribed", "metformin", "500mg", "twice", "daily", "for", "type", "2", "diabetes", "at", "Memorial", "General", "Hospital", "."],
        "ner_tags": ["O", "B-PROVIDER", "I-PROVIDER", "O", "B-MEDICATION", "B-DOSAGE", "B-FREQUENCY", "I-FREQUENCY", "O", "B-CONDITION", "I-CONDITION", "I-CONDITION", "O", "B-FACILITY", "I-FACILITY", "I-FACILITY", "O"],
        "metadata": {"source": "clinical_notes", "domain": "healthcare", "sentence_id": "clinical_001"}
      },
      {
        "tokens": ["Apple", "Inc.", "reported", "Q4", "revenue", "of", "$89.5", "billion", ",", "exceeding", "Wall", "Street", "estimates", "by", "3.2%", "."],
        "ner_tags": ["B-ORG", "I-ORG", "O", "B-FISCAL_PERIOD", "O", "O", "B-MONETARY", "I-MONETARY", "O", "O", "B-ORG", "I-ORG", "O", "O", "B-PERCENTAGE", "O"],
        "metadata": {"source": "financial_news", "domain": "finance", "sentence_id": "finance_001"}
      },
      {
        "text": "The court cited Brown v. Board of Education, 347 U.S. 483 (1954) in its ruling on the equal protection claim filed in the Southern District of New York.",
        "entities": [
          {"start": 16, "end": 65, "label": "CASE_CITATION", "text": "Brown v. Board of Education, 347 U.S. 483 (1954)"},
          {"start": 100, "end": 122, "label": "LEGAL_CONCEPT", "text": "equal protection claim"},
          {"start": 137, "end": 164, "label": "COURT", "text": "Southern District of New York"}
        ]
      }
    ]
    來自醫療(臨床實體)、金融(財務實體)和法律(判例引用)領域的 NER 範例

    Data Collection Guide

    在標註開始前定義您的實體類型結構定義。對於每種實體類型,記錄:類型名稱、清楚的定義、5-10 個不同複雜度的範例、邊界規則(「Dr.」是否應包含在 PROVIDER 實體中?貨幣符號是否應包含在 MONETARY 值中?),以及巢套規則(實體是否可以重疊或巢套?)。模糊的邊界定義是標註不一致的主要來源。

    選擇支援您所選格式並提供高效實體標記工作流程的標註工具。Prodigy、Label Studio、BRAT 和 Doccano 等工具支援片段層級標註並可轉換為 BIO 格式。對於大量標註,考慮使用主動學習工作流程,讓模型識別不確定的預測以供人工審查,將標註者的精力集中在最具資訊量的範例上。

    使用現有的 NER 模型對文字進行預標註,然後讓標註者更正預測結果,而非從頭開始標註。這比從空白開始手動標註快得多,通常可減少 40-60% 的標註時間。確保標註者同時更正誤報(錯誤識別的實體)和漏報(遺漏的實體),以避免使更正後的資料集偏向預標註模型的錯誤模式。

    Quality Criteria

    使用標註者配對之間的 F1 分數在實體層級衡量標註者間一致性。兩位標註者應獨立標註相同的 200-300 個句子,實體層級的 F1 應超過 0.85,資料集才能被視為可靠。對於複雜的實體類型(法律引用、醫療程序),較低的一致性門檻 0.75-0.80 可能是可接受的,但表明需要更詳細的標註指南。

    驗證實體邊界的一致性。檢查標註者對於是否在實體片段中包含頭銜(Dr.、Mr.)、後綴(Inc.、LLC)和分隔符是否一致。邊界不一致會顯著降低模型效能,因為模型會收到關於實體開始和結束位置的矛盾訊號。在相似的上下文中執行自動化的一致性檢查以比較實體片段。

    確保每種實體類型有充分的代表。罕見的實體類型需要至少 200-300 個標註實例,模型才能學到可靠的辨識模式。如果某些實體類型在自然文字中很少出現,請尋找它們頻繁出現的文件或建立在真實上下文中包含它們的合成範例。追蹤實體類型頻率,並標記任何少於 100 個範例的類型以進行針對性的擴充。

    Using This Template with Ertas

    將您的原始文字語料庫匯入 Ertas Data Suite 進行個資評估——諷刺的是,用於個資偵測的 NER 訓練資料本身必須謹慎處理,因為來源文字包含真實的個人資訊。使用資料血統系統追蹤哪些文件已被標註、由誰標註,以及完成了什麼階段的品質審查。匯出準備好的文字到您選擇的標註工具中。

    標註完成後,重新匯入已標記的資料集進行格式轉換和最終品質驗證。以 CoNLL 格式匯出用於標記分類模型訓練,或以 JSONL 格式匯出用於基於 LLM 的 NER 微調。地端處理確保敏感的來源文字在整個標註管道中永遠不會離開您的受控環境。

    Recommended Model

    對於高吞吐量的生產 NER,微調一個編碼器模型(BERT、DeBERTa 或 RoBERTa)進行標記分類。這些模型在 CPU 上每秒處理數千個標記,在微調領域特定資料後可提供最先進的 NER 效能。DeBERTa-v3-base 是目前英語 NER 的最佳選擇。

    對於需要在不重新訓練的情況下靈活添加新實體類型的 NER 任務,微調一個 7B 的生成式模型並使用基於指令的 NER 提示。模型可透過提示被指示識別特定的實體類型,允許在不重新訓練模型的情況下變更實體結構定義。匯出為 GGUF 供本地推論使用。

    Ship AI that runs on your users' devices.

    Early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.