現代の人工知能(AI)と機械学習(ML)のトレンドの中で、JMPとJMP Proが果たす役割について、友好的な議論を交わします。AI/MLの進化する環境において、あらゆる業界の科学者やエンジニアは、データ探索、モデル構築、そして展開のための直感的なツールを必要としています。
JMPとJMP Proは、コード不要のプラットフォームとして、視覚的でインタラクティブな機能により、生データからAIへのプロセスを簡素化・高速化し、理解と効率性を高めます。本プレゼンテーションでは、表形式、テキスト、画像データのディープラーニングを含む実例を通して、これらのツールの強みを解説します。これらのツールが、コーディングの専門知識を最小限に抑えながら、シームレスでAI主導の洞察を導き出し、時間と労力を大幅に節約できる可能性を示唆します。
こんにちは。講演へようこそ。フロリアン・ヴォーグルと同僚のラスです。ドイツとアメリカから電話を繋いで、JMPがAIと機械学習の未来において本当に重要な役割を果たすことができるのかどうかというテーマについてお話しします。そうですよね?
いい質問ですね、フロリアン。
当然ながら、今日の回答は偏りがあるかもしれませんが、いくつか良い点を指摘できると思います。特に、皆さんと興味深い事例を共有できると思います。JMPは特に強力だと考えています。JMPは常に科学者やエンジニアの役に立つように設計されており、生データから「共有可能なインサイト」まで、エンドツーエンドのツールセットを組み込むように進化してきました。AIと機械学習の分野で重要な役割を果たすために必要なものがすべて揃っていると考えています。
フロリアンの言う通り、私たちの顧客である科学者やエンジニアは非常に多忙です。現代のAIMLでは、コーディング以外に方法がないという印象が一般的ですが、今日はそれを打破し、JMP Proを通して非常に強力な手法に実際にアクセスできる方法をお見せします。その手法の中には、インターフェースから直接操作できるものもあり、毎回個別にコードを記述するよりもはるかに迅速に答えを得ることができます。
ええ。それがJMPの強力な機能の一つで、科学者やエンジニア向けのJMPに既に搭載されている強力な機能と相まって、さらに強力な機能となっています。話はこれくらいにして、例を見ていきましょう。ラス、まずは素晴らしい例を用意してくれたと思います。
はい。化学の世界では今、構造記述、特にSMILES文字列から[inaudible 00:02:06]を予測するという大きな波が起こっています。そこで、非常に良い例を挙げたいと思います。数ヶ月前に発表された論文では、氷の再結晶化の影響を研究し、凍結が分子に与える影響を調べようとしています。この研究は数年前に行われ、出版のハードルをすべて乗り越え、Nature Communicationsに掲載された素晴らしい論文です。また、このGitHubリポジトリでデータも公開されています。私がデータを入手したのはここからです。
論文についてはあまり詳しくは触れませんが、彼らは非常に綿密な研究を行っており、基本的には古典的な(Q)SARアプローチに焦点を当てています。分子の複数の異なる記述子セットを組み立て、実行しました。彼らは1つを除外するクロスバリデーションを用いて結果を提示しました。例えば、最初のデータセットはGlyco2と呼ばれています。この表は、いくつかの異なる特徴セットにおけるピアソン相関の平均二乗誤差のパフォーマンス指標の最終列を示しています。さらに、彼らはアンサンブルという素晴らしい手法も行っています。アンサンブルによって相関が改善し、例えば0.4程度だったものが45、46以上にまで上昇していることがわかります。
これはJMPとJMP ProのTorchディープラーニングアドインを使って再解析したデータセットです。このデータには223個の分子が含まれています。まず最初に実行してみました。現在、比較的新しい2つの便利なアドインがあります。1つ目は「マテリアル・インフォマティクス・ツールキット」と呼ばれるもので、SMILES文字列を入力するだけで、ここに表示されている画像を作成できます。RDKitベースの機能も作成でき、著者らも独自の機能セットを提供しています。
これは既に、従来の(Q)SARのための充実したデータセットです。彼に詳しく説明する時間はありませんが、この結果を予測する方法として、現在いくつかの競合するアプローチがあることがわかりました。従来の(Q)SARでは、通常通り数値特徴量を取り、例えばニューラルネットワークなどの基底関数に入力するか、XGブーストなどのツリーベースの手法を使用することもできます。これらを入力するだけで、彼らが行ったように何らかの交差検証を設定する必要があります。私たちは、1つを省略するよりも5つ程度の分割を好む傾向がありますが、最終的にはそれほど大きな違いはないと思います。
しかし、今、本当に興味深いのは、より現代的な機械学習型のアプローチが実行できるようになったことです。今日はそのうちの2つについてお話ししたいと思います。1つ目は、最近普及したグラフニューラルネットワークと呼ばれるものです。RDKitの機能をベースにしたChempropというパッケージがあり、分子を模倣するグラフニューラルネットワークを構築し、セットアップ後に結果を予測するという考え方です。これはTorch Deep Learningアドインに含まれています。入力はSMILES文字列だけで、出力を与えるだけで済みます。セットアップは非常に簡単ですが、モデルの調整に少し時間がかかる場合があり、そのためのオプションをいくつか提供しています。今日はそれについては詳しく説明しません。
私たちが最近入手した、まさに新しいモデルについてお話ししたいと思います。それは、トランスフォーマー CNN と呼ばれるモデルです。このモデルは、おそらく最も人気のあるニューラル ネットワークの 2 つのミニ アーキテクチャ コンポーネントであるトランスフォーマーとニューラル ネットを使用しており、これらを 1 つのモデルに統合しています。
ここでは、SMILES文字列入力を用いて、再び古典的なBERTモデルを用いてトランスフォーマー部分を実行し、その出力を1次元畳み込み層(一連の1次元畳み込み層)にパイプしています。つまり、論文の結果を少し改善することができました。詳細は省きますが、論文では主に古典的な(Q)SARに焦点を当てていましたが、これらの最新手法と組み合わせることで、結果をさらに改善することができ、マウスクリックで操作することなく、Torchアドインですべてが可能になります。これは、例えばモデルの一つから得られる出力例です。アンサンブルやその他の作業も非常に簡単です。Florian、この特定のアプリケーションには本当に興奮しています。SMILES文字列を使用したこの1つの例だけでも、私たちの主張を既に証明できたのではないかと思います。
確かに、少なくとも私にとっては、それは確かにそう思えます。私はバイオテクノロジストで、大学でゼロからコーディングを学んだことはありません。ですから、少しはできそうな気もしますが、非常に難しいです。先ほどご説明いただいた点に付け加えると、これらのパッケージは、例えばPythonなどに組み込まれている業界標準のパッケージ、あるいは既に広く認知され、使用されている手法ですが、今ではこの優れたインターフェースを通してアクセスでき、コーディングを一切必要とせず、コーディングした場合と同じように出力を実装できます。これは特に私たちにとって、素晴らしいことだと思います。
さらに言えば、JMPはプロセスにちょっとした魔法のような効果をもたらしてくれると思います。なぜなら、モデリングとグラフィックスを常に緊密に統合するという私たちの哲学と、これからお見せするプロファイラーのような機能のおかげで、モデルを当てはめるだけでなく、実際にモデルを解析して予測を立てたり、シナリオを仮定したりと、より深く掘り下げることができるからです。これはまさに、科学者やエンジニアが常に苦労している問題です。
非常に良い指摘ですね。JMPが将来重要な役割を果たすと考える理由について、私の画面と私の見解を簡単に共有させてください。これらの高度な技術は必須であり、実践すべきもののように思われる一方で、それらを誰でも利用できるようにすることは重要です。特におっしゃる通り、科学者やエンジニアは純粋な予測だけでなく、なぜ物事が起こるのかを常に理解しようと努めています。
特に研究開発だけでなく、製造現場においても、物事がどのように相互作用するかを理解することが重要であり、JMPの非常に優れた機能の一つは、ここに表示されているような機能データエクスプローラーという特殊な技術です。これにより、曲線のような複雑な出力を見ることができます。この場合、クロマトグラムがありますが、ここでの具体的な問題は、赤い部分を一切含まずに、緑色の部分、つまり生成物をできるだけ多く得るにはどうすればよいかということです。
このプラットフォームでは、いくつかの予測を行うことができますが、設定を調査して、プロセスで微調整できるものを調べ、それぞれが望ましい結果にどの程度関連しているかを確認することもできます。また、これを、いわゆるブラックボックス型のモデリングと組み合わせて、「このように実行すれば良い結果が得られます」という予測を得ることもできます。
これは、ほんの一角、少し端の方だと思いますが、JMP は非常に強力な機能も提供しています。これは、JMP を使用したことのあるほとんどの人が知っていることです。ここで、発酵バッチなどのバッチが多数含まれているデータ テーブルを見ると、曲線を確認して調査し、その形状が入力要因とどのように関連しているかを確認できますが、繰り返しますが、そのすべての情報を 1 つのバッチ フィンガープリントに組み合わせることもできます。これも JMP では同様に簡単です。
ここに小さなボタンがあります。少し整理する必要があります。これが私が探していた表です。データテーブルに少し変更を加えるだけで済みます。JMPなら簡単にできますし、ご覧の通り、これらはすべて自動化できます。そこからグラフビルダーを使って、指紋を作成できます。少し正確ではないと思いますが、色付けもできます。ヒートマップにすることもできます。
これで、一見するとすべてのバッチの平均であるフィンガープリントが作成されましたが、バッチごとに 1 つ作成することもできます。また、各バッチの画像内の値を具体的に強調表示するフィンガープリントが即座に作成されます。つまり、そこに何を含めるかは専門家が決める必要がありますが、これで簡単にアクセスでき、概要を把握できるだけでなく、簡単にテーブルに戻して元のデータに結合することができます。
例えば、最先端の機械学習による画像分類にも使えます。収穫量や関心のある成果を予測できるなど、非常に強力なツールセットだと思います。データ変換、可視化から画像の予測子の作成、そしてその活用方法まで、いかに迅速かつ簡単に実行できるかがお分かりいただけると思います。Russさん、もう一つ例を挙げていただきましたね。
彼にとってこれは素晴らしいことです。なぜなら、これらの新しい可能性が次々と現れているからです。JMPはすでに非常に強力で、多くのユーザーが愛用しています。SMILESの文字列予測で示したようなことだけでなく、画像を入力データとして扱えるようになったことで、全く新しい可能性の世界が開かれました。例えば、JMPでは普段は考えられないかもしれませんが、多関数データや関数データを画像に変換することは、先ほどお見せいただいたように簡単です。これを実現すれば、画像処理における最新の機械学習手法の真髄に触れることができます。中でも画像分類は、Torchアドインでも実行できます。そのアイデアはここにあります。フロリアンさん、先ほどお見せいただいたものと似たような例があります。実は、同じ画像をGraph Builderで作成したのです。
ちなみに、ファイルを使えば、あらゆる種類の画像をJMPに直接インポートすることも簡単です。複数のファイルをインポートすることも可能です。画像データが既にカメラで撮影されている場合でも、数値的な特徴を調整したり操作したりして自分で処理する場合でも、画像は非常に直感的でコンパクトな方法で、多くの詳細なデータを取得することができます。これらのデータは、通常はX軸に時間軸が取られ、設定方法にはある程度の柔軟性がありますが、多くの場合、順序付けにも意味があります。アドインに関しては、非常に簡単で、以前よりもずっと簡単です。写真を撮って入力値とし、計算したい対象を指定するだけです。
この場合、例えば品質スコアのようなものでしょうか。複数の評価や検証フレームワークを使うことで、過剰適合を防ぐことができます。アドインには、これらの古典的かつ現代的な画像分類アーキテクチャを活用するための非常に便利なオプションが用意されており、複数の異なる分類を試したり、様々な手法を素早く比較したりできます。さらに、入力画像サイズの調整や拡張など、モデルの微調整に役立つ多くの追加オプションもコーディングしようとしています。さらに使い込んでいくと、ドロップアウトなどのオプションを試して、特定のアプリケーションに合わせてカスタムチューニングされたモデルを作成できます。追加機能によって、あらゆる要素が自動的に考慮されます。
また、最新のハードウェアも活用します。通常はNVIDIA GPUを搭載したWindowsマシン、あるいはMacをお持ちであれば最新のMチップのいずれかが適しています。なぜなら、これらの計算は、特に画像の数、つまりサイズが増えるにつれて、非常に高負荷になる可能性があるからです。強力なコンピューティング能力を手元に持っていることは大きなメリットです。ありがたいことに、最近はかなり手頃な価格で購入できるようになり、これまで不可能だった予測などを自由に行うことができます。JMP Proにとって、今は本当にエキサイティングな時期を迎えていると思います。既に多くのお客様から大変好評をいただいています。
すでに画像上でモデルを構築し、Pythonを使って実際にデプロイしている企業もいくつかあると知っています。私たちの主張は、それが役に立つかどうかという点で既に証明されており、実際に役立っています。そして、まだ始まったばかりです。非常にエキサイティングな時代だと思います。
まさにその通りです。素晴らしい事例を共有していただき、ありがとうございます。おっしゃる通り、それが重要な役割を果たすことは既に確認しています。改めてまとめると、私たちは常に科学者やエンジニアを対象に、日々の業務でデータをより効率的に活用できるよう支援してきましたが、彼らは通常、データに関する専門的な知識を持っていません。さらに、機械学習モデルをゼロからコーディングするようなことを習得する時間がない、という状況も多いのです。
はい、お答えすると、JMPには多くの科学者やエンジニアが既に使い慣れているツールセットがすべて揃っていますが、同時に、非常に直感的で包括的なツールセットも既に提供されており、さらに、今日ご紹介したような最先端の手法も利用可能になっています。一言でまとめると、JMPはAIとMLの未来において重要な役割を果たすことができる、ということです。皆さんもそう思われるのではないでしょうか?
全く同感です。それだけでなく、私たちは今、プログラマーと科学者の間に興味深い溝ができつつあると考えています。多くの場合、その溝は小さくなく、双方にとって得られる知識があるはずです。私たちが支援ツールとしてそこに関与できれば、場合によっては限界に挑戦することさえできるかもしれません。インターフェースを作成する際には、どのようなデフォルト設定が最適か、どのように配置するのが最適かといった問題に取り組む必要があることは承知しています。こうした取り組みはすべて、複雑な状況を軽減し、誰もがより早く質の高い答えにたどり着くのに役立つと考えています。
全く同感です。ラス、どうもありがとうございました。今日の話はこれで終わりにしたいと思いますが、これらのトピックについてさらに議論できることを嬉しく思います。
ありがとう。
ありがとう。じゃあね。よかった。