どうも、カタミチです。
さて、今日も「最短コースでわかる ディープラーニングの数学」のひとり読書会、やっていきたいと思います。
今日から8章「ロジスティック回帰モデル」に入ります。2値分類と多値分類で難易度が異なるようなので、まずは2値分類からのようですね。
ということで、いってみよ〜
8-1. 例題の問題設定
さて、まず今回使うデータは何かというと…
「Iris Data Set」ってやつですね。こいつもよく見ますね。Irisは日本語でアヤメのことですね。このデータセットから今回の例題は…
例題:「Iris Data Set」を学習データとして、「がく片の長さ(sepal length)」と「がく片の幅(sepal width)」からアヤメの品種を「setosa(class=0)」と「versicolour(class=1)」の2種類に分類するモデルを構築せよ。
ですね。setosaやversicolourでググってみたんですが、和名は見つかりませんでした。ちなみに、versicolourの「colour」はイギリス表記ですね(どうでもいい)。
8-2. 回帰モデルと分類モデルの違い
今回の問題は分類問題ってことで、分布するデータをいい感じのところで分断する直線を引くってのがゴールになります。…まぁ、データを2つに分けると言っても直線で分けられるとも限らないんですが、どうやら今回の例題のデータの散布図を書いてみると、直線で分けられそうなんですね、これ。
つまり「直線の式」を求めるのが今回の目的ってことになります。「直線の式」って目的は前回の回帰モデルと同じですが、性質がぜんぜん違いますね。回帰モデルのやつは、データが寄ってるところに線を引くのに対し、分類モデルは、データを2つにぶった切る線です。ある意味「壁」と言ってもよさそうです。ウォールマリアですね(マリアとは)。
で、そんな壁のことを「決定境界」と呼ぶらしいです。…なにやらめっちゃカッコイイ名前ですね。ジャンプ漫画の強キャラが使いそうなワザっぽい(小並感)。
8-3. 予測モデルの検討
さて、前章同様まずは予測モデルを作るところからですが、結構読み込まないと理解できませんでした(汗)。
で、色々と変遷を経て得られた予測モデルがコレ。
\(u=\boldsymbol{w} \cdot \boldsymbol{x}(=w_0x_0+w_1x_1+w_2x_2) \tag{1}\)
\(yp=f(u) \tag{2}\)
\(f(x)=\frac{1}{1+exp(-x)} \tag{3}\)
線形回帰モデルのときは、\(\boldsymbol{w} \cdot \boldsymbol{x}\)をそのまま予測値\(yp\)として使っていましたが、今回の問題では正解値\(yt\)を\(0\)(=setosa)と\(1\)(=versicolour)と定義したので、ちょっと具合が悪いです。ってことで、\(\boldsymbol{w} \cdot \boldsymbol{x}\)の値を\(u\)としたとき、その\(u\)を\(0\)〜\(1\)の範囲に押し込めて\(yp\)にするために、(3)のシグモイド関数を使う…ってことになります。\(yp\)の値が\(0\)に近いほど「setosaっぽい」ってことになり、\(1\)に近いほど「versicolourっぽい」ってことにしたものを予測モデルにするようです。
ちなみに、\(u\)を\(0\)〜\(1\)に押し込める際にシグモイド関数を使ったのは、次に求める損失関数が微分可能な連続関数である必要があるためですね。うん、シグモイド関数の特徴をうまく活用するってわけですね〜。で、こいつがG検定の勉強のときにも出てきた「活性化関数」ってやつですね。ようやく、その意味が実感を伴って理解できました。
ということで
今回の「予測モデルの検討」は、かなり何度も読み込まないと理解できませんでしたが、一応は理解するところまでたどり着きました。ただ、まだ知識として完全に定着したかというとアヤシイので、この先の節も急がずじっくりやっていきますかねー。
ではまた。