【PaperQA2】科学文献に強いAIエージェントでLLM論文を解説させてみた結果

PaperQA2 AIエージェント LLM論文 解説

2024年9月12日にFutureHouseがPaperQA2を発表しました。

今まで人の手によって行われてきた繊細な情報検索や要約の作業を、高精度で自動化し、生物学の博士号取得者さえも超える精度で情報を抽出、解析し、新たな知見を生み出すことが可能です。

この技術は、論文の全文検索から矛盾点の特定、信頼性の高い要約の生成まで、多岐にわたる機能を提供し、研究者たちの作業効率を飛躍的に向上させるでしょう。

この先進的なツールを使えば、知識の境界を押し広げ、科学的探求の未来を再定義することが可能です。

ぜひ最後までご覧ください!

目次

PaperQA2の概要

PaperQA2はFutureHouseがリリースした、科学論文の情報検索と要約に最適化されたAIエージェントです。これまでも科学論文の情報検索にAIが活用されているサイトはありましたが、AIエージェントはあまりリリースされてきていなかったです。

参考:https://storage.googleapis.com/fh-public/paperqa/Language_Agents_Science.pdf

PaperQA2の特徴は、科学論文からの情報検索において、博士号取得者やポスドクレベルの生物学研究者よりも高い精度を達成したことです。

さらに、PaperQA2の上に構築されたエージェントであるWikiCrowは、科学情報のウィキペディア形式の要約を作成するために用いられた場合、盲検化された博士号取得者やポスドクレベルの生物学研究者の判定によれば、人間が執筆しキュレーションしたウィキペディアの実際の記事よりも平均して正確な要約を作成します。

PaperQA2の優れている点

PaperQA2が我々人間が行うよりも優れていることが3つあります。

  • 論文全体からの情報検索
  • 引用されたWikipediaスタイルの科学的トピックに関する記事の作成
  • 論文内の矛盾の特定

それぞれ詳しく説明します。

論文全体からの情報検索

PaperQA2は、LitQA2と呼ばれる新しいベンチマークで、生物学の博士号取得者または博士課程の学生の成績を上回りました。

このベンチマークは、論文から取得する必要がある回答を含む248の多肢選択問題で構成されており、PaperQA2は、これらの質問に答える際に、平均14.5±0.6の論文を解析および利用しました。

引用されたWikipediaスタイルの科学的トピックに関する記事の作成

PaperQA2の機能を使用して構築されたWikiCrowと呼ばれるシステムは、人間の専門家が書いた既存のWikipediaの記事よりも正確であることが証明された、引用されたWikipediaスタイルの記事生成が可能。

これは、構造や機能、相互作用、臨床的意義などのさまざまな側面をカバーする遺伝子に関する記事を生成することにより評価されました。評価の結果、WikiCrowの記事には、「引用されているが裏付けがない」記述がWikipediaの記事よりも大幅に少なく、事実上より正確であることがわかりました。

論文内の矛盾の特定

PaperQA2は、ContraCrowと呼ばれるシステムの基盤としても機能し、文献内の大規模な矛盾を自動的に検出できます。

ContraCrowは、提供された論文からクレームを抽出し、PaperQA2を使用して文献全体に対する矛盾についてそれらをチェック。ContraCrowは、生物学の論文のランダムなサブセットで、論文ごとに2.34±1.99の矛盾を特定しました。

これらの矛盾の70%は、人間の専門家によって検証されました。これは、人々にとって非常に困難な作業である、科学文献における矛盾の特定において、PaperQA2が優れた能力を発揮することを示しています。

他のAIモデルとの比較

PaperQA2は他のAIモデルと性能を比較しています。

論文内では、PerplexityProやGPT-4oなど有名なAIモデルと比較しており、正確性や精度をそれぞれ見ています。

参考:https://storage.googleapis.com/fh-public/paperqa/Language_Agents_Science.pdf

グラフBはそれぞれのシステムが提示する情報の精度を示しており、PaperQA2は85.2%という驚異的な数字を出しています。その他のAIモデルと比較しても、PaperQA2のスコアが非常に高いことがわかります。

また、その横にあるのがAccurancyで正確さであり、それぞれのシステムがどれくらい正確に情報を提示しているかを示しています。こちらの数値もPaperQA2が最も高い結果となりました。

この二つからもわかるように、PaperQA2は従来のAIモデルに比べて非常に科学論文に対してのやり取りでは非常に高性能であることがわかります。

precisionとaccuracyの違い

precisionもaccuracyも似たような意味に感じますが、定義は異なっています。

