onewanのメモ帳

数式が書きたくて始めたブログ。twitter IDは @onewan

深層学習

Deep Learningの実装をやろうと思って、「ゼロから作るDeep Learning」を4章まで進めてみた。

久しぶりにプログラムやるから、このくらいレベルからリハビリするのが丁度良い気がする。

6月25日に自然言語編が出るので、それもやる。

https://www.amazon.co.jp/ゼロから作るDeep-Learning-―自然言語処理編-斎藤-康毅/dp/4873118360/ref=sr_1_2?ie=UTF8&qid=1528203832&sr=8-2&keywords=ゼロから作る+deep+learning

とりあえず、すげえ雑にニューラルネットの図を書いてみたが、余りにも雑過ぎて泣ける(でもupする)。

f:id:sosuu-daifugoh:20180605215536p:plain

家庭教師時代の遺産

大学〜大学院の間に合計で5年ほど家庭教師をやっており、その頃に作成した資料が見つかったので貼ってみた。

当時はWindows環境で、 cygwinxyzzyを使ってplatexdvioutに変換していた。texソースはあるのだが、現在使っているMactex環境を構築していないので、とりあえずは、pdfのスクリーンショットを撮って貼ります。

高校の微積なら、これだけ覚えておけばほぼ全部解けると思われるやつをピックアップしていたはず。

f:id:sosuu-daifugoh:20180424002709p:plain

f:id:sosuu-daifugoh:20180424002846p:plain

ザギヤーの数論入門を少しずつ読んでいく際のメモ

ザギヤーの数論入門が手に入ったので、ちょっとずつ読んでいきます。 数論幾何は、もうちょっと後で手をだそうかな・・・。

(定義)ディリクレ級数

ディリクレ級数とは、以下の級数のことである。  \displaystyle \sum_{n=1}^{\infty} a_n e^{- \lambda_n s}
ここで、  \lambda_nは実数で  \lambda_1 <  \lambda_2 <  \cdots ,  \lambda_n \rightarrow \inftyを満たす。 a_nは任意の複素数 s=\sigma + i t複素数である。

(定義)通常ディリクレ級数

 \lambda_n = \log nのとき、つまり
 \displaystyle \sum_{n=1}^{\infty} a_n n^{-s}
を通常ディリクレ級数とよぶ。

ディリクレ級数の収束について

under construction

ゼータ関数オイラー積表現

 \displaystyle \zeta (s) = \sum_{n=1}^{\infty} \frac{1}{n^s} = \prod_{p} \frac{1}{1-p^{-s}} ( \sigma > 1)

考察

・冪級数の加法的な畳み込みであるのに対して、ディリクレ級数は乗法的な畳み込みとなる。 式はあとで書く

under construction !!

複素関数論に関するメモ

ちょっと複素関数の復習をしているので、自分の備忘録用にメモを残します。 数論入門を読むのに、複素関数論の正則関数、有理型関数、留数、解析接続が前提知識になるためです。


(定義)開円板

任意の整数 \epsilonに対して、平面上の点z_0 \epsilon-近傍 \epsilon (z_0)を、中心が z_0で半径が \epsilonの開円板を以下の通り定義する。  \epsilon (z_0) = { z \in \mathbb{C} |  | z - z_0 | < \epsilon }

(定義)正則関数

複素関数 {f(z)} {z_0}で正則とは、 z_0の適当な {\epsilon}-近傍 {\epsilon (z_0)}を取ると、 f(z) {\epsilon (z_0)}の任意の点で微分可能なことと定義する。  f(z)複素平面上の集合 Dの各点で正則なとき、 f(z) Dにおいて正則であるという。

(定義) \mathbb{C^{n}} -級関数

関数f(x,y)が平面上の集合V上で \mathbb{C^{n}}-級とは、任意の {z_0 \in V} {\epsilon (z_0)}上で、f(x,y)の n階までのすべての偏導関数が存在し、連続になること。

(定理)コーシー・リーマン方程式

