ベルリンのITスタートアップで働くジャバ・ザ・ハットリの日記

日本→シンガポール→ベルリンへと流れ着いたソフトウェアエンジニアのブログ

はてなブログにある映画の感想を人工知能で集めてウェブサイトを作った

映画の辛口レビューと感想を機械学習を使って、はてなブログから集めてウェブサイトにした。名前はホット チリ レビューズ。


現在は約3万件のレビュー記事と約6千本の映画が収録されている。最終的には他のブログプラットフォームにも対応して、機械学習の精度を高めて、記事を集めまくって、世界一の映画ブログ総合サイトにするつもり。

映画の感想と辛口レビューをブログから集計
ホット チリ レビューズ

映画のレビュー

わりと映画のレビュー好きである。単なる映画好きとはちょっと異なる。あくまで「映画のレビュー」好き。
映画のレビューはそれだけで十分に楽しめるコンテンツになっている。必ずしも「レビューを読むこと」と「映画を観ること」がリンクしている訳では無い。ただウェブサイトを巡回してひたすら映画レビューを読んでいるだけで楽しくて、きっと同様の感覚を持つ人も居ると思う。
同じひとつの映画を軸として、いろんなブロガーがそれぞれの視点で書いたレビューを読むと多角的に映画が理解できてくる。「おお、あの映画にそんな捉え方があったのか」という気付きがあったり、「これ書いた奴、映画が分かってねーなー」とツッコんだり。

そういう楽しみ方はブログに掲載されたレビューが最も適している。ツイッターのつぶやきで「スターウォーズすげーっす」と140文字以内のひとこと感想を読んでも何も分からない。アマゾンやヤフー映画のレビュー欄ではフォーマットが規定されていて、かつ文章も短く、読み応えが無い。

その点ブログは多様なフォーマットで各ブロガーが思う存分に映画レビューを書いている。中にはプロの映画評論家ですらできないような評論を個人ブログで発信されてたりする。

本当に自分に合った映画ブロガーとの出逢いはその後の映画人生を何倍も充実させてくれるのだ。

ただそんな「映画のレビュー好き」には常に問題があって、それは「どうやって自分に合った映画ブロガーを見つけるのか?」と。これってググってもなかなか出てこない。当然ながら検索キーワードに「私の感性に合う映画ブロガー」と入れても意味が無い。

そこでホット チリ レビューズではブロガーごとに書かれたレビューを数値解析してサイトに表示させた。
そうすることで「アクション映画の感想を書かせたらピカイチのブロガーに出逢いたい」や「恋愛モノ映画レビューの第一人者は誰?」といったニーズに応えることができる。
「アクション映画のランキング」というのはどこの映画サイトでも手に入る。
でも「アクション映画のブロガーランキング」というのはおそらくホット チリ レビューズでしか手に入らない。

ブロガー分析

ブロガーごとに映画レビューを数値化分析した。映画のカテゴリーとリンクさせているのでどの映画分野に強いブロガーなのかがチャートでひとめで分かる。例えばこんな感じ。

f:id:tango_ruby:20180725005016p:plain

これはきっとブログ作者さんにとっても参考になるのでは、と思っている。自分の書いたレビューの映画をカテゴリー分けして、数値集計するなんて面倒なこと誰もしないだろうし。
本サイトにおいて映画ブロガーさん達の支持が無ければ成り立たないので、とくかくブロガーに喜んでもらえるサイト作りを目指した。

最終的には「映画の感想をブログに書いたらホット チリ レビューズへの登録」をデファクトスタンダードにしたい。

機械学習

ウェブスクレイピング + 機械学習 + ビッグデータ = なんかスゲーもの

3つの要素を足すと個人が立ち上げるウェブサイトであっても、すごいことができるはずという確信がある。

このウェブサイト構築で最も困難だったことは「ネット上にある様々な映画レビュー記事をその対象の映画にマッチングさせること」だった。最初はカンタンに考えていて、これがこんなに難しいとは思っていなかった。いろいろやった結論としては「機械学習以外に方法は無い」ということ。
ブログに書かれた映画のタイトルというのは統一性がなく、バラバラなのだ。以下は全て同じ映画を示していることになる。

  • スターウォーズ フォースの覚醒
  • SW フォースの覚醒
  • スターウォーズ エピソード7
  • スターウォーズ EP7
  • スターウォーズ EP7 フォースの覚醒
  • スターウォーズ7
  • スターウォーズ The Force Awakens
  • Star Wars: Episode VII The Force Awakens

