始める前に
- ラボでは、Google Cloud プロジェクトとリソースを一定の時間利用します
- ラボには時間制限があり、一時停止機能はありません。ラボを終了した場合は、最初からやり直す必要があります。
- 画面左上の [ラボを開始] をクリックして開始します
Create an API Key
/ 40
Make an Entity Analysis Request
/ 30
Check the Entity Analysis response
/ 30
Create an API Key
/ 40
Make an Entity Analysis Request
/ 30
Check the Entity Analysis response
/ 30
Cloud Natural Language API を使用すると、テキストからエンティティを抽出して感情分析や構文解析を行い、テキストをカテゴリに分類できます。
このラボでは、Natural Language API を使ってエンティティ、感情、構文を分析する方法について学びます。
このラボでは、次の方法について学びます。
こちらの説明をお読みください。ラボには時間制限があり、一時停止することはできません。タイマーは、Google Cloud のリソースを利用できる時間を示しており、[ラボを開始] をクリックするとスタートします。
このハンズオンラボでは、シミュレーションやデモ環境ではなく実際のクラウド環境を使って、ラボのアクティビティを行います。そのため、ラボの受講中に Google Cloud にログインおよびアクセスするための、新しい一時的な認証情報が提供されます。
このラボを完了するためには、下記が必要です。
[ラボを開始] ボタンをクリックします。ラボの料金をお支払いいただく必要がある場合は、表示されるダイアログでお支払い方法を選択してください。 右側の [ラボの設定とアクセス] パネルには、以下が表示されます。
ラボのタイマーはページの上部に表示され、残り時間が示されます。
[Google Cloud コンソールを開く] をクリックします(Chrome ブラウザを使用している場合は、右クリックして [シークレット ウィンドウで開く] を選択します)。
ラボでリソースがスピンアップし、別のタブで [ログイン] ページが表示されます。
ヒント: タブをそれぞれ別のウィンドウで開き、並べて表示しておきましょう。
必要に応じて、下のユーザー名をコピーして、[ログイン] ダイアログに貼り付けます。
[ラボの設定とアクセス] パネルでもユーザー名を確認できます。
[次へ] をクリックします。
以下のパスワードをコピーして、[ようこそ] ダイアログに貼り付けます。
[ラボの設定とアクセス] パネルでもパスワードを確認できます。
[次へ] をクリックします。
その後のページはクリックして先に進みます。
しばらくすると、このタブで Google Cloud コンソールが開きます。
curl を使用して Natural Language API にリクエストを送信するため、リクエスト URL に渡す API キーを生成する必要があります。
API キーを作成するには、Google Cloud コンソールのナビゲーション メニューで [API とサービス] > [認証情報] を選択します。
[認証情報を作成] をクリックし、[API キー] を選択します。
[API キーの作成] サイドパネルの [このキーを使用してアクセスできる API] で、[API を選択] プルダウン メニューをクリックします。
Cloud Natural Language API を検索するか、スクロールして見つけ、チェックボックスをオンにします。
[OK] をクリックします。
[作成] をクリックします。
生成された API キーをコピーし、[閉じる] をクリックします。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認してください。
この後の手順を実行するために、プロビジョニングされたインスタンスに SSH で接続します。
ナビゲーション メニューの [Compute Engine] をクリックします。[VM インスタンス] の一覧に、プロビジョニングされた Linux インスタンス、linux-instance が表示されます。
[SSH] ボタンをクリックします。対話型のシェルが表示されます。
コマンドラインに以下のコマンドを入力します。<YOUR_API_KEY> の部分は、先ほどコピーしたキーに置き換えてください。
最初に使用する Natural Language API メソッドは、analyzeEntities です。このメソッドを使用すると、API によってテキストからエンティティ(人、場所、イベントなど)が抽出されます。ここでは、次の文を使って Natural Language API のエンティティ分析を試してみます。
Joanne Rowling, who writes under the pen names J. K. Rowling and Robert Galbraith, is a British novelist and screenwriter who wrote the Harry Potter fantasy series.
Natural Language API へのリクエストは、ファイル request.json で作成します。
request.json を作成します。request.json に次のコードを入力するか、コピーして貼り付けます。このリクエストでは、送信するテキストについての情報を Natural Language API に渡します。type に指定できる値は、PLAIN_TEXT または HTML です。content には、Natural Language API で分析するテキストを指定します。
Natural Language API では、Cloud Storage に保存されているファイルを送信してテキストを処理することもできます。Cloud Storage からファイルを送信する場合は、content を gcsContentUri に置き換えて、Cloud Storage に保存されているテキスト ファイルの URI の値を指定します。
encodingType には、API でテキストを処理するときに使用するテキスト エンコードの種類を指定します。API はこの情報を使って、特定のエンティティがテキストのどこに出現するかを調べます。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認してください。
curl コマンドを実行して、最初に保存した API キー環境変数とともにリクエスト本文を Natural Language API に渡します(コマンドは 1 行で入力してください)。レスポンスの最初の部分は次のようになります。
このレスポンスには、各エンティティの種類(type)、ウィキペディアの関連ページの URL(存在する場合)、重要性(salience)、テキスト内の場所を示すインデックスが含まれています。salience は、[0,1] の範囲の数値で、そのエンティティがテキスト全体でどの程度重要かを表します。
Natural Language API は、同じエンティティの別の表現も認識できます。レスポンスの mentions のリストをご覧ください。「Joanne Rowling」、「Rowling」、「novelist」、「Robert Galbraith」がすべて同じものを指していることを API が認識できています。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認してください。
Natural Language API では、エンティティの抽出に加えて、テキスト ブロックの感情分析を行うこともできます。次の JSON リクエストには、先ほどのリクエストと同じパラメータが含まれていますが、今回はテキストがより強い感情を含む内容に変更されています。
request.json を次の内容に置き換えます。content の部分は独自のテキストに置き換えてもかまいません。Ctrl+X キーで nano を終了したら、Y キーでファイルを保存し、Enter キーを押して確定します。
次に、このリクエストを API の analyzeSentiment エンドポイントに送信します。
次のようなレスポンスが返されます。
sentiment の値が 2 種類あることに注目してください。これは、ドキュメント全体の値と文単位の値です。sentiment メソッドは次の 2 つの値を返します。
score - -1.0~1.0 の数値です。その主張がどのくらいポジティブまたはネガティブかを示します。magnitude - 0~無限大の数値です。その主張の中で表現されている感情の重みを表します。感情がポジティブかネガティブかは問いません。重みの大きい表現を含むテキスト ブロックが長くなるほど magnitude の値が大きくなります。この例では、1 つ目の文の score はポジティブ(0.7)ですが、2 つ目の文の score はニュートラル(0.1)です。
Natural Language API では、テキスト ドキュメント全体の感情だけでなく、テキスト内のエンティティごとの感情を調べることもできます。今度は次の文を例として使用します。
I liked the sushi but the service was terrible.
この場合、先ほどのように文全体の感情スコアを取得してもあまり役に立ちません。これがレストランのレビューで、同じレストランのレビューが何百件もあるとしたら、知りたいのは、それらのレビューで高評価されたものは何か、低評価されたものは何かです。幸い、Natural Language API には、テキスト内の各エンティティに対する感情を調べられる analyzeEntitySentiment というメソッドが用意されています。さっそく試してみましょう。
request.json を以下のように更新します。Ctrl+X キーで nano を終了したら、Y キーでファイルを保存し、Enter キーを押して確定します。
次に、以下の curl コマンドを使用して analyzeEntitySentiment エンドポイントを呼び出します。
レスポンスには 2 つのエンティティ オブジェクトが含まれています。1 つは「sushi」、もう 1 つは「service」です。この JSON レスポンス全体は以下のとおりです。
「sushi」の score はニュートラルの 0 で、「service」の score は -0.7 になっています。分析がうまくいったようです。また、sentiment オブジェクトがエンティティごとに 2 つ返されていますが、これは特定の出現箇所の値と、エンティティ全体の集計値を表しています。これらの言葉が複数回出てきた場合は、それぞれに別の score と magnitude の値が返されます。
Natural Language API のもう 1 つのメソッドである構文解析では、言語学的な観点からテキストをさらに詳しく調べることができます。analyzeSyntax は言語情報を抽出し、指定されたテキストを一連の文とトークン(通常は単語の境界)に分解して、それらのトークンをさらに分析できるようにします。テキスト内の各単語について、その単語の品詞(名詞、動詞、形容詞など)と、文中の他の単語との関係(主動詞か修飾語かなど)を調べることができます。
簡単な文で試してみましょう。次の JSON リクエストは、先ほどのものとよく似ていますが、features キーが追加されています。これにより、構文アノテーションを行うように API に指示しています。
request.json を次の内容に置き換えます。Ctrl+X キーで nano を終了したら、Y キーでファイルを保存し、Enter キーを押して確定します。
次に、API の analyzeSyntax メソッドを呼び出します。
レスポンスでは、次のようなオブジェクトが文中のトークンごとに返されます。
レスポンスを細かく見てみましょう。
partOfSpeech は、「Joanne」が名詞であることを示しています。dependencyEdge には、このテキストの係り受け解析ツリーを作成するためのデータが含まれています。係り受け解析ツリーとは、文中の単語が互いにどのように関連しているかを示す図です。たとえば、上の文の係り受け解析ツリーは次のようになります。headTokenIndex は、「Joanne」に向かう曲線を持つトークンのインデックスです。文中の各トークンは、配列内の単語と考えることができます。headTokenIndex の値 1 は「Rowling」を指しており、「Joanne」は係り受け解析ツリーでこの単語に結び付けられています。label の値 NN(Noun Compound Modifier(複合名詞の修飾子)の略)は「Joanne」の文中の役割を表しており、「Joanne」はこの文の主語である「Rowling」を修飾しています。lemma はその単語の正規形です。たとえば、run、runs、ran、running の lemma はすべて run です。lemma の値は、大きなテキスト ブロックで単語の出現回数の推移を追跡するのに便利です。Natural Language API は英語以外の言語もサポートしています(サポート対象言語の一覧については、言語サポートをご覧ください)。
request.json のコードを次のように変更して、日本語の文で試してみましょう。テキストの言語を指定していないことに注目してください。言語は API によって自動的に検出されます。
analyzeEntities エンドポイントに送信します。次のようなレスポンスが返されます。
ウィキペディアの URL も日本語版のページになっています。
ここでは、Cloud Natural Language API によるテキスト分析の方法を学ぶために、エンティティ抽出、感情分析、構文アノテーションを行いました。このラボでは、Natural Language API リクエストを作成し、curl で API を呼び出しました。また、Natural Language API を使用してテキストのエンティティ抽出と感情分析を行いました。さらに、テキストの言語分析を行い、別の言語で Natural Language API リクエストを作成しました。
Google Cloud トレーニングと認定資格を通して、Google Cloud 技術を最大限に活用できるようになります。必要な技術スキルとベスト プラクティスについて取り扱うクラスでは、学習を継続的に進めることができます。トレーニングは基礎レベルから上級レベルまであり、オンデマンド、ライブ、バーチャル参加など、多忙なスケジュールにも対応できるオプションが用意されています。認定資格を取得することで、Google Cloud テクノロジーに関するスキルと知識を証明できます。
マニュアルの最終更新日: 2026 年 6 月 19 日
ラボの最終テスト日: 2026 年 6 月 19 日
Copyright 2026 Google LLC. All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。
このコンテンツは現在ご利用いただけません
利用可能になりましたら、メールでお知らせいたします
ありがとうございます。
利用可能になりましたら、メールでご連絡いたします
1 回に 1 つのラボ
既存のラボをすべて終了して、このラボを開始することを確認してください