Sansan Tech Blog

Sansanのものづくりを支えるメンバーの技術やデザイン、プロダクトマネジメントの情報を発信

▲The Prism of Creativity ▽ vol.7 機械と協働してクリエイティブに[機械学習編]

f:id:s_yuka:20200430105229j:plain

こんにちは!Sansan DSOC 研究員の西田です。最近は密かに髪の色をブルーブラックにしましたが、自然光に当たらないと青くならないため、誰にも気づかれません。烏のような黒髪を目指していきたいと思います。


先日までMedia Ambition Tokyo 2020に出会いの本質を表現したビジュアライゼーションを展示をしておりました。開催期間後もオンラインで作品を鑑賞していただけるので、以下のリンクより作品をチェックしてみてください!
mediaambitiontokyo.jp


私たちの展示の隣には、UNLABELEDという監視カメラに人間として特定されないようにデザインされた服が展示されており、服好きの私にとってはとても興味深かったです。監視カメラが誤認識を引き起こしやすい特定の柄をAIが学習し、生成された画像を元に、迷彩服を提案しています。僕はコムデギャルソンの特殊なシルエットなら監視社会でも生きていけると思って挑戦しましたが、見事に認識されてしまいました!(いい勝負した日もありました!笑)


作品チームは、研究テーマとしてComputational Creativityを掲げている慶應義塾大学SFC徳井研究室のメンバーの方々です。
会期中にメンバーの方々と交流している時に、「そうだ、この連載でも機械学習編として、Computational Creativityに触れるんだった」と思い出したので今回はComputational Creativityに関する研究紹介です!


Computational Creativityとは?

Colton and Wiggins(2012)*1によると、

「Computational Creativityとは、先入観を持っていない鑑賞者がクリエイティブであるとみなすであろうふるまいを表現する計算システムにおける哲学、科学、エンジニアリングのこと」

と定義されています。

元々は人工知能分野における一つの研究分野で認知科学等との学際的な研究分野で、アート、グラフィックデザイン、ゲーム、音楽、食等のいろいろなドメインに応用されています。
より具体例とともに詳しく知りたい方は以下の徳井さんのブログが大変参考になります。

medium.com


上記の計算システムの中でも、人間のクリエイティビティを刺激したり、サポートしたりするものがクリエイティブシステムと呼ばれ、そこには以下の3つの種類のシステムがあります。

  1. Autonomous Creative Systems
  2. Creativity Support Tools
  3. Co-Creative Systems

1つ目のAutonomous Creative Systemsは、その名の通り、自律してデザインや創作物を生成するシステム。特にComputational Creativityで扱われるシステムです。近年、GANというアルゴリズムを用いて絵画や服のデザイン等を生成するものがたくさん見られるようになっていますが、こちらのシステムに該当します。

2つ目のCreativity Support Toolsは、あくまで人間の創造性をサポートするためのシステム。

そして、最後のCo-Creative Systemsは上記2つの中間に位置付けられるようなシステムで、人間とシステムの協働により、創作物を作成するものです。

最近は、どのようにAIを活用してクリエイティビティを高めていけるのかということに関心があるため、今回の記事では、最後のCo-Creative Systemsにおける研究をご紹介したいと思います!

Conceptual Shift を支えるシステム

紹介する論文は、Karimi et al (2019)の「Deep Learning in a Computational Model for Conceptual Shifts in a Co-Creative Design System」*2で、コンセプトの変化におけるCo-Creative Systemsの役割に関するものです。
Karimi et al (2019)では、Creative Sketching Partner (CSP)という人間とともにスケッチをしていくためのアルゴリズムをもとに、実際にCSPを使ったユーザーのクリエイティビティがどのように変化したのかを分析しています。

CSPを簡単に説明すると、ある絵を描いた時に、それをもとにAIが参考になるイラストを提示してくれるというものです。下図は、キッチンテーブルの椅子をデザインしてくださいというタスクが与えられたものです。左上部の椅子をユーザーが描いた時、その右側にAIが参考になるようなイラストを提示してくれます。それをもとに新しくユーザーがデザインでき、赤色の部分がサジェストによってデザインを変更した部分になります。

f:id:sansan_nissy:20200319174116p:plain
Karimi et al (2019) Figure1より引用

それでは、どのようにしてこのシステムがデザインをサジェストしてくれるのでしょうか?

この研究では、Conceptual Shift Algorithmを開発してサジェストをしており、その名の通り、「コンセプトの変化」に重きをおいたデザインを選定するアルゴリズムを採用しています。このアルゴリズムでキーとなるのは、Visual SimilarityとConceputual Similarityの2つの変数です。

