IBM Cloud Docs
辞書の作成

この文書は、IBM Watson® Knowledge Studio 上の IBM Cloud® に関するものです。 以前のバージョンの Knowledge Studio on IBM Marketplace 向けの資料を参照するには、このリンクをクリックしてください。

辞書の作成

辞書は、Knowledge Studio 機械学習モデルが特定の分野の言語を理解するのを助けます。

辞書

機械学習における辞書は、何か共通するものがある単語および句をグループ化したものです。 辞書では、1 つの項目に含まれるすべての単語が同じことを意味していることを意味するのではなく、それらの単語がモデルによって同等に扱われることを意味します。

辞書は、情報抽出という目的にとって同等である、つまり、エンティティー・メンションおよび関係メンションを識別するという目的のために交換可能である単語または句のリストです。

例として、7 つの曜日が含まれている 1 つの辞書項目があると想定してみましょう。 文書にアノテーションを付けるために、ヒューマン・アノテーターは、テキスト中の DAY_OF_WEEKMonday* および Friday というメンションに、エンティティー・タイプ * を割り当てます。 この辞書によると 7 つの曜日は等価であるため、まだ処理対象にされていない文書中の TuesdayWednesday、および他の曜日の出現に対して、機械学習モデルは辞書の支援によって実行時に正しくアノテーションを付けることができます。 さらに、これらの単語を等価にすることは、周囲のテキストでの情報抽出にも役立ちます。 機械学習モデルが Monday および Friday の近くにあるテキストについてのトレーニング例から学習する内容は、その他の曜日の近くにあるテキストにも適用されます。これは、辞書ではそれらの用語は情報抽出目的では等価であるとされているためです。

注: 曜日情報を含む辞書を作成する必要はありません。 当アプリケーションには、この例のような汎用辞書がいくつか組み込まれています。 その他の組み込み辞書には、国名、地名、数を表す単語、動物、植物、病気、測定単位を表す単語 (ounce (オンス) や meter (メートル) など)、および、敬称や役職を表す単語 (Mr.Mrs. など) があります。 組み込み辞書を無効にすることはできず、編集することもできません。

複数の意味を持つ項目を追加するのは避けてください。 例えば、自動車レースに関する分野では、用語 bank は道路の 1 つの特徴を指しますが、これを含めるのが妥当であるのは、テキストで金融機関についても論じられることがあまりない場合のみです。 この単語が両方の意味でソース文書内に頻繁に出現する場合は、両方のタイプの辞書 (道路の特徴に関する辞書と、金融機関に関する辞書) からこの単語を除外するのが最善です。

個々の項目を手動で追加することにより、Knowledge Studioで辞書を作成できます。Knowledge Studioは、いくつかのタイプの辞書ファイルをアップロードする機能もサポートしています。

辞書の使用方法

辞書はいくつかの方法で使用されますが、どれも任意です。 辞書は、機械学習モデルによって情報抽出目的としては等価の単語または句を提供するために、および、アノテーション作業のブートストラッピングを実行するために事前アノテーション中に使用されます。

  • 機械学習での使用法

    辞書に関連付けられたエンティティー・タイプは、機械学習モデル用のルールを定義するためには使用されません。 機械学習は、文書内のメンションを個別に評価します。 機械学習は、あるメンションが特定のエンティティー・タイプを持っているということを、そのメンションと一致する項目が、そのエンティティー・タイプと関連付けられた辞書内にあるという理由だけでは想定しません。 この情報は考慮に入れられますが、言語分析を通して収集するさまざまな情報の中の 1 つとして扱われます。 実際、ある辞書のどの項目もグランド・トゥルース文書中に出現しない場合、機械学習モデルはその辞書をまったく使用しません。

  • 事前アノテーションでの使用法

    辞書は、以下の事前アノテーション処理にとって重要です。

    • 辞書プレアノテーター: 辞書プレアノテーターを実行する場合は、タイプ・システムのいずれかのエンティティー・タイプと辞書を関連付けてください。
    • ルール・ベース・モデル: オプションで、ルール・クラスと辞書を関連付けることができます。 そうすると、文書に事前アノテーション付けを行うためにルール・ベース・モデルを実行したときに、クラスはタイプ・システムからのエンティティー・タイプにマップされます。 その結果、間接的に、辞書用語はルール・ベース・モデルのエンティティー・タイプにもマップされます。

    どちらの場合も、辞書に含まれている用語は、システムが検出してメンションとしてアノテーションを付けることができる用語です。 システムは、各メンションに、その用語が含まれている辞書と関連付けられているエンティティー・タイプを割り当てます。 ヒューマン・アノテーターが事前アノテーション付けされた文書で新しく作業を開始するときには、辞書項目に基づいて多くのメンションに既にアノテーションが付けられています。 したがって、ヒューマン・アノテーターは、より深い分析を必要とするメンションにエンティティー・タイプを割り当てる作業に、より長い時間をかけて集中できます。

