LoginSignup
3

More than 5 years have passed since last update.

Webアプリケーションエンジニアがディープラーニングに挑戦する際にやったこと(Coursera Week9)

Posted at

Coursera Week9

はじめに

CourseraのWeek9を実施しましたので、私のメモを公開します。
Courseraってなんだ?という方はWeek1から御覧ください。

Anomaly detection

あるデータ・セットが与えられていて、そのデータセットから明らかに離れたデータをアノマリーと言う。

Gaussian(Normal) istribution

ガウス分布は以下の式で表される。
$x\sim N(\mu, \sigma^2)$
$\mu$は平均を表し、$\sigma$は分散(標準偏差)を表す。

$\mu$はただの平均なので下記の式で表現できる。
$$
\mu = \frac{1}{m}\sum_{i=1}^mx^{(i)}
$$
$\sigma^2$は下記のように表す。
$$
\sigma^2=\frac{1}{m}\sum_{i=1}^m(x^{(i)}-\mu)^2
$$

Density estimation

$$
p(x) = \Pi_{j=1}^np(x_j;\mu_j,\sigma_j^2)
$$
$\Pi$は$\sum$の積バージョン。
最終的に$p(x)$の値がかなり小さい($epsilon$より小さい)場合、これをアノマリーとする。
$p(x) < \epsilon$

Recommendation System

リコメンダシステムを取り扱う1つ目の理由は機械学習の問題とよくマッチするから。
2つ目の理由は全般的に必要な知識を共有するのにちょうどいいから。

Feature Learning

アルゴリズムがなんのフィーチャー(つまり$X$)を使うか自分自身で学習する。
映画の例では各映画がどれくらいロマンティックか、アクションが多いかを自分自身で学習する。

Collaborative filtering algorithm

1.$x$と$\theta$を小さいランダム数で初期化する。
2.CostFunctionを最急降下法などのアルゴリズムを使用して最小化する。
$$
x_k^{(i)} = x_k^{(i)} - \alpha(\sum_{j:r(i,j)=1}((\theta^{(j)})^Tx^{(i)} - y^{(i,j)})\theta_k^{(j)} + \lambda x_k^{(i)})
$$
$\theta$も上記の$x$と同様の式で求められる。
$\alpha$のカッコ内はコスト関数の偏微分。
3.レーティングの予測をする。
$(\theta^{(i)})^T x^{(i)}$

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3