見出し画像

【LLaVA 1.5】オープンソース版GPT4-Vの使い方~比較レビューまで

皆さんは、LLaVA-1.5という大規模マルチモーダルモデル(LMM)をご存じですか?

このLLMは、既存のLLMをベースに画像入力を理解する能力を持たせて、より強力にしたLMMなんです。

公開されたGithubのスター数は5,000を超えており、高い注目を浴びていることが伺えますね!

今回は、LLaVA-1.5の概要や使い方、実際に使ってみた感想をお伝えします。

是非最後までご覧ください!

LLaVA-1.5の概要

LLaVAは、GPT-4レベルの能力を持つ大規模な言語とビジョンモデルを構築するために開発が進められている大規模マルチモーダルモデル(LMM)です。

最新版ではLlama2をベースにしており、視覚エンコーダを組み合わせて画像入力の理解能力を付与し、それに基づいて適切な応答やアクションを生成できます。

そんなLLaVAの特徴は以下の4つです。

ビジュアルインストラクションチューニング:LLaVAは「ビジュアルインストラクションチューニング」という技術を使用しています。これにより、視覚的な情報とテキスト情報の両方を組み合わせて、より正確で具体的なタスクを実行できます。

チューニング:人間のフィードバックを基にした強化学習を使用して、事実に基づいた回答を提供し、誤った情報を出力させないようにトレーニングされています。

高い柔軟性:さまざまなタスクやシナリオに適応する能力を持っており、ユーザーは特定の問題や要求に対してモデルをカスタマイズして使用できます。

公開データの利用:最新モデルであるLLaVA-1.5は、公開データを全て使用してトレーニングされており、標準的なハードウェア環境でも短時間でトレーニングを完了できます。

最新モデルのLLaVA-1.5は、Llama2をベースに、視覚エンコーダのCLIP ViT-L/14を組み合わせた、大規模マルチモーダルモデル(LMM)になっています。

Llama2をベースにすることで、より強力な言語能力とより長いコンテキストウィンドウを獲得し、より幅広い範囲で活用できるようになっています。

ここからは、公開されている情報をもとに、最新版のLLaVA-1.5の性能について見ていきましょう。

LLaVA-1.5の性能

まずは、他の画像言語モデルとのベンチマークスコアの比較結果を表したグラフをご覧ください。


これを見ると、LLaVA-1.5はどのベンチマークでも一貫して高いスコアを出しており、他のモデルと比較しても高い性能を有していることが分かります。

次に、トリッキーな質問に対する返答の比較をした結果です。


ここでは、GPT-4VとLLaVAとLLaVA-1.5が比較されており、ユーザーが画像とともに「If there are factual errors in the questions, point it out;
if not, proceed answering the question. What’s happening in the desert?(和訳:質問に事実誤認があれば指摘する;
そうでなければ、質問に答えなさい。砂漠で何が起きていますか?)」
と入力しています。

GPT-4Vは、「どの砂漠を指しているのか文脈から分からないので、質問には答えられません」と回答しており、事実誤認を指摘してはいないので、意図した回答ではない気がします。

LLaVAは、この画像の詳細と、砂漠の中にビーチがあると答えており、全く意図しない誤った回答をしています。
LLaVA-1.5は、画像に砂漠はないと前置きしたうえで、画像の詳細を回答しており、一番ユーザーが意図していたものに近い回答になっています。

GPT-4Vより正確に質問を捉えて、答えられているのですごいですよね!

この結果から、LLaVA-1.5はトリッキーな質問にも柔軟に対応して答えることができることが分かります。

ここまでは、公開されている情報をもとに性能を紹介してきましたが、ここからは実際に使ってみて、その性能を確かめていこうと思います!
まずは導入方法から説明します。

LLaVAと同じLMMである、NExT-GPTが気になる方は、以下の記事をご覧ください。

【NExT-GPT】テキスト、画像、ビデオ、音声、全部対応できるLLM(大規模言語モデル)が登場

LLaVA-1.5の導入方法

まず、ローカルにインストールする方法も説明します。

以下のコードを実行してGithubのリポジトリをクローンし、LLaVAのフォルダに移動してください。

git clone https://github.com/haotian-liu/LLaVA.git
cd LLaVA

次に、必要なパッケージのインストールを行います。

pip install -e .

最後に、トレーニングケース用追加パッケージのインストールを行います。

pip install ninja
pip install flash-attn --no-build-isolation

これでLLaVAに必要なパッケージのインストールが完了したので、CLIを使って動かします。

以下のコードを入力してください。

python -m llava.serve.cli \
    --model-path liuhaotian/LLaVA-Lightning-MPT-7B-preview \
    --image-file "https://llava-vl.github.io/static/images/view.jpg" \
    --load-4bit

これを実行すると、モデルとチェックポイントのダウンロードが自動で行われ、プロンプトが入力できるようになるので、任意のものを入力すると、image-fileで入力した画像の説明が出力されます。

これで導入は完了ですが、公式からweb上で動くものが提供されているので、独自にチューニングしたりする予定のない方は、そちらを使った方が簡単に試すことができます。

以下のリンクからアクセスできますので、気になった方はアクセスして試してみてください。
LLaVA: Large Language and Vision Assistant