Visual Similarityは見た目のデザインの類似度を測定し、Conceputual Similarityは対象物のカテゴリ名を文字列として扱い、その単語の意味の類似度で測定しています。この2つの変数を用いて、クリエイティビティに重要とされるNovelty(目新しさ)をHigh, Intemediate, Lowの3段階に定義しています。Highでは、現在のデザインについて、見た目も対象のカテゴリも大きく違うものとなり、Lowになればどちらも似ているデザインとなります。

具体的なアルゴリズムの流れは以下の通りです。

  1. Quick Draw!というイラストの公開データセットを用いて、345カテゴリで5000万枚あるイラストの特徴量を抽出。各カテゴリごとにもイラストの差異があるので、カテゴリ内でKmeansを用いてさらに10個のクラスタに分割し、その重心を求める。(計345カテゴリ×10クラスタ=3450クラスタ)
  2. ユーザーの現在のデザインの特徴量を取得し、3450クラスタのうち、類似している20クラスタを特定し、似ているものからNoveltyのLow, Intermediate, Highのラベルを振る。(Visual Similarity)
  3. Google Newsで学習済みWord2Vecの分散表現を用意し、ユーザーの現在のデザインのカテゴリ名と上記の20クラスタのカテゴリ名の言葉の意味での類似度を測定する。(Conceptual Similarity)
  4. 各20クラスタでVisual SimilarityとConceptual Similarityの差が0.05より小さいものをLow, Intermediate, Highの中から選び、それらのクラスタの中からサジェスト候補を選定する。(Visual SimilarityとConceptual Similarityの差がないということはどちらも同程度のSimilarityであることを保証している。)

f:id:sansan_nissy:20200319174232p:plain
Karimi et al (2019) Figure2より引用

機械はいかにクリエイティビティを強化するか?

実際にこのシステムのユーザーのクリエイティビティはどのように変化したのでしょうか?

24人の被験者を集い、下記の3つのグループに分けて実験を行いました。

  1. NoveltyがHighのイラストをサジェストするシステムを用いて、椅子を描くグループ
  2. NoveltyがIntermediateのイラストをサジェストするシステムを用いて、街灯を描くグループ
  3. NoveltyがLowのイラストをサジェストするシステムを用いて、橋を描くグループ

実験の終了後に被験者には下記の2問の質問を行い、5段階(1,2: Low, 3: Neutral, 4,5: High)で評価してもらいます。(それに加えていくつか定性的な質問もしています。)

  • システムを用いたことにより、クリエイティブなデザインが思いつきましたか?
  • システムを用いたことにより、異なるタイプのデザインが思いつきましたか?

実験の結果は以下の通りです。

f:id:sansan_nissy:20200319174322p:plain
Karimi et al (2019) Figure3より引用

Noveltyの度合いが高いものをサジェストするほど、よりクリエイティブなアイデアを思いついていることがわかります。さらに、単に主観的にクリエイティブであるというだけでなく、異なるタイプのデザインになっていることがわかりました。被験者の声としては、「似ていないイラストを提示されて、形を変更していいというデザイン変更のきっかけになった」という声や「自分の頭の中は今のデザインと似たようなものでいっぱいだったが、異なるデザインを提示されて新しいアイデアが思いついた」ということが挙げられています。

一方で、Noveltyの度合いが低いものを提示された場合、新しいアイデアには繋がらなかったが、ディテールを極めることにおいてはプラスに働いたというケースがありました。

このように、コンセプトの異なるものを提示すると、新しいアイデアが思いつきやすくなり、似たようなものを提示されるとディテールを詰めるプロセスに有効であることが示唆されました。


この研究で興味深かったのは「コンセプト」に着目している点です。コンセプトは何かを生み出す際の前提や指針になるので、それをVisualとSemanticの2つの変数を定義して数学的に表現している点が参考になりました。さらに、目新しすぎると参考にならないケースとなってしまうので、Noveltyの度合いも類似している上位20個のクラスタに限定しているところでうまくコントロールしていると思いました。上記で紹介した徳井さんの記事にもあるように、「適度なズレ」を作ることがこの研究においてもキーポイントだと感じました。

この研究結果を活かして、クリエイティブな作業をする際は参考にするものをフェーズにおいて使い分けていくと、いいアイデアが思いつくかもしれません。ただし、人間が参考にするものは、例え違うドメインから探そうと思っても先入観に引っ張られてしまうので、AIが客観的にサジェストしてくれる方がいいのかもしれません。


今回は以上!過去記事もぜひご覧ください!


過去記事

*1:Colton, S., & Wiggins, G. A. (2012). Computational creativity: The final frontier?. In Ecai (Vol. 12, pp. 21-26).

*2:Karimi, P., Maher, M. L., Davis, N., & Grace, K. (2019). Deep Learning in a Computational Model for Conceptual Shifts in a Co-Creative Design System. arXiv preprint arXiv:1906.10188.

© Sansan, Inc.