AIを学ぶために数学をおさらいしてみる (対数関数編)

対数関数 を学んで見る

どうもこんにちは。

肉球 (@nikuq299com) です。

 

先日の記事に書いたとおり、人工知能で利用する数学のおさらいをはじめました。

Kindleで買った電子書籍を見て勉強しているのですが、勉強はパラパラとページ送りできる紙書籍の方が使い勝手が良さそうと感じています。

でも、また紙の書籍を増やして部屋が狭くなるのは嫌なので、そこは工夫で乗り切る!

ポイントポイントをブログの記事にして、気になるところはこのブログのリンクを1クリックして確認できるようにしようと思ってます。

ということで、この記事は自身のアウトプットを兼ねたカンペ、ついでに読んでくれた方のお役に立てれば、と言う位置づけです。

 

 

はじめに

ポイント1

log というやつです!

 

私が読んでいる書籍人工知能プログラミングのための数学がわかる本からの引用です。

・人工知能では、尤もらしさを表す度合いとして尤度が使われ、尤度 (ゆうど) を示す関数を尤度関数といいます。

・尤度関数は、式的には確率式と同じになり、尤度は1以下で表現されるので、どんどん値が小さく扱いにくくなります。そのため、尤度の対数 (log) を取って計算する対数尤度関数が用いられることが多いです。

・対数をとることで、\(\log_a{XY} = \log_a{X} + \log_a{Y}\) という式を適用でき、掛け算を足し算で表現できるので、値が小さくなり、計算しやすくなります。

 

対数関数は計算における数値を最適化して楽に計算をしようという趣旨であり、別にAIの理論に絡む話ではありませんね。

今数学を勉強する目的は、AIに関する基礎知識をつけることなので、細かい話はおいておき、概略を掴む学習をしていきます。

 

指数関数と対数関数

ポイント2

指数関数と対数関数をおさらいしてみる!

 

ここでは、対数関数に関わりの深い指数関数と合わせて説明をします。

Wikipediaで指数関数と対数関数ページを見てみたので、一部引用します。

 

指数関数

まずは指数関数からの引用です。

実解析における指数関数(しすうかんすう、exponential function)は、における指数 (exponent) を変数として、その定義域を主に実数の全体へ拡張して定義される初等超越関数の一種である。対数関数逆関数であるため、逆対数 (anti-logarithm, inverse logarithm) と呼ばれることもある自然科学において、指数関数は量の増加度に関する数学的な記述を与えるものとして用いられる(指数関数的増加英語版指数関数的減衰の項を参照)。

 

ちょっと難しそうな説明ですね。

簡単に言うと、指数関数は \(y = a^x (a > 0, a \neq 1 ) \) というのが定義なので、いったんこれを覚えておけば良いと思います。

 

対数関数

続いて対数からの引用です。

対数(たいすう、logarithm)とは、ある数 x を数 b の冪乗 bp として表した場合の冪指数 p である。この p は「底を b とする x の対数logarithm of x to base b; base b logarithm of x)」と呼ばれ、通常は logb x と書き表される。また、対数 logb x に対する x は真数フランス語版(しんすう、antilogarithm)と呼ばれる。数 x に対応する対数を与える関数を考えることができ、そのような関数を対数関数と呼ぶ。対数関数は通常 log と表される。

 

簡単に言うと、対数関数は「指数関数の表現を変えたもの」という感じでしょうか。

上記の引用を公式に置き換えて見てみます。

例えば、\(2^4 = 16\) (\(16 = 2^4\)) という式は、対数で表現すると\(4 = \log_2{16}\) となります。

このとき、指数4を2を底とする16の対数といいます。

 

これを一般化するため、\(16 = 2^4\) を\(x = a^y\)に置き換えて同様の計算をすると、指数\(y\)を底\(a\)と真数\(x\)で、\(y = \log_a{x}\) と表せます。

 

\( a > 0, a \neq 1とし、xを正の変数とする場合、 \)

$$ y = \log_a {X} $$

と表せる関数を対数関数といいます。

 

覚えておいたほうが良い公式

ここに覚えていたほうが良い公式をカンペ代わりに載せます。

公式の証明までは時間がないのでパスします。

 

\(a > 0, a \neq 1, X, Y > 0\) の場合、下記の公式が成り立ちます。

  • \( \log_a {a} = 1 \)
  • \(\log_a{1} =  0\)
  • \(log_a {XY} = \log_a{X} + \log_a{Y}\)
  • \(log_a{\frac{X}{Y}} = \log_a{X} – \log_a{Y} \)
  • \( \log_a {X^p} = p\log_a{X} \)
  • \(c > 0, c \neq 1 の場合、 \log_a {X} = \frac {\log_c {X}} {\log_c {a}}  \)

 

 

まとめ

まとめ

指数関数と対数関数は対の関係にある!

 

数学に関わるたびに想うのですが、昔の人すごい。超すごい。

Wikipediaによると、この対数という概念は、今から400年以上昔の16世紀 (1588年) に考案されているようです。

1600年というと、日本では関ヶ原の戦いで徳川家康が天下統一を決定的なものにした頃です。

そんな昔に、このような概念がすでに生まれていると思うと、まさにイノベーションを感じずに要られません。

 

対数関数が考案されてから400年が過ぎ、私が学生時代にサラッと習った指数関数、対数関数ですが、当時はヒーヒー言いながら問題を解き、そこからさらにときが経過した2019年に、また対数関数のおさらいをしています。

学生時代に何気なく習った内容ですが、400年以上、社会の基礎として脈々と受け継がれていると思うと、数学にロマンを感じずにいられません、数学得意じゃないけど。

 

私が学生時代はインターネットが無い時代だったため、数学の先生の授業が唯一の情報取得源であり、当時はひたすら問題を解き続けさせられた記憶しかありません。

反復練習がムダとは言いませんが、今インターネットで拾えるような数学の本質を教えてくれる先生に出会えていたら、数学がもっと楽しい勉強になったのかな、と思ってしまいます。

現役学生の方は、インターネットをうまく使って楽しみながら勉強してもらいたいです。

 

そして、もし、また数学に興味を持ったけど、勉強で挫折しそうな方は人工知能プログラミングのための数学がわかる本がおすすめです。

かなり基礎の部分から説明があるので、この本とWebを使えば楽しく数学を学べると思います。

 

 

それでは。ごきげんよう。

 

コメントを残す