Uncategorized」カテゴリーアーカイブ

2025年度大阪大学集中講義「データ科学特論」、今年は「スパース推定とそのモデリング」というテーマで実施(オンライン、無料で一般にも公開)

鈴木讓がオーガナイズしている大阪大学「データ科学特論」という集中講義を、今年は「スパース推定とそのモデリング」というテーマで実施します。阪大の大学院の講義であるばかりでなく、公開講座として提供します(オンライン、無料)。2025年7月以降に募集を開始します。

2025年 9月2日(火)-9月5日(金) 3限 13:30-15:00, 4限 15:10-16:40, 5限 16:50-18:20
2025年 9月6日(金) 1限 8:50-10:20, 2限 10:30-12:00, 3限 13:30-15:00

初日の9月2日(火)に鈴木がスパース推定全体の基本的なことを下記の教科書を使って3コマ使って説明します。その後、12名のゲストスピーカーにお話しいただきます。BerkeleyのRyan Tibishrani教授を始め、この分野で活躍されている一流の方々です。

教科書:
鈴木讓「スパース推定 with R」「スパース推定 with Python」 機械学習の数理100問シリーズ (共立出版)

参考書:
川野、松井、廣瀬「スパース推定による統計モデリング」統計学 One Pointシリーズ (共立出版)

講師リスト (あいうえお順、敬称略)
梅津 佑太 (長崎大)
大石峰暉 (東北大)
川野秀一 (九大)
坂田綾香 (統数研)
菅澤翔之助 (慶應大)
高田正彬 (東芝)
二宮嘉行 (統計研)
廣瀬慧 (九大)
松井秀俊 (滋賀大)
山田誠 (OIST)
Poignard Benjamin Michel Claude (阪大)
Ryan Tibishrani (Berkeley)

正規分布の再生性

「正規分布にしたがう確率変数の和が確率変数にしたがう」という命題を、1年生後期の統計学で積率母関数を用いて証明しています。

100問シリーズの次の巻「確率的グラフィカルモデルと因果推論」で、積率母関数を用いない証明でスッキリしたものが完成したので(自己満足ですが)お見せします。他のブログにも載っていますが、スジのよいものがないとぼやいていました。計算が複雑で、普通にやるとめげやすいです。

独立な確率変数 \( X \sim N(\mu_X, \sigma_X^2) \) および \( Y \sim N(\mu_Y, \sigma_Y^2) \) があり、それぞれの確率密度関数を \( f_X(x) \) および \( f_Y(y) \) とると、和 \( X + Y \) の確率密度関数 \( f_{X+Y}(x) \) は、
\[
\int_{-\infty}^{\infty} f_X(x – y) f_Y(y) \, dy = \frac{1}{2 \pi \sigma_X \sigma_Y} \int_{-\infty}^{\infty} \exp\left\{ -\frac{(x – y – \mu_X)^2}{2\sigma_X^2} – \frac{(y – \mu_Y)^2}{2\sigma_Y^2} \right\} \, dy
\]であり、指数部分は$$ ay^2+by+c=a\left(y + \frac{b}{2a}\right)^2+c – \frac{b^2}{4a}$$ \[
a = -\frac{1}{2} \left( \frac{1}{\sigma_X^2} + \frac{1}{\sigma_Y^2} \right),
\hspace{3mm}
b = \frac{x – \mu_X}{\sigma_X^2} + \frac{\mu_Y}{\sigma_Y^2}
, \hspace{3mm}
c =-\frac{(x – \mu_X)^2}{2\sigma_X^2} – \frac{\mu_Y^2}{2\sigma_Y^2}
\]となる。また、
$$
\begin{aligned}
&c-\frac{b^2}{4a}=-
\frac{(x – \mu_X)^2}{2\sigma_X^2} – \frac{\mu_Y^2}{2\sigma_Y^2}+\frac{\left\{\sigma_Y^2(x-\mu_X)+\sigma_X^2\mu_Y\right\}^2}{2(\sigma_X^2+\sigma_Y^2)\sigma_X^2\sigma_Y^2}\\
=&\frac{\{\sigma_Y^2(x-\mu_X)+\sigma_X^2\mu_Y\}^2-(\sigma_X^2+\sigma_Y^2)
\sigma_Y^2(x-\mu_X)^2-(\sigma_X^2+\sigma_Y^2)\sigma_X^2\mu_Y^2
}{2(\sigma_X^2+\sigma_Y^2)\sigma_X^2\sigma_Y^2}\\
=&-\frac{(x-\mu_X-\mu_Y)^2}{2(\sigma_X^2+\sigma_Y^2)}
\end{aligned}
$$が成立する。そして、正規分布の確率密度関数を積分して1になる、すなわち
$$\int_{-\infty}^\infty \frac{1}{\sqrt{2\pi \sigma^2}}\exp\left\{ -\frac{(x-\mu)^2}{2\sigma^2} \right\}dx=1$$となることにより、\[
\int_{-\infty}^{\infty} \exp
\left\{a(y+\frac{b}{2a})^2 \right\}\, dy
=\sqrt{2 \pi (-\frac{1}{2a})}=\sqrt{2 \pi (\frac{1}{\sigma_X^2}+\frac{1}{\sigma_Y^2})^{-1}}
=\sqrt{2\pi\frac{\sigma_X^2\sigma_Y^2}{\sigma_X^2+\sigma_Y^2}}
\]とできる。ただし、$\displaystyle \mu=-\frac{b}{2a}$,  $\displaystyle\sigma^2=-\frac{1}{2a}$とおいた。したがって、
$$
\begin{aligned}
f_{X+Y}(x) &=
\frac{1}{\sqrt{2 \pi (\sigma_X^2 + \sigma_Y^2)}}
\exp\{ -\frac{(x – (\mu_X + \mu_Y))^2}{2(\sigma_X^2 + \sigma_Y^2)} \}
\end{aligned}
$$が成立する。これは、\( N(\mu_X + \mu_Y, \sigma_X^2 + \sigma_Y^2) \) の確率密度関数である。

