Science/Research 詳細

MIT、データベースにジェネレイティブAIを導入

July, 24, 2024, Cambridge--MITの研究者によると、新しいツールにより、データベースユーザは、舞台裏で何が起こっているかを知ることなく、表形式のデータの複雑な統計分析を簡単に実行できる。

データベース用のジェネレイティブ(生成)AIシステムであるGenSQLは、ユーザがわずか数回のキーストロークで予測、異常の検出、欠損値の推測、エラーの修正、合成データの生成を行うのに役立つ。

たとえば、常に高血圧を患っている患者の医療データを分析するためにシステムを使用した場合、その特定の患者に対しては低いが、それ以外は正常範囲内にある血圧測定値をキャッチできる。

GenSQLは、表形式のデータセットと生成確率的AIモデルを自動的に統合し、不確実性を考慮し、新しいデータに基づいて意思決定を調整することができる。

さらに、GenSQLを使用して、データベース内の実際のデータを模倣した合成データを生成および分析できる。これは、患者の健康記録など、機密データを共有できない状況や、実際のデータがまばらな場合に特に役立つ。

この新しいツールは、1970年代後半に導入され、世界中の何百万人もの開発者によって使用されているデータベースの作成および操作のためのプログラミング言語であるSQLの上に構築されている。

「歴史的に見ると、SQLはビジネスの世界にコンピュータで何ができるかを教えてくれた。カスタムプログラムを書く必要はなく、高水準言語でデータベースに関する質問をするだけでよかった。単にデータを照会するだけでなく、モデルやデータに関する質問をするようになると、データの確率モデルを持つコンピュータに尋ねることができる首尾一貫した質問を人々に教える類似の言語が必要になると考えている」と、GenSQL を導入した論文の主任著者であり、MIT脳と認知科学学部の確率論的コンピューティング プロジェクトの主任研究員兼リーダ、 Vikash Mansinghka ’05、MEng ’09、PhD ’09 は話している。

研究者がGenSQLを一般的なAIベースのデータ分析アプローチと比較したところ、GenSQLの方が高速であるだけでなく、より正確な結果が得られることがわかった。重要なのは、GenSQLで使用される確率モデルは説明可能であるため、ユーザはそれらを読み取って編集できることである。

「データを見て、単純な統計ルールだけで意味のあるパタンを見つけようとすると、重要な相互作用を見逃す可能性がある。変数の相関関係と依存関係は、非常に複雑になりがちだが、モデルに取り込む必要がある。GenSQLでは、多くのユーザがすべての詳細を知らなくてもデータやモデルを質問できるようにしたいと考えている」と、脳・認知科学科の研究者であり、確率論的コンピューティングプロジェクトのメンバー、筆頭著者のMathieu Huotは付け加えている。

この研究は、ACM Conference on Programming Language Design and Implementationで最近発表された。

モデルとデータベースの組み合わせ
SQLは、構造化クエリ言語(QL)の略で、データベースに情報を保存および操作するためのプログラミング言語。SQLでは、データベースレコードを合計、フィルタリング、グループ化するなど、キーワードを使用してデータに関する質問をすることができる。

ただし、モデルはデータが個人にとって何を意味するかをキャプチャできるため、モデルにクエリ(query)を実行することで、より深い分析情報を提供できる。たとえば、自分は低賃金ではないかと悩んでいる女性開発者は、データベース レコードの傾向よりも、給与データが自分個人にとってどのような意味を持つかに関心がある可能性がある。

研究チームは、SQLが確率的AIモデルを組み込む効果的な方法を提供していないことに気づいたが、同時に、確率的モデルを使用して推論を行うアプローチは、複雑なデータベースクエリをサポートしていない。

研究チームは、このギャップを埋めるために GenSQL を構築し、単純でありながら強力な形式プログラミング言語を使用して、データセットと確率モデルの両方をクエリできるようにした。

GenSQLユーザがデータと確率モデルをアップロードすると、システムが自動的に統合される。その後、バックグラウンドで実行されている確率モデルからの入力も取得するデータに対してクエリを実行できる。これにより、より複雑なクエリが可能になるだけでなく、より正確な回答を提供することもできる。

たとえば、GenSQL のクエリは、「シアトルの開発者がプログラミング言語 Rust を知っている可能性はどれくらいあか?」というようなものである。データベース内の列間の相関関係を確認するだけでは、微妙な依存関係を見逃す可能性がある。確率モデルを組み込むことで、より複雑な相互作用を捉えることができる。

さらに、GenSQL が利用する確率モデルは監査可能であるため、モデルが意思決定にどのデータを使用しているかを確認できる。さらに、これらのモデルは、各回答とともにキャリブレーションされた不確実性の尺度を提供する。

たとえば、この調整された不確実性を使用して、データセットで過小評価されているマイノリティグループの患者について、様々なガン治療の予測結果をモデルに照会すると、GenSQLは、自信過剰に間違った治療法を提唱するのではなく、不確実であることと、それがどれほど不確実であるかをユーザに伝える。

より速く、より正確な結果
GenSQLを評価するために、研究チームは彼らのシステムをニューラルネットワークを使用する一般的なベースライン手法と比較した。GenSQL は、これらのアプローチよりも 1.7 倍から 6.8 倍高速で、ほとんどのクエリを数ミリ秒で実行し、より正確な結果を提供した。

また、GenSQLを2つのケーススタディに適用し、1つは誤ってラベル付けされた臨床試験データを特定したケーススタディ、もう1つはゲノミクスの複雑な関係を捉えた正確な合成データを生成したケーススタディ。

次に、チームは、GenSQLをより広く適用して、人間集団の大規模なモデリングを行いたいと考えている。GenSQLを使用すると、合成データを生成して、分析に使用する情報を制御しながら、健康や給与などに関する推論を導き出すことができる。

また、システムに新しい最適化と自動化を追加することで、GenSQLをより使いやすく、より強力にしたいと考えている。長期的には、研究チームは、ユーザがGenSQLで自然言語クエリを作成できるようにしたいと考えている。チームの目標は、最終的に、GenSQLクエリを使用して答えを導き出す、あらゆるデータベースについて話せるChatGPTのようなAI専門家を開発することである。

この研究の一部は、国防高等研究計画局(DARPA)、Google、Siegel Family Foundationから資金提供を受けている。