最近のポケモンはデジモンっぽいのか、ディープラーニングに聞いてみた

# はじめに

> ポケモンについて何となく知っている人向けの記事です（デジモンは知らなくてOK）

３月ごろにポケモンたかさおじさんが集計したアンケートの分析をお手伝いしたところ、アンケートの自由記述回答の6353件中、155件もデジモンについて言及するコメントがあった。

<font size=4 color="red">
「デジモンと区別付かないよね」</font>
<font size=4 color="red">「もはやポケモンじゃない…。デジモン…。昔のデザインに戻ってほしいなぁ…。。。」</font>
<font size=4 color="red">「主観ですが、伝説のポケモンが角張った印象で、デジモンのような印象を受ける。」</font>
<font size=4 color="red">「全体的に毛がなさそうなツルッとしたフォルムの子達が増えた気がします。デジモンっぽい」</font>
<font size=4 color="red">「デザインがごちゃごちゃしすぎて子供が描くのが難しい　デジモンに近くなってきている」</font>
<font size=4 color="red">「ダイパまでのデザインがポケモンっぽいデザイン。それ以降はデジモンみたいな雰囲気。」</font>


私は幼少期からポケモンには触れてきたが、デジモンにはあまり縁がなかったため、
**デジモンと聞くと友人がカラオケで歌っていたButter-Flyとか、細田守が監督をやっていた「ぼくらのウォーゲーム！」のイメージ**が強く、
デジモンのことを詳しくは知らないが、
どうやら**最近のポケモンはデジモンっぽい**らしい

> **ポケモンのデザインについて、「デジモン」についての言及のある回答**
> https://docs.google.com/spreadsheets/d/1FZFh8Mfa3-CU-qeFMGtZ9xByxbJ9wMj2mSEJDzV-tiQ/edit#gid=1753266897

> **ポケモンたかさおじさんの「ポケモンとデジモン」とデジモンに関する記事**
> https://pkmnheight.blogspot.com/2020/07/7.html

---

### ポケモンとは？

知らない方は、ぜひ以下の記事をご覧ください。ここまで詳しく、調べ尽くした記事はありません。
わからなかった方は、ピカチュウとかポケモンGOがポケモンだと思ってもらえば多分大丈夫です。

>ポケモンらしさ-3_デザイン史〜初代開発史編
>![](https://i.imgur.com/PxFudRp.png)
>http://pkmnheight.blogspot.com/2020/04/301.html

### デジモンとは？

**デジモン**とは、デジタルモンスターの略称であり、
ポケモンの誕生より１年遅い1997年に初登場したバンダイの携帯育成ゲームの商品群である。
![](https://i.imgur.com/22yz6bz.png)

1996年に大ヒットした同じくバンダイの**たまごっち**を、育成要素だけでなく通信やバトルといった面に広げたものである。
ポケモンのゲームが主に任天堂の携帯ゲーム機で発売されていたのに対し、デジモンは据え置きゲーム機が主流となっている。
<img src="https://i.imgur.com/Vetnliz.png" height=150px><img src="https://i.imgur.com/soARfhP.png" height=150px>


---



実在の生物や事物をモチーフに架空のモンスターをデザインしたものという点でポケモンのモンスター達とデジモンのモンスター達は一致している一方、**ポケモンとデジモンは異なるデザイン趣向** があるように思える。


- ポケモンのデザイン一例
<img src="https://i.imgur.com/EADxTu7.png" height=300px>


- デジモンのデザイン一例
<img src="https://i.imgur.com/hT8j4AM.png" height=400px>



絵柄や使われている色。キャラクターの頭身数やデザインの複雑さなど、両者は大きく異なっている。
では、<font size=4 color="red">**「最近のポケモンはデジモンっぽい」** </font>とはどういうことなのだろうか？

こんな実験を考えてみた。

---

# 実験方法

<font size=4 color="red">「へえ・・・これが今のポケモンなんだ～。
うわっ！全然知らないやつバッカ！！！
ポケモンって変わっちゃったんだな～～～～。</font>

<font size=4 color="red">おれも昔はポケモンやってたけどさ、
金銀までしか知らないんだよね。</font>

<font size=4 color="red">ぶっちゃけさ、
**今のポケモンってデジモンっぽくね？？？**」</font>

という方々の認識を再現するために、以下のような実験を行う。


**実験：1999年発売のポケットモンスター金銀までの『昔のポケモン』と、デジモンをランダムに分類器を学習させた後、ルビー・サファイアから最新作までのポケモンと、残りのデジモンを分類させ、結果を集計。これを2000回繰り返し、誤分類率を集計する**

実験に使用したポケモンのデジタル画像は**ポケモンずかん**(公式)から入手。
https://zukan.pokemon.co.jp/
水彩画風のポケモン旧公式画像は海外の有志のサイトから拝借。
デジモン画像は**デジモン図鑑**(公式)で2020.3.10までアップされていたものを入手した。
https://digimon.net/reference/



## 使用した画像



- 金銀までのポケモン画像：全504枚（現行公式画像251＋旧水彩公式画像253枚）<br>
（学習用にランダムで392枚）<br>
　現行公式画像と、旧水彩公式画像を扱うことで、分類器のポケモンに対する思い入れを強くする効果を期待。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/610426/f9b0365b-626d-f6f5-bf7e-d31519fb8cb6.png)




- デジモン画像：公式画像957枚
(学習用にランダムで402枚)<br>
なお、デジモンは一部同じポーズで色のみ変わっているものや、背景が書き込まれている画像があったため一部除外した。
 - 除外例1:同じデザインで色違いの「アグモン(黒)」などは片方を除外(下図中央)
 - 除外例2:背景が書かれている「クズハモン巫女モード」など(下図右)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/610426/65ab31a4-b8bf-19c2-b463-65cbf50b7023.png)




