| スピーカー |
トランスクリプト |
| スコット・ワイズ |
調査的テキスト探索。私はスコット・ワイズです。JMP教育チームのシニアマネージャーを務めています。 |
| |
今日はとても楽しいプレゼンテーションを用意しました。このプレゼンテーションの目的は、皆さんにもう少し親しみを持ってもらうことです |
| |
JMP と JMP Pro のテキスト探索機能と簡単さについて説明し、また、テキスト探索の別の見方、たとえば探偵のように何かを調査するにはどうすればいいかを紹介します。 |
| |
さて、おばあちゃんのチリと、それがテキサスチリコンテストとどう関係するのかについてお話しします。始める前に |
| |
テキストマイニングに関する用語をいくつか解説しましょう。私にとって、実際には5つのシンプルなステップがあります。時間をかけてデータを要約し、文字通り、テキスト内でどの単語が最も頻繁に出現するか、さらにはどの単語の組み合わせが最も頻繁に出現するかを調べます。 |
| |
では、これは構造化されていないテキストを調べる作業です。そして、これは何でもいいんです。例えば、製品やサービスのパフォーマンスについて顧客から聞いた文章かもしれません。あるいは… |
| |
ソーシャルメディアなら、コメントから人々の好みや嫌いがわかるでしょう。 |
| |
あなたの製品やサービスについて何か、あるいはこの人に関するレシピのようなものかもしれません。 |
| |
特許出願されている人気のものは何なのか、自分たちもそれに取り組んでいくべきなのかを研究しているときに、特許に関してもこのようなことが行われているのを見たことがあります。 |
| |
つまり、重要なのは、その中からどの単語が最も重要かを把握し、要約することです。次に、重要な単語のリストを絞り込むための準備作業があります。 |
| |
もちろん、JMPを使うには、データを視覚化、分析し、モデル化する必要があります。高度なモデリングも可能です。そこで、JMP Pro(バージョン15.1)を使って分析を行います。 |
| |
JMP で何ができるのか、そして私の質問にさらに答えるために Pro の機能を少し紹介します。 |
| |
文書、コーパス、用語。文書はこれらになります… |
| |
分析しているのは、基本的にはテキスト本文、つまりテキストの各行です。つまり、私の例ではレシピです。 |
| |
それは、あなたの製品やサービスについてコメントしてくれた様々な顧客かもしれません。コーパスとは、実際にはあなたが処理しようとしている非構造化テキスト、つまり分析対象となるテキスト本体のことです。 |
| |
そして、用語とは、質問に答えるのに役立つ、あなたが関心のある単語、あるいは単語の組み合わせになります。それでは、話の続きをしましょう。なぜチリのレシピを調べようと思ったのか?それはまた別の話です。 |
| |
約 25 年前、私が初めてテキサスに引っ越してきて、大企業に就職したとき、テキサスのほとんどの大企業と同じように、その企業でも大きなテキサス チリ クックオフ会がありました。 |
| |
そして私も参加を依頼されました。全員が参加しました。しかし、それ以上に、審査員を務めるよう依頼されたのです。 |
| |
だから、審査員の申し出を断るべきだった。新人としては名誉なことだと思っていたけど、結局私しか選考に残れなかったんだ。理由が分かった。 |
| |
でもまずは、私が持ってきたチリへの反応についてお話しましょう。私の家族がいつも使っているチリのレシピは、祖母のリリアンおばあちゃんから受け継いだものなんです。 |
| |
これはチリではありません。テキサス人が考えるチリとは違います。 |
| |
嬉しいことに、私はチリが大好きなので、どれでも持ち帰らなければならない。彼らはチリ以外のものを検討していた。彼らのチリには豆が入っていなかった。ボリュームがなかった。とても辛くて、スープっぽかった。 |
| |
私のは牛肉、あちらは豚肉がほとんどでした。全部入りでした。もう一つ困ったことがありました。おばあちゃんのチリが気に入らなかっただけでなく、審査で危うく生き残れそうになったんです。 |
| |
だって、真のテキサス人の誇りは、最高に辛いチリを作ること。だから、隣人に勝ちたい。同僚に勝ちたい。だから、ありとあらゆる激辛チリやスパイスをここに投入していたんだ。 |
| |
それで、味見をしようとして胃に穴が開きそうになったのに、熱を逃がすために牛乳を全部飲んでるなんて。 |
| |
まさに火の洗礼でした。だから、もしあなたが熱い戦いが好きでない限り、審査員として参加するのはやめた方がいいと思います。あまり良い考えではありません。でも、私は順位をつけたかったんです。それがずっと気になっていました。 |
| |
え、おばあちゃんのチリはどうしてうまくいかなかったの?チリって本当に種類があるの?どこから来たの? |
| |
チリには本当に面白い歴史があることがわかりました。チリに関する面白い歴史ブログや論文もいくつかありますが、おそらくそれは |
| |
中央アメリカ、主にメキシコです。軽めの料理もありますが、サンアントニオでは、州内でチリが初めて販売されたのが見られました。今ではチリとして知られています。 |
| |
アラモの近くのサンアントニオ旧広場で。牛の群れを移動させる際に使われ、人気が出始め、やがてアメリカ中部から中西部まで広まっていきました。 |
| |
セントルイス万国博覧会では、多くの食品のイノベーションが生まれ、発表されると大ヒットしたと聞きました。これはその一つです。チリは |
| |
セントルイス万国博覧会で本当に人気が出ました。 |
| |
色々な種類がありますね。それで、材料やレシピにテキスト探索を使えるかどうか、というアイデアが浮かびました。レシピを丸ごと取り出して、入力してみて、どうなるか見てみましょう。 |
| |
では、何と比較すればいいのでしょうか?そこで、伝統的な地域を調べてみたところ、テキサスからミシガンまで、いくつかありました。 |
| |
テキサスには色々な種類があります。私が試食したのはテキサスボウルレッドです。あれはチリコンカンです。 |
| |
フリトパイはフットボールの試合でよく食べられる人気商品で、ルイジアナ州にも独自のバージョンがあります。ニューメキシコ州にも、青唐辛子とチキンを使った独自のバージョンがあります。オクラホマ州、カンザスシティ、スプリングフィールドなどにも、 |
| |
イリノイ州シンシナティのスカイラインチリは、スパゲッティにかけるんだ。ミシガン州コニーアイランドのホットドッグにかけるチリソースは、本当に辛いよ。 |
| |
白唐辛子。原産地は不明。ベジタリアン向け。でも、今は色々な種類があるみたい。 |
| |
そこで私は、これらのスタイルのレシピをそれぞれ 3 つずつ取り上げて、おばあちゃんのチリと比較したら、探しているものが見つかるだろうかと考えました。 |
| |
では、これを実行し、手順を説明しながら、手順の概要を示し、そのすぐ後に JMP での実行方法を説明します。 |
| |
最初のステップはデータを要約することです。関心のある単語を見つけたいのです。 |
| |
では、入力すると何が起こるでしょうか |
| |
このテキスト分析、このテキストデータ、私の材料のようなものをテキストエクスプローラーに入力すると、ライブラリを通して実行されます |
| |
正規表現について考えてみましょう。そして、その言葉が日常会話の一部であることを考えてみましょう。 |
| |
あまり役に立ちません。リストに「the」や「and」が含まれていると役に立ちません。つまり、あなたが気にしない単語を取り除こうとするのです。もちろん、カスタマイズも可能です。 |
| |
かなり強力なものがすでに組み込まれているので、それを使いました。そしてステミングです。ステミングとは、 |
| |
単語をどのように扱いたいかを述べます。つまり、「dice」は「dice」、「dicing」、複数形があり、違います...違います... |
| |
語根の様々なバージョン。全てを語根に含めますか、それとも分けて数えますか?この点は考慮すべき点です。 |
| |
要約した後、これらの単語を取り出しましょう。ここに単語のリストがあります。後ろのものは編集されていないもので、前のものは編集されていません |
| |
これは実際に、単語リストを整理して、ある程度サイズダウンさせたものです。つまり、気に入らない単語を探して、それをストップワードと呼び、基本的には削除するということです。つまり、気に入らない単語のライブラリに戻すということです。 |
| |
本当に重要なフレーズも持ってきてください。これらを持ってきたら、いくつかを視覚化してみましょう。 |
| |
そして、私の場合は食材にとても興味があったので、どの食材が最も頻繁に出てきたかを確認できるようになります。 |
| |
ここではワードクラウドがよく見られますが、ワードクラウドでは、単語が大きいほど、その単語の頻度が高くなります。 |
| |
クラウドで見ると、ただの散在的なレイアウトとして、あるいは一番上の一番大きな単語が並ぶような順序で見ることができます。 |
| |
スライドの前のグラフです。その後、これを使って何かを行います。そして、いくつかの基本的なモデルを作成します。 |
| |
最も簡単な方法の一つは、リストの中のどの単語が重要かがわかったら、 |
| |
これをデータテーブルに追加し直すことができます。これは「ドキュメント用語マトリックスの保存」と呼ばれます。この場合、簡単な方法はバイナリデータを使用することです。右側に別の列を用意しました。 |
| |
「タマネギ」は、レシピの行にある場合は1になります。そうでない場合は0になります。つまり、列には0と1が入ります。これで何が最も重要なのかが分かります。 |
| |
そして多くの場合、もし私が行き詰まったら、 |
| |
おそらくこれで審査スコアが出たので、各レシピに数値スコアをつけて、材料が何なのか見てみようと思います。 |
| |
よくあることで、高得点につながることがあります。私もそうしているかもしれないので、もう少し予測的にやってみてください。 |
| |
今回はグループ化について見ていきます。レシピをグループ化して、おばあちゃんのチリがどのグループに当てはまるかを確認することにとても興味があります。それでは、その方法を説明します。まずはJMPを開いて、これらの手順をJMPでどのように実行するかを見てみましょう。 |
| |
これが私の生データです。 |
| |
ここにあるすべてのドキュメントのすべての行には、構造化されていないテキストが含まれており、私の場合は、生の材料だけです。 |
| |
ここにあるセルのいずれかをクリックすると、コピーされた材料がそのまま表示されます。最初のセルはルイジアナ州産ケイジャンチリです。 |
| |
「トマト」や「チリパウダー」「ハチミツ」といった、私にとって大切な言葉も入っています。一方で、「缶」のように、私にとっては興味のない言葉も入っています。 |
| |
おそらく「1ポンド」「2ポンド」「小さじ」といった、あまり気にしない材料の量です。では、これをどう扱えばいいのでしょうか? |
| |
分析に移動してテキスト エクスプローラーに移動し、それらの要素をテキスト列に入力します。 |
| |
全ての単語の語幹をどう処理するか、語幹抽出の方法を尋ねてみます。とても便利ですね。それから、組み込みの正規表現を使います。 |
| |
はい、わかりました。これが私の最初のリストです。 |
| |
では、今できることは、気にしないものを選択することです。数字は気にしません。だから、ここをクリックしてハイライト表示し、右クリックして「ストップワードを追加」を選択すると、気にしないもののリストに追加されます。 |
| |
「チリパウダー」はどうでしょうか?これは単独で入力する必要があるようですね。それで、そのフレーズを右クリックして、「フレーズを追加」を選択すると、フレーズが追加されます。 |
| |
したがって、合理化されてサイズが縮小されたリストが得られるまで、これを繰り返します。 |
| |
私はただ走るつもりです |
| |
完成したリストです。正規表現で見つかったすべての単語と、 |
| |
私が追加したもの |
| |
そしてストップワード。さて、完成した用語とフレーズのリストがこれです。そして、私が気にしているフレーズも追加しました。「玉ねぎ」が最も上位に表示され、次に「塩」、「クミン」、「チリパウダー」と続きました。 |
| |
ご想像の通り、これは視覚化に非常に役立ちます。ワードクラウドも用意しています。ここに表示されているのが、この中のすべての単語のワードクラウドです。また、赤い三角のオプションで、表示される内容をより明確にするために、順序を変更することもできます。 |
| |
中央揃えにしておくと、楽しいですね。データにフィルターを追加したり、他に何もしなくても視覚的に答えを見つけられることもあります。そういう場合は、これについて詳しく説明しましょう。 |
| |
赤い三角のボタンです。ローカルデータフィルタを取得します。タイプを確認して、次のものを見てみましょう。 |
| |
リリアンおばあちゃんのチリって、トマトとインゲン豆と牛肉みたいな感じですよね。ケイジャンチリと比べてどうですか? |
| |
まあ、チリパウダーと牛肉は共通だけど、中身は違うかもしれないね。チリヴェルデと比べてどうだったかって? |
| |
青唐辛子に近いものですよね。生の唐辛子やハラペーニョ、チキンストックなど、そういうものも全部入っています。 |
| |
これは本当に興味深いですが、何が起こっているのか理解するには十分ではないかもしれません。それで私は |
| |
(そしてこれはもう 1 つです...赤い三角形の下にすべてのオプションがあります) ローカル データ フィルターをオフにして、すべてが選択されていること、すべての用語を確認していることを確認しました (おそらくここで確認する必要があります)。 |
| |
299件あります。右クリックして「ドキュメント用語マトリックスを保存」を選択します。 |
| |
そうすると、どのような方法で保存するか、重み付けの種類はどうするかを尋ねられました。基本的にはバイナリ形式で、使用できる頻度、用語の数、つまりデータテーブルに実際に表示されるために必要な最小の用語頻度を指定します。これは既に設定済みです。 |
| |
それで、横にスライドして見てみると... |
| |
実は |
| |
早速実行して、どのように見えるかお見せします。「ドキュメント用語マトリックスを保存」と入力して「OK」をクリックします。 |
| |
スライドで示したように、これで必要な用語がすべて揃いました。「玉ねぎ」の最初の単語があります。こちらは「チリパウダー」の単語です。それぞれについて |
| |
レシピ、ご存知のとおり、行です。 |
| |
だから、どこにあるのかは分かっていますし、このケイジャン チリにはチリ パウダーが入っていたことも知っています。 |
| |
ゼロになると、 |
| |
これはオクラホマ・チリのように見えますが、ニューメキシコ・チリにはチリパウダーが入っていませんでした。まあ、そういうことですね。これはモデリングにも使えます。JMPの「モデルの当てはめ」機能を使って、実際に何らかのモデルに適用することができます。 |
| |
でも、私がこれからやろうとしているのは、どの材料が高得点をもたらすかを予測しようとしているわけではないので、 |
| |
出力データですね。これらをグループ化したいのですが、JMP Proではそれができると聞きました。それでは、スライドに戻りましょう。 |
| |
データの分析についてお話しします。さらに分析を進めるには |
| |
JMP Pro では、非常に優れたグループ化テクニックを実行できます。これらは多変量手法であり、テキスト分析の処理や、ドキュメント用語マトリックスの操作に特化されており、テキストに関するものです。 |
| |
これは潜在クラス分析と呼ばれる手法を使います。これは用語の一つです。この手法に慣れている方なら、主成分分析に似ています。しかし、基本的には |
| |
いくつのグループやクラスターのデータを見たいのかを尋ねます。多次元空間全体を見ていきます |
| |
これらの列にあるすべてのものと、ここでのモデル内の重要な用語の文書用語マトリックスとの間には、単語で取得した重要な用語があります。 |
| |
単語リストですよね?そしてそれをグループ化します。私の場合は、3つのグループに絞り込むことができました。 |
| |
クラスターのものがありますが、牛ひき肉、トマトソース、チリパウダー、豆を使ったチリのレシピがたくさんあるようです。 |
| |
クラスター 2 は、鶏肉と青唐辛子、ここでは生の唐辛子と関係が深いです。 |
| |
そして、クラスター 3 には、やはり唐辛子がたくさん入っていました。ただし、赤唐辛子が多く、豚肉をベースにした味だったので、非常に納得できました。 |
| |
これらのクラスターを作成すると、行ごとにクラスター確率を使用できました。これにより、個々のクラスターの強さが分かりました。 |
| |
レシピ、ドキュメント内の行、つまり元の…コントロールレシピは、どこに分類され、どの程度の強さで属していたのでしょうか。なぜこれらのクラスターに割り当てたのでしょうか?そして、これを実行した時、 |
| |
22は私の祖母のクラスター…つまり祖母のコントロールでした。そして、祖母はミズーリ州カンザスシティのレシピなど、他のレシピと共にクラスター1にクラスター化していることがわかりました。 |
| |
24番に非常に近いものがありました。さて、クラスター3のテキサスのレシピには、辛いチリやスパイスが使われていました…スパイスがたっぷり入っていて、豚肉はよく使われていましたが、豆は入っていませんでしたよね?豆はクラスター1にはありましたが、クラスター3には入っていませんでした。そして… |
| |
クラスター2 |
| |
どちらかというと青唐辛子向けです |
| |
ニューメキシコでよく見かける、チキンベースのチリやグリーンチリを使ったものなどです。 |
| |
さて、それで、マッチングに成功し、レシピも見つけました。ミズーリ州を代表する3つのレシピのうちの1つが |
| |
それは実際にはカンザスシティチリと呼ばれ、リリアンおばあちゃんのチリとほとんど同じでした。 |
| |
それで母にこのことを尋ねた時、「どうしてこんなことが起きたの?ミズーリ州から来たとは思わなかったのに」と言ったら、母は「なるほどね」と言った。「リリアンおばあちゃんは |
| |
彼女はミズーリ州セントジョセフの農場で育ち、唯一の女の子で、兄弟は11人か12人くらいいました。だから料理をよく作っていたんです。」 |
| |
ちなみに、彼女は大学教育を受けた唯一の人で、当時としてはかなり進歩的な人で、私の大切な親戚の一人でしたが、彼女のレシピはそれを如実に表していました。それでは、実際にどんな感じかお見せしましょう。 |
| |
だから、もし私が行ったら... |
| |
この時点で、 |
| |
作成したデータに戻り、ホットスポットの下にJMP Proで利用できる追加モデルを置きます。この手法を使った潜在クラス分析クラスターのドキュメントがあります。 |
| |
バイナリ形式のドキュメント用語マトリックスに基づいています。つまり、ドキュメント用語マトリックスを使用するということです。つまり、保存する必要すらなく、自動的に生成されます。 |
| |
潜在的意味解析というものもありますが、こちらは少し計算が多く、より高度な手法を使います。でも、どちらも基本的には同じことをやっているのですが、私は特にこの潜在クラス解析が気に入ったので、こちらを選びました。 |
| |
3つのクラスターをお願いしました。違いが出るかどうか試してみてください。さらにクラスターを増やして試してみたのですが、結局3つに戻りました。 |
| |
そしてその中で |
| |
オプションを使用すると、行ごとにクラスター確率を確認できます。 |
| |
そして、すべての出力の中で、これが最も分かりやすかったのです。スライドに戻って、おばあちゃんのチリがどこに落ちたかを確認するのに役立ちました。 |
| |
それは22でした、 |
| |
22行目。そして他に何と相性が良かったのか。こうしてこの分析を行うことができました。 |
| |
とても簡単です。 |
| |
それで、 |
| |
JMPでテキスト探索を行う機能について簡単に説明し、JMP Proを使用して |
| |
これらのクラスターを見つけて、おばあちゃんのチリと合わせて、合うレシピを見つけてください。もっと知りたい方は、ブログへのリンクがあります。 |
| |
プレゼンテーションで…クリックするか、コミュニティに直接アクセスして「おばあちゃんのチリ」と入力すれば、そのブログが見つかります。それと、こちらもお渡しします。 |
| |
レシピ。あなたもリリアンおばあちゃんのチリを作れるようになります。 |
| |
本日これをお見せできることを嬉しく思います。 |
| |
ご質問はQ&Aにご記入ください。ご質問があればお答えいたします。そして、これを試してみてください。 |
| |
職場や自宅など、構造化されていないテキスト データが存在する場所であればどこでも、そのデータを調べたり質問したりすることができます。この方法はすばらしいもので、非常に強力であり、データの 3 次元を分析するのに非常に役立つことがわかります。 |