2024年9月 阪大集中講義「渡辺澄夫ベイズ理論」盛況のうちに幕

2024年9月8日(日)から13日(金)にかけて、鈴木が6コマ、それ以外の9コマを9名の講師の先生にお話しいただきました。

Andrew Gelman先生 (Columbia University)・Mathias Drton (Technical University of Munich)、伊庭幸人先生(統計数理研究所)、車谷優樹先生(りそな銀行)、徳田悟先生(九州大学)、渡辺澄夫先生(理研)、 二宮嘉行先生(統計数理研究所)、矢野恵佑先生(統計数理研究所)、青柳美輝先生(日本大学)

下記は、鈴木が入門向けに行いました最初の6コマの中の重要箇所の切り抜きです。

RKHSでは2乗平均連続過程とランダム要素の区別がない(「機械学習のためのカーネル」命題70(4) )

証明だけ書いておきます。

$f:\Omega\times E\rightarrow {\mathbb R}$が$RKHS(k)$のランダム要素であれば、$\Omega\ni\omega\mapsto f(\omega,\cdot)\in RKHS(k)$が可測です。内積は連続な写像であり、再生性から各$x\in E$で$\langle f(\omega,\cdot),k(\cdot,x)\rangle=f(\omega,x)$が成立するので、各$x\in E$で$\Omega\ni\omega\mapsto f(\omega,x)\in {\mathbb R}$が可測であり、確率変数になります。

逆に、$f$が$RKHS(k)$に値をとる確率変数、つまり各$\omega\in \Omega$で$f(\omega,\cdot)\in RKHS(k)$であって$\Omega\ni\omega\mapsto f(\omega,x)$が各$x\in E$で可測であることを仮定しましょう。各$g\in RKHS(k)$に対して、$\|g_n-g\|\rightarrow 0$となるような$g_n(\cdot):=\sum_{i=1}^na_ik(\cdot,x_i) $を構成できます。再生性から、$\langle f(\omega,\cdot),g_n\rangle=\sum_{i=1}^na_if(\omega,x_i)$とでき、各$n$で可測です。そして、内積の連続性から$\langle f(\omega,\cdot),g\rangle$はその極限であり、可測であることがわかります。$g\in RKHS(k)は任意でしたので、命題70(1)の議論から、$\Omega\ni \omega\mapsto f(\omega,\cdot)\in RKHS(k)$は可測になります。

平均0の平均2乗連続過程に対応するランダム要素(「機械学習のためのカーネル」命題70(3))

平均2乗連続過程$f: \Omega \times E\rightarrow {\mathbb R}$の共分散関数が$k$であれば、共分散作用素が$H\ni g\mapsto \int_Ek(\cdot,y)g(y)d\mu(y)$となるランダム作用素が存在する

