ブログ 人工知能 学習 機械学習 深層学習

ニューラルネットワークを用いた複数モーダルの結合について

マルチモーダルの重要性

近年、複数のモダリティを処理するマルチモーダルAIの重要性が高まっています。重要性が高まっているのには理由がありまして、既存のシングルモーダルAIに比べ、より正確に処理することが可能だからです。例えば、画像認識するAIは、入力として画像のみを扱いますし、音声認識するAIは、入力として音声のみを扱います。このように、単一種類の入力を扱うAIをシングルモーダルAIと呼びます。一方で、画像や音声など、複数の種類の入力を同時に扱うAIをマルチモーダルAIと呼びます。

マルチモーダルAIでは、単一のモーダルからでは正しく推論できないものに対しても、複数のモーダルの情報を統合的に処理することで、正しく推論できるようになるため、シングルモーダルAIに比べて正確に処理ができるのです。

マルチモーダルAIについて興味がある方は、以下の記事をご参考ください。

上のリンクの記事では、マルチモーダルAIの研究テーマには5つあり、具体的には、

  • Representation
  • Translation
  • Alignment
  • Fusion
  • Co-learning

あることを紹介しました。これらのテーマは全て重要なのですが、この記事では、複数のモーダルを結合する方法を扱うFusionに注目して、説明します。

fusion方法を考える意義

fusionとは

fusionとは、複数のモダリティを結合することで、どのように結合するかについて様々な論文で議論されています。

正則化とは

正則化とは、機械学習の過学習を防いだり、精度を向上させるために使用する制約のことです。正則化として代表的なものに、Lp正則化があります。また、ニューラルネットワークで使用されるドロップアウトも、正則化です。

fusionと正則化の関係

fusionとは、複数のモダリティを結合することですが、その結合方法を設計するということは、ニューラルネットワークの構造を設計することです。その設計の際には、どのようなネットワーク構造を構築すれば、ニューラルネットワークの精度が向上するか、吟味するため、大抵は、ニューラルネットワークの精度を向上させます。ニューラルネットワークは構造によって得意な情報処理の傾向が変化するため、自分が扱いたいモーダルの処理が得意な構造にしてあげれば、精度が向上するわけです。

fusionとパラメータ数の関係

ニューラルネットワークは、その表現能力の高さゆえ、パラメータ数が冗長である傾向があります。fusion方法を設計することで、適切にネットワークを変換することができれば、無駄な冗長性を減らすことができます。

さまざまな結合方法

この記事で紹介するfusion方法は以下の通りです。

  • 古典的なfusion方法
    • early fusion
    • late fusion
  • 最近のfusion方法
    • joint fusion
    • dense fusion

それぞれについて説明をする前に、表記の定義をしておきます。ニューラルネットワークを、モデルの出力を担うものと、担わないもの(=特徴ベクトルを生成するだけ)にわけ、それぞれ、Model、NNと表記することにします。

  • Model:分類もしくは回帰をするニューラルネットワーク(出力を担う)
  • NN:任意の特徴空間に写像するニューラルネットワーク(出力を担わない)

early fusionとlate fusion

古典的な手法は、early fusionとlate fusionがあり、異なるモーダル同士がどこで結合されるかによって決まります。early fusionは、NNを介さずに複数のモーダルが結合されたものを単一のModalに入力するもので、late fusionは、それぞののモーダルを専用のModelを通した後、出力の直前で結合されるものです。

ポイントをまとめると、

  • Modelへの入力直前で結合しており、かつ結合前にNNによる変換を受けていないのがearly fusion
  • それぞれのModelの出力直後で結合しており、かつ結合後にNNによる変換を受けていないのがlate fusion

early fusionは、Modelへの入力直前で結合しており、かつ結合前にNNによる変換を受けていません。

late fusionは、それぞれのModelの出力直後で結合しており、かつ結合後にNNによる変換を受けていません。ただし、それぞれの出力は平均化層などのAggregation層を介すことがあります。

joint fusion

joint fusionでは、どれかのモーダルがNNによる変換を受けたのち、結合されてModelに入力されます。

下図に2パターンを示します。左側は、2つのモーダルがそれぞれNNにより特徴ベクトルに変換され、それぞれの特徴ベクトルを結合したものをModelに入力しています。右側は、2つのモーダルのうち片方のみが、NNにより特徴ベクトルに変換され、その結果と、もう片方のモーダルを結合したものを、Modelに入力しています。

dense fusion

dense fusionは、joint fusionを階層的に複雑化させたものと考えることができて、それぞれのモーダルから個別に特徴を抽出しつつ、結合した場合の特徴も抽出し、Modelに入力させるものとなっています。

追記

まだ紹介しきれていませんが、slow fusionや common space fusionなど、さまざまなfusion方法が提案されています。

参考文献

[1] Di Hu, Feiping Nie and Xuelong Li. "Dense Multimodal Fusion for Hierarchically Joint Representation." ICASSP 2019-2019 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), pp. 3941–3945, 2019.
[2] Shih-Cheng Huang, Anuj Pareek, Saeed Seyyedi, Imon Banerjee, and Matthew Lungren. "Fusion of medical imaging and electronic health records using deep learning: a systematic review and implementation guidelines." npj Digital Medicine, Vol. 3, 2020.
[3] Chi Thang Duong, Remi Lebret and Karl Aberer. "Multimodal Classification for Analysing Social Media." 2017.

  • この記事を書いた人
管理人

管理人

このサイトの管理人です。 人工知能や脳科学、ロボットなど幅広い領域に興味をもっています。 将来の目標は、人間のような高度な身体と知能をもったパーソナルロボットを開発することです。 最近は、ロボット開発と強化学習の勉強に力を入れています(NOW)。

-ブログ, 人工知能, 学習, 機械学習, 深層学習

PAGE TOP