| スピーカー |
文字起こし |
| クレイ・バーカー |
ありがとうございます。クレイ・バーカーと申します。JMPグループの統計開発者です。本日は、JMP Pro 16の新機能についてお話しします。この機能は「用語選択」と呼ばれ、同僚のパリス・フェイソンとアーネスト・パスールと共に開発しました。 |
| |
そのため、テキストデータは実務においてますます一般的になりつつあります。例えば、自社製品に対する顧客レビューや、イベントの説明、あるいは機器のメンテナンスログなどが挙げられます。 |
| |
そして、私のスライドにあるこの例では、これは |
| |
航空機事故…サンプルデータに含まれる事故データセット。 |
| |
そして、データの各行は、航空会社の事故、墜落事故、またはその他の種類の不具合に関する記述である。 |
| |
もしText Explorerプラットフォームを使ったことがないなら、これはJMP 13で導入されたもので、主にテキストデータの要約や分析に役立てるために使われます。 |
| |
そのため、最も頻繁に出現する単語やフレーズを調べるといった一般的な作業が容易になり、文書をクラスタリングしたり、トピック分析のようなテーマを探したりといった作業も容易になります。そして、これらすべては「文書用語マトリックス」と呼ばれるものによって制御されています。 |
| |
では、文書用語マトリックスとは何でしょうか?最も分かりやすいのは、各文書に特定の単語やフレーズが含まれているかどうかを示す指標変数のマトリックスと考えることです。 |
| |
そして、各文書における単語の出現頻度に基づいて重み付けを行うこともできます。つまり、文書は文書用語マトリックスの行となり、各列は単語となります。 |
| |
では、非常に簡単な例として、最初の行は「ピザの包装がイライラした」です。包装には 1 点、 |
| |
ピザには1、イライラするにも1、その他の単語には0が付けられています。同様に、2行目では、匂い、素晴らしい、味、ピザには1、その他には0が付けられています。これは、各文書にどのような単語が含まれているかを単純にまとめたものです。 |
| |
また、文書用語行列にはいくつかのバリエーションがあることも述べました。最も簡単なのはバイナリ形式で、1と0だけで構成されます。 |
| |
しかし、各単語がどれくらいの頻度で出現するかについての情報も含めたい場合もあるでしょう。そこで、ピザが複数回出現する、少し長めの文をもう一つご紹介します。 |
| |
バイナリ文書用語行列では、ピザの列は出現頻度に関係なく1のままです。一方、三値文書では、0、1、2の3つの値で構成されるため、2になります。単語が出現しない場合は0、1回出現する場合は1、2回以上出現する場合は2となります。 |
| |
たとえここで4回出現したとしても、私たちは2とコード化しました。そして、頻度は非常にシンプルです。それは単に、その文書内で各単語が出現する回数です。 |
| |
これらは3つの非常にシンプルなものですが、TF-IDF重み付けも提供しています。これは相対頻度のようなものですが、これらの重み付けスキームの詳細については、 |
| |
テキストエクスプローラープラットフォーム。 |
| |
では、次のステップは何でしょうか?次に使ってみたいものは何ですか? |
| |
テキストを使って何らかの結果を得たい場合もあるでしょう。そこで、家具のレビューをいくつか作成しました。それぞれのレビューには星評価が付いていますよね。 |
| |
つまり、これらのレビューは、なぜ誰かが製品を高く評価したり低く評価したりするのかについての手がかりを与えてくれると考えるかもしれません。この最初の行では、「説明書が分かりにくかった」とあり、ユーザーは3点しか評価していません。もし、このようなパターンが頻繁に発生し、多くの人が評価しているとしたら… |
| |
低い評価の多くは説明書に関するものであり、これは私たちが家具に同梱する説明書を改善する必要があることを示唆しているのかもしれません。 |
| |
つまり、単純なアイデアは、それらを回帰モデルとして使用することです。文書用語行列を取り、 |
| |
それを我々の応答情報と組み合わせて、回帰分析を行います。 |
| |
そうすることで、お客様が当社の家具、あるいは当社が製造するあらゆる製品を気に入る理由、あるいは気に入らない理由を理解するのに役立ちます。 |
| |
説明に基づいて物体を分類するのに役立ちます(これについては後ほど詳しく説明します)。あるいは、メンテナンス記録に基づいて、なぜ一部の機械が故障するのか、しないのかを理解したい場合もあるでしょう。 |
| |
そして、そのやり方はとても簡単です。 |
| |
実際には、各 X、つまり予測変数が項行列の列の 1 つとなる回帰モデルを作成しているだけです。したがって、製品評価をモデル化する場合は、単純な線形回帰になります。 |
| |
顧客が当社の製品を推奨するかどうかなど、二値的な結果をモデル化する場合 |
| |
おそらく数百語にも及ぶデータなので、すべてを使う必要はないでしょう。すべてのデータが有用とは限らないため、回帰モデルに変数選択手法を適用し、解釈しやすく、かつ適合性の高い、よりシンプルなモデルを作成します。 |
| |
そして、一番下の図では、これらの指標変数と私たちの反応評価、つまり星評価を組み合わせる様子を簡単に視覚化できます。 |
| |
そこで、JMP 16に搭載される私たちのソリューションは、回帰モデルをText Explorerプラットフォームに取り込むことです。変数選択を行うために汎用回帰プラットフォームを使用したことがある方なら、基本的にそのプラットフォームをText Explorerに組み込むことになるのです。 |
| |
JMP Proをお持ちの場合は、テキストエクスプローラーの赤い三角形のメニューに用語選択項目が表示されます。 |
| |
これが私たちが本当に期待している点です。これによって、こうした回帰モデルを簡単かつ迅速に構築・改良できるようになります。 |
| |
このプラットフォームをローンチすると、後ほどデモをいくつかご紹介しますが、簡単に言うと、 |
| |
発売当初は、私たちの反応や、私たちが適合させたいモデルの種類に関する情報を求めているだけです。 |
| |
そのため、星評価のような連続的な応答も処理でき、連続的な応答を指定すると、その応答に基づいて一部の行を除外できるフィルターが提供されます。 |
| |
そして、名義尺度の応答列がある場合は、目標レベルを選択します。この場合、当社の製品を推奨しますか、はい、いいえ。これからモデル化するのは... |
| |
推奨度を「いいえ」としてモデル化します。 |
| |
青、緑、黄といった複数レベルの応答がある場合、モデル化したいレベルを選択します。これについては、後ほど例を見てみます。 |
| |
次に、応答を指定した後、適合させたいモデルの種類に関する情報をプラットフォームに提供します。 |
| |
では、変数選択を行う際、エラスティックネットとラッソのどちらを使用しますか?これらはどちらも一般化回帰に組み込まれている変数選択手法です。また、検証はどのように行いますか?AICとBICのどちらを使用しますか? |
| |
さらに、文書用語マトリックスの詳細を指定することもできます。重み付けを選択したり、考慮する用語の最大数を選択したりできます。例えば、出現頻度の高い上位200語を考慮したい場合は、現在200に設定されています。 |
| |
では、起動して実行ボタンを押すとどうなるのでしょうか?基本的には、すべての処理が行われます。 |
| |
あなたがやらなければならないことは、このツールが裏でデータを適切に設定してくれるので、あなたは何も心配する必要がありません。変数選択も行ってくれるので、これで私たちの反応を予測するのに役立つと思われる単語の小さなサブセットが得られ、結果は分かりやすい形で表示されます。 |
| |
レポートを解釈するには、後ほど説明するように、非常にインタラクティブな操作が必要です。以前は、次のようにしてこれを行うことができました。 |
| |
ドキュメント用語マトリックスをデータセットに保存し、汎用回帰プラットフォームを自分で起動します。 |
| |
でも、もうそんなことをする必要はありません。今はすべて選択次第です。 |
| |
では、そのモデル仕様では、何を選択すべきかをどのように判断すればよいのでしょうか? |
| |
利用可能な推定方法は、エラスティックネットとラッソです。これらの違いを覚える簡単な方法は次のとおりです。 |
| |
エラスティックネットは相関のある予測変数のグループを選択する傾向があるということです。したがって、この設定では、予測変数がすべて単語である場合、 |
| |
つまり、一緒に出現する傾向のある単語のグループを選択する傾向があるということです。例えば、instruction と manual を考えてみてください。 |
| |
これらの単語は取扱説明書というキーワードで頻繁に一緒に使われます。そのため、これら2つの予測変数は高い相関関係を持ち、エラスティックネットはおそらく両方を選択するでしょう。一方、ラッソは「instruction」または「manual」のいずれかを選択する可能性が高く、必ずしも両方を選択するとは限りません。 |
| |
検証方法としては、AICとBICがあります。 |
| |
つまり、経験則としては、AICはモデルを過剰選択する傾向があり、BICはモデルを過小選択する傾向があるということです。したがって、私たちの仕様では、 |
| |
ただ、AICはより多くの単語を選択する傾向があり、BICはより少ない単語を選択する傾向があるということです。 |
| |
個人的には、必要以上に多くの単語を使う方が、少ない単語を使うよりも良いと思うので、AICをよく使いますが、それは本当に好みの問題です。 |
| |
そして文書用語の重み付けは… |
| |
つまり、文書用語行列の重み付けのことです。 |
| |
それはあなたの抱えている問題によります。この例では、 |
| |
レビューの中に「ペイント」という単語が複数回出現しています。これは、レビュー担当者が非常に… |
| |
塗装は、そのレビュアーにとって非常に重要であり、それは回帰モデルにおいて意味を持つ可能性があるため、バイナリではなく頻度などの重み付けを使用したいと考えます。 |
| |
それで、用語選択を開始すると、このような場所にたどり着きます。 |
| |
左側にはすべての文書の概要、右側には選択したすべての単語が表示されます。この部分は今は省略します。デモを始めると分かりやすいでしょう。 |
| |
もう一つ非常に便利な機能として、要約機能があります。用語選択を使って一連のモデルを適合させると、それらすべてが上部に要約されて表示され、それらを切り替えて表示できます。これについては、後ほど詳しく説明します。 |
| |
それでは、プラットフォームを見てみましょう。 |
| |
まず最初にこれを見ていきましょう |
| |
JMPのサンプルデータフォルダにある航空機事故データセット。 |
| |
この表の各行はそれぞれ事故を表しています。航空機の損傷の程度、負傷者の種類、そして事故状況の説明が記録されています。最後の列は、事故で何が起こったのかを正確に説明したものです。 |
| |
それでは、Text Explorer を起動します。Text Explorer を初めて使用する場合は、左側に最も頻繁に出現する単語が表示され、右側に最も頻繁に出現するフレーズ、つまり単語のグループが表示されます。 |
| |
そこで、これらの言葉を使って理解を深めたいのです。 |
| |
つまり、衝突事故でより大きな損害や、より深刻な負傷を引き起こす原因は何でしょうか。それでは、赤い三角形のメニューに移動して、用語の選択を求めます。 |
| |
さて、先ほど見ていた発射の様子を見てみましょう。損傷についてもっと詳しく知りたいのですが、特に、航空機が破壊された場合と、損傷が軽微な場合を区別したいので、破壊する目標レベルを選択します。 |
| |
この早期停止機能は、ある意味、時間短縮機能と言えるでしょう。 |
| |
変数選択を行う場合、より大規模な問題ではかなりの時間がかかることがあります。このチェックボックスをオンにしたままにすると、次のようなメッセージが表示されます。 |
| |
十分なモデルができたと判断した場合、早めに作業を中止することにします。よほど大きな問題がない限り、私はそのチェックを外すようにしています。 |
| |
それでは、エラスティックネットとAICを設定して、実行ボタンを押しましょう。 |
| |
つまり、バックグラウンドで何が起こっているかというと、この回帰モデルに適合させるために必要なデータが作成され、舞台裏で回帰モデルが適合され、そして今、要約が得られました。 |
| |
すべての文書は左側のパネルに要約されています。これは最初の航空機事故、これは2番目の事故で、こちらは空白です。 |
| |
まず一つ目は、飛行機が滑走路脇の雪の吹きだまりに接触したというものです。 |
| |
そして、重要な単語はすべて強調表示されています。青色の単語は負の係数を持ち、オレンジ色の単語は正の係数を持ちます。 |
| |
単語に興味がある場合は、右側のパネルをご覧ください。私は係数で並べ替えるのが好きなので、上部をクリックするだけで済みます。 |
| |
つまり、この場合、負の係数を持つ単語は破壊される可能性が低いということです。 |
| |
文書に「着陸」という単語が含まれている場合、飛行機が着陸地点に到達しているなら、おそらくそれほど深刻な事態ではないでしょう。したがって、このような事態は起こりにくいでしょう。 |
| |
破壊された。その一方で、最も肯定的な表現を見てみると、破壊された航空機に最も関連付けられる言葉は「破壊された」である。 |
| |
そして、それは「火災」や「目撃者」といった言葉です。もし彼らが事件について目撃者に聞き取り調査をしているのなら、おそらく飛行機に乗っていた人はインタビューに応じられなかったのでしょう。 |
| |
つまり、火、レーダー、回転、夜、これらはすべて、 |
| |
破壊されることで。 |
| |
さて、私たちは負傷レベルにも関心があるかもしれません。特に、最悪の負傷レベルを見ていきましょう。 |
| |
そして、任期の選定を再度行います。 |
| |
手短に済ませるため、それで良しとしましょう。 |
| |
つまり、今度は同じようなことを、怪我のレベルに着目して行うことができるようになったということです。 |
| |
つまり、インタビューに機長や着陸が含まれる場合、これらは怪我のレベルという点ではおそらくそれほど深刻ではないでしょう。 |
| |
しかし、レーダー、夜、山といった言葉が再び出てくると、これらははるかに深刻な意味合いを持ちます。そこで、これら2つの反応を素早く行き来して、どちらの言葉がこれらの2つの反応を予測できるかを確認してみましょう。 |
| |
負傷レベルと損害レベル。 |
| |
では、別の例を見てみましょう。 |
| |
これは私が本当に好きなもののひとつです。先ほどは例としてピザを取り上げましたが、今度はビールについてお話しします。これらは言うまでもなく、私にとって非常に大切なものです。 |
| |
それで、私がここに持っているのは、ビールレビューによると、あらゆるビールスタイルの説明をダウンロードしたものです。 |
| |
体。 |
| |
つまり、すべてのビールに説明文が付いているということです。 |
| |
そして、ビールの産地が書いてあります。つまり、私たちは... |
| |
アメリカ、ドイツ、アイルランド。 |
| |
用語選択を使用して表示する |