precisionはモデルが正しいとしたものが実際に正しかった割合です。つまり、PaperQA2が正しいと判断した回答のうち実際に正しかった割合を算出しており、precisionが高いとPaperQA2が誤って正しいと判定するケースが減ることになります。

一方でaccuracyは、モデルが正しいとした時に実際に正しかったものを正解(True Positives)として、True Negativesは正しくないとモデルが判断した時に、実際に正しくなかった時を指します。この両者を全てのテストケースで割ることでaccuracyは算出されます。accuracyが低いとそのモデルが正しい答えを見逃してしまうもしくは誤って間違いと判断する可能性があります。

PaperQA2と人間の比較

PaperQA2は人が行うのと比較も行っています。

左から質疑応答です。質疑応答では、PaperQA2は85.2%の精度で質問に答えており、これは人間の64.2%よりも高い精度を示しています。

次が要約です。WikiCrowと呼ばれるPaperQA2に基づいて構築されたエージェントと、人間による要約の精度を比較した結果、WikiCrowは86.1%の精度で、人間の71.2%よりも高い精度を示しています。

最後に論文内の矛盾をどれだけ見つけれられるか、という点です。ContraCrowと呼ばれる別のエージェントと、人間による検証されたデータを比較。ContraCrowは平均でペーパーに2.34の矛盾を検出しており、これは人が矛盾点を指摘した1.64よりも多くの矛盾を見つけています。

参考:https://www.futurehouse.org/research-announcements/wikicrow

PaperQA2のライセンス

PaperQa2のライセンスはApache2.0なので、基本的には商用利用や私的利用などが可能です。

配布も可能ですが、配布する場合には、ライセンスのコピーを同封すること、変更を加えた場合は、変更したことを明記すること、元の著作権表示、特許表示、商標表示を保持することが義務付けられています。

利用用途可否
商用利用
改変⭕️
配布⭕️
特許使用
私的使用⭕️
参考:https://github.com/Future-House/paper-qa/blob/main/LICENSE

なお、SakanaAIのわずか15ドルでアイデア生成、実験、論文執筆をしてくれるAIについて詳しく知りたい方は、下記の記事を合わせてご確認ください。

あわせて読みたい
【AI-Scientists】SakanaAIのわずか15ドルでアイデア生成、実験、論文執筆をしてくれるAIを徹底解説 【AIが研究・論文執筆を自動で行う!?】 AI-Scientistsがついに人間を超える...? AI-Scientistsは2024/8/13に、Sakana AIが公開したAIモデルを使った研究論文執筆・査...

PaperQA2の使い方

PaperQA2を実際に使用していきますが、今回はgoogle colaboratoryを使って実装していきます。

PaperQA2をgoogle colaboratoryで使う方法

PaperQA2はGPUを使わないため、google colaboratoryの無料プランで実装できます。

しかし、OpenAIなどのAPIキーは必要になりますので、まだAPIキーを持っていない方は、先にAPIキーを取得しておきましょう。

■Pythonのバージョン
Python 3.11以上

■使用ディスク量
33.3GB

■システムRAMの使用量
1.7GB

PaperQA2を使用するためには、Python3.11以上である必要があるため、まずはPythonのアップグレードをしておきましょう。

Pythonバージョンのアップグレードはこちら
!sudo apt-get update
!sudo apt-get install python3.11
!sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.11 1
!sudo apt-get install python3.11-distutils
!python3 -m pip install --upgrade pip
pipのインストールはこちら
!sudo apt-get install python3.11-distutils
!wget https://bootstrap.pypa.io/get-pip.py
!python3.11 get-pip.py
Paper-qaのインストールはこちら
!python3.11 -m pip install paper-qa
APIキーを環境変数に設定するのはこちら
import os
os.environ["OPENAI_API_KEY"] = "your_api_key"
サンプルコードはこちら
import subprocess

code = """
import asyncio
from paperqa import Docs

async def main():
    doc_paths = [".pdf"]
    docs = Docs()

    for doc in doc_paths:
        await docs.aadd(doc)  # 非同期で文書を追加

    answer = await docs.aquery("What makes this paper different from previous papers?")
    print(answer.formatted_answer)

# 非同期のmain関数を実行
asyncio.run(main())
"""

# Python 3.11を使ってコードを実行
with open("async_script.py", "w") as f:
    f.write(code)

!python3.11 async_script.py

google colaboratoryは元々がPython3.10で実行されるのですが、Python3.11にバージョンアップしてもPython3.10で実行されてしまうようで、Python3.11を使うよ、と明示的に指示を与えないとエラーになってしまいます。

