自然言語で対話的に画像を編集する | 知能コミュニケーション研究室

知能コミュニケーション研究室助教の品川政太朗です。知能コミュニケーション研究室では、音声機械翻訳や対話システムなど、人と人、人と機械のコミュニケーションを支援する技術についての研究を進めています。コミュニケーションを重視しているということで、話し言葉を中心とした音声処理や言語処理、表情や身振り手振りなどのパラ言語情報を扱うための画像処理など、さまざまな情報処理を扱っています。

私が注目しているのは、言葉を使って、機械が人間とコミュニケーションをとりながら問題を解決するような課題です。現在は特に新しい画像の生成を行う対話システムの研究に取り組んでいます。画像生成は、近年著しく技術が進歩している技術です。広告やイラストの作成には高い技術が求められる上に、非常に手間がかかります。このような画像を自動的に生成できれば(または、実際に商用利用できる程でないにしろ、そこそこ良い画像を思い通りに生成できるようになれば)広告やイラストなど、画像の作成を専門にしている方が補助的に利用したり、画像を作成する技術がなくても、自分の欲しい画像の大まかなイメージを専門家に伝えたりなどして、コミュニケーションの齟齬を減らすことが可能だと考えています。よりイメージしやすい身近な例としては、探し人や探し物がある場合に、言葉で伝えるよりも画像を共有しながらお互いが頭で考えているイメージを擦り合わせていくことで、探し人や探し物を効率的に見つけるといったことができると考えています(図1)。

図1:画像が対話に有効に利用される例(機械が目撃証言を元に、対話しながら画像を編集して目撃者の見た顔を生成する)

このように、画像情報と言葉(言語情報)を組合わせて問題解決をするという研究分野は、まとめてVision & Languageと呼ばれており、世界的に盛り上がりを見せている研究トピックの一つとなっています。言葉でコミュニケーションをとれる、という要素は、将来的に機械が人間の役に立てる範囲を拡大するために、重要な要素だと考えられています。人間にとって最も頻繁に用いられる情報伝達の手段は言葉(言語情報)です。機械が言葉を理解し、扱えるようになれば、様々な作業を機械に言葉で頼むだけでできるようになる利点があります。

一方で、言葉というのは多様な表現が許されます。また、個人によっても、同じ言葉でも意図が異なる場合があります。たとえば、「この画像を格好良くしてほしい」というお願いをユーザが行った時、「格好良い」に紐づいている具体的な結果のイメージは、人によって様々です。人間同士の場合は、このような場合に「あなたの言う格好良いとはこういうことですか?」などと聞き返したり、対話することによってお互いの意図の擦り合わせを行えます。私は、このような対話の能力を機械が得られるようにし、個人に合わせて問題解決を行う機械を作りたいと考えています。

深層学習による、元画像と編集要求の文から目的の画像に編集するニューラル画像編集モデル

今回は、私の博士での研究と、その展望について簡単に紹介したいと思います。私が行った研究は、まさに図1にあるような、ユーザが言葉を使って、ユーザの思い浮かべている画像に向かって、段階的に画像を編集するシステムの研究です。編集する方法には、深層学習という方法を用いています。ニューラルネットワークという用語でも有名かと思います。深層学習では、画像と言葉のように、異なる情報源をベクトルとして表現し、ニューラルネットワークと呼ばれるネットワークを利用して、画像と言葉のデータからその対応関係を結びつけることができ、これを利用して、編集元の画像(元画像)と編集要求の文から、目的の画像への編集を行っています(図2)。

具体的には、画像を編集するのに向いている、敵対的生成ネットワーク(Generative Adversarial Networks; GAN)というニューラルネットワークを利用しました。編集要求の文の情報は、時系列情報を抽出するのに向いているLong-short term memory (LSTM)、編集対象の元画像の情報は、画像情報を抽出するのに向いているConvoluation Neural Networks (CNN)というニューラルネットワークを利用しました。元画像と編集要求の文の情報を組合わせて、GANで生成するという仕組みです。

図2:元画像と編集要求の文から目的の画像に編集するニューラル画像編集モデル

このモデルを学習するには、編集前の元画像、編集後の目標画像、そして両者の変換に対応する編集要求の文の3つの組で構成されるデータが必要になります。このようなデータはこれまでに存在しなかったので、アバター画像の作成が可能なウェブサイトを利用して、少し異なる画像の組をつくり、それぞれ元画像、目標画像とし、これらの画像の組をクラウドワーカーに見せて、2つの画像の違いを言葉で表現してもらいました(実際には英語を利用しています)(図3)。

図3:学習データ(元画像、目標画像、編集要求の文)の収集方法
図4:画像編集モデルによる編集で、編集要求の文にない編集が起きてしまった例

実際に画像編集モデルを学習させてみると、面白いことが分かりました(図4)。確かに入力である編集要求の文に沿った編集はできているものの、要求していない部分まで編集されてしまいました。多様な表現が許される言葉と画像の編集操作を結びつけることは、簡単にはいかなかったのです。この新たな問題に対して、本研究ではさらに、元画像のどの部分が編集するべき領域なのかを明示的に分けるマスク機構を提案して、マスク機構なしの場合より優れた編集が可能であることを明らかにしました(図5)。

図 5:マスク機構により、編集要求にない部分が意図せず変化してしまう問題を抑制した

システムからユーザへの確認戦略の導入