テキストと同様の方法で、$\{(E_i,x_i)\}_{1\leq i\leq M(n)}$を決めます。そして$$F(\omega,x; \{(E_i,x_i)\}_{1\leq i\leq M(n)})=\sum_{i=1}^{m(n)}I_{E_i}(x)f(\omega,x_i)$$とおき、$n$を$n'(\leq n)$に置き換えたものとの差の2乗平均誤差をとります。平均は確率空間$(\Omega,{\cal F}, P)$と測度空間$(E,B(E),\mu)$の両方に関してです。
\begin{eqnarray*}&&\int_{\Omega}\int_E\left\{F(\omega,x; \{(E_i,x_i)\}_{1\leq i\leq M(n)})-F(\omega,x; \{(E_i’,x_i’)\}_{1\leq i\leq M(n’)})\right\}^2d\mu(x)dP(\omega)\\
&=&\int_{\Omega}\left\{\sum_{i=1}^{m(n)}f(\omega,x_i)\int_{E_i}d\mu(x)-
\sum_{i=1}^{m(n’)}f(\omega,x’_i)\int_{E’_i}d\mu(x)\right\}^2dP(\omega)
\end{eqnarray*}テキストの方法と同様にこの値は0に収束します。すなわち、任意のCauchy列が収束したことになり、完備であることも考えると、\begin{eqnarray*}\int_{\Omega}\int_E\left\{F(\omega,x; \{(E_i,x_i)\}_{1\leq i\leq M(n)})-F(\omega,x)\right\}^2d\mu(x)dP(\omega)\rightarrow 0\end{eqnarray*}であって、$\int_\Omega\int_E\{F(\omega,x)\}^2d\mu(x)dP(\omega)<\infty$なる$F$が存在します。そして、$\int_E\{F(\omega,x)\}^2d\mu(x)=\infty$なる事象$A\subseteq \Omega$について、$F(\omega,x)=0$, $\omega\in A$というように$F$を修正すると、任意の$\omega\in \Omega$について、$\int_E\{F(\omega,x)\}^2d\mu(x)<\infty$とできます。したがって、$F(\cdot,\omega)\in H=L^2(E,B(E),\mu)$がすべての$\omega\in \Omega$についていえて、命題70(1)の議論から、そのような$F$は$L^2(E,B(E),\mu)$のランダム要素になります。

そして、$F$の共分散作用素${\mathbb E}[F\otimes F]$は、各$h_1,h_2\in L^2(E,B(E),\mu)$を適用すると、$\langle {\mathbb E}[F\otimes F]h_1,h_2\rangle={\mathbb E}(\langle F,h_1\rangle \langle F,h_2\rangle)$となり、それは\begin{eqnarray*}&&\int_{\Omega}\sum_{i=1}^{m(n)}f(\omega,x_i)\int_{E_i}h_1(x)d\mu(x)
\sum_{j=1}^{m(n)}f(\omega,x_j)\int_{E_i}h_2(y)d\mu(y)dP(\omega)\\&=&\sum_{i=1}^{m(n)}\sum_{j=1}^{m(n)}k(x_i,x_j)\int_{E_i}h_1(x)d\mu(x)\int_{E_i}h_2(y)d\mu(y)\end{eqnarray*}の$n\rightarrow \infty$の極限であって、作用素$L^2(E,B(E),\mu)\ni h\mapsto \int_E k(\cdot,y)h(y)d\mu(y)$を適用することと同じになります。

$E$をコンパクト集合として、確率過程$f: \Omega\times E\rightarrow {\mathbb R}$が各$\omega\in \Omega$で連続なら、$\Omega\ni \omega \mapsto f(\omega,\cdot)$はランダム要素(「機械学習のためのカーネル」命題70(2))

$E$をコンパクト集合、$(\Omega,{\cal F},P)$を確率空間とします。$f: \Omega\times E\rightarrow {\mathbb R}$が各$x\in E$で可測のとき(確率変数のとき)、$f$を確率過程と呼びます。同様に、$H$をHilbert空間として、$F:\Omega\rightarrow {H}$が可測のとき、$F$はランダム要素と呼びます。この可測性は、$H$のノルムで距離を定義して開集合を定義し、各開集合の逆像が事象になっていることをさします。

この証明のために、まず$(E,B(E),\mu)$を測度空間とし、$g(\omega,x):=\sum_{i=1}^kI_{E_i}(x)h_i(\omega)$, $\omega\in \Omega$という形式の関数を用意します。ただし、$E_1,\ldots,E_k\in B(E)$は重なりがなく、それらの和集合が$E$となるものとします。また、$I_{E_i}(x)$は$x\in E$が$x\in E_i$であれば1、そうでなければ0であるとします。さらに、$f_i: \Omega\rightarrow {\mathbb R}$は可測であるとします。このとき、${\mathbb R}$の任意のBorel集合$B$について、$$g^{-1}(B)=\cup_{i=1}^k (E_i\times h_i^{-1}(B))$$とでき、これは積の$\sigma$集合体${\cal F }\times B(E)$の中にあります。つまり、$g$は$\Omega\times E$に関して可測になります。テキストでも設定したように、$\{(E_i,x_i)\}_{1\leq i\leq m(n)}$を設定し、
$$f_n(\omega,x):=\sum_{i=1}^{m(n)}I_{E_i}(x)f(\omega,x_i)$$とおくと、$\omega\in \Omega$を固定したときに$f(\omega,\cdot)$の一様連続性から、$f_n(\omega,x)\rightarrow f(\omega,x)$が$x\in E$に関して一様に収束します。したがって、$f$も$\Omega\times E$に関して可測である(可測関数列の一様極限は可測関数)。命題70(1)と同様の議論から、$\Omega\ni \omega\mapsto f(\omega,\cdot)$はランダム要素になります。

