写像への目覚めー機械学習とは写像の構築であるー

2019年6月25日(火)
森田 大樹

写像への目覚め

目が覚めるとあなたは、一面真っ白な部屋にいました。部屋の中央にはカラフルな積み木の山。その隣には3つの箱。あなたは、はじめこそ理解に苦しむこの状況に困惑してしまいましたが、次第に落ち着きを取り戻します。これはきっと夢です。あなたは何もすることがなく退屈になってきたので、その積み木を箱の中へ片付けることにしました。積み木を1つずつ手にとっては箱の中に入れていきます。よく見ると綺麗に色が塗られた美しい積み木です。

片付けが終わったところで、突然アナウンスがなります。「どうしてあなたはそういう風に積み木を片付けたのだろうか?」。あなたは少し驚きますが、同時にこれは夢だと既に冷めきっています。あなたは答えます。「どうしてって積み木の形が丸と三角と四角だったから」。夢は覚めます。

生き物は写像を構築する

「いきなり、何がはじまったんだ!?」と思われたでしょうか。実は、今回のテーマである「写像」を解説する上で大事な物語なのです。

さて、写像とは、2つの集合があるとき、一方の集合の要素を他方の集合の要素に結びつける対応関係のことです。中学時代に理科の授業で、凸レンズを用いてロウソクの像をスクリーンに写す実験を行ったことがあるかもしれませんが、数学における写像もそのようなイメージです。「他方の集合の要素」がスクリーンに写った像に当たる訳ですね。もしかしたら、下記のような表現のほうが馴染み深いかもしれません。関数fは、入力$x$を$y$という出力に結びつける写像です。

$$y = f(x)$$

「パターン認識」という分野があります。画像や音声といったデータの中に潜む何かしらのルール(つまり写像)を自動で抽出する方法を研究する学問です。パターン認識では、このルールのことを「識別規則」と呼んでいます。機械学習とはこのパターン認識を実現するための手法の1つなのですが、近年の技術動向を見るに「パターン認識=機械学習」としても、大きな誤りではないと思います。

機械学習とは結局、入力を出力に移す写像そのものを自動的に取得する手法です。ニューラルネットワークという機械学習の手法を用いれば、犬が写った画像を「犬」というクラスに移す写像が上手く得られます。数学的には色々と混み入ったことを行うのですが、言葉で説明するとただそれだけのことです。

先ほどの夢の話に戻りましょう。入力は何でしょうか? 出力は何でしょうか? そして写像は何でしょうか? 入力は「積み木」ですね。出力は「この箱に入れる」という考えです。さて、それでは写像は? 簡単です。「三角形の積み木ならば、三角形用の箱に入れる」というように、全ての積み木に対してどの箱に入れるかが明確に分かるルールです。絵で描くと次のようになります。

「積み木の分類の仕方を誰にも教わっていない」という事実は注目に値します。あなたはまず3つの箱を見て、「きっと3つぐらいに分類できるのだな」と思い、そして積み木全体から丸・三角・四角という3つのパターンを見出して、1つずつ箱に分けたのです。この作業は機械学習における「分類の数が指定されたクラスタリング」そのものになります。

あなたはいつでも形に応じて分類を行うでしょうか? 分類の仕方を教わっていない限り、そうとは言い切れませんね。別の夢では積み木の色に応じて分類するかもしれません。もしくは積み木の大きさに着目するかもしれません。「分類の正解」が与えられないため、どのような分類をするか、つまりどのような写像を構成するかはあなたに委ねられています。データサイエンスの世界で言えば、「あなた」は「前処理と分類アルゴリズム」なのです(例えば、前処理を上手く行えば、積み木の色の差異が強調されるように積み木を変換できます)。

私たちの脳には、犬を「犬」とみなし、りんごを「りんご」とみなす写像が刻まれています。私たちは、幼い頃から目や耳といった感覚器を通して外界から大量の情報を仕入れてきました。親・兄弟もしくは学校の先生という“教師”から正解を教わって各々の情報を分類することもあれば、これまでの経験を元に自力で分類を行うこともあります(例えば、キバノロという聞き慣れない動物を見た時に、その姿・形からキバノロが鹿の仲間だと分類できるでしょう。そしてきっと、セイウチの仲間とは思わないでしょう)。それもこれも「写像の構成」という私たち生物の能力のおかげです。「何かを何かにみなす」という写像を構成できなければ、私たちはきっと食べ物をただの物体としか認知できません。

おわりに

こんな話を聞いたことがあります(これが本当かどうかは分からないので、参考程度に)。もし人間にカエルの皮膚を“上手く”移植したら、その人間はしばらく動けなくなってしまうと。カエルは皮膚で世界を感じ取っているそうです。ここからは私の考えですが、人間は皮膚を経由して得られる情報を上手く処理できないのではと思います。視覚に大きく依存した人間は、皮膚から得られた情報に対して「何かを何かにみなす」という写像を上手く構成できない。従って、情報はあるのに周りの世界を認知できなくて行動できないということは十分あり得ると思います。筆者は時折「他の生き物が見る世界はどのようなものだろう」と考えるのですが、カエルの写像はきっとカエル専用なのでしょうね。

さて、次回は線型代数学で最も重要な指標の1つと言われる「行列式」について見ていきます。この行列式、英語では「determinant」と言い、「決定するもの」を意味します。一体何を決めているのでしょうか? そして機械学習・深層学習の文脈ではどんな風に利用されるのでしょうか? 次回のお楽しみです!

スキルアップAI
東京工業大学情報理工学院修了。大学院時代は数理モデリングの手法を用いた脳神経科学の研究に携わる。 大手インターネット企業でマルチビッグデータシステムの開発・運用業務に従事した後、個人事業主として独立。現在SkillUpAI講師と並行し、MoneyForwardLab特別研究員として金融系データの解析業務を行う。2018年、ショウジョウバエ大規模ニューラルネットワークの数理モデリングの分野でIEEE Computational Intelligence Society Japan Chapter Young Research Award受賞。

連載バックナンバー

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています