ラズパイでLLMエッジ入門 写真ナレータの製作


複合データを言語化 マルチモーダルLLM

写真を説明するラズパイ・ナレータの製作

図1 画像やテキストといった複数のモーダル・データを処理するマルチモーダルLLMをラズベリーパイに実装して画像ナレータを製作してみた画像クリックで動画を見る.または記事を読む.[提供・著]井上 祐寛
詳細[VOD/Pi5 KIT/data]大規模言語モデルLLMによる生成AIプログラミング入門

ラズパイとLLMによるエッジ処理の進化

ラズベリー・パイのような低コストで高性能なエッジ・デバイスが,機械学習や人工知能(AI)を活用したアプリケーションの開発において注目されています.その中でも,大規模言語モデル(LLM:Large Language Model)の導入により,画像やテキストといった複数のモーダル・データを処理する「マルチモーダル」対応技術が急速に進化しています.

マルチモーダル対応のLLMでは,例えば画像を入力として与えることで,その内容をテキストで説明することが可能です.これは,視覚情報を言語情報に変換するプロセスを効率的に実現し,画像解析や自然言語生成の領域で画期的な応用を可能にします.

画像解析と説明生成の連携

Pythonスクリプトで画像説明を生成する簡単な手順を示します.

  1. 画像の準備
    解析対象となる画像を用意します.例として,`image1.jpg`というファイルを指定します
  2. モデルの実行
    LLMをラズパイ上で動作させる環境を整備します.この際,仮想環境(venv)を活用して依存関係を管理すると便利です
  3. 結果の取得
    モデルに画像を入力すると,その内容を自然言語で説明するテキストが出力されます

具体例では,白黒の犬と人間の交流が描かれた画像が入力され,モデルは「白黒の犬が雪が点在する草地に立ち,青い鎖を口にくわえている」などの詳細な説明を生成します.

ラズパイでの実行環境の構築

ラズパイでこのようなシステムを構築する際,仮想環境の活用が推奨されます.次のように設定を進めます.

  1. 仮想環境の作成;`$ python -m venv nlpenv`
  2. 環境の有効化: `$ source nlpenv/bin/activate`(Linux/Macの場合)
  3. 必要なライブラリのインストール: `pip install llama-cpp`

マルチモーダル対応技術の鍵

マルチモーダルと大規模言語モデル

「マルチモーダル」は,異なる種類のデータ(画像,音声,テキストなど)を統合的に処理する技術を指します.この技術が注目される背景には,AIの汎用性を向上させるための要請があります.大規模言語モデル(LLM)はその中心的存在であり,次の点で重要です.

  1. 汎用性の高さ
    モデルが訓練されたデータセットの多様性により,未見の入力にも柔軟に対応可能
  2. 直感的な操作性
    入力形式が自然言語で統一されているため,専門知識がなくても利用しやすい

画像説明の生成

マルチモーダルLLMを用いると,視覚データの言語変換が可能です.次のプロセスで実現されます.

  1. 画像の特徴抽出
    CNNなどの技術を用いて,画像の視覚的特徴をベクトル形式に変換
  2. 言語生成
    これらの特徴をLLMが解釈し,自然な言語で説明を生成
〈著:ZEPマガジン〉

動画を見る,または記事を読む

著者紹介

  • 株式会社クレスコ入社後,銀行向けシステムなど数多の開発にリード・エンジニアとして従事.後に自社ソリューションとなる統合認証システムの基礎を独力で開発するなど,アイデアと技術でクレスコを牽引する.技術研究所での機械学習研究を経て,人工知能を強みとする部門に異動.現在はテクニカルエバンジェリストとして企業が持つ業務課題へのAI適用に関するコンサルティング,機械学習に関する技術支援を行う一方,自ら研究テーマを持ち共同研究,実験システムの構築も担当.「SoftwareDesign」「やってみよう!機械学習」(技術評論社),「日経ソフトウェア」「AIプログラマになれる本」(日経BP)への記事寄稿,会津大学,はこだて未来大学,琉球大学,早稲田大学のほかWatson SummitやMicrosoftでの講演等,社外でも精力的に活動中

著書

  1. ラズパイ+USB SDRで作るFlightradar24 Businessアカウント・フィーダ,ZEPエンジニアリング株式会社.
  2. [VOD/KIT]ラズベリー・パイで学ぶエッジAIプログラミング入門,ZEPエンジニアリング株式会社.
  3. [VOD/KIT]世界の航空機を同時追跡!Flightradar24 ラズパイ・キット,ZEPエンジニアリング株式会社.
  4. [VOD/KIT]人工知能カメラM5StickVで作って学ぶ画像解析AI開発入門,ZEPエンジニアリング株式会社.
  5. いろんなことを試して学ぶ! Pythonプログラミング,2021年,日経BP.
  6. エッジAIプログラミング M5StickV 活用編,日経ソフトウェア2020年11月号,日経BP.
  7. エッジAIプログラミング M5StickV 準備編,日経ソフトウェア2020年7月号,日経BP.
  8. Kaggleに参戦しよう(連載),日経ソフトウェア2020年1月号,日経BP.
  9. Kaggleに参戦しよう(連載),日経ソフトウェア2019年9月号,日経BP.
  10. Kaggleに参戦しよう(連載),日経ソフトウェア2019年7月号,日経BP.
  11. AIプログラマになれる本,2019年,日経BP.
  12. やってみよう! 機械学習 第2章 機械学習の始め方,2019年,技術評論社.
  13. 人工知能で画像生成 応用編,日経ソフトウェア2019年1月号,日経BP.
  14. 人工知能で画像生成 基本編,日経ソフトウェア2018年11月号,日経BP.
  15. 自分で構築するか,APIで機能を使うか 機械学習の始め方,Software Design2018年4月号,技術評論社.

参考文献

  1. [VOD/Pi3A KIT]ラズパイ・キットで学ぶLinux I/Oボードの作り方・探し方・動かし方,ZEPエンジニアリング株式会社.
  2. [VOD/Pi KIT]ラズベリー・パイで学ぶLinux&Pythonプログラミング超入門,ZEPエンジニアリング株式会社.
  3. [VOD/PiZero KIT]Python×ラズパイで初めての量子コンピュータ,ZEPエンジニアリング株式会社.
  4. [VOD/Pi400 KIT]SLAMロボット&ラズパイ付き!ROSプログラミング超入門,ZEPエンジニアリング株式会社.
  5. [VOD/Pi KIT]ラズパイ×Pythonで動かして学ぶモータ制御入門,ZEPエンジニアリング株式会社.