Slide 1

Slide 1 text

  https://www.academix.jp/ AcademiX 論文輪読会 SQL-PALM: IMPROVED LARGE LANGUAGE MODEL ADAPTATION FOR TEXT-TO-SQL Kimoto Haruhisa 2023/11/19

Slide 2

Slide 2 text

目次 1. 論文の概要 2. Text-to-SQL 3. 関連研究 4. 核となる手法  5. 結果 6. 考察・感想 7. まとめ

Slide 3

Slide 3 text

論文の概要 ● タイトル:SQL-PALM: IMPROVED LARGE LANGUAGE MODEL ADAPTATION FOR TEXT-TO-SQL ● URL:https://arxiv.org/pdf/2306.00739.pdf ● 提案手法:SQL-PaLM:PaLM-2を使用した、Text-to-SQLのモデル ○ ファインチューニングを行った場合と、few-shotを使用した場合を比較している。 ○ LLMをTexrt-to-SQLタスクに対して、ファインチューニングした初の研究。

Slide 4

Slide 4 text

Text-to-SQL ● 自然言語からSQLを生成するプロセスを自動化したい。 ● SQLを知らなくても、データベースを扱うことができる。 ● クエリ生成を自動化することで、Text-to-SQLは高度なデータ分析機能を持つ会話型エージェ ントの開発を可能にする!

Slide 5

Slide 5 text

Text-to-SQL関連研究 ● T5などの言語モデルをファインチューニング ○ PICARD、RASAT、RESDSQL ● LLMで、zero-shotやfew-shotで生成した場合でも、ある程度はうまくいっている。 ○ 上記のT5をファインチューニングしたものと比べると劣る ● LLMを用いて様々な工夫を行うことでSOTAを上回る。 ○ DIN-SQL ○ few-shot、サブタスクに分解をして生成、プロンプトにエラーメッセージを使用 ○ プロンプトのテンプレートを作成することは手間がかかる。

Slide 6

Slide 6 text

核となる手法  ● Few-shot SQL-PaLM ○ 「DBの情報+質問+SQL」を生成したいSQLの前に置く。 ○ データベースの情報は、テーブル・カラム・データタイプ・主キー・外部キー ○ self-consistency(自己整合性)を適用する。 ● Fine-tuned SQL-PaLM ○ PaLM-2をSpiderを使用してファインチューニングする。 ■ Spider:166のDBの7000の学習サンプルと、20のDBの1034の評価サンプル ○ 入力はDBの説明と質問 ○ 出力はSQL

Slide 7

Slide 7 text

結果 評価: ● execution accuracy (EX) ○ 実行結果がground truthに一致するか ● test-suite accuracy (TS) ○ TSを使用 結果: ● few shot SQL-PaLMは、 ○ few shot GPT-4を9.9% ○ few shot CodeX-Davinciを15.8% ○ zero shot ChatGPTを17% 上回った。 ● Fine-tuned SQL-PaLMはFew-shot SQL-PaLMより1%上回った。

Slide 8

Slide 8 text

考察・感想 ● Few-shotでのDBの情報を入れる部分は以前として手間がかかりそう ● さらに精度が上がれば、データ分析の必須技術? ○ SQLやDBが全くわからなくてもデータをいじれる ● すでにAWSのツールではそれっぽいものがある ○ 自然言語からグラフを作成する

Slide 9

Slide 9 text

まとめ ● LLMベースのText-to-SQLモデルSQL-PaLM ○ few shot SQL-PaLMとfine-tuned SQL-PaLMを検証 ● ファインチューニングされた SQL-PaLMと同様に、Few-shot SQL-PaLMは従来のfine-tunedベースの SOTAを3.1%上回った。 ● few shot SQL-PaLMは、 ○ few shot GPT-4を9.9% ○ few shot CodeX-Davinciを15.8% ○ zero shot ChatGPTを17% 上回った。 ● Fine-tuned SQL-PaLMでは,精度はFew-shot SQL-PaLMよりもさらに1%優れている。 ● SQL-PaLMと同様に、SQL-PaLMの生成能力を向上させることができる。 ○ SQL-PaLMは複数のテーブルを結合する複雑な SQL-PaLMは複数のテーブルを複数のキー ワードで結合する複雑な SQL出力を生成できる。