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

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

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

本日は対数関数の微分法の後編です!

今回で、対数関数の微分法をマスターしましょう!

2. 対数関数の公式

まず、対数関数の公式をおさえておきます。あとで対数関数の微分法の導出で使用します

\(a^{0} = 1\) 、つまり \(a\) を \(0\) 乗すると \(1\) となるため

$$
\log_a 1 = 0 \tag{2.1}
$$

\(a^{1} = a\) 、つまり \(a\) を \(1\) 乗すると \(a\) となるため

$$
\log_a a = 1 \tag{2.2}
$$

積の対数

$$
\log_a (X \times Y) = \log_a X + \log_a Y \tag{2.3}
$$

商の対数

$$
\log_a ( \frac Y X) = \log_a Y - \log_a X \tag{2.4}
$$

 

式 \((2.4)\) で \(Y=1\) のとき、 \(log_a Y = log_a 1 = 0\) となるので

$$
\log_a ( \frac 1 X) = -\log_a X \tag{2.5}
$$

累乗の対数

$$
\log_a (X^{Y}) = Y \log_a X \tag{2.6}
$$

 

底の変換公式

$$
\log_a b = \frac {\log_c b} {\log_c a} \tag{2.7}
$$

\(c\) は新しい底。 \(a\) と \(b\) が以下のように移動するのが底の変換公式です。

さらっと書きましたが、このテクニックは今回に限らず色々なところで役立ちますので、↓を忘れないようにしましょう。

3. 対数関数の微分

さて、以下が対数関数の微分の公式です。

対数関数の微分の公式

$$
f(x) = \log_a x
$$

