0 / 0
資料の 英語版 に戻る
事前トレーニングされたモデルの操作
最終更新: 2024年11月07日
事前トレーニングされたモデルの操作

Watson Natural Language Processing は、20 以上の言語で事前トレーニングされたモデルを提供します。 専門家のチームによってキュレーションされ、特定の言語ごとに品質が評価されます。 これらの事前トレーニングされたモデルは、ライセンスや知的所有権の侵害について心配することなく、実動環境で使用できます。

モデルのロードと実行

モデルをロードするには、まずその名前を知っておく必要があります。 モデル名は、モデルのタイプ (分類やエンティティー抽出など)、アルゴリズムのタイプ (SVM やトランスフォーマーなど)、言語コード、およびタイプ・システムの詳細をエンコードする標準規則に従います。

ニーズに合ったモデルを見つけるには、タスク・カタログを使用します。 Watson NLP タスク・カタログを参照してください。

ブロック・クラスrun()メソッドでhelp()を使用すると、特定のブロック・クラス (例えば、エンティティー・メンション・モデル) に対して予期される入力を見つけることができます。

import watson_nlp

help(watson_nlp.blocks.keywords.TextRank.run)

Watson Natural Language Processing は、ブロックとワークフローを通じて自然言語機能をカプセル化します。 各ブロックまたはワークフローは、以下の機能をサポートします。

  • load(): モデルのロード
  • run(): 入力引数に対してモデルを実行します。
  • train(): 独自のデータでモデルをトレーニングします (すべてのブロックとワークフローがトレーニングをサポートしているわけではありません)。
  • save(): 自分のデータでトレーニングされたモデルを保存します。

ブロック

以下の 2 つのタイプのブロックが存在します。

ワークフロー は、パイプライン内の入力ドキュメントに対して 1 つ以上のブロックを実行します。

入力文書を直接操作するブロック

入力文書を直接操作するブロックの例として、構文ブロックがあります。このブロックは、トークン化、見出し語化、品詞タグ付け、依存関係解析などの自然言語処理操作を実行します。

例: テキスト・スニペットでの構文分析の実行:

import watson_nlp

# Load the syntax model for English
syntax_model = watson_nlp.load('syntax_izumo_en_stock')

# Run the syntax model and print the result
syntax_prediction = syntax_model.run('Welcome to IBM!')
print(syntax_prediction)

他のブロックに依存するブロック

他のブロックに依存するブロックは、入力文書に直接適用できません。 これらは、先行する 1 つ以上のブロックの出力に適用されます。 例えば、「Keyword Extraction」ブロックは、「Syntax」および「Noun Phrase」ブロックに依存します。

これらのブロックはロードできますが、入力文書では特定の順序でのみ実行できます。 次に例を示します。

import watson_nlp
text = "Anna went to school at University of California Santa Cruz. \
        Anna joined the university in 2015."

# Load Syntax, Noun Phrases and Keywords models for English
syntax_model = watson_nlp.load('syntax_izumo_en_stock')
noun_phrases_model = watson_nlp.load('noun-phrases_rbr_en_stock')
keywords_model = watson_nlp.load('keywords_text-rank_en_stock')

# Run the Syntax and Noun Phrases models
syntax_prediction = syntax_model.run(text, parsers=('token', 'lemma', 'part_of_speech'))
noun_phrases = noun_phrases_model.run(text)

# Run the keywords model
keywords = keywords_model.run(syntax_prediction, noun_phrases, limit=2)
print(keywords)

ワークフロー

ワークフローは、未加工ドキュメントから最終ブロックまでの事前定義エンドツーエンド・パイプラインであり、必要なすべてのブロックがワークフロー・パイプラインの一部としてチェーニングされます。

Entity Mentionsワークフローの呼び出し方の例については、このサンプルを参照してください:

import watson_nlp

# Load the workflow model
mentions_workflow = watson_nlp.load('entity-mentions_transformer-workflow_multilingual_slate.153m.distilled')

# Run the entity extraction workflow on the input text
mentions_workflow.run('IBM announced new advances in quantum computing', language_code="en")

親トピック: Watson Natural language Processing ライブラリー

生成 AI の検索と回答
これらの回答は、製品資料の内容に基づいて、 watsonx.ai のラージ言語モデルによって生成されます。 詳細