大規模言語モデルの展開

セミナー概要
ChatGPTの急速な普及を転換点として、かってない規模とエネルギーで、多くの研究者・開発者・企業が人工知能の分野に参入しようとしています。下の図は、arXivへの"transformer"関係の投稿数です。

セミナーでは、第一に、現在進行中のこの変化がどのような技術的背景を持つのかを考えてみたいと思っています。第二に、現時点での現実的な技術的焦点がどの辺にあるのかを考えようと思います。
大規模言語モデルの展開
第一点の現在の急激な変化の技術的背景についてですが、僕は、次のように考えています。
それは、自然言語処理だけではなく、コード生成、視覚情報の処理、分子構造と反応のモデリング等の様々な領域においても、大規模言語モデルが極めて優秀な能力を発揮できることが明らかになったことだと思います。
登場しつつある新しい人工知能技術が、現在の自然言語ベースの大規模言語モデルを超えるものだというイメージを持っている人も少なくないと思いますが、それは少し違うと思います。現在の展開には、技術的連続性があります。セミナーのタイトルを、「大規模言語モデルの展開」としたのはそのためです。
現在の技術的焦点
もっとも、技術に連続性があると言っても、技術は変化します。現時点での技術的焦点は何かを考えることは大事なことです。
僕は、それは「テキストの世界とイメージの世界の統合」だと考えています。
OpenAIのGPT-4でのMultimodalな機能の追加は、とても印象的なものでした。Googleも、それに追従しようとしています。
今回のセミナーでは、人工知能技術の現在の技術的焦点の一つが、「Multimodalな人工知能」 にあると考えて、その分野でのいくつかの基本的な技術を紹介しようと思います。
セミナーで取り上げるトピックス
セミナーでは、次のような技術の概要を紹介をしようと思います。
- Vision Transformer
- CLIP
- ...
今回は、Image-to-Text 系の技術を中心に扱うこととして、Text-to-Image系の技術の紹介は、別の機会に行いたいと思っています。
ことばと視覚を持つ人工知能にとって重要なことは、そのモデルがテキストと視覚の両方のコンテンツの意味を理解し、推論する必要があるということです。そこには、いろいろな課題が生まれます。セミナーの後半では、そうした課題を取り上げたいと思います。
あらためて「言語モデル」の意味を考える
少し前までは、自然言語の意味理解にはRNNが、画像認識にはCNNが主なエンジンとして使われていました。
上に見たような多様な応用への展開が、大規模言語モデルの飛躍を生み出したTransformer という一つのエンジンで可能になるかもしれないというのは、一つの驚きです。(実は、それほど簡単な話ではないのですが。)
時間があれば、そのことの意味も、考えてみたいと思っています。
( 資料pdf )
画像認識技術を振り返る
CNN
画像認識の課題とWindows Sliding
画像認識では、次のような技術が求められます。
- オブジェクトのカテゴリーの認識(分類)
- オブジェクトの位置の認識
- オブジェクトの切り出し
一つの画像の中に複数のオブジェクトが存在する時、これらの課題に応えるには、特別なアプローチが必要になります。
Windows Sliding は、これらの課題に応えるもっとも基本的なテクニックです。それは、Transformer のAttention Mechanism に相応するものです。
( 資料pdf blog:「 Windows Sliding は Attention である 」)
Caption生成の試みとAttention
実は、2016年のBahdanauらの論文より前に、Attentionの重要性を指摘した論文があるのです。それは、2015年のKelvin Xu らの次の論文です。
"Show, Attend and Tell: Neural Image Caption Generation with Visual Attention"
http://arxiv.org/pdf/1502.03044v2.pdf
興味深いことは、ここで提唱されているのは、画像に対するAttentionを利用することで、画像からCaptionを生成することができるというシステムでした。
( 資料pdf blog:「 Show, Attend and Tell ! 」)
Vision Transformer : Inductive Bias Free
大規模言語モデルがMulti-Modal なAI に展開して上で、大きな役割を果たしたシステムがあります。それが、2021年に Google が発表した Vision Transformer です。
自然言語処理の世界では、Transformerベースの大規模言語モデルが大きな成功を収めていたのですが、画像情報処理の世界では、近年に至るまで CNN ( Convolution Neural Network )が主流でした。
それに対して、GoogleのVision Transformer は、大規模な画像情報処理の世界でも、CNNを全く利用せずに、Transformer だけで最先端のCNNのシステムを上回る性能を発揮できることを示しました。
このことは、Transformerをエンジンとする一つのシステムで、自然言語処理と画像処理のタイプの異なる二つの処理が同時に可能になることを意味しています。Vision Transformer が、Multi-ModalなAIへの突破口となったというのは、そういうことです。
Vision Transformer の画像embedding
Vision Transformerが自然言語だけではなく、画像も処理できるのは、次のような手法を用いているからです。
「元の画像を小さな画像パッチに分割し、これらのパッチの線形なembeddingのシーケンスをTransformerへの入力として提供する。」
画像パッチは、自然言語処理アプリケーションにおけるトークン(単語)と同じように扱われ、教師あり方式で画像分類モデルを学習します。
論文タイトルの "An Image Is Worth 16x16 Words" というのは、このことを指しています。
( 資料pdf blog:「 大規模訓練とInductive Bias 」)
Vision Transformer 内部表現の分析
今回のセッションの隠れたテーマの一つは、前回も触れた Vision Transformer の「CNNのInductive Biasの排除」という設計デザインについてです。
「Vision TransformerはCNNに比べ、画像固有の帰納的バイアスがはるかに少ない。」「CNNでは、局所性、2次元近傍構造、並進等価性がモデル全体を通して各層に焼き付けられている。」
最初に、CNNが画像認識の上で、画像データの特徴をどのように捉えているかを、簡単に振り返ろうと思います。
「 Vision Transformerの 内部表現の分析 」では、Vision Transformer での Attentionの働きが分析の焦点になります。
なぜなら、Transformer = 分散表現+Attentionと考えていいので、このアーキテクチャーで CNNと同じような画像認識の機能を発揮することができるのは何故かという疑問が出てくるのは当然ですから。
その答えの一つは、Vision Transformer も、CNNと同じふるまいを行うことがあることを示すことです。
( 資料pdf blog:「 Attention の働きを「見える化」する 」)
CLIP: Connecting text and images
CLIP (Contrastive Language–Image Pre-training) は、テキストとイメージを結合することを目指したOpenAIのプロジェクトです。
CLIPは、大規模言語モデルをマルチモーダルな人工知能に展開する上での、OpenAIの中心的なプロジェクトと考えていいと思います。
CLIPのアプローチ
先に見た Vision Transformer は、”Inductive Bias Free”なシンプルなアーキテクチャーでも、データセットの規模を拡大すると、画像認識の性能を上げられることを強調し、「大規模訓練が帰納的バイアスに勝ることを発見した。」と豪語していたのですが、OpenAIのCLIPのアプローチは、すこし違ったものです。
「典型的なビジョン・データセットは、作成に労力とコストがかかる一方で、狭い範囲の視覚概念しか教えない。標準的なビジョン・モデルは、1つのタスクと1つのタスクにしか向いておらず、新しいタスクに適応させるためには多大な労力を必要とする。」
( 資料pdf blog:「 natural language supervision とは何か? 」)
CLIPのデータセットと予測サンプル
このセッションでは、CLIPがどのようなデータセットを訓練用データを構築したのか、また、CLIPがどのような性能を持つかを、いくつかのサンプルで見ていこうと思います。
( 資料pdf blog:「 CLIPの性能を見る 」)
CLIP-- Contrastive Representation Learning
( 資料pdf blog:「 「似ているもの」は近くに、「違うもの」は遠くに 」)