そのため、普段のコーディングとは異なるかもしれませんが、上記のコードを使えばgoogle colaboratoryで実行可能です。

特に「!pip install paper-qa」はエラーになりますし、うまくいったと思ってもサンプルコードをPython3.11を使うと明示的にしないとpaper-qaがインストールされていない、というエラーも出てしまいます。

PaperQA2検証

サンプルコードでは、非常に簡単な内容しか実行していません。ここでは、PaperQA2の性能を測るために、どのくらいのことができるのかLLMに関する専門的な質問をして性能を検証していきたいと思います。

今回使用する論文はこちらです

From Yes-Men to Truth-Tellers: Addressing Sycophancy in Large Language Models with Pinpoint Tuning

質問1.SPTはLLMの特定のモジュールに対してのみ微調整を行う方法で、sycophancyを効果的に軽減しながら一般能力に影響を与えないことが主張されていますが、このアプローチの限界として考えられる点は何でしょうか?例えば、どのようなシナリオでこのアプローチがうまく機能しない可能性があるか。
英訳:SPT is a method of fine-tuning only for specific modules of the LLM and is claimed to effectively reduce sycophancy while not affecting general capacity, but what are some possible limitations of this approach? For example, in what scenarios might this approach not work well?

質問2.SPTは他のパラメーター効率の良いファインチューニング手法(PEFT)と比較されていますが、他のPEFTメソッド(例えばLoRA)と比べた際の優位性や、逆に劣る点は何ですか?特に、モデルの能力保持とsycophancyの軽減のバランスに関して、どのようなトレードオフがあるのか。
英訳:SPT has been compared to other parameter efficient fine tuning methods (PEFT), what are its advantages over other PEFT methods (e.g. LoRA) and conversely what are its disadvantages? In particular, what are the trade-offs with respect to the balance between retaining model competence and reducing sycophancy?

質問3.SPTはsycophancyEvalベンチマークでの効果が確認されていますが、訓練セット以外での一般化能力はどの程度でしょうか?異なるタスクや異なるデータセットでの適用可能性や、モデルのスケーリングに伴うsycophancyの増加が懸念される状況での効果は?
英訳:SPT has been shown to be effective on the sycophancyEval benchmark, but what is its generalization ability outside of the training set? What is its applicability to different tasks and different datasets, and how effective is it in situations where there is concern about increasing sycophancy due to model scaling?

質問1の回答はこちら
Selective Pinpoint Tuning (SPT) is a method designed to reduce sycophancy in large language models (LLMs) by fine-tuning only specific modules, such as attention heads, while preserving the model's general capabilities. However, several limitations have been identified in this approach.

Firstly, SPT may not fully capture the semantics of deep neural networks, as it treats each multi-layer perceptron (MLP) and attention head as individual nodes. This approach might overlook the complex interactions within the network, suggesting that future work should consider treating hidden neurons or groups of neurons as atomic units (chen2024fromyesmento pages 9-9).

Secondly, the effectiveness of SPT is contingent upon accurately identifying and tuning the critical components. If sycophantic behavior is not isolated to the selected attention heads, or if the frozen parameters inadvertently contribute to sycophancy, the method may not work well (chen2024fromyesmento pages 5-5).

Additionally, SPT's sycophancy evaluation is based on a specific definition, raising concerns about the generalizability of its results to other formats. Few-shot prompting does not enhance sycophancy reduction, indicating limitations in its applicability across different scenarios (chen2024fromyesmento pages 9-9). Furthermore, SPT may not be as effective as other methods, such as LoRA, in scenarios requiring comprehensive tuning (chen2024fromyesmento pages 8-9).

和訳:選択的ピンポイント調整(Selective Pinpoint Tuning: SPT)は、モデルの一般的な能力を維持したまま、アテンションヘッドなどの特定のモジュールだけを微調整することで、大規模言語モデル(LLM)のおべんちゃらを減らすように設計された手法である。しかし、この手法にはいくつかの限界がある。

第一に、SPTは各多層パーセプトロン(MLP)とアテンションヘッドを個別のノードとして扱うため、ディープニューラルネットワークのセマンティクスを完全に捕捉できない可能性がある。このアプローチはネットワーク内の複雑な相互作用を見落とす可能性があり、将来の研究では隠れニューロンやニューロン群を原子単位として扱うことを検討すべきことを示唆している(chen2024fromyesmento page 9-9)。