もう一つの研究は、システムが自信がない時に、ユーザに対して確認を行うという対話戦略をシステムに取り入れて、対話的に画像を編集するという研究に取り組みました。ユーザの多様な要求には、システムが苦手にしている入力も当然含まれます。深層学習のモデルは、限られたデータセットを用いて学習されるため、一つのモデルで多様な入力のすべてに対応することは困難です。例えばマスクありモデルは、髪の毛など大きな領域の編集を苦手としています。そのような場合に、複数のモデル(マスクあり・なし)による出力をユーザに見せて選んでもらい、より目標を達成できそうな方の画像を選んでもらうという対応策が考えられます。かといって、毎回確認するのはユーザの負担となります。そこで本研究では、生成されたマスクのエントロピーを基準として、必要な時だけユーザに確認することで、冗長な対話を削減できることを明らかにしました(図6)。

図6:システムが編集に自信のない時には、ユーザに確認をする対話戦略を導入して効率的に対話して画像を編集できるようになった

今後の展望

本研究では、「ユーザが言葉で画像を編集できる」という点に注目して研究を進めてきましたが、現実的に役に立つものを実現するには、まだまだたくさんの課題あります。例えば、実際のユーザは、一部なら自分で絵を描いたりできるかもしれません。言葉だけでなく、他の入力方法も考慮することで、どのような時に言葉を使うのが有用であるのか、明らかにしていく必要があります。また、どの編集も気に入らなかった場合に、どのようにユーザに働きかけると、ユーザにとって好ましいのかも、明らかにしていく必要があります。そして、言葉は本来、ユーザの文化的な背景などによって、指す意味が異なることが自然です。よって、対話を通して個人に適応するといった要素も必要になってきます。これらの面白い課題を一つ一つ解決していき、機械が様々な課題で人間とコミュニケーションをとりながら、より人間にとって心地よく、問題を解決できるような方法を模索していきたいと考えています。

著者紹介

品川 政太朗(しながわ せいたろう)

札幌出身。東北大学で学士・修士を取得後、博士後期課程から奈良先端大知能コミュニケーション研究室に所属。2020年9月に博士(工学)を取得後、現在は同研究室の助教として対話班を主導している。専門は画像と言語を組合わせて問題を解決するVision & Languageという分野で、特に対話的なコミュニケーションを行えるシステムの研究に従事。
🔗 Webサイト:
https://seitaroshinagawa.github.io/

固有表現を解析する | 自然言語処理学研究室

自然言語処理学研究室 教授の渡辺です。自然言語処理学研究室では、自然言語の構文構造や意味を解析し、知識を自動的に抽出するといった研究をしています。また、機械翻訳や画像キャプション、要約など、文章や画像を入力として別の文章を生成したり、文法誤りの訂正など言語習得の支援などの研究を行っています。

NAIST Edgeでは最先端の研究を紹介する、ということですので、今回は固有表現を含む、名詞句の抽出技術について紹介したいと思います。固有表現は、人名や地名などの固有名詞や日付、時間などでして、このような表現をテキストから自動的に抽出するタスクは検索や質問応答などさまざまな自然言語処理のアプリケーションに利用されています。辞書があれば簡単にできるのでは、と思われますが、知識は日々更新されていますので、新しいニュースや科学技術論文が出るたびに辞書を更新するのは現実的ではありません。また、単純に名詞句を並べただけでは、と思われがちですが、GENIAコーパスと呼ばれる、生命科学の分野を対象とした論文のアブストラクトのデータを眺めますと「Employing the [EBV – transformed [human B cell line] ] SKW6.4 , we demonstrate …」のように入れ子構造になったものや「prostate cancer and brest cancer cells」などのように、並列構造になったものがあります。特に並列構造では、この例のように「prostate cancer cells」から「cells」が省略され、解析を難しくしています。単純に「and」があれば並列にすれば良い、というものではなく、「Nara Inatitute of Science and Technology」のように、「Science」と「Technology」が並列ですが「NAIST」全体で一つの固有表現になります。

この問題に対してよく使われているのが「系列ラベリング」という手法です。例えばある入力文「… an increase in Ca2+ -dependent PKC isoforms in monocytes」に対して、下図のように、各単語にBおよびI、E、Oといったラベルを割り当てる、というものでして、各ラベルがそれぞれ「開始」「内部」「終了」「固有表現以外」のラベルになります。この例の場合「Ca2+ -dependent PKC isoforms」が固有表現になります。深層学習の技術を用いることで、テキストの各単語に対してラベルを予測する問題、として考え、このようなラベルが付けられた学習データからモデルを学習できます。ところがこの手法では、学習データが存在することを前提としていまして、科学技術の全ての分野でそのようなデータが存在するとは限りません。また、並列構造を発見するためには複雑なラベルを割り当てる必要があります。

計算言語学の国際会議COLING 2020で本研究室の澤田が発表した、名詞句の並列構造を解析する手法では、特定の分野の学習データがなくとも、高精度に解析できることを示しました。本研究では、並列構造を取る名詞句は意味的に近いだろうと仮定し、まず、文の中で並列構造を取りそうな単語列を全て列挙します。その後でfastTextELMoBERTなどを利用して、各単語のベクトル表現を求め、単語単位のペアに対して、意味的に近いかどうかをベクトル間の距離により計算します。さらに単語列単位の近さは動的計画法に基づいた編集距離で求めます。右の図の例では、「the retinoid-induced differentiation program」と「not the RARE-medicated signal」との近さを計算しています。この例では、「the ↔ the」および「retinoid-induced ↔ RARE-medicated」「program ↔ signal」が近いと計算され、対応付けられていますが、「differentiation」および「not」が対応付けられていません。この手法により、ラベル付き学習データにより訓練されたモデルに匹敵する性能で並列構造を解析できます。

計算機でも処理しやすい論文は人間でも読みやすい論文でもあります。たとえ冗長になったとしても、専門用語を複雑に組み合わせるような構造をなるべく避けるよう心がけてください。複雑な構造が増えると私達の仕事が増えてしまい、困ってしまいます。