[AI数理]対数関数の微分法・前編

[AI数理]対数関数の微分法・前編

おはようございます!(株) Qualiteg 研究部です。

本日から2回にわたって対数関数について学んでいきましょう。
正確にいうと、対数関数の微分法を学びます。

対数関数って何だっけ?

まず、対数関数というのは、「ある数 \( x \) が別の数 \( b \) を何回かけると \( x \) になるか」を調べる方法です。例えば、\( b \) が 2 で \( x \) が 8 の場合、2 を 3 回かけると 8 になります。この場合、数学的には「\( b \) の \( x \) に対する対数」と言います。

これを数式で表すと、次のようになります:

$$
\log_b(x) = y
$$

ここで \( b \) は底(てい)、\( x \) は真数、\( y \) は \( b \) を何回かけたら \( x \) になるかを表す数です。例えば、\( b = 2 \) と \( x = 8 \) の場合、\( y = 3 \) となります。なぜなら、2 を 3 回かけると 8 になるからです。

$$
\log_2(8) = 3
$$

対数関数は「逆」の関数と考えることもできます。つまり、乗算(かけ算)の逆が除算(わり算)であるように、累乗(たとえば 2 の 3 乗は 8)の逆が対数関数です。

なぜ対数関数は重要か?

まず、「なぜ、対数関数を学ぶ必要があるか」を説明します。

対数関数は、機械学習の分類問題での代表的な損失関数である 交差エントロピー関数の式に登場します。

多値分類用の交差エントロピー関数

$$
\ - \frac{1}{N} \sum_{i}^{N} \sum_{k}^{K} t_{ik} \log y_{ik} \tag{1}
$$

二値分類用の交差エントロピー関数

$$
\ - \frac{1}{N} \sum_{i}^{N} \lbrack t_{i} \log y_{i} + (1- t_{i}) \log (1- y_{i}) \rbrack \tag{2}
$$

ニューラルネットワークの学習では損失関数を最小化するように学習していきますが、損失関数が小さくなる方向(勾配)を求めるため損失関数の微分を求めます。

このように交差エントロピー関数は対数関数を含む関数となっているため、対数関数の微分が必要になります。

本シリーズは、 対数関数の微分法 をマスターすることが目的です。対数関数の微分を理解するために、まず対数関数の基礎をマスターし、それを使って対数関数の微分を学習していきます。

1. 対数関数 \(log\) とは

さて、再度、こんどは数式ベースで対数関数について説明いたしますね。

$$
y = \log_a x
$$

\(a\) を何乗すると \(x\) になるか を求めるのが 対数「 \(\log\) 」です。これを \(a\) を底とする対数関数といいます。

\(y=\log_a x\) のとき \(a^{y} = x\) となります。

また \(y=\log_a x\) は \(y=a^{x}\) の逆関数となります。

\(y=\log_2 x\) で \(x=8\) とすると、 \(y=\log_2 8\) ・・・ \(2\) を何乗すると \(8\) になるかを求めることになるので、答えは \(y=3\) となります。

いかがでしたでしょうか。

思い出してみると(または、今学んでみた感想として)案外とっつきやすやすくないでしょうか。

それでは、また次回お会いしましょう!


navigation

Read more

【IT温故知新】WS-* の栄光と黄昏:エンタープライズITはいかにして「実装」に敗北したか

【IT温故知新】WS-* の栄光と黄昏:エンタープライズITはいかにして「実装」に敗北したか

こんにちは。 —— 2003年のSOAから、2026年のAIへ —— この記事は、過去の技術動向を振り返り、そこから学べる教訓について考察してみたものです。 歴史は常に、後から見れば明らかなことが、当時は見えなかったという教訓を与えてくれます。 そして、今私たちが「正しい」と信じていることもまた、20年後には違う評価を受けているかもしれません。 だからこそ、振り返ることには意味があるとおもいます。同じ轍を踏まないために。 はじめに:20年前の熱狂を覚えていますか 2000年代初頭。 私はSOA(サービス指向アーキテクチャ)に本気で取り組んでいました。 当時、SOAは「次世代のエンタープライズアーキテクチャ」として、業界全体が熱狂していました。 カンファレンスに行けば満員御礼、ベンダーのブースには人だかり、書店にも関連の書籍がちらほらと。 SOAP、SOAP with attachments、JAX-RPC、WS-Security、WS-ReliableMessaging、WS-AtomicTransaction... 仕様書の山と格闘する日々でした。 あれから