第二に、SPTの有効性は、重要な構成要素を正確に特定し、チューニングすることが条件となる。もしおべっか行動が選択された注意の頭部に分離されていなかったり、凍結されたパラメータが不注意におべっかを助長していたりすると、この方法はうまく機能しないかもしれない(chen2024fromyesmento 5-5ページ)。

さらに、SPTのおべんちゃら評価は特定の定義に基づいているため、その結果の他のフォーマットへの一般化可能性に懸念が生じる。数発のプロンプトでは、おべっかの減少を高めることはできず、異なるシナリオでの適用には限界があることを示している(chen2024fromyesmento 9-9ページ)。さらに、SPTは、包括的なチューニングを必要とするシナリオでは、LoRAのような他の手法ほど効果的ではない可能性がある(chen2024fromyesmento 8-9ページ)。
質問2の回答はこちら

Selective Pinpoint Tuning (SPT) offers several advantages over other Parameter Efficient Fine Tuning (PEFT) methods like LoRA. SPT effectively balances model competence while reducing sycophancy, achieving a notable improvement in accuracy on tasks such as GSM8K, where it increases accuracy from 25.32% (with Standard Fine-Tuning, SFT) to 35.48%, surpassing the original model's 33.89% (chen2024fromyesmento pages 8-9). Although LoRA achieves a higher accuracy of 37.91%, it performs worse on Confidence/Truthfulness metrics compared to SPT, indicating SPT's superior ability to maintain model integrity while reducing sycophancy (chen2024fromyesmento pages 8-9).

SPT also demonstrates a lower increase in KL divergence compared to SFT, indicating minimal distribution deviation and effective cross-dataset transferability (chen2024fromyesmento pages 8-8, 2-3). However, a disadvantage of SPT is that while it maintains general abilities with little loss, it may not achieve the highest possible accuracy compared to methods like LoRA (chen2024fromyesmento pages 8-9).

The trade-off with SPT involves a balance between retaining model competence and reducing sycophancy. SPT reduces the impact of sycophancy-related attention heads significantly, but when combined with LoRA, it achieves the highest sycophancy evaluation score, suggesting that integration with other methods can enhance its effectiveness (chen2024fromyesmento pages 8-9).

和訳:選択的ピンポイントチューニング(SPT)は、LoRAのような他のパラメータ効率的ファインチューニング(PEFT)手法と比較して、いくつかの利点を提供します。SPTはモデルの能力を効果的にバランスさせながら、お人好しを減らし、GSM8Kのようなタスクで精度の顕著な改善を達成し、精度を25.32%(Standard Fine-Tuning、SFTの場合)から35.48%に向上させ、オリジナルモデルの33.89%を上回ります(chen2024fromyesmento 8-9ページ)。LoRAは37.91%という高い精度を達成しているが、SPTと比較してConfidence/Truthfulnessメトリクスでは悪い結果となっており、SPTがおべんちゃらを減らしながらモデルの完全性を維持する能力に優れていることを示している(chen2024fromyesmento 8-9ページ)。

SPTはまた、SFTと比較してKLダイバージェンスの増加が少ないことを示し、分布偏差が最小であり、データセット間の効果的な移植性を示しています(chen2024fromyesmento 8-8、2-3ページ)。しかし、SPTの欠点は、一般的な能力をほとんど損なわずに維持できる一方で、LoRAのような手法と比較して、可能な限り高い精度を達成できない可能性があることです(chen2024fromyesmento 8-9ページ)。

SPTのトレードオフには、モデルの能力を維持することと、おべっかを減らすことのバランスが含まれる。SPTは、おべっかに関連する注意頭の影響を大幅に減少させるが、LoRAと組み合わせると、最も高いおべっか評価スコアを達成することから、他の手法と統合することで、その効果を高めることができることが示唆される(chen2024fromyesmento 8-9ページ)。
質問3の回答はこちら
Selective Pinpoint Tuning (SPT) demonstrates strong generalization abilities beyond its training set, as evidenced by its performance on various benchmarks, including the Sycophancy Evaluation Datasets. SPT achieves an average score of 81.29 on these datasets, which include tasks such as NLP, PHIL, and POLI, indicating its effectiveness across different domains (chen2024fromyesmento pages 9-9). Furthermore, SPT improves accuracy on the GSM8K dataset from 33.89% to 35.48%, surpassing the original model and showcasing its applicability to different tasks and datasets (chen2024fromyesmento pages 8-9).