を \(x\) で微分した \(f'(x)\) は

$$
f'(x) = \frac{1}{x \log_e a} \tag{3.1}
$$

となります


\(e\) を底とする対数関数

$$
g(x) = \log_e x
$$

を \(x\) で微分した \(g'(x)\) は

$$
g'(x) = \frac{1}{x} \tag{3.2}
$$

となります。

なぜなら式 \((3.1)\) の \(a\) に ネイピア数 \(e\) を代入して \(g'(x) = \frac{1}{x \log_e e}\) であるが、 \(\log_e e = 1\) であるので \(g'(x) = \frac{1}{x}\) が導けるというわけす。

4. 対数関数の微分を導出する

さて、先に微分の公式を示してしまいましたが、そこまでは前菜。

ここがメインディッシュです。

前述した対数関数の微分の公式 式 \((3.1)\) を、いままで見てきた道具を使って導き出していきましょう

$$
f(x) = \log_a x
$$

を微分の公式にあてはめると

$$
\begin{aligned}
f'(x) = &\lim_{h \to 0} \frac {f(x+h)-f(x)} {h}& \
=& \lim_{h \to 0} \frac {\log_a (x+h) - \log_a x} {h} &\
\end{aligned}
$$

となるので、 \(\frac {1}{h}\) をつかった表現にすると

$$
f'(x) = \lim_{h \to 0} \frac {1} {h} (\log_a (x+h) - \log_a x) \tag{4.1}
$$

となります。

ここで、

\((x+h) = Y\)、 \(x = X\) と置くと

$$
\log_a (x+h) - \log_a x = \log_a Y - \log_a X
$$

となります。

商の対数 の公式 \((2.4)\)

$$
\log_a ( \frac Y X) = \log_a Y - \log_a X \tag{2.4}
$$

を活用すると \(\log_a Y - \log_a X\) は \(\log_a ( \frac Y X)\) となるので

ここまでの展開を列挙すると

$$
\begin{aligned}
&\log_a (x+h) - \log_a x&\
= &\log_a Y - \log_a X& \
= &\log_a ( \frac Y X)&
\end{aligned}
$$

となります。

ここで、 \(X = x\) と \(Y= (x+h)\) だったので、

$$
\begin{aligned}
\log_a ( \frac Y X)= \log_a ( \frac {x+h}{x})\
\end{aligned}
$$

となるので、ここまでの展開を再度列挙すると

$$
\begin{aligned}
&\log_a (x+h) - \log_a x&\
= &\log_a Y - \log_a X& \
= &\log_a ( \frac Y X)&\
= &\log_a ( \frac {x+h}{x})&
\end{aligned}
$$

となります。

これを式 \((4.1)\) に反映すると、

$$
f'(x) = \lim_{h \to 0} \frac {1} {h} (\log_a (x+h) - \log_a x) = \lim_{h \to 0} \frac {1} {h} (\log_a ( \frac {x+h}{x})) \tag{4.2}
$$

となります。

累乗の対数 の公式 \((2.6)\) より \(Y \log_a X = \log_a (X^{Y})\) なので、\(Y = \frac {1}{h}\) 、 \(X=\frac {x+h}{x}\) とおくと

$$
\begin{aligned}
f'(x) = &\lim_{h \to 0} \frac {1} {h} (\log_a ( \frac {x+h}{x}))
= \lim_{h \to 0} Y (\log_a X)
= \lim_{h \to 0} (\log_a(X^{Y}))&\
\
&となるので、X と Y を戻すと、&\
\
& \lim_{h \to 0} Y (\log_a X) = \lim_{h \to 0} (\log_a(\frac {x+h}{x})^\frac {1} {h}) となります。& \
\
さらに &\frac {x+h}{x} = 1 + \frac {h}{x} なので、&\
\
&\lim_{h \to 0} (\log_a(\frac {x+h}{x})^\frac {1} {h}) = \lim_{h \to 0} (\log_a(1 + \frac {h}{x})^\frac {1} {h})&\
\
&さらに、 \frac{h}{x} = t と置き換えると、&\
&\lim_{h \to 0} →\lim_{t \to 0} となり、 \frac {1} {h} → \frac {1} {tx} となるため &\
\
&\lim_{h \to 0} (\log_a(1 + \frac {h}{x})^\frac {1} {h}) = \lim_{t \to 0} (\log_a(1 + t)^{\frac {1} {tx}}) = \lim_{t \to 0} (\log_a(1 + t)^{\frac {1} {t} \cdot \frac {1} {x}})&\
\end{aligned}
$$

指数関数の公式1.4より \((a^{x})^{y} = a^{xy}\) なので、

$$
\begin{aligned}
f'(x) = &\lim_{t \to 0} (\log_a(1 + t)^{\frac {1} {t} \cdot \frac {1} {x}}) = \lim_{t \to 0} (\log_a ((1 + t)^{\frac {1} {t}})^{\frac {1} {x}})\&
\
\end{aligned}
$$

$$
\begin{aligned}
上式で & \lim_{t \to 0} (1 + t)^{\frac {1}{t}} を e とすると &\
f'(x)=&\lim_{t \to 0} (\log_a ((1 + t)^{\frac {1} {t}})^{\frac {1} {x}})=
\log_a e^{\frac {1}{x}}&
\end{aligned}
$$

さらに 累乗の対数 の公式 \((2.6)\) より
\(\log_a (X^{Y}) = Y \log_a X\) なので、 \(Y = \frac {1}{x}\) 、 \(X = e\) とおくと

$$
f'(x) = \log_a e^{\frac {1}{x}} = \frac{1}{x} \log_a {e} \tag{4.3}
$$

ここで式 \((4.3)\) にある \(\log_a {e}\) に着目する

底の変換公式 式 \((2.7)\) より \(\log_a b = \frac {\log_c b} {\log_c a}\) であるので、 \(b = e\) 、 \(c=e\) とすると

$$
\begin{aligned}
\log_a e = \frac {\log_e e}{\log_e a}
\end{aligned}
$$

となります。

$$
\begin{aligned}
\log_e e = 1 なので&\
&\frac {\log_e e}{\log_e a} = \frac {1}{log_e a}&
\end{aligned}
$$

となり、これで

$$
\log_a e = \frac {1}{log_e a}
$$

であることがわかります。式 \((4.3)\) を \(\log_a e → \frac {1}{log_e a}\) と変形すると

$$
\begin{aligned}
f'(x) = &\frac{1}{x} \log_a {e}&\
=&\frac{1}{x} \cdot \frac {1}{log_e a}&
\end{aligned}
$$

となり、式 \((3.1)\) を導くことができました。

$$
f'(x) = \frac{1}{x \log_e a} \tag{3.1、再掲}
$$

ここまでの導出過程は実際に紙に書いてやってるみるのがオススメです。

なぜなら、類似の導出が今後の LLM 系のテクニックで登場します。
論文や解説などでは、この導出の5,6ステップをしれっと飛ばしていることが多いため、そういう部分でつまづかないために、この基礎段階で1歩ずつ導出していくクセをつけておくと良いと思います。

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


navigation

Read more

大企業のAIセキュリティを支える基盤技術 - 今こそ理解するActive Directory 第5回 ブラウザ設定と認証

大企業のAIセキュリティを支える基盤技術 - 今こそ理解するActive Directory 第5回 ブラウザ設定と認証

こんにちは、今回はシリーズ第5回「ブラウザ設定と認証」について解説いたします! さて、前回(第4回)では、プロキシサーバーをドメインに参加させることで、ChatGPTやClaudeへのアクセスを「誰が」行ったかを確実に特定する仕組みを解説しました。「信頼の連鎖」の概念や、Windows版Squidなら1時間で構築できる環境、Negotiate/NTLM/Basicという3段階の認証フォールバック機構について理解いただけたかと思います。 しかし、せっかくサーバー側で完璧な統合Windows認証環境を構築しても、ブラウザ側の設定が適切でなければ、ユーザーには毎回パスワード入力ダイアログが表示されてしまいます。 「Edgeだと自動でログインできるのに、Chromeだとパスワードを聞かれる」 「同じサーバーなのにURLの書き方で動作が違う」 これらはヘルプデスクに寄せられる典型的な問い合わせです。(ただ、業務に好きなブラウザ使っていいよ、という企業はそんなに多くはないとおもいます) 今回は、統合Windows認証がブラウザでどのように動作するのか、その仕組みから各ブラウザ(Edge/

By Qualiteg AIセキュリティチーム, Qualiteg コンサルティング
スライドパズルを解くAIから学ぶ、「考える」の正体

スライドパズルを解くAIから学ぶ、「考える」の正体

こんにちは! 「このパズル、AIの教科書に載ってるらしいよ」 子供の頃に遊んだスライドパズル。いや、大人が遊んでも楽しいです。 数字のタイルをカチャカチャ動かして揃えるあれです。実はこのシンプルなパズルが、AI研究の出発点のひとつだったって知ってました? 今回は、このパズルを題材に「AIがどうやって考えているのか」を解き明かしていきます。しかも、ここで使われている手法は、Google Mapsの経路探索からChatGPTまで、現代の様々な技術のベースになっているんです。 まず遊んでみよう 理屈の前に、まずは感覚を思い出してみてください。 最初に shuffle をクリックすると、配置がシャッフルされゲームを開始できます。 ちなみに必ず解くことができるようになっていますが、慣れていないとそれなりに難しいかもしれません。 どうでしょう? 何手でクリアできましたか? クリアできなくても大丈夫です。記事後半で、実際にAIが解いてくれる機能つきゲームも掲載しています^^ 以下は動画です。本ブログで紹介するアルゴリズムで実際にパズルを解く様子をご覧いただけます

By Qualiteg 研究部
楽観的ロック vs 悲観的ロック:実際のトラブルから学ぶ排他制御

楽観的ロック vs 悲観的ロック:実際のトラブルから学ぶ排他制御

こんにちは! Qualitegプロダクト開発部です! 「楽観的ロックを実装したのに、まだ競合エラーが出るんですけど...」 これは私たちが実際に経験したことです。 本記事では、楽観的ロックと悲観的ロックの違いを、実際に発生したトラブルを通じて解説します。 抽象的な説明ではなく、 「なぜそれが必要なのか」「どんな問題を解決できるのか」 を実感できる内容を目指します。 目次 1. 問題の背景:並列処理で謎のエラー 2. ロックなしの世界:なぜ競合が起きるのか 3. 楽観的ロックの導入:期待と現実 4. 楽観的ロックの限界:解決できなかった問題 5. 悲観的ロックによる解決 6. 実装時のハマりポイント 7. どちらを選ぶべきか:判断基準 8. まとめ 1. 問題の背景:並列処理で謎のエラー 1.1 システムの概要 私たちが開発していたのは、 複数のワークスペースを切り替えて使用するAPIサーバー でした。 当社AI関係のプロダクトの一部だったのですが、結合テスト兼負荷テストを実行すると、まれに発生してしまっていました。 ユーザーは複数のワーキン

By Qualiteg プロダクト開発部
企業セキュリティはなぜ複雑になったのか? 〜AD+Proxyの時代から現代のクラウド対応まで〜

企業セキュリティはなぜ複雑になったのか? 〜AD+Proxyの時代から現代のクラウド対応まで〜

こんにちは! ChatGPTやClaudeといった生成AIサービスが業務に浸透し始めた今、 「AIに機密情報を送ってしまうリスク」 が新たなセキュリティ課題として浮上しています。 この課題に向き合う中で、私たちは改めて「企業のセキュリティアーキテクチャはどう変遷してきたのか」を振り返る機会がありました。 すると、ある疑問が浮かんできます。 「なんでこんなに複雑になってるんだっけ?」 企業のセキュリティ担当者なら、一度は思ったことがあるのではないでしょうか。 アルファベット3〜4文字の製品が乱立し、それぞれが微妙に重複した機能を持ち、設定は複雑化し、コストは膨らみ続けています。 当社ではAIセキュリティ関連プロダクトをご提供しておりますが、AI時代のセキュリティを考える上でも、この歴史を理解することは重要ではないかと考えました。 本記事では、企業ネットワークセキュリティの変遷を振り返りながら、「なぜこうなったのか」を整理してみたいと思います。 第1章:観測点を集約できた時代 ― オンプレAD + Proxy(〜2010年代前半) 統制しやすかったモデル かつ

By Qualiteg コンサルティング, Qualiteg AIセキュリティチーム