Watson Natural Language Processing ライブラリー
Watson Natural Language Processing ライブラリーは、センチメント分析、キーワード抽出、分類など、さまざまなテキスト処理タスクの構文分析および事前トレーニングされたモデルのための自然言語処理機能を提供します。 Watson Natural Language Processing ライブラリーは、 Python でのみ使用可能です。
Watson Natural Language Processing を使用すると、非構造化データを構造化データに変換できます。これにより、特に非構造化データと構造化データを混用する場合に、データの理解と転送が容易になります。 このようなデータの例としては、コール・センターの記録、顧客の苦情、ソーシャル・メディアの投稿、問題報告などがあります。 非構造化データは、多くの場合、構造化データを含む列を含む、より大きなデータ・レコードの一部です。 非構造化データから意味と構造を抽出し、この情報を構造化データの列のデータと結合します。
- 入力データの理解を深めることができます。
- より優れた意思決定を行うのに役立ちます。
Watson Natural Language Processing は、20 以上の言語で事前トレーニングされたモデルを提供します。 専門家のチームによってキュレーションされ、特定の言語ごとに品質が評価されます。 これらの事前トレーニングされたモデルは、ライセンスや知的所有権の侵害について心配することなく、実動環境で使用できます。
独自のモデルを作成することもできますが、 Watson Natural Language Processing を開始する最も簡単な方法は、事前にトレーニングされたモデルを非構造化テキスト上で実行して言語処理タスクを実行することです。
Watson 自然言語処理の事前トレーニング済みモデルで使用可能な言語処理タスクの例をいくつか以下に示します。
- 言語検出: 入力テキストの言語を検出します。
- 構文: トークン化、見出し語化、品詞のタグ付け、および依存関係の構文解析
- エンティティー抽出: エンティティー (個人、組織、または日付など) の言及を検索します。
- 名詞句の抽出: 入力テキストから名詞句を抽出します
- テキスト分類: テキストを分析し、その内容に基づいて事前定義されたタグまたはカテゴリーのセットを割り当てます。
- センチメント分類: 入力文書は肯定、否定、または中立のいずれかですか?
- トーン分類: 入力文書のトーンを分類します (興奮、苛立ち、悲しみなど)。
- 感情分類: 入力文書の感情を分類します (怒りや嫌悪など)
- キーワード抽出: 入力テキストに関連する名詞句を抽出します
- 概念: 入力テキストでの DBPedia からの概念の検索
- 関係: 2 つのエンティティー間の関係を検出します
- 階層カテゴリー: 階層分類内の個々のノードを入力文書に割り当てます。
- 埋め込み: 個々の単語またはより大きなテキスト・スニペットをベクトル・スペースにマップします。
Watson Natural Language Processing は、ブロックとワークフローを通じて自然言語機能をカプセル化します。 ブロックおよびワークフローは、モデルをロード、実行、トレーニング、および保存する機能をサポートします。
詳しくは、 事前トレーニング済みモデルの操作を参照してください。
Watson 自然言語処理ライブラリーの使用方法の例をいくつか以下に示します。
テキスト・スニペットに対する構文分析の実行:
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)
テキスト・スニペットからのエンティティーの抽出:
import watson_nlp
entities_workflow = watson_nlp.load('entity-mentions_transformer-workflow_multilingual_slate.153m.distilled')
entities = entities_workflow.run('IBM\'s CEO Arvind Krishna is based in the US', language_code="en")
print(entities.get_mention_pairs())
Watson Natural Language Processing ライブラリーの使用方法の例については、 Watson Natural Language Processing ライブラリーの使用例を参照してください。
ノートブックでの Watson Natural Language Processing の使用
Watson 自然言語処理ライブラリを使用する Python ノートブックは、ここにリストされているどの環境でも実行できます。 GPU 環境テンプレートには、 Watson Natural Language Processing ライブラリーが含まれています。
DO + NLP: 意思決定最適化問題および Watson Natural Language Processing ライブラリーをモデル化して求解するために、環境テンプレートに CPLEX ライブラリーと DOcplex ライブラリーの両方が含まれていることを示します。
GPU環境テンプレートには、 watsonx.ai Studio Professionalプランが必要です。 オファリング・プランを参照してください。
| 氏名 | ハードウェア構成 | 1 時間当たりの CUH 率 |
|---|---|---|
| NLP + DO ランタイム 24.1 on Python 3.11 XS | 2vCPU および 8 GB RAM | 6 |
| GPU V100 ランタイム 25.1 Python 上 3.12 | 40 vCPU + 172 gb + 1 NVIDIA® V100 (1 gpu) | 68 |
| GPU V100 ランタイム 24.1 Python 上 3.11 | 40 vCPU + 172 gb + 1 NVIDIA® V100 (1 gpu) | 68 |
| GPU 2xV100 ランタイム 24.1 Python 上 3.11 | 80 vCPU + 344 gb + 2 NVIDIA® V100 (2 gpu) | 136 |
| GPU 2xV100 ランタイム 25.1 Python 上 3.12 | 80 vCPU + 344 gb + 2 NVIDIA® V100 (2 gpu) | 136 |
通常、事前構築されたモデルを使用するノートブックを実行するには、これらの環境で十分です。 独自のモデルをトレーニングするなど、より大きな環境が必要な場合は、WatsonNatural Language Processing ライブラリを含むカスタム・テンプレートを作成できます。
- GPU を使用せずにカスタム・テンプレートを作成するには、エンジン・タイプ
Default、必要なハードウェア構成サイズを選択し、ソフトウェア・バージョンとしてNLP + DO Runtime 24.1 on Python 3.11を選択します。 - エンジン・タイプ
GPU、必要なハードウェア構成サイズを選択し、ソフトウェア・バージョンとしてGPU Runtime 24.1 on Python 3.11を選択することで、GPU を使用してカスタム・テンプレートを作成します。