言語に関する考慮事項

  • ブラジル・ポルトガル語、英語、フランス語、ドイツ語、イタリア語、およびスペイン語の場合、Knowledge Studio は、現在のところ、大/小文字を区別しない辞書マッチングを指定するオプションを提供していませんが、辞書項目は大文字を含むテキストと一致します。 例えば、辞書内の「vehicle」はテキスト内の「vehicle」、「Vehicle」、または「VEHICLE」と一致し、辞書内の「Sat」はテキスト内の「Sat」または「SAT」と一致しますが、「sat」とは一致しません。
  • 日本語および韓国語の場合、事前アノテーション中の辞書マッチングでは大/小文字が区別されます。
  • アラビア語の場合、Knowledge Studio は、アラビア語テキストが非成形で保管されていると想定し、数値成形をストレージ・レベルのプロパティーとして扱います。 Knowledge Studio がアラビア語の文字成形および数値成形をどのように処理するのかについて詳しくは、『アラビア語サポートの構成』を参照してください。

CSV ファイル辞書

コンマ区切り値 (CSV) 形式 (標準辞書形式とも呼ばれる) の辞書は、アップロードした後で編集できるファイルです。 アップロードできる CSV ファイルの最大サイズは 1 MB です。 それより大きい辞書ファイルの場合は、複数のファイルに分割し、それらを Knowledge Studio ワークスペース内の単一の辞書に一度に 1 つずつアップロードしてください。

要件を要約すると、CSV ファイルの作成には、Microsoft Excel のようなソフトウェアではなくテキスト・エディターを使用する必要があり、ファイルはテキスト・ストリームの先頭にバイト・オーダー・マーク (BOM) を含まない UTF-8 エンコード方式を使用する必要があります。 ファイルの第 1 行は、以下の列ヘッダーを指定する必要があります。

lemma,poscode,surface