私が他人のブログに注文つけるのもおかしいが、もうちょっと統一してくれたらなー、と。

人間の目で見て確認するのもいいが、何万件もある記事と映画は全部確認できないし、そんな方法では絶対にスケールしない。
そこでAIを使ってこんなことをした。

> classifier.classify "【ネタバレあり】スターウォーズ エピソード8 最後のジェダイ 感想文。早速観てきた!”
=> "スターウォーズ/最後のジェダイ"

> classifier.classify “宇宙好きのパパの影響を受けた2歳の娘と『スターウォーズ フォースの覚醒』を観だけど、娘はアンパンマンの方がいいみたい”
=> "スターウォーズ/フォースの覚醒"


この精度にまだちょっと満足できていない。特にAIにシリーズものの映画の違いを分かってもらうところで苦労している。先程の例にあったスターウォーズ・シリーズを各エピソードに分けるとことか。あとリメイク版の認識精度もダメ。例えば「オリエント急行殺人事件」は1974年に作られて、それが2017年にケネス・ブラナー主演でリメイクされている。人間がタイトルを読んだらどっちを示しているかは明らかなのに機械学習に分からせるのが難しい。

で、まずはRubyのclassifier-rebornを使って実装した。つまりナイーブベイズ分類器を使った訳だが、どうにも精度が上がらないので、今これをPythonのDoc2Vecに代えてコードを書き直しているところ。
ここの精度が十分に上がればサイト規模をいっきに拡大できるはず。もしこの辺りの技術に詳しい方でアドバイスがあればぜひコメントください。

トップ映画ブロガー200

順位は独自集計した数値を元にして決めている。基本は人に支持されて、いい映画のレビュー記事をたくさん書かれているブロガーほど高い数値がつく。アルゴリズムの改良を続けているので、しばらくは変動が大きいですが、まーそんなもんとお考えください。
あと「オレの映画ブログ記事のリンクも貼れ」とかのご依頼があればぜひご連絡ください。

トップの映画ブロガー200のリスト