By Qualiteg コンサルティング
DockerビルドでPythonをソースからビルドするとGCCがSegmentation faultする話

DockerビルドでPythonをソースからビルドするとGCCがSegmentation faultする話

こんにちは!Qualitegプロダクト開発部です! 本日は Docker環境でPythonをソースからビルドした際に発生した、GCCの内部コンパイラエラー(Segmentation fault) について共有します。 一見すると「リソース不足」や「Docker特有の問題」に見えますが、実際には PGO(Profile Guided Optimization)とLTO(Link Time Optimization)を同時に有効にした場合に、GCC自身がクラッシュするケースでした。 ただ、今回はDockerによって問題が隠れやすいという点もきづいたので、あえてDockerを織り交ぜた構成でのPythonソースビルドとGCCクラッシュについて実際に発生した題材をもとに共有させていただこうとおもいます 同様の構成でビルドしている方の参考になれば幸いです TL;DR * Docker内でPythonを --enable-optimizations --with-lto 付きでソースビルドすると GCCが internal compiler error(Segmentati

By Qualiteg プロダクト開発部
サブスクビジネス完全攻略 第2回~「解約率5%」が1年後に半分の顧客を消す恐怖と、それを防ぐ科学

サブスクビジネス完全攻略 第2回~「解約率5%」が1年後に半分の顧客を消す恐怖と、それを防ぐ科学

こんにちは! Qualitegコンサルティングです! 前回の第1回では、サブスクリプションビジネスの基本構造と、LTV・ユニットエコノミクスという革命的な考え方を解説しました。「LTV > 3 × CAC」という黄金律、覚えていますか? サブスクビジネス完全攻略 第1回~『アープがさぁ...』『チャーンがさぁ...』にもう困らない完全ガイドなぜサブスクリプションモデルが世界を変えているのか、でもAI台頭でSaaSは終わってしまうの? こんにちは! Qualitegコンサルティングです! 新規事業戦略コンサルタントとして日々クライアントと向き合う中で、ここ最近特に増えているのがSaaSビジネスに関する相談です。興味深いのは、その背景にある動機の多様性です。純粋に収益モデルを改善したい企業もあれば、 「SaaS化を通じて、うちもデジタルネイティブ企業として見られたい」 という願望を持つ伝統的な大企業も少なくありません。 SaaSという言葉が日本のビジネスシーンに本格的に浸透し始めたのは2010年代前半。それから約15年が経ち、今やSaaSは「先進的な企業の証」のように扱われています。

By Qualiteg コンサルティング
Google GenAI SDK のストリーミングでマルチターン画像編集🍌が不安定になる問題と対処法

Google GenAI SDK のストリーミングでマルチターン画像編集🍌が不安定になる問題と対処法

こんにちは! Gemini 3 Pro Image (Nano banana Pro)を使ったマルチターン画像編集機能を実装していたところ、動いたり動かなかったりするという厄介な問題に遭遇しました。 本記事では、この問題の現象、原因調査の過程、そして解決策を共有します。 問題の現象 実行環境 Google GenAI SDKライブラリ(pip): google-genai 1.56.0 期待する動作 1. ユーザー: 「かわいい子猫の画像を生成して」 2. Gemini: 子猫の画像を生成 3. ユーザー: 「この子にメガネをかけて」 4. Gemini: 同じ子猫にメガネをかけた画像を生成 実際に起きた現象 1. ユーザー: 「かわいい子猫の画像を生成して」 2. Gemini: 茶色の子猫の画像を生成 3. ユーザー: 「この子にメガネをかけて」 4. Gemini: メガネをかけた女の子の画像を生成

By Qualiteg プロダクト開発部