ファイルの残りの行は、辞書項目を以下のように指定します。

  • 見出し語 (lemma)

    項目の最も代表的な単語フォームを指定します。

  • poscode (アラビア語、ブラジル・ポルトガル語、英語、フランス語、ドイツ語、イタリア語、およびスペイン語)

    品詞を識別するコードを指定します。 この品詞情報は、センテンスのトークン化に役立てるために辞書アノテーターによって使用されます。

    • 0 - 不明

      **注:**このコードは、各項目に品詞情報が含まれていない大規模なマシン生成辞書をアップロードするシナリオをサポートします。 すべての項目にデフォルトで「不明」を割り当てることができます。 可能な場合は、このコードの使用を避けてください。

    • 1 - 代名詞

    • 2 - 動詞

    • 3 - 名詞

    • 4 - 形容詞

    • 5 - 副詞

    • 6 - 接置詞

    • 7 - 間投詞

    • 8 - 接続詞

    • 9 - 限定詞

    • 10 - 数量詞

    英語では、辞書項目に使用される最も一般的な品詞は、名詞 (3)、動詞 (2)、および形容詞 (4) です。

    注: 品詞によってメンションのタイプが自動的に決定されることはありません。 すべての名詞をエンティティー・タイプ・メンションと同等であると想定したり、すべての動詞を関係タイプ・メンションと同等であると想定したりしないでください。 例えば、American は形容詞ですが、エンティティー・タイプ GPE (地政学的エンティティー) または PERSON としてアノテーションが付けられるのが最適な場合があります。 また、Met は動詞ですが、EVENT_MEETING としてアノテーションが付けられるのが最適であるかもしれません。

    複合語を使用する他の言語 (ドイツ語など) では、単語の境界を判別するのを助けるため、品詞情報の正確性がさらに重要です。

  • poscode (中国語)

    品詞を識別するコードを指定します。 品詞値は、単語の境界を表すために空白文字を使用しない中国語 (簡体字や繁体字) のような言語でテキストのトークン化および事前アノテーションを行うために重要です。

    • 32 - 名詞
    • 31 - 名詞 (家族名)
    • 35 - 名詞 (組織)
    • 34 - 名詞 (その他)
    • 33 - 名詞 (個人名)
  • poscode (日本語)

    品詞を識別するコードを指定します。 品詞値は、単語の境界を表すために空白文字を使用しない日本語のような言語でテキストのトークン化および事前アノテーションを行うために重要です。

    • 19 - 名詞
    • 23 - 一般的な接頭語
    • 24 - 一般的な接尾語
    • 140 - 固有名詞 (姓)
    • 141 - 固有名詞 (名)
    • 146 - 固有名詞 (個人名)
    • 142 - 固有名詞 (組織)
    • 144 - 固有名詞 (場所の名前)
    • 143 - 固有名詞 (リージョン)
    • 145 - 固有名詞 (その他)
  • poscode (韓国語)

    品詞を識別するコードを指定します。 品詞値は、単語の境界を表すために空白文字を使用しない韓国語のような言語でテキストのトークン化および事前アノテーションを行うために重要です。

    • 10010 - 名詞
    • 10300 - 固有名詞 (姓)
    • 10310 - 固有名詞 (名)
    • 110360 - 固有名詞 (個人名)
    • 10320 - 固有名詞 (組織)
    • 10340 - 固有名詞 (場所の名前)
    • 10330 - 固有名詞 (リージョン)
    • 10350 - 固有名詞 (その他)
  • 表層

    表層形とも呼ばれる等価の用語を指定します。 見出し語 (lemma) を 1 つの表層形として繰り返し、複数の表層形をコンマで区切ります。 コンマが含まれている表層形は引用符で囲みます。

以下に例を示します:

lemma,poscode,surface
IBM,3,IBM Corp.,IBM,"International Business Machines, Inc."
Department of Energy,3,DOE,Department of Energy
premium,4,premium,premium-grade

関連概念:

別のワークスペースからのリソースのアップロード

関連タスク:

辞書を使用した文書の事前アノテーション付け

ワークスペースへの辞書の追加

辞書の追加は、モデル作成のオプションのステップです。 アノテーション付けのプロセスを素早く始動できるため、辞書は有用です。

このタスクについて

辞書を提供すると、辞書プレアノテーターを文書に対して実行できます。 プレアノテーターは、辞書にある用語を見つけて、それらの用語に自動的にアノテーションを付けます。 この文書の初期パスにより、ヒューマン・アノテーターは、事前アノテーターによって追加された注釈を検討し、それらを修正または追加することができるため、ヒューマン・アノテーターの作業が単純化されます。 完全に最初から始める必要はありません。

辞書には、以下の制限が適用されます。

  • 辞書当たり最大 15,000 項目

    **注:**この制限は、ユーザーが辞書CSVファイルとしてアップロードする辞書には適用されません。 読み取り専用辞書は、もっと多くの項目を含むことができます。

  • ワークスペース当たり最大 64 辞書

手順

