映画の内容を絵文字で表現!?!?「Movie to Emoji」で色々な映画のあらすじを掴んでみた – 日本一詳しいOpenAI入門

Microsoft Ignite 2021の基調講演で発表された「Azure OpenAI Service」。公式ページにある通り OpenAI  でOpenAI APIを発行してもらったので、Expamplesにある49個のアプリの内、「Movie to Emoji」をPythonから実行して試行錯誤します。

OpenAIのExpamplesにあるMovie to Emojiとは

公式の説明では「Convert movie titles into emoji.」とあり、“映画のタイトルを絵文字に変換。”となります。

公式のタグでは「Transformation」と「Generation」の2つが付与されています。

プログラムを見ると、エンジンは「Davinci」となっております。

サンプルコードでは最初に「Back to Future(バック・トゥ・ザ・フューチャー)」とあり、それに対して若者(マーティ)・博士(ドク)・自動車(デロリアン)・時計を教師データにしてあります。他にも、Batman、Transformers、Wonder Woman、Winne the Poohなどをサンプルとして入力しています。

早速使ってみた

公式にあるコードを参考に、好きな文章を入れられるよう、 str という変数に会話を入れて実行できるようにします。

1Python Code 
2
3‘’’ 
4
5import os 
6
7import openai 
8
9 
10
11openai.api_key = os.getenv("OPENAI_API_KEY") 
12
13str = """ Back to Future: 👨👴🚗🕒 
14
15Batman: 🤵🦇 
16
17Transformers: 🚗🤖 
18
19Wonder Woman: 👸🏻👸🏼👸🏽👸🏾👸🏿 
20
21Winnie the Pooh: 🐻🐼🐻 
22
23The Godfather: 👨👩👧🕵🏻‍♂️👲💥 
24
25Game of Thrones: 🏹🗡🗡🏹 
26
27Spider-Man:""" 
28
29 
30
31response = openai.Completion.create( 
32
33  engine="davinci", 
34
35  prompt=str, 
36
37  temperature=0.8, 
38
39  max_tokens=60, 
40
41  top_p=1.0, 
42
43  frequency_penalty=0.0, 
44
45  presence_penalty=0.0, 
46
47  stop=["\n"] 
48
49) 
50
51 
52
53print(response["choices"][0]["text"]) 
54
55‘’’

映画を絵文字で表現してくれる

実行するとスパイダーマンを「🕸🕷🕸(蜘蛛の巣・蜘蛛・蜘蛛の巣)」と表現してくれました。

Batmanが「🤵🦇(人・コウモリ)」と人要素があるのに対して、スパイダーマンは蜘蛛の巣・蜘蛛・蜘蛛の巣となっています。

蜘蛛つながりでTVアニメ「蜘蛛ですが、なにか?」で試したところ「🕷(蜘蛛)」と蜘蛛だけになってしまいました。

他の映画でもためしてみる

上記だけだとタイトルに含まれている文字で判断している可能性もあるので、タイトルだけでは内容が推測できない映画を試してみます。

※映画のタイトルを調べて出てきた英語名で試しています。

パルプ・フィクション:👨👩‍👩‍👧🏻👨👩‍👧‍👦🏻(男性・家族・男性・家族)

フォレスト・ガンプ:🏃🏻🏃🏻🏃🏻(ランナー・ランナー・ランナー)

風と共に去りぬ:🌪🌪🌪(竜巻・竜巻・竜巻)

ショーシャンクの空に:😎🏅(サングラスの笑顔・スポーツメダル)

刑務所のリタ・ヘイワース(ショーシャンクの空にの小説時点のタイトル):📓🔪📔(ノート・包丁・ノート)

君の名は:👱👩‍🎨👱👩‍🎨👱👩‍🎨(金髪男性・女性アーティスト×3)

いかがでしょうか?

おっ、と思うものもあれば「風と共に去りぬ」のようにタイトルから推測したのかな?と思うものもありました。

どんなときに使えるのか?

忙しい人が短時間で映画の内容を掴むために使えるということもないですが、通常であれば画像分類や音声合成など、様々な目的に合わせて専用のAIを作り込んで使うというのが一般的でした。しかしOpenAIであれば、AIの技術を必ずしもビジネスのために役立てるという目的以外で使うことが出来ます。

AIとなると、なんのために使えるのか?その効果は何なのか?費用対効果は?みたいな話になりやすいですが、OpenAIが持つ高いポテンシャルのお陰で、一見ビジネスではなんの意味もないようなアプリケーションを作ったりすることも出来るということがわかりました。

OpenAIの技術により、AI=ビジネス以外の発想が出てくることで、今までには無い活用方法やアプリケーションが出てきそうですね。

この記事を書いた人

azure-recipe-user