4コマ漫画 machine learning 分析データを集めたかった話
TRANSCRIPT
![Page 2: 4コマ漫画 Machine Learning 分析データを集めたかった話](https://reader033.vdocuments.net/reader033/viewer/2022042520/58a316541a28ab1d068b597b/html5/thumbnails/2.jpg)
3行で分かる概要
4コマ漫画周辺の評論をやってます
コマ毎の画像が切り抜けたので分析用データを楽に作りたい
illustration2vecの結果を機械学習にかけることで精度を高めたデータが取れるような気がした(69% → 82%)
2
![Page 3: 4コマ漫画 Machine Learning 分析データを集めたかった話](https://reader033.vdocuments.net/reader033/viewer/2022042520/58a316541a28ab1d068b597b/html5/thumbnails/3.jpg)
自己紹介
名前:S治/@esuji
仕事:PythonでWEB、分析基盤の開発
趣味:4コマ漫画の評論をしています
サークル名:ポストモダンのポリアネス
実績:アニメ『ゆゆ式』のかおり監督インタビュー
3
![Page 4: 4コマ漫画 Machine Learning 分析データを集めたかった話](https://reader033.vdocuments.net/reader033/viewer/2022042520/58a316541a28ab1d068b597b/html5/thumbnails/4.jpg)
「評論」とは
4
![Page 5: 4コマ漫画 Machine Learning 分析データを集めたかった話](https://reader033.vdocuments.net/reader033/viewer/2022042520/58a316541a28ab1d068b597b/html5/thumbnails/5.jpg)
作品への新しい読み方を
提示して、作品と作家と読者に、新しい道を拓く
(きづきあきら著『ヨイコノミライ』4巻より)
5
![Page 6: 4コマ漫画 Machine Learning 分析データを集めたかった話](https://reader033.vdocuments.net/reader033/viewer/2022042520/58a316541a28ab1d068b597b/html5/thumbnails/6.jpg)
モチベーション作り手のプロにも話を聞けたし、もう少し多角的に分析していきたい
『ゆゆ式』8巻分の作業をちまちまやるのが大変なので、色んな作業を自動化したい!
6
![Page 7: 4コマ漫画 Machine Learning 分析データを集めたかった話](https://reader033.vdocuments.net/reader033/viewer/2022042520/58a316541a28ab1d068b597b/html5/thumbnails/7.jpg)
前回までのあらすじ
コマ画像が切り抜けた
7
![Page 8: 4コマ漫画 Machine Learning 分析データを集めたかった話](https://reader033.vdocuments.net/reader033/viewer/2022042520/58a316541a28ab1d068b597b/html5/thumbnails/8.jpg)
やりたいこと
各コマが持っている情報にラベリングする(後で分析に使用)
人物:誰が、どの順番で、どんな映り方
吹き出し:誰が、どの順番で、どんな形
セリフ:どんな内容、吹き出し外にあるものか
背景:無背景、スクリーントーン、場所
それぞれコマの繋がりはどうか
8
![Page 9: 4コマ漫画 Machine Learning 分析データを集めたかった話](https://reader033.vdocuments.net/reader033/viewer/2022042520/58a316541a28ab1d068b597b/html5/thumbnails/9.jpg)
技術前提
試行回数が増やせる(計算時間少ない)とありがたい。冬コミまで時間がなかったが、なにかしら進捗を出して本を書かないといけない。
深層学習はデータ量、計算資源的に厳しい
OpenCVの学習機作成は学習進まない
dlibインストールできたけど呼び出し時にsegmentation faultで死ぬ
9
![Page 10: 4コマ漫画 Machine Learning 分析データを集めたかった話](https://reader033.vdocuments.net/reader033/viewer/2022042520/58a316541a28ab1d068b597b/html5/thumbnails/10.jpg)
illustration2vecを使ってみる
画像に何人いるか分かるのでこれを集めてみよう
でも『ゆゆ式』だと後ろ向きで映ってるのも多いしそこまで精度出ない
取れるタグの1girl, 2girls, 3girls,...の中で一番値が高い人数と実際の人数の一致率は『ゆゆ式』5巻で69%
10
![Page 11: 4コマ漫画 Machine Learning 分析データを集めたかった話](https://reader033.vdocuments.net/reader033/viewer/2022042520/58a316541a28ab1d068b597b/html5/thumbnails/11.jpg)
でもおしい値が出てるコマもある
本当は3人だけど2人と判定したコマ
5巻13ページ右の1コマ目
2girls: 0.39
3girls: 0.26
3人の気配も感じられている。これを「3人」だよと教えてあげればなんとかなるのでは
11
![Page 12: 4コマ漫画 Machine Learning 分析データを集めたかった話](https://reader033.vdocuments.net/reader033/viewer/2022042520/58a316541a28ab1d068b597b/html5/thumbnails/12.jpg)
機械学習でやっていく
方針
1巻当たり900個くらいあるコマすべてにillustration2vecを適用してタグをゲット
タグはとりあえず全部使う(キャラクター144個、一般511個)
手法はランダムフォレストが精度良さそうだった
タグさえ取得すれば学習にそこまで時間かからな
いので良かった
12
![Page 13: 4コマ漫画 Machine Learning 分析データを集めたかった話](https://reader033.vdocuments.net/reader033/viewer/2022042520/58a316541a28ab1d068b597b/html5/thumbnails/13.jpg)
結果
Accuracy: 0.82 (+/- 0.04)69%から82%に精度向上した
forest = RandomForestClassifier(n_estimators=340, random_state=0, n_jobs=-1 ,class_weight='balanced')forest.fit(X_train, y_train) def get_accuracy(clf, train_features, train_labels): scores = cross_val_score(clf, train_features, train_labels, cv= print("Accuracy: %0.2f (+/- %0.2f)" % (scores.mean(), scores.std()))
get_accuracy(forest, X_test, y_test)
13
![Page 14: 4コマ漫画 Machine Learning 分析データを集めたかった話](https://reader033.vdocuments.net/reader033/viewer/2022042520/58a316541a28ab1d068b597b/html5/thumbnails/14.jpg)
まとめ
illustration2vecの結果を機械学習にかけることで更なる精度向上を実現できた(69%→82%)
分析用データを集めるのに82%が嬉しい数字化は別問題
試行錯誤するより手作業でデータを入力したほうが速いのでは?
はい
14
![Page 15: 4コマ漫画 Machine Learning 分析データを集めたかった話](https://reader033.vdocuments.net/reader033/viewer/2022042520/58a316541a28ab1d068b597b/html5/thumbnails/15.jpg)
「ご清聴ありがとうございました」の代わりに
原作『ゆゆ式』 1~8巻発売中
アニメBD-BOX好評発売中
2月22日 新作OVA発売!!!!!!!!!!!!
15