SPT is particularly effective in reducing sycophancy, a behavior where models tend to agree with user opinions, without compromising general abilities. It maintains performance in areas such as arithmetic reasoning and code generation, unlike standard fine-tuning methods that may degrade these capabilities (chen2024fromyesmento pages 2-3). The method is validated across various model architectures, including Mistral-7B and the Llama-2 series, demonstrating its cross-architecture applicability (chen2024fromyesmento pages 8-9).

In situations where model scaling could increase sycophancy, SPT remains effective. It consistently outperforms Supervised Fine-Tuning (SFT) on sycophancy metrics, with notable improvements in confidence and truthfulness, particularly in larger models like the Llama-2 series (chen2024fromyesmento pages 19-20).

和訳:選択的ピンポイント調整(Selective Pinpoint Tuning: SPT)は、Sycophancy Evaluation Datasetsを含む様々なベンチマークでの性能から明らかなように、訓練セットを超えた強力な汎化能力を示す。SPTは、NLP、PHIL、POLIなどのタスクを含むこれらのデータセットで平均スコア81.29を達成し、異なるドメインにわたって有効であることを示している(chen2024fromyesmento pages 9-9)。さらに、SPTはGSM8Kデータセットの精度を33.89%から35.48%に向上させ、オリジナルモデルを上回り、異なるタスクやデータセットへの適用性を示している(chen2024fromyesmento 8-9ページ)。

SPTは、一般的な能力を損なうことなく、モデルがユーザーの意見に同調しがちな振る舞いであるおべっか使いを減らすのに特に効果的である。これらの能力を低下させる可能性のある標準的な微調整手法とは異なり、算術推論やコード生成などの分野で性能を維持することができる(chen2024fromyesmentoページ2-3)。この手法は、Mistral-7BやLlama-2シリーズを含む様々なモデル・アーキテクチャで検証されており、アーキテクチャ横断的な適用性が実証されている(chen2024fromyesmento 8-9ページ)。

モデルのスケーリングによっておべんちゃらが増えるような状況でも、SPTは効果的であり続ける。特にLlama-2シリーズのような大きなモデルでは、信頼性と真実性が顕著に改善され、おべんちゃらメトリクスにおいてSFT(Supervised Fine-Tuning)を常に上回っています(chen2024fromyesmento 19-20ページ)。

かなり専門的な内容を質問していますが、正確な回答をしており、その論文のどこにその内容が書かれているのかの根拠も提示してくれています。日本語で質問もしていますが、質問が日本語でも回答は英語になります。

PaperQA2が論文の要約をしてくれたり、重要な論文を見つけてくれる、論文内の矛盾点を指摘してくれるなどを高い精度で実施してくれると、我々人間がこれまで行なっていた作業量が大幅に減ることになります。

特にSemantic ScholarのAPIを使うことで、論文検索も可能になるため、かなりの効率化を図ることができるようになるでしょう。

なお、洗練されたUIのオープンRAGシステムで論文PDFを解説してくれるkotaemonについて詳しく知りたい方は、下記の記事を合わせてご確認ください。

WEEL
【kotaemon】洗練されたUIのオープンRAGシステム!論文PDFをアップロードして分かりやすく解説させてみた |... kotaemonの概要 Kotaemonaはドキュメントとチャットでやりとりができる、カスタマイズ可能なオープンソースのRAG UIです。開発者だけではなく、エンドユーザーについても念...

最後に

いかがだったでしょうか?

弊社では

・マーケティングやエンジニアリングなどの専門知識を学習させたAI社員の開発
・要件定義・業務フロー作成を80%自動化できる自律型AIエージェントの開発
・生成AIとRPAを組み合わせた業務自動化ツールの開発
・社内人事業務を99%自動化できるAIツールの開発
ハルシネーション対策AIツールの開発
自社専用のAIチャットボットの開発

などの開発実績がございます。

まずは、「無料相談」にてご相談を承っておりますので、ご興味がある方はぜひご連絡ください。

➡︎生成AIを使った業務効率化、生成AIツールの開発について相談をしてみる。

生成AIを社内で活用していきたい方へ
無料相談

「生成AIを社内で活用したい」「生成AIの事業をやっていきたい」という方に向けて、生成AI社内セミナー・勉強会をさせていただいております。

セミナー内容や料金については、ご相談ください。

また、サービス紹介資料もご用意しておりますので、併せてご確認ください。

投稿者

  • 翔平

    総合病院で10年間理学療法士として勤務し、その後Pythonを独学で学びデータアナリストとして転職。趣味はキックボクシング

  • URLをコピーしました!
  • URLをコピーしました!
目次