「統計的機械学習の数理」がYoutube(ぜうチャンネル)に

2024年3月から着手した「統計的機械学習の数理」のYoutubeが見れるようになりました。

辛口データサイエンス(ぜうチャンネル)

これまでは、講義の録画がメインで、またvimeoのアカウントに入れていました。2024年3月からはYoutubeのチャネルを「辛口データサイエンス(ぜうチャネル)」という名前に変更しました。そして、講義の録画だけでなく、オフィスで録画した動画も公開するようにしました。

「統計的機械学習の数理」の動画は、各節事に分かれていて、毎回5-25分程度の分量です。温泉や海外旅行のときの写真をカバーにおいていますが、内容とは関係ありません。カバーがクリック率に影響するように思いました。

現在は、大学院の講義の「機械学習のためのカーネル」も並行して、順次公開しています(2024年8月に完成の予定)。

よろしければ、チャネル登録と、いいねをお願いします。

Cholesky分解を求める計算量 (機械学習のためのカーネル6.1節)

正定値対称行列$A\in {\mathbb R}^{n\times n}$に対して、$A=RR^\top$なる下三角行列$R\in {\mathbb R}^{n\times n}$が存在します(この証明は省略します)。成分で書くと
$$ A_{ji}=\sum_{h=1}^nR_{jh}R_{ih},\hspace{5mm}i,j=1,\ldots,n$$ が成立します。最初に$R_{ij}$, $i,j=1,\ldots,n$ をすべて0にしてから、各$i=1,\ldots,n$で
1. $R_{ii}=\sqrt{A_{ii}-\sum_{h=1}^{i-1}R_{ih}^2}$
2. $R_{ji}=(A_{ji}-\sum_{h=1}^{i-1}R_{jh}R_{ih})/R_{ii}$, $\hspace{3mm}j=i+1,\ldots,n$
によって、$R$の第$i$列が求まります。2.は$(n-i)^2$回の演算(乗算)が必要で、全体で
$$\sum_{i=1}^n(n-i)^2=\sum_{j=0}^{n-1}j^2=\frac{1}{6}(n-1)n(2(n-1)-1)=\frac{n^3}{3}(1-\frac{1}{n})(1-\frac{1}{2n})$$回、高々$n^3/3$の演算が必要です。他方、$A,B\in {\mathbb R}^{n\times n}$の乗算は、その第$i,j$成分が$\sum_{h=1}^n A_{ih}B_{hj}$によって得られ、この操作を$n^2$個の成分すべてに対して行うので、$n^3$回の演算が必要です。$A$の逆行列を求める操作も同様の時間を要します。

計算量のオーダー表現は、定数倍の差異を除いて考えるので、上記すべて$O(n^3)$という表記が本来ですが、機械学習のためのカーネル6.1節では、$O(n^3/3)$, $O(n^3)$というように両者を区別しています。

また、下三角行列$L\in {\mathbb R}^{n\times n}$とある定数ベクトル$b\in {\mathbb R}^{n}$があって、$Lx=b$なる$x$を求めるためには、$$x_i=(b_i-\sum_{h=1}^{i-1}L_{i,j}x_j)/L_{ii}$$を各$i=1,\ldots,n$に対して行う必要があり、高々$1+\ldots+(n-1)=n(n-1)/2$回の乗算が必要です。テキストではこれを$O(n^2)$の時間がかかるとしています。

YouTubeをはじめました。「ぜうちゃねる」にご登録を。いいねも歓迎です。

テキストにそった内容のYouTube動画を作成しています。パワーポイントでスライドを作成し、Goodnoteを用いて書きながら丁寧に説明しています。各節につき1動画になっています。2024年3月の段階ではまだ第1章のみですが、2024年4月中には、統計的機械学習の数理のすべての動画が完成することになっています。ゆっくり話しているので、上級者の方は速度を125%や150%にして見ていただければと思います。

100問の解答を掲載しました。

「解答がほしい」というご要望があることは承知していました。ただ、勤務している学生(学部3年後期)が提出する演習問題にもなっていたこととがネックになっていました。解答がなくても本文を読めばわかる問題ばかりだという意識がありました。

今回、下記に関して、数学とプログラミングに関して、略解と言いながらも詳しい解答を載せてみました。ご活用ください。

2024年中には、シリーズの既刊すべてについて、解答を作成する予定です。ご期待ください。