1 今日観た映画の感想
2 モンキー的映画のススメ
3 ガチラノ
4 KOUTAの映画DASH!!
5 The Spirit in the Bottle
6 あざなえるなわのごとし
7 100年後の学生に薦める映画 2112本
8 bozunobanのブログ
9 本と映画と時々語学
10 映画貧乏日記
11 ジゴワットレポート
12 ぐらっぱ亭の遊々素敵
13 gock221B
14 HAL8192のモノリス達
15 えいざつき ~映画と世情と日常と~
16 キシマの映画ブログ
17 ヤガンEX
18 Machinakaの日記
19 忘れられた人々
20 宇宙、日本、練馬
21 アバウト映画公園
22 みんなの芸能ブログ。
23 Javaさんのお部屋・改
24 ぼくと、むじなと、ラフカディオ。
25 うろおぼえ日常
26 鈴麻呂日記
27 gasonの徒然なるままーに
28 TOKYO ALONE
29 映画の広告コピー|見たくなるキャッチコピーの極意
30 近畿地方から送るゆる~いブログ
31 メモスト
32 きねまないと
33 関内関外日記
34 儘にならぬは浮世の謀り
35 kansou
36 なんであの猿は
37 やりやすいことから少しずつ
38 映画原人の穴
39 フレデリカは日本映画ばっかり見ています<ネタバレ>
40 火炎レコード™️
41 いいんちょさんのありゃあブログ
42 いかえるの感想日記
43 玖足手帖-アニメブログ-
44 フリームービーメモ@はてな
45 セントラル・ステーション分室
46 zaizai's diary
47 映画と映画の音楽 by M・I
48 しーまんの映画から学ぶ人生
49 静かなる備忘。
50 がんぶろ
51 やぶしらず雑記録
52 自堕落論
53 びーきゅうらいふ!
54 シネマトブログ
55 Policy of Truth
56 好きなことが活きていく | 映画やドラマの感想、好きなことを活かす為の備忘録
57 farsite / 圏外日誌
58 一人会議議事録
59 okurejeの日記
60 カツチャレのののブログ
61 沼の見える街
62 天からの封書を開けよ
63 午前3時の太陽
64 たまごまごごはん
65 kazemachiroman’s diary
66 青春ゾンビ
67 日刊オレラ
68 実家の犬が踊る
69 北区の帰宅部
70 迷わず行こうよ、行けばわかるさ
71 Flying Skynyrdのブログ
72 雑食映画室
73 Word of Mouse
74 良い知らせと悪い知らせがある
75 La Porte Rouge
76 けんちーのアニメ中心生活ブログ改
77 映画日記/記録
78 シン・さめたパスタとぬるいコーラ
79 @ Cinema Port
80 定時後に映画館
81 Blcrackreverse
82 ユンギボの日記
83 MOVIE PARADISE
84 A Perfect Night For Bananafish
85 17.5歳のセックスか戦争を知ったガキのモード
86 俺の遺言を聴いてほしい
87 新新・たまんにっき
88 5gatsubyou
89 さて、いかがなものかと?
90 趣味と向き合う日々
91 みんなたのしくすごせたら
92 今日の経験値
93 チェコ好きの日記
94 SHARPのアンシャープ日記
95 真空断無弾
96 そんなことより僕と踊りませんか?
97 抹茶飲んでからマラカス鳴らす
98 ペントスのほぼ日ブログ
99 高速回転する方舟の片隅で。
100 自由ネコ
101 りおパパの日記
102 音楽と映画のブログ
103 glasstruct log
104 シロクロシネマ
105 koyanの明石
106 「言葉こそ人生」読むだけ元気お届け人の"今ここを生きる心"の裏側
107 消しゴムBlog
108 おうつしかえ
109 KENTぶろぐ。
110 映画だけにはしない予定
111 あさブロ
112 大福いぬのキロク
113 8月~12月
114 シロッコ手習鑑
115 いつか電池がきれるまで
116 rocorinne bookworm
117 ササキの映画感想日記
118 しねま ちゃばたけ
119 Movie Magic
120 本しゃぶり
121 Hamaguri Ryoko-Soloris Works
122 ネットの海の渚にて
123 世界のヘリタゲ
124 BLOG
125 雲の上を真夜中が通る
126 ソトブログ
127 オートマティック会館
128 空飛ぶおばさん旅日記
129 みんなのブログ。
130 KEI YAMAMOTO がKEYになったKOTO
131 映画ブログ~鑑賞記録~
132 みんなの政治経済ブログ。
133 モヤシネマ
134 吟遊旅人ピピのシネマな日々
135 ベルギーの密かな愉しみ
136 ブックワームのひとりごと
137 鑑賞記
138 NO TITLE
139 まぢか!まぢですわ
140 君と夏の夢 将来の終わり
141 中西理の下北沢通信
142 小羊の悲鳴は止まない
143 yukiakiの日記
144 みんなの恋愛ブログ。
145 こづかい三万円の日々
146 ヒトコト図書館掲示板
147 スマホで新作映画、人気のアプリ
148 しゆろぐ
149 Jovian-Cinephile1002’s blog
150 気ままに生きます
151 京都ドーナッツクラブのブログ
152 行政書士ミヤシンの800字映画評
153 映画を書くと頭が疲れる
154 記憶のヒトコマ
155 たま欄
156 Trick Dream
157 忘れられた庭の静かな片隅
158 新・ぐうたらとんち雑記帳
159 未来の足跡♪
160 The World is Not Enough.
161 ナカノ実験室
162 横文字の島
163 石岡ショウエイ漫画Blog:猫まみれ涙娘。
164 オーグロ慎太郎の「新・夜明けのない朝」
165 kindle沼日記
166 さがの日々
167 できれば映画に浸っていたい。。
168 Letter from Kyoto
169 富とジェリー
170 「何もない」がある
171 DJAIKO62の試写会日記
172 映画の見方
173 最終防衛ライン3
174 「ちみがそ」の宿題
175 nirarebateisyokuの日記
176 なんとかなるもんだ
177 すけひろの棚
178 雁丸(がんまる)の原作代読映画レビュー
179 softcandy’s blog
180 アニメな日々、漫画な月日
181 あきさねゆうの荻窪サイクルヒット
182 Happy Fancy Arts
183 月と星のエンタメ感想ブログ、
184 とどろけ!サブカル女子
185 alpha-c’s blog[映画、観劇など]
186 海辺にただようエトセトラ
187 ゲインオーバー
188 けいあんの御触書
189 それでもかぶはぬけません
190 妖怪男ウォッチ
191 完ペキじゃなくてええやん
192 kg86 Laboratory
193 ドクマの備忘録
194 sibafutukuri
195 暫定語意
196 ビール片手に映画ナイト☆オブ・ザ・デッド
197 HPO機密日誌
198 今日の十分日記
199 (帰ってきた)妄々中華日記
200 船橋リズムセンター

というわけでホット チリ レビューズです。なんでも感想とかコメント、批評いただければありがたいです。