ワークスペースに辞書を追加するには、次のようにします。

  1. Knowledge Studio の管理者またはプロジェクト管理者としてログインし、「アセット」>**「辞書」**ページを開きます。

  2. 以下のいずれかの作業を実行します。

    • **「辞書の作成 (Create Dictionary)」ボタンの横にある「メニュー」アイコンをクリックしてから、「辞書のアップロード (Upload Dictionary)」を選択します。 辞書を選択し、「アップロード」**をクリックします。 辞書をアップロードした後、それを選択してその辞書を表示し、1 つのエンティティー・タイプと関連付けます。

    別の Knowledge Studio ワークスペースからダウンロードした辞書を含んでいる ZIP ファイルをアップロードできます。 他のワークスペースから JSON 形式でダウンロードされたタイプ・システムをアップロードした後でないと、対応する辞書ファイルをアップロードすることはできません。 別の Knowledge Studio ワークスペースから再利用する辞書に対して、編集および項目追加を行うことができます。 詳しくは、『別のワークスペースからのリソースのアップロード』を参照してください。

    CSV ファイルのアップロードもサポートされていますが、CSV ファイルを辞書として直接アップロードすると、編集もダウンロードもできないプレビュー専用の辞書が作成されます。 編集やダウンロードができるような形で CSV ファイルをアップロードするには、**「辞書の作成 (Create Dictionary)」**をクリックしてまず空の辞書を作成してから、新しく作成したその辞書の項目として CSV の内容をアップロードします。

    • **「辞書の作成 (Create Dictionary)」ボタンをクリックして、空の辞書を作成します。その辞書には後で辞書項目を追加できます。 辞書の記述名を指定してから、「保存」**をクリックします。
  3. 辞書に項目を追加するため、以下のいずれかの作業を実行します。

    • 辞書項目を追加するために**「項目の追加 (Add Entry)」**をクリックします。 見出し語 (当該用語の最も代表的な単語フォーム) を指定します。
    • 辞書項目を含んでいる ** ファイルをアップロードするために**「アップロード (Upload)」CSVをクリックし、次に、ブラウズしてファイルを選択します。 CSV ファイルは 1 MB より小さくなければなりません。
    • 「推奨項目 (Entry Suggestions)」ペインに提供されているリストから推奨項目を追加します。 Knowledge Studio は、ワークスペース内の文書と辞書内の既存のエントリーを使用して、新しい項目を提案します。
  4. 項目をアップロードまたは追加した後、項目を編集できます。

    項目を開き、等価の用語 (表層形と呼ばれます) を指定します。 各表層形の長さは 256 文字以下でなければなりません。 どの表層形を見出し語として使用するのかを変更できます。 例えば、見出し語 IBM の表層形として、IBM Corp.International Business Machines, Inc. などが考えられます。

  5. 辞書内の各見出し語および表層形に適した品詞を選択します。

    品詞情報は、トークナイザーによって使用され、また、事前アノテーション中にも使用されます。

  6. **「保存 (Save)」**クリックして変更を保管します。

次の作業

プレアノテーターを実行します。プレアノテーターは、作成された辞書を使用して、ソース文書を事前に一通り処理し、アノテーションを追加します。

辞書候補の追加

辞書に項目を追加すると、Knowledge Studio はワークスペース内の文書から、ユーザーに役に立つ可能性のある類似の辞書項目を検索します。

  • 候補を取得するには、Documentsタブで文書をアップロードする必要があります。
  • 文書のアップロード後、候補エンジンを準備するのに時間がかかる場合があります。

推奨された項目は**「推奨項目 (Entry Suggestions)」**ペインに表示されます。

「推奨項目」ペイン

「推奨項目 (Entry Suggestions)」ペインでは、以下のオプションを使用できます。

  • 推奨された項目の名前をクリックするとウィンドウが開き、文書内の用語のオカレンスが表示されます。 これは、推奨された項目を追加するか除外するかを判断するのに役立ちます。
  • 「この項目を追加 (Add this entry)」 (+) を選択すると、推奨項目が辞書に追加されます。
  • 「この項目を除外 (Exclude this entry)」 (-) を選択すると、推奨項目のリストからこの項目を削除し、それを**「除外された用語 (Excluded Terms)」**に追加します。
  • **「すべて追加 (Add all)」を選択すると、推奨された項目のリスト全体が辞書に追加されます (「除外された用語 (Excluded Terms)」**にリストされた項目は追加されません)。
  • **「すべて除外 (Exclude all)」を選択すると、現在のすべての推奨項目が「除外された用語 (Excluded Terms)」**に移動されます。

関連タスク:

辞書を使用した文書の事前アノテーション付け

関連リファレンス:

言語サポート