• AI・機械学習
    人工知能・機械学習は、そもそも何を学習しているのか?
    2018年4月29日
  • AI・機械学習
    人工知能・機械学習アルゴリズムの簡単な使い分け方【前編】
    2018年4月25日
  • その他記事
    【実は可能】郵便物の時間指定配達を受取人が変更できる条件
    2018年4月24日
  • AI・機械学習
    R言語でクロス集計ができるパッケージ―エクセルとの比較―
    2018年4月9日
  • その他記事
    PDF/X規格(CMYK)に安価で変換できるソフト
    2018年4月9日
  • AI・機械学習
    R言語オンラインークラウド上で実行可能ー
    2018年4月5日
  • AI・機械学習
    Python言語オンラインークラウド上で実行可能ー
    2018年4月5日
  • AI・機械学習
    AIは未来のEXCEL―あなたが人工知能を習得するべき理由―
    2018年4月24日
  • AI・機械学習
    それでもノンプログラマーにPythonではなくR言語をすすめる理由
    2018年4月30日
  • AI・機械学習
    人工知能・機械学習アルゴリズムの簡単な使い分け方【後編】
    2018年4月25日
  • その他記事
    当研究所ホームページについて
    2018年4月5日
人工知能・機械学習は、そもそも何を学習しているのか?

人工知能(機械学習)のコードを走らせると、しばらくの間コンピュータは計算を続ける。この間、コンピュータは何を求めようとしているのだろうか? コンピュータは何を学習したのだろうか?

機械学習がブロックボックスになっていないか?

ここで少し自分を振り返っていただきたい。あなたは、ただ手順通りにコードを走らせてはいないだろうか? 「謎の作業をパソコンが行っている」と思っていないだろうか? この記事は、機械学習初心者の理解を深めるのが目的だ。

数学と機械学習


少し私自身について話したいと思う。私は京都大学経済学部で金融工学を学んでいた。具体的には、「資産の最適な運用方法は?」、「金融商品の価格の付け方は?」などを確率・統計の道具を使って考えていた。京大経済学部では2年生からゼミに所属するため、それから卒業までずっと金融工学を学び続けていた。ところが、金融工学よりも、私は次第に道具として使っていた数学に惹かれていった。よく考えてみると、物理学のように「世界が数式で表現できる」ことは、とてつもないことだ(一説には、最初にこのように考えたのはガリレオだといわれている)。数学に入り込んでいくほど、数学は「頭の中だけに存在する数遊び」ではなく、「世界や宇宙の『何か』を表現している」としか思えなくなった。そして本気で数学者になろうと、一年間数学以外のすべてを絶ったこともあった(若気の至り)。ある程度勉強すると、初学者だった頃には見えなかった「とてつもなく高い山」が見え、「こりゃダメだ」と数学者になることをあきらめて就職した(したがって、私が最も尊敬するのが数学者と呼ばれる人たちだ)。

なぜ私がこんな話を始めたかというと、数学に少し素養がある人は、機械学習がやっていることにすぐピンとくるからだ。そう。こんなふうに。

「なーんだ。機械学習といってもやっていることは、メトリクスを最適化するパラメータ集合を求めているだけか」

メトリクスとは、評価指標のことだ。機械学習ではよく損失関数(データの正解とモデルの導いた答えの差)という名前で使われ、また、機械学習における最適化は「損失関数を最小化する」ことが多い。つまり、基本的に機械学習は、「損失関数を最小化するパラメータ集合を求めている」ということだ(「パラメータって何?」という疑問については、この後の例を見てもらえばわかるはずだ)。

機械学習初心者のためのモデル解説

さきほど、私は「モデル」という言葉を太字にした。数学が苦手な人のために、CDの売上を通して「モデル」とは何かを説明したい。架空のアイドルユニット「ショコラボーン」がデビューシングルのCDを発売した。週ごとの売上が以下のようになったとする(スマホだと表が切れているかもしれない。6週目が9.6、7週目が7.6)。

1 2 3 4 5 6 7
万枚 3.1 5.0 7.4 9.3 10.2 9.6 7.6

これをプロットすると、

形を見ると、数学の授業で習った2次関数(放物線)のように見える。実際に2次関数で近似してみよう。

さて、2次関数は一般に、
$$ax^{2}+bx+c$$
と書ける。ここで行った近似は、2次関数の係数a,b,cというパラメータを求めることだ。私は今、CDの売上を2次関数でモデル化したのだ。この関数を使って、CDの売上予測ができることになる。

機械学習とパラメータ

機械学習も同じだ。結局はa,b,cのようなパラメータを求めているだけなのだ。そして、重要なことだが、機械学習のパラメータには次の2種類がある。多くの人が誤解しやすいポイントであり、これを知れば機械学習が何をやっているかのイメージが湧く。
①ハイパーパラメータ
②学習により最適化するパラメータ

ハイパーパラメータは、機械学習によりコンピュータが学ぶパラメータではなく、人間が勝手に設定しなければならないパラメータだ。学習により最適化するパラメータは、文字通り長い時間をかけてコンピュータが学習するパラメータである。

さきほどの2次関数でいうと、ハイパーパラメータは「3次関数でも4次関数でもなく2次関数で近似しようとするときの2」であり「a,b,cが学習で最適化するパラメータ」のような具合だ。※この記述はイメージを伝えている。また、実際はハイパーパラメータも、予測がうまくいくよう学習を実行しながら調整していく。

まとめ


だから結局、「機械学習とはメトリクスを最適化する(データとモデルの誤差を最小とする)パラメータ集合を求めることに過ぎない」となるわけだ。どんな高度な機械学習アルゴリズムを用いたとしても、本質的にはパラメータを求めているだけなのだ。

関連キーワード
AI・機械学習の関連記事
  • それでもノンプログラマーにPythonではなくR言語をすすめる理由
  • 人工知能・機械学習は、そもそも何を学習しているのか?
  • 人工知能・機械学習アルゴリズムの簡単な使い分け方【後編】
  • 人工知能・機械学習アルゴリズムの簡単な使い分け方【前編】
  • AIは未来のEXCEL―あなたが人工知能を習得するべき理由―
  • R言語でクロス集計ができるパッケージ―エクセルとの比較―
おすすめの記事