- テスト用
    - ポケモン：968枚(ルビサファ以降804枚+学習に使われなかった168枚)
    (メガシンカ・リージョンフォーム等は全てルビサファ以降として扱うものとする)
    (2020/6/17にポケットモンスターソード・シールド『鎧の孤島』で新たにポケモンが追加されてしまったが、~~面倒くさいので~~含めていない)
    - デジモン：学習用・検証用に使用されなかった残りの555枚

これらの学習用・テスト用は毎回シャッフルし、異なるポケモンらしさ・デジモンらしさを抱く分類器が生まれるようにする。

- 画像サイズ<br>
幅:224ピクセルに変換<br>
縦:224ピクセルに変換<br>
チャンネル数:3


> これら実験に使用した画像はgithubにアップしました
> https://github.com/mrok273/Qiita/tree/master/%E3%83%9D%E3%82%B1%E3%83%A2%E3%83%B3/poke_vs_digi/data

- 使用したモデル<br>
ImageNetで事前学習済みのVGG16を、最終レイヤーの出力サイズを「２」に変更し、ポケモンとデジモンで分類できるように設定。

--- 

## データ収集のイメージイラスト

うちの妻に頼み込んで描いていただきました。
![](https://i.imgur.com/fHqICki.png)

![](https://i.imgur.com/LcWPtqd.png)

![](https://i.imgur.com/7eGYk00.png)

---


# 集計結果


## 正解率

デジモンの正解率は90%
ポケモンは正解率が82%となった。

一度もポケモンに間違われなかったデジモンは約51%。
一方デジモンに一度も間違われなかったポケモンは約18％であった。
どうやらポケモンをポケモンと分類するほうが難しいらしい。

![](https://i.imgur.com/nicXbgV.png)


> 集計結果のcsvファイルをgithubにアップしました
> https://github.com/mrok273/Qiita/tree/master/%E3%83%9D%E3%82%B1%E3%83%A2%E3%83%B3/poke_vs_digi

---


## 最近のポケモンは、デジモンっぽい！


デジモンへの誤分類率を世代ごとに集計すると、以下のようになった。



![](https://i.imgur.com/aLr7qdU.png)


確かに後の世代ほどデジモンへの誤分類率が高い。

どうやら、

<font size=3 color="red">「最近のポケモンは、どちらかというと**デジモン**」
「今のはなんか**デジモン**っぽい」
「もはや**デジモン**と変わりないとさえ思える」</font>

という意見も、**全く根拠無しに言っているものではない** らしい
そして、**「4,7,8」世代が特にデジモンっぽいらしい。**






---

# 最近のポケモンはどのへんがデジモンっぽいのか？



- <span style ="background-color:#00FFFF">デジモン</span>っぽい<span style ="background-color:#00FFFF">デジモン</span>例
<img src="https://i.imgur.com/Tlo8E5A.jpg" height=600px>

- <span style ="background-color:#00FFFF">デジモン</span>っぽい<span style ="background-color:#FFFF00">ポケモン</span>上位
<img src="https://i.imgur.com/eWrAX2B.jpg" height=600px>



---
- <span style ="background-color:#FFFF00">ポケモン</span>っぽい<span style ="background-color:#00FFFF">デジモン</span>上位
<img src="https://i.imgur.com/FkMhePE.jpg" height=600px>

- <span style ="background-color:#FFFF00">ポケモン</span>っぽい<span style ="background-color:#FFFF00">ポケモン</span>例(第3世代以降)
<img src="https://i.imgur.com/gyatPf5.jpg" height=600px>


分類結果を見ると、**ポケモンっぽさ** と**デジモンっぽさ** にはなんとなく次のような特徴が見えてくる。

- デジモン
    - 黒い
    - トゲトゲしたデザイン
    - 複雑
    - ビビッドな色合い
    - 描き込みが多い
- ポケモン
    - パステルカラー
    - 丸い
    - シンプル

特に、デジモンっぽいグループを見てみると、以前私が投稿した記事に基づく、**「デザインにおける情報量」（以降「情報量」）が高いデザイン**ほど、デジモンに分類されやすいのがわかる。
![](https://i.imgur.com/H7Eme9Y.png)
実際、ポケモンとデジモンでは情報量に圧倒的な差があるようだ。

>以前投稿し、ポケモンたかさおじさんのおかげで<font size=3 color="red">プチバズった</font>記事。
>**「最近のポケモンはデザインが複雑になったのか？【Python】【OpenCV】」**
>https://qiita.com/mrok273/items/6f0bcdc62b6184f79308

|情報量の少ないポケモン|情報量の多いポケモン|
|---|---|
|<img src="https://i.imgur.com/v3TXBHX.jpg" height=250px>|<img src="https://i.imgur.com/jULBt0q.jpg" height=250px>|




## デザインが複雑なだけではAIは「デジモンっぽい」とは感じない？？

下図はポケモン・デジモンそれぞれの情報量と誤分類率の傾向である。
（赤線はsns.regplotによってロジスティック回帰を行った回帰線）


![](https://i.imgur.com/Z7gqNAL.png)
ポケモンはデザインが複雑になるほど、デジモンへの誤分類率が高くなる傾向がある。

![](https://i.imgur.com/3IFjKOZ.png)

一方、デジモンはデザインが単純なほど、ポケモンへの誤分類率が高い傾向にある。

しかし、**情報量の多さはデジモンらしさの一要因ではあるようだが、それだけが決め手ではないらしい。**




## AIはどこを見ていたのか？　可視化その１.Grad-CAMによる貢献領域の可視化

>CNNの可視化については以下のページが充実！！！
>https://github.com/utkuozbulak/pytorch-cnn-visualizations


分類に使用したモデルは,5つの層で畳み込むことで最終的に4096の特徴量に変換しているため、人間の目で何が分類の結果に寄与しているのかを知るのは困難だが、
**Grad-Cam**という手法を使うことで人間にもある程度認識しやすい状態となる。

例えば、以下の画像で「犬」と分類されるのに貢献した画像内の領域を可視化することができる。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/610426/384da4d6-875d-550c-99ef-c5004b996a91.png)


ポケモン画像にGradCAMを使用した結果がこちらである。

|「デジモン」分類への貢献領域|「ポケモン」分類への貢献領域|
|---|---|
|![](https://i.imgur.com/lWBoz3U.png)|![](https://i.imgur.com/zA3ceF6.png)|

フシギダネの目の部分がデジモン分類へ貢献、一方他の広い範囲に渡ってポケモン分類へ貢献しているのはわかるが、これだけではどのような特徴を見ているのかわからないので以下のように工夫した。
 
 
### 工夫:同程度に ポケモンっぽいポケモンとデジモンのキメラを作ってGrad-CAM


こちらは100％ポケモンだと分類されたポケモンのピカチュウと、
**デジモンにもかかわらず、2000回中2000回ともポケモンだと誤分類されてしまったテリアモンである**


|ピカチュウ(ポケモン)<br>ポケモンらしさ100%|テリアモン(デジモン)<br>ポケモンらしさ100%|
|---|---|
|![](https://i.imgur.com/s15bh4X.png)|![](https://i.imgur.com/mcf2WxK.jpg)|


この、ピカチュウ・テリアモンの両者ともポケモンへの分類率100％の画像を以下のように4種類のポケモンデジモンキメラ画像を作成する。

|![](https://i.imgur.com/qp0YVcC.png)|![](https://i.imgur.com/a3C4wno.png)|
|---|---|
|![](https://i.imgur.com/B8szdCU.png)|![](https://i.imgur.com/RVe6pfe.png)|


### キメラ画像による可視化の例

例えば、下の画像はポケモンであるスバメ（右上）とデジモンであるポポモン（右下）の4種類のキメラ画像を作成し、それぞれポケモン分類貢献領域とデジモン貢献領域をGrad-CAMで取得したものである。
このポケモンとデジモンの組み合わせは、ポケモンへの分類率がそれぞれ64.25%,63.93%と最も近い者同士をマッチングさせている。
![](https://i.imgur.com/7q2kMJm.png)

8つのキメラ画像のGrad-CAM結果のうち、
**左４つはデジモン分類貢献領域、右4つはポケモン分類貢献領域を表す。**
こうして8つのキメラ画像結果を見ると、**スバメの目**の部分のデジモン分類貢献が、本物のデジモンであるポポモンの領域に比べても高いのがわかる(図の左下)。

このように、同じくらいポケモンに分類されたポケモンとデジモンを結合させることにより、**片方の画像のみで行うよりも、デジモンすぎることもポケモンすぎることもなくなり、GradCAMをかけたあとの貢献領域を視認しやすくなった。**

---

## AIはどこを見ていたのか？　可視化その２.フィルターの可視化と中間層の抽出

フィルタの可視化とは以下のようなものとなる。AIはこれらの構造が画像内にどのように存在・配置されているかを見て処理をしているらしい。
<img src="https://i.imgur.com/Dn3dd94.jpg" width=300px> <img src="https://i.imgur.com/03AAVhG.jpg" width=300px> 

上のフィルタによく反応する構造は、それぞれ以下のようなものになる
<img src="https://i.imgur.com/jqfbGgZ.png" width=300px> <img src="https://i.imgur.com/n536UdG.png" width=300px> 

左のフィルタでは爪や羽・毛のような細かいギザギザに反応し、右のフィルタでは目のような丸い構造によく反応する。

ポケモン-デジモンのどちらに分類しやすくなるかで **「ポケモン分類貢献フィルタ」「デジモン分類貢献フィルタ」** と定義した。


>Utku Ozbulak氏のgithubのcnn_layer_visualization.pyを使用させていただきました。
>https://github.com/utkuozbulak/pytorch-cnn-visualizations
>VGG19ネットの24番目のフィルタ512チャンネルについて可視化と中間層の出力の抽出を行いました。

>pytorchでの中間層の出力を得る方法は以下のようにforwardを変更することで可能

```python
 def forward(self,x,target = 24):
     results = []
     for i,model in enumerate(self.features):
         x = model(x)
         if i == target:# ここで中間層の出力を取得
             results.append(x)
     x = self.net.avgpool(x)
     x = torch.flatten(x)
     for i,model in enumerate(self.classifiers):
         x = model(x)
         if ii == 6: # 最終出力も取得
             results.append(x)
     return results
 ```

> 中間層の出力から、フィルタに最も反応している領域周辺を取得するコード例


```python
"""
私が使用した24番目のレイヤーでは幅28 $\times$ 28、元画像が224 $\times$ 224であるため、
１セルごとに8 $\times$ 8の領域を担当していることになる、
このコードでは画像の構造を把握しやすくするために、幅高さともに4ピクセルずつ余分に取得している
"""


#中間層の出力結果の読み込み
temp_df = pd.read_csv(layer_filename)

# 元の画像からnp.array作成
img_array = np.array(img_orig)

#28*28をflattenしたときのインデックスを取得
target_index = int(list(temp_df.loc[filter_num].sort_values(ascending=False).index)[0]) 

row = target_index//28
col = target_index%28
row_min = max(0,row*8 - 4)
row_max = min(row*8+12,224)
col_min = max(0,col*8 - 4)
col_max = min(col*8+12,224)


#対象領域が白すぎたら取得しないようにする
image_test = img_array[row*8:min(row*8+8,224),col*8:min(col*8+8,224)][:,:,:3]
white_area_per = np.where(image_test.reshape(-1,3)==[255,255,255],True,False)[:,0].sum()\
                        /image_test.reshape(-1,3).shape[0]
if white_area_per < 0.95:

    #フィルタの出力値
    attribute_value = temp_df.loc[filter_num,str(target_index)]
    #部位抽出
    image_array_part = img_array[row_min:row_max,col_min:col_max]
    #PILで画像を作成
    image_part = Image.fromarray(image_array_part).resize((64,64))
```


> フィルタ画像で分類結果に有意なもののみ、以下のgithubにアップしました
> https://github.com/mrok273/Qiita/tree/master/%E3%83%9D%E3%82%B1%E3%83%A2%E3%83%B3/poke_vs_digi/hidden_layer

---

### ポケモン分類貢献フィルタ

> ここに掲載しきれないものは以下のgithubにアップしました
> https://github.com/mrok273/Qiita/tree/master/%E3%83%9D%E3%82%B1%E3%83%A2%E3%83%B3/poke_vs_digi/feature



512のうちポケモン判定に有意にはたらいたフィルタは40種類。そのうち解釈がしやすかった一部を紹介する。
左の画像がVGGのフィルタを可視化したもので、右の画像は、このフィルタに反応した箇所のうち、上位100枚である。（各番号は私の管理用のもの）
縦の輪郭・

- 12.爪・羽の先など
<img src="https://i.imgur.com/gvwK5wm.jpg" width=300px><img src="https://i.imgur.com/ltCKV2R.png" width=300px>

- 74.翼・触角など
<img src="https://i.imgur.com/pLLDyqR.jpg" width=300px><img src="https://i.imgur.com/cDzscCh.png" width=300px>

- 85.曲線構造
<img src="https://i.imgur.com/ZteIK4O.jpg" width=300px><img src="https://i.imgur.com/MV66jaz.png" width=300px>

- 214.塗り　
<img src="https://i.imgur.com/v7EsUT5.jpg" width=300px><img src="https://i.imgur.com/wmWcTyD.png" width=300px>

- 327.輪郭（縦方向曲線）
<img src="https://i.imgur.com/yqM4OAT.jpg" width=300px><img src="https://i.imgur.com/rZmkZS3.png" width=300px>



### デジモン分類貢献フィルタ

デジモン分類に有意に貢献したフィルタは43種類。
ポケモン分類貢献フィルタに比べ解釈のしやすいフィルタが多かったように思う。

- 11.彩度
<img src="https://i.imgur.com/ZConVLc.jpg" width=300px><img src="https://i.imgur.com/LzXc0b1.png" width=300px>

- 91.丸い目
<img src="https://i.imgur.com/XEqUSFB.jpg" width=300px><img src="https://i.imgur.com/dnKMrfk.png" width=300px>

- 136 光沢
<img src="https://i.imgur.com/SpjoX0G.jpg" width=300px><img src="https://i.imgur.com/iCSm0ch.png" width=300px>

- 236.金属的な色
<img src="https://i.imgur.com/c66LOO4.jpg" width=300px><img src="https://i.imgur.com/2MHw0QA.png" width=300px>

- 160 するどいトゲ
<img src="https://i.imgur.com/ZLansHL.jpg" width=300px><img src="https://i.imgur.com/y5yTvEb.png" width=300px>

- 271.爪
<img src="https://i.imgur.com/yUDOVzR.jpg" width=300px><img src="https://i.imgur.com/qqd1ys2.png" width=300px>

- 307.毛
<img src="https://i.imgur.com/THFd6kL.jpg" width=300px><img src="https://i.imgur.com/6X2nIDV.png" width=300px>




## ポケモンとデジモンの特徴の違いのまとめ


### 爪・キバ・毛のトゲトゲ表現

- デジモンの爪・キバ・毛のトゲトゲ表現
![](https://i.imgur.com/SfUDfxj.png)

- ポケモンの爪・キバ・毛のトゲトゲ表現
![](https://i.imgur.com/6avFQth.png)

- デジモンと勘違いされたポケモンの爪・キバ・毛のトゲトゲ表現
![](https://i.imgur.com/4ScTQ8A.png)

基本的にポケモンの爪・キバ・毛のトゲトゲ表現の表現は荒いジグザグで表現されることが多い。
一方、デジモンは鋭い・密集・影が濃いなどの特徴がある。

AIにとって初代・金銀のポケモンは比較的爪・キバ・毛のトゲトゲ表現が控えめに見えたということだろうか。たしかに初代のポケモンでもトゲトゲが鋭い鳥の爪やくちばし。毛並みが緻密に描かれているポケモンほどデジモンと誤分類されやすかった。


### 目の表現

- デジモンの目
![](https://i.imgur.com/3LEsuzc.png)

- ポケモンの目
![](https://i.imgur.com/niUx9gk.png)

- デジモンと勘違いされたポケモンの目
![](https://i.imgur.com/lI24hG8.png)


**ハイライトのある目は高確率でデジモン判定を喰らっている。**
**目の描き方は４世代から特に変化した**ようなので、４世代のポケモンの誤分類率が高いのはそのせいかもしれない。
一方、ポケモン判定を受けやすい目は小さな点か線で表現されることが多いようだ。


>下図は海外で **「ポケモンの目のデザイン。今昔」** としてredditで度々貼られる、ポケモンの目の描かれ方である。
>![](https://i.imgur.com/W0uF33p.png)
><font size=3 color="red">「最近のポケモンは三角目じゃなくなってポケモンらしくなくなった！！！」</font>という意見がアンケートにも見られた。たしかに三角目もポケモンの特徴と一部認識されているようだが、多くのGrad-CAM画像を見た結果、AI的には丸い目はデジモンっぽいらしいが、三角目の方はそこまでポケモンの判断基準にはならない印象。

### テカテカはデジモン。ゴツゴツはポケモン。

- デジモンのテカテカ表現<br>
![](https://i.imgur.com/dC8pEUv.png)

デジモンは金属的な質感が多く、グラデーションの仕方に特徴がある。

- ポケモンのゴツゴツ表現<br>
![](https://i.imgur.com/CJYytes.png)

一方、ポケモンには岩タイプというのがあるためか、ゴツゴツした質感や構造はポケモン判定を受けやすい。

### 小顔はデジモン判定

- デジモンの小顔部分（ものすごく多いうちのごく一部のみ）<br>
![](https://i.imgur.com/ZEH3qqT.png)

- デジモンと勘違いされたポケモンの小顔表現<br>
![](https://i.imgur.com/NZcQynO.png)

顔は特に線や影が集中しやすい場所のためか、小顔はデジモン判定を受けていた。
この小顔表現は最近の世代になるほど多くなっている印象。


### 色が違う

色についてはフィルターを目視するだけではわからないところが大きかったので、opencvなどを使って各画像の色を集計してみた。

- 彩度が違う
下のグラフは各ポケモン＆デジモンの画像で最も高い彩度を集計したもの。
デジモンのみ明らかに違う彩度が使われているのがわかる。
![](https://i.imgur.com/jPcUQtA.png)

- 色の散らばり具合が違う
下のグラフは画像で使用されている色の散らばり具合である。デジモンの色が分散しがちであるのと同時に、世代を重ねるごとにポケモンも多くの色が使用されているのがわかる。
![](https://i.imgur.com/MSbrfdJ.png)

> 色の散らばり方の算出方法：
> RGBをLabに変換し、DBSCANで近い色をクラスタリング。
> 算出したabからarctanでラジアンに変換したものを重み付き合成ベクトルを作成し、
> 合成ベクトルの長さが大きいほど色が集中し、小さいほど色が分散していると定義。

---

# 実験：グラエナをポケモンらしくしてみよう！


<img src="https://i.imgur.com/PrGYiau.png" width=300px>

この子は**2000回中1997回**デジモンに間違われたポケモン。グラエナである。

グラエナを知っている方々は <font size=3 color="red">**「グラエナがデジモンっぽい？？？？何言ってんだ？？？エースバーンのほうがデジモンだろ？？？」** </font>と思うかもしれないが、AI的にはめちゃくちゃデジモンっぽいらしく、**エースバーンの4倍以上デジモンに間違われている。**


|検索ワード|ヒット数|AIによる<br>誤分類回数|画像|
|---|---|---|---|
|「グラエナ　デジモンっぽい」|8 件|1997|<img src="https://i.imgur.com/PrGYiau.png" width=150px>|
|「エースバーン　デジモンっぽい」|約 277,000 件|445|<img src="https://i.imgur.com/keRvyHS.png" width=150px>|


このグラエナのデジモンっぽいらしい部分を少しずつ改変した画像を嫁に22枚作成してもらい、ランダムに学習した分類器に1000回分類させ、どの部位がポケモンらしさに寄与しているのかを計測した。


![](https://i.imgur.com/FbvBoP2.png)

> 実験に使用したグラエナ画像は以下のgithubにアップしました
> https://github.com/mrok273/Qiita/tree/master/%E3%83%9D%E3%82%B1%E3%83%A2%E3%83%B3/poke_vs_digi/graena_change


**結果は以下のようになった。**

| 変更箇所             |画像 | ポケモン<br>らしさへの<br>寄与率|コメント|
|---|---|---|---|
| 加工なし         | <img src="https://i.imgur.com/odFZ2WU.png" width=200px>     | ----    |全く加工なし。<br>デジモンにとても近い状態|
| 毛先まとめ角     |![](https://i.imgur.com/SNy0A72.png)  | 0.8%  |ほぼ影響なし|
| 頭               |![](https://i.imgur.com/t1UXssE.png) | 7.0%         |頭の毛の輪郭を丸めた。<br>学習によっては逆に<br>デジモンっぽくなることも|
| 足指             | ![](https://i.imgur.com/zQeK8Uj.png)    | 7.0%       |Grad-CAMによると<br>爪よりも指の線に反応していた<br>ので除外。変更する面積は小さいが<br>ポケモンらしくなった|
| 三角目           | ![](https://i.imgur.com/0uMQq3e.png)  | 7.3%    |初代・金銀のポケモンに<br>採用されていた三角目を導入。<br>ポケモンらしさには<br>さほど影響なし<br>|
| ハイライト<br>単純化  |![](https://i.imgur.com/EDSpm0G.png) | 15.5%|デジモン判定で反応していた<br>ハイライトのギザギザを除去。<br>|
| 毛先カット             |![](https://i.imgur.com/nyEm294.png) | 23.8%             |主に輪郭部分の毛先を丸めた。<br>ポケモンらしさが大幅アップ<br>|
| 毛先まとめ丸       |![](https://i.imgur.com/561yKXS.png) | 65.7%   |毛束をさらにまとめた状態。<br>もはやポケモン<br>|

|最も<span style ="background-color:#00FFFF">デジモン</span>らしいグラエナ<br>（本家）|最も<span style ="background-color:#FFFF00">ポケモン</span>らしいグラエナ<br>(毛まとめ丸+三角目+<br>ハイライト+足先)|
|---|---|
|<img src="https://i.imgur.com/odFZ2WU.png" width=200px>|<img src="https://i.imgur.com/YycZeru.png" width=200px>|
|ポケモンらしさ <font size=3 color="red">**1.3%**</font>|ポケモンらしさ <font size=3 color="blue">**94.0%**</font>|

![](https://i.imgur.com/zBBnOTb.png)



多くのポケモンファンは<font size=3 color="red">　**「三角目こそがポケモンらしい特徴として至高!!」** </font>　などと考えるだろう。しかし、**AIにとっては寄与率7.3%と些細な特徴である。**

それよりも毛のギザギザの影響が大きく、毛先をまとめてあげるだけでポケモンらしさに65.7%も貢献した。

グラエナがデジモンだとAIに認識されたのは毛先のギザギザの影響が大きかったようだ。
全ポケモンの画像を確認してみたが、たしかにここまで毛がフサフサに描かれているポケモンは他にはいなかった。
「嘘だ！他にももっといるはずだ！」と思うかもしれないが、
毛がフサフサそうなポケモンの多くは上の実験で言うところの
「毛先まとめ丸」のように大きめの束が丸く描かれている。

> 全身から長い毛が生えまくっているというのが特徴のポケモン、オーロンゲの毛ですら、
> 毛先がまとめられ、丸みを帯びたような表現となっている
>![](https://i.imgur.com/As9hjuO.png)


---

# 人間とAIにとっての「デジモンっぽさ」は違う仮説

先ほど、「デジモン」について言及のある回答155件の中で、私の数え方で34件(ポケモンたかさおじさんの数え方で22件)が「いつからデジモンっぽい」「○世代がデジモンっぽい」への言及があった。<font size=3 color="red">（データがたった34件なので特にここからは話半分で読んでほしい）</font>
http://pkmnheight.blogspot.com/2020/07/7.html#itu


![](https://i.imgur.com/deBhpAO.png)


深層学習分類器によるとデジモンっぽいデザインのポケモンは **「4,7,8」世代**だった。
一方、アンケートで言及が多かったのは、**「5,7,8」世代**であった。
これは一体どういうことなのか？
やはり人間とAIは分かりあえないのだろうか？

この人間とAIの違いは、ポケモンたかさおじさんの以前の記事にヒントがあった。

<font size=5 color="blue"> [**ポケモンらしさ-5_ヒトガタ増えた？**](http://pkmnheight.blogspot.com/2020/05/5.html "ポケモンらしさ-5_ヒトガタ増えた？")</font>
http://pkmnheight.blogspot.com/2020/05/5.html
>![](https://i.imgur.com/3WMxQX2.png)

**5世代の直立ポケモンが多い**のである。

|       | 全種 | 直立数 | 直立率 | 増加率 |
|-------|------|--------|--------|--------|
| 1世代 | 151  | 36     | 23.8%  |        |
| 2世代 | 100  | 28     | 28.0%  | 117.4% |
| 3世代 | 135  | 33     | 24.4%  | 87.3%  |
| 4世代 | 107  | 27     | 25.2%  | 103.2% |
| 5世代 | 156  | 51     | 32.7%  |<font size=3 color="blue"> 129.6%</font> |
| 6世代 | 72   | 20     | 27.8%  | 85.0%  |
| 7世代 | 86   | 27     | 31.4%  | <font size=3 color="blue"> 113.0% </font>|
| 8世代 | 89   | 33     | 37.1%  | <font size=3 color="blue"> 118.1% </font> |


直立ポケモンの割合が前の世代からの増加率と、
アンケートで「デジモンっぽい」と言及されていた世代を比較してみると、第2世代を除いて「５世代が高い」「６世代で落ち着き」「７，８世代が高い」と増減がほぼ一致した。


![](https://i.imgur.com/Xm1iRP8.png)

おそらく、人間の認識でのポケモンにおけるデジモンっぽさとは、二本足で直立しているかどうかが大きく効いているのかもしれない。
何故ならデジモンは進化すると直立する（もっと言えば人間・スーパーロボットっぽくなる）のはデジモンに詳しくない者でも知っているような話だ。(実際にデジモンの直立率を名前がア行の者だけ確認してみたら **50%ものデジモンが直立していた** )


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/610426/7e9f6659-3ccd-8d44-7d17-aead4ebae55c.png)


つまり、人間が感じる「最近のポケモンはデジモンっぽい」には
1. **<span style ="background-color:#00FFFF">デジモン</span>は進化すると二本足で立つ**
2. **最近の<span style ="background-color:#FFFF00">ポケモン</span>は二本足で立つ**
3. **よって、最近の<span style ="background-color:#FFFF00">ポケモン</span>は<span style ="background-color:#00FFFF">デジモン</span>っぽい**

という**三段論法が成り立っているかもしれない。**



---

# まとめ

- 初代・金銀時代の昔のポケモン画像と、ランダムなデジモン画像を学習させた分類器を作成し、新しいポケモンと残りのデジモンを分類させる。これを2000回繰り返し、誤分類率を集計した。
- その結果、「4,7,8世代」のポケモンがデジモンへの誤分類率が高かった。つまり、**たしかに最近のポケモンほどデジモンっぽいと言えなくもない。**
- **デザインが複雑なポケモンほどデジモンと分類されやすいが、他にも彩度・丸い目・小さく描かれた顔などがAIにとっての「デジモンっぽい」に影響しているようだ**が、把握できたのはごく一部の特徴かもしれない。
- 同じくらいの「ポケモンらしさ」を持つポケモンとデジモンのペアを作り、Grad-CAMにかける方法と、中間層の出力をフィルターのチャンネルごとで確認する方法を組み合わせることで、爪・塗り・目・金属的なテカりなど、いくつかの特徴を基にAIは分類しているということが、ある程度は把握できた。
- ディープラーニングが思う「デジモンっぽい」と人間が思う「デジモンっぽい」は異なり、人間は直立二足歩行という文脈からデジモンらしさをより強く感じとるのかもしれない。

## 反省点

- デジモンに詳しい方の意見を聞きたかった。ポケモンは古いのと新しいのを区別して学習を行ったが、デジモンは調べても全然よくわからなかったため、完全にランダムで行ってしまった。
- 「ポケモンがデジモンと間違われる条件」 をいくつか上げたが、解釈できたのはごくわずか。
- AIによる分類と人間の直感を近づけるには、各画像からどのくらい直立しているかの情報を抽出できる必要がある。生身の人間の画像ではpose estimation,posture recognitionなどの技術が発展している。イラストの、ましてやそれぞれ手の位置や数すら異なるポケモンで行うのは難しく、顔認識すら困難だった。