複素関数 {f(z) = u(x,y)+ i v(x,y)}が各点 {z_0 = x_0 + i y_0}において、正則である
 {\Leftrightarrow}  {z_0}の適当な {\epsilon}-近傍 {\epsilon (z_0)}を取ると、 {f(z)} {\mathbb{C}^{1}} - 級、かつ任意の {z' \in \epsilon (z_0)}
 \displaystyle  { \frac{\partial u}{\partial x} (x,y) = \frac{\partial v}{\partial y} (x,y), \frac{\partial u}{\partial y} (x,y) = - \frac{\partial v}{\partial x} (x,y) } を満たす事であり、  \displaystyle {  f'(z) =  \frac{\partial u}{\partial x} (x,y) + i \frac{\partial v}{\partial y} (x,y)  }

(定理)コーシー・リーマン方程式の複素形

複素関数 {f(z) = u(x,y)+ i v(x,y)}について
 \displaystyle  u_x=v_y, u_y=-v_x \Leftrightarrow \frac{\partial f}{\partial \overline{z}}=0

(定義)複素積分

連続な複素関数 {f(z) = u(x,y) +i v(x,y)}と区分的に滑らかな曲線Cに対し、 {f(z)}のCに沿う複素積分
 \displaystyle  { \int_C f(z) dz = \int_C u dx - v dy + i \int_C v dx + u dy}
で定義する。単にCに沿う積分ともいう。

(公式)コーシーの積分公式

互いに交わらない有限個の単純閉曲線で囲まれた領域 Dに対して、 \overline{D}上の正則関数 f(z)は、複素積分
 \displaystyle  f(z)=\frac{1}{2 \pi i} \int_{\partial D} \frac{f(\zeta)}{\zeta - z} d\zeta
で表される。ただし、 z \in Dとする。

(公式)正則関数の n導関数

互いに交わらない有限個の単純閉曲線で囲まれた領域 Dの境界 \partial D上の連続関数 f (\zeta)に対して
 \displaystyle {F(z)=\frac{1}{2 \pi i} \int_{\partial D} \frac{f(\zeta)}{\zeta - z} d\zeta}
は、 D上の正則関数になり、 F(z) Dにおいて何回でも微分可能で、 n導関数 F^{(n)}(z) D上で正則になり
 \displaystyle  F^{(n)}(z)=\frac{n!}{2 \pi i} \int_{\partial D} \frac{f(\zeta)}{(\zeta - z)^{n+1}} d\zeta
と表せる。特に、 D上の正則関数 f(z)は何回でも微分可能で、その n導関数 f^{(n)}(z)上記となる。

(定理)ローラン展開

中心が z_0の閉円環領域 \overline{A}(z_0, R_1,R_2)={R_1 \le | z- z_0| \le R_2}上の正則関数f(z)は、次の形の級数展開を持ち、これを点 z_0を中心とする f(z)のローラン級数という。
 \displaystyle f(z)=\sum^{\infty}_{n=-\infty} c_n (z-z_0)^n
また、R_1 \le R \le R_2をみたす任意の整数Rに対し、各係数c_nは次式で与えられる。
 \displaystyle  c_n=\frac{n!}{2 \pi i} \int_{|\zeta - z_0|=R} \frac{f(\zeta)}{(\zeta - z_0)^{n+1}} d\zeta

(定理)留数定理

ローラン展開における係数 c_{-1}f(z) z_0における留数といい、 Res(f,z_0)と書く。 f(z) z_0で正則であれば、 Res(f,z_0)=0となる。積分したときに最後まで留まるので留数という。
有限個の単純閉曲線で囲まれた領域Dの閉包\overline{D}上の有理型関数f(z)がその境界\partial Dに極を持たなければ
 \displaystyle \int_{\partial D} f(z) = 2 \pi i \sum_{z \in D} Res(f,z)
が成立する。ここで領域Dないにはf(z)の極は高々有限個しかないので、右辺は有限和である。

解析接続

http://www.th.phys.titech.ac.jp/~muto/lectures/Amath06/am_chap13.pdf

(参考文献)
  1. 複素関数概説, サイエンス社, 今吉洋一
  2. 解析接続, http://www.th.phys.titech.ac.jp/~muto/lectures/Amath06/am_chap13.pdf

黒田先生の関数解析を読む パート2(ノルム、距離、内積)

今回は、備忘録がてら定義を列挙します。ついでに、いくつか興味深い定理を書いておきます。

”Banach空間がHilbert空間であるための必要十分条件は、ノルムに対して中線定理が成り立つことである。” なお、中線定理とは、 {||u+v||}^2 +{||u-v||}^2 = 2 ({||u||}^2 + {||v||}^2)である。

ノルムの定義

線形空間 \mathcal{X}の任意の uに実数 ||u||が対応して、以下の(N.1)〜(N.4)を満たすとき、 \mathcal{X}にノルムが定義されているという。

 {\displaystyle
\forall u, v \in X, \forall \alpha \in \mathcal{C} \\
(N.1) \  ||u|| \geq 0 \\
(N.2) \ ||u||=0 \Leftrightarrow u=0 \\
(N.3) \ ||\alpha u|| = |\alpha| \  ||u|| \\
(N.4) \ ||u+v|| \leq ||u|| + ||v|| \\
}

距離の公理

 \mathcal{X}をノルム空間とする。 u, v \in \mathcal{X}の距離 d d(u,v) = ||u - v||と定義すれば、以下の距離の公理を満たす。

 {\displaystyle
\forall u, v, w \in X \\
(i) \  d(u,v) \geq 0 \\
(ii) \ d(u,v)=0 \Leftrightarrow u=v \\
(iii) \ d(u,v) = d(v,u)  \\
(iv) \ d(u,w) \leq d(u,v) + d(v,w) \\
}

内積の定義

線形空間 \mathcal{H}において、

 {\displaystyle
\forall u, v, w \in \mathcal{H}, \forall \alpha \in \mathcal{C} \\
(H.1) \  (u,v) = \overline{(v,u)} \\
(H.2) \ (\alpha u,v)=\alpha (u,v) \\
(H.3) \ (u+v,w) = (u,w)+(v,w)  \\
(H.4) \ (u,u) \geq 0 \\
(H.5) \ (u,u)=0 \Leftrightarrow u=0
}

 H \ddot{o}lder(ヘルダー)の不等式

ちょっと話が飛びますけど。  \mathcal{L}^p(\Omega)は1 <  p <   \infty ,  \Omega 上の可測関数uで、以下を満たす集合。

 ||u||={||u||}_{L^p} ={( \int_\Omega {|u(x)|}^p dx )}^\frac{1}{p} <   \infty

 \mathcal{L}^p (\Omega)からBanach空間 Lp  (\Omega) を作ることを考える。その際に、Lp (\Omega )において三角不等式を証明する前段階で必要となる定理が H \ddot{o}lderの不等式です。

1 < p <  \inftyとし, qを \frac{1}{p}+\frac{1}{q}=1 (つまり q=\frac{p}{p-1})とする。  {\displaystyle \\ 
u \in \mathcal{L}^p(\Omega), v \in \mathcal{L}^q(\Omega) \Rightarrow uv \in \mathcal{L}^1 (\Omega)}であり

 |\int_\Omega u(x) v(x) dx| \leq {(\int_\Omega {|u(x)|}^p dx)}^\frac{1}{p} {(\int_\Omega {|v(x)|}^q dx)}^\frac{1}{q} \\
= {||u||}_{L^p} {||v||}_{L^q}

証明は、気が向いたら追記します。

黒田先生の関数解析を読む パート1

8/20の数学カフェ予習回に向けて、黒田先生の関数解析を図書館で借りて来ました。

大学時代にひととおり勉強したけど、細かい事は忘れてしまっているので、一章からやり直そうと思います。

基本的なものだけメモを取りますので、参考になれば幸いです。

・Banach空間
ノルム空間では「収束列 \RightarrowCauchy列」だが、逆は一般的には成り立たない。反例はC[a,b]でノルムが積分で定義された場合のCauchy列で非連続関数に収束するもので、要するに空間内に収束しないものがある。なんとなく、ノルム空間内で収束する方が使い易そうですよね。

任意のCauchy列が収束列であるとき、そのノルム空間を完備であるという。

定義1.15: 完備なノルム空間をBanach空間という。

C[a,b]でノルムがsupで定義された場合は、Cauchy列が非連続関数に収束しないので完備となり、Banach空間となるんですねえ。これは、定義域内の関数間の差の最大値を0に押さえつける事で、関数を一様収束させられるからかな。

ところで、黒田先生の関数解析は、25年振りの貸出のようです。地下倉庫に保管されていたので、冷んやりして気持ち良かったです。

つまり、暑い日には、古い数学書を借りると良いです。

おやすみなさい。

29の原始根

ロマ数に出てたマスオ氏のブログ「高校数学の美しい物語」で原始根に関する話を読んで面白かったので、「青空学園」の原始根定理の初等的な証明を読んでみた。

mathtrain.jp

aozoragakuen.sakura.ne.jp

青空学園では、実際に構成する事で原始根の存在を証明するスタイルだったので、手計算でp=17,19の原始根を計算してみたのだが、やはり少し面倒臭いので、MacのNumbersを使って、29の原始根を計算してみました。下図はp=29のときしか記載してませんが、29までの素数は計算出来る仕様にしました。

f:id:sosuu-daifugoh:20170804235100p:plain

最初、 a^{28}などと累乗を計算していたのですが、桁数が爆発して丸められたので、

 {\displaystyle 
a^2 \equiv a * a \\
a^3 \equiv a * a^2 \\
\vdots \\
a^{27} \equiv a * a^{26} \\
a^{28} \equiv a * a^{27}
}

と前の計算結果に aを積算する方法に修正しました。最初からやっとけって話ですが。

Numbersは慣れて無いのでちょっと使い辛いですね。今度からは、真っ当なプログラミング言語Excel使います。