BlogCat

1/19ページ
  • 2019.04.21

[SymPy] ベキ級数展開

ベキ級数展開 関数の級数展開  ある関数 $f(x)$ を $x$ のベキ級数(整級数)   \[a_0+a_1(x-x_0)^1+a_2(x-x_0)^2+\cdots\] で表すことを ベキ級数展開 といいます。無限に項をとることによって、理論上は関数と級数展開は厳密に一致しますが、実用のために有限項で打ち切っても、適切な数の項をとることによって、ベキ級数は $x=x_0$ の近くで関数の良い […]

  • 2019.04.21

重み更新式の意味

重みの更新式の意味  今回は 前回記事 で得たバックプロパゲーションにおける 重みの更新式 の意味を考えます。 出力層の重み更新式  $d-1$ 層 $i$ 番ニューロンから $d$ 層 $j$ 番ニューロンに入力される信号に掛かる重み $w_{ji}^{(d)}$ は以下の規則で更新されます。   \[w_{ji}^{(d)}(t+1)=w_{ji}^{(d)}(t)-\alpha\delta_ […]

  • 2019.04.20

バックプロパゲーションの仕組み

損失関数の勾配  ニューラルネットワークは、ある層の出力値の線形結合を次の層に渡すことを繰り返すので、ネットワークからの出力ベクトル $\boldsymbol{y}$ には、入力ベクトル $\boldsymbol{x}$ と使用されたすべての重み情報が含まれることになります。損失関数 $E$ は出力値 $\boldsymbol{y}$ と正解値 $\boldsymbol{t}$ を使って計算します […]

  • 2019.04.14

平均誤差の計算

損失関数の平均値  分類問題を学習するネットワークの場合、出力値 $\boldsymbol{y}$ の各成分が入力データの属するクラスを表します。たとえば下図にあるように、ネットワークに $\boldsymbol{x}$ を入力して   \[\boldsymbol{y}=\begin{bmatrix}y_0\\y_1\\y_2\end{bmatrix} =\begin{bmatrix}0.05\\ […]

  • 2019.04.12

バッチサイズとエポック

バッチサイズとエポック ミニバッチ学習  K-分割交差検証 の記事で解説したように、機械学習においては、普通は手持ちのデータをまとめて全部学習に使うようなことはしません。全データを訓練データとテストデータに分け、さらに訓練データもいくつかのバッチ(かたまり)に分割して、バッチごとに重みの最適化を実行します。言い換えれば、バッチとは重みの更新間隔です。このような学習の仕方をミニバッチ学習とよびます。 […]

  • 2019.04.10

1 of K 表記法 (one-hot表現)

1 of K 表記法 (one-hot表現) 1 of K データの作成  ニューラルネットワークは、バックプロパゲーションという手法を使って出力値を目標変数(正解値)に近づけるように重みを調整します。ネットワークが分類問題を学習する場合、一般に目標変数は 1 of K (one-hot) 形式で表記されます。    1 of K 表記法は、あるデータが属しているクラス K に等しいインデックスの […]

  • 2019.04.07

複数データの同時入力

複数データの同時入力  重みパラメータ $W$ を最適化するためには、たくさんのデータ $\boldsymbol{x}$ を入力し、ネットワークから出力値を得て、実測値との差分から損失関数を計算する必要があります。前回記事 で定義した layer()関数は1度に1個のデータしか渡せなかったので、複数データをまとめて入力 できるように layer() を改良してみましょう。    前回記事で扱ったよ […]

  • 2019.04.05

人工ニューラルネットワーク

ニューラルネットワーク ニューラルネットワークの構造  生物のニューラルネットワークをコンピュータ上に模倣したモデルを 人工ニューラルネットワーク (Artificial Neural Network) とよびます。機械学習の分野では「人工」を省略するのが一般的なので、当講座でも以降は単に ニューラルネットワーク(Neural Network) と記述します。  ニューラルネットワークは ニューロ […]

  • 2019.04.04

人工ニューロン

人工ニューロン (Artificial Neuron) 神経細胞のモデル化  前回記事 で扱った生物の神経細胞(ニューロン)の機能になぞらえて、コンピュータ上に「複数の信号を受け取り、適当な重み(荷重)を加えて足し合わせて、活性化関数によって強度を調整して出力する」という関数を設計します。このようなモデルを 人工ニューロン (Artificial Neuron) とよびます。「人工」をつけているの […]

  • 2019.04.03

生物の神経細胞ネットワーク

 本章から現代の機械学習の核心部分ともいえる人工ニューラルネットワークを学びます。人工ニューラルネットワークは、生物の神経細胞間で行われる情報伝達の仕組みを模倣した自動学習システムです。本格的な人工ニューラルネットワークについて学ぶ前に、今回は 生物の神経細胞ネットワーク について簡単に解説しておきます。   神経細胞とシナプス  生物の神経系を構成する個々の 神経細胞(ニューロン)は、情報処理と […]

1 19