今回は、こちらのサイトで実際に使ってみようと思います。

LLaVA-1.5を実際に使ってみた

前述したリンクにアクセスすると、以下のような画面になります。


非常に分かりやすいUIでいいですね!

Examplesがあったので、試しに選択してみました。


画像とテキストの両方の入力を正確に理解して回答しているのが分かりますね!

LLaVA-1.5が使用できることが分かったので、ここからはGPT-4Vと比較してどの程度の出力をしてくれるのか実際に使って検証していきます。

LLaVA-1.5の押しポイントである正確な理解と出力は本当なのか?

まずは、筆者がNExT-GPTというLMMで生成した以下の画像を入力し、「この画像について説明してください」と指示してみた結果です。


GPT-4V


この画像は、道路の上に立っているロボットのようなキャラクターを示しています。
このキャラクターは大きな目と笑顔を持ち、頭部はヘルメットのようなデザインです。
ロボットの胴体は赤い箱の形をしており、顔のようなデザインが描かれています。
背景には道路と、道の脇に並ぶ黄色い物体が見えます。
全体的に明るく楽しい雰囲気の画像です。

自然な日本語で、正確で詳細な画像の説明が出力され、特に間違った情報は見当たりません。さすがGPT-4Vですね!

LLaVA-1.5


The image features a robot holding a square with a smiley face on it.
The robot is standing on a sidewalk, and the square appears to be a sign or a symbol. 
The robot is positioned in the center of the scene, with the square held in front of it.

In the background, there are several potted plants placed at various locations, adding a touch of greenery to the scene. 
The potted plants are of different sizes and are scattered around the area, creating a pleasant atmosphere.

日本語には対応していないかと思いましたが、どうやら入力には対応しているようです。日本語で指示を出したところ、ちゃんとした出力をしてくれました。

内容はほとんど正確ですが、背景の説明が少し微妙で、GPT-4Vの方がより正確に説明していると感じました。

次は、人間でも説明するのが難しいような以下の複雑な画像を入力し、「この画像について説明してください」と指示してみます。

GPT-4V

この画像は、抽象的で未来的なデザインのビジュアルを示しています。
黒い背景の上に、グレーの幾何学的な構造が複雑に絡み合っており、中心には白い輝く球体が配置されています。
構造の一部やその周辺には、ピンク色の光線やハイライトが点在していて、動きやエネルギーを感じさせるデザインになっています。
このビジュアルは、デジタルな空間やサイバースペース、バーチャルリアルティを連想させるようなデザインとなっています。

とても具体的で、正確に画像を理解して説明してくれています。ピンクの光線のようなものまで把握できており、動きやエネルギーを感じるとまで言っており、本当に人間のような回答です。

LLaVA-1.5

この画像は、破損したガラスのような構造を持つ、抽象的な構成の作品です。
中心には、明るい光が透過しており、その周りには、様々な形状と色の破片が散らばっています。
これらの破片は、破損したガラスのように見えるため、視覚的には破損したガラスのように感じられます。

この作品は、破損したガラスのような構造を持つことで、視覚的な衝撃を与えることを目的としています。
また、様々な形状と色の破片が散らばっていることで、視覚的な複雑さを表現しています

なんとこちらは日本語で出力してくれました。自然な日本語なので、なぜ先ほどは日本語で出力してくれなかったのか謎です。

画像に写っている物体を、破損したガラスのような構造を持つ抽象的な構成の作品と説明しており、見方によってはそのように見えるため、誤った説明ではありません。

所々、2重に説明してしまっている部分もあり、GPT-4Vほど正確で詳細な説明ではないです。

比較結果としては、GPT-4Vには多少劣る結果となりましたが、十分正確な説明をしてくれています。

モデルサイズなどが全然違うのに、ここまでいい勝負をするLLaVA-1.5には驚きました。
今後さらに開発が進み、GPT-4Vを超える性能を持つ日もそう遠くないかもしれません!

今回比較対象にした、GPT-4Vについて詳しく知りたい方は、以下の記事をご覧ください。

【GPT-4V】ChatGPTがマルチモーダル対応!何がすごいかを徹底解説

LLaVAのこれからに期待!

LLaVAは、GPT-4レベルの能力を持つ大規模な言語とビジョンモデルを構築するために開発が進められているLMMで、最新版のLLaVA-1.5はLlama2をベースに、視覚エンコーダを組み合わせて画像入力の理解能力を付与し、それに基づいて適切な応答やアクションを生成できます。

LLaVA-1.5はweb上で簡単に実行することができるほか、ローカルにインストールして自分好みにチューニングすることもできます。

GPT-4Vとの比較では、正確性で多少劣るものの十分正確な説明をしてくれて、モデルサイズの違いを考えれば、ここまでGPT-4Vと張り合えるのはすごいことだと思います。

LLaVAはまだ研究段階であり、今後さらに強力なモデルが公開されるそうなので、期待して待ちましょう!

弊社では、最新の生成AIツール・オープンソースのハンズオンを日本最速で記事化しています。

他の記事もご覧になりたい方は、こちらをご覧ください。

この記事が気に入ったらサポートをしてみませんか?