LoginSignup
1
2

More than 3 years have passed since last update.

自習メモ:【キカガク流】人工知能・機械学習 脱ブラックボックス講座 - 初級編 -(その1)

Last updated at Posted at 2019-01-13

今回お世話になった学習サイト

機械学習を学ぶ目的

スキルアップ。年収UP。(機械学習にすごく興味がある!という強い動機があるわけではない。)

環境構築(自分はMacを利用)

以下のサイトを参考にして環境構築
https://play.kikagaku.co.jp/src/00_mac.html

機械学習の種類

教師あり学習

 →教師あり、事前データあり:人間が機械に基礎を教えて、その中で答えを見つけさせる学習方法。
 - 回帰:数値の予測 (★今回の学習対象★)
   例)都道府県、地区等を選択すると家賃相場を出力
     広さを入力すると家賃を出力
 - 分類:カテゴリを予測(事前データをもとに判断:カテゴリを事前に定義しておく?)
   例)男性女性、赤ワイン白ワイン等

教師なし学習

 →教師なし、事前データあり:何かを予測したいという目的がない、過去のデータをもとにデータの中身の特性、構造を出してみたい場合に利用する学習方法。
 - クラスタリング(集合の分割):
   例)男性の服を買いそうなグループ(過去の情報はないが、こういう人はこういうものを買いそうだ)
 - 次元削減:←今は名前だけ知っておく。

強化学習

 →教師なし、事前データなし
   例)掃除ロボットのように、掃除が必要な場所を、実際にデータを取りながら考える。

機械学習の学習の優先順位

1.微分
2.線形代数
3.積分、確率統計

機械学習の事前知識

・ AIと機械学習とディーブラーニングの違い
   ・ AI:人間の再現ー五感等からのインプット〜アウトプットまで。
   ・ 機械学習:AI内の頭脳部分。インプット情報を取得して変換するまでの技術
   ・ ディープラーニング:機械学習方法の一つ。

・ 1次関数:y = ax + b
  (a=傾き、b=切片、x=入力データ,y=出力データ)

1次関数傾きaの求め方 = \frac{縦軸f(x)の増加量}{横軸xの増加量} \\
(x + h)^{2}の展開式\\
(x + h)^{2} = x^{2} + 2xh + h^{2}\

微分(導関数)

 微分を学習する目的

微分は何が求まるのか

    →接線の傾き。つまり、
    1次関数y=ax+bの中のaが求まる。
   

微分は何に使えるのか

    機械学習で計算した結果と、手で計算した値等の誤差を求めるのに使う。
    ・微分で求まる傾きが0だった場合→正解と予測結果の間に誤差がない=正しい
    ・微分で求まる傾きが0から遠のく→正解と予測結果の間に誤差が大きい=正しくない    
    →微分を利用することである関数の誤差等が最小(最大)となる点が求まる。

    ※関数=ある入力に対して出力するために使用する式
              部屋の広さと場所を指定→関数→家賃相場を出力

微分に関する事前知識

極限:2次関数上のある1点を通る1次関数上の傾きを求めたいときに使用する、変化量を表す係数(定数)。仮で2次関数を通るもう一点を取り、最初の1点との増加分(変化量)を求める。

極限の公式

f'(x) = \lim_{h \to 0} \frac{f(x+h)-f(x)}{h} \\
↑'自体が関数の微分であることを指す。実際に計算するときは'は気にしない。\\

微分の公式

()'  または \frac{d}{dx} \\
(1)' = 0\\
(x)' = 1\\
(x^{2})' = 2x\\

例として、

(x^{2})' = 2x

が正しいか、微分の公式を利用しながら確認する。

①公式上の答えf(x)が、今回は(x^{2})になっているので、 \\
f(x) = (x^{2}) \\ 
②①と同様に、公式上の右辺f(x+h)の場合は、 \\
f(x + h) = (x + h)^{2} \\ 
③①と②を微分の公式に当てはめると、 \\ 
(x^{2}) = \lim_{h \to 0} \frac{(x + h)^{2}-(x^{2})}{h} \\
④(x^{2}+2xh+h^{2})を展開すると、\\
(x^{2}) = \lim_{h \to 0} \frac{(x^{2}+2xh+h^{2})-x^{2}}{h} \\
⑤x^{2}が消せるので、\\
(x^{2}) = \lim_{h \to 0} \frac{(2xh+h^{2})}{h} \\
⑥hも消せるので、\\
(x^{2}) = \lim_{h \to 0} (2x+h^{2}) \\
極限 → h = 0なので、\\
(x^{2}) = 2x \\

練習問題

①(4x+3)'を求めよ。
※x以外の値(xの係数等)はすべて微分の外に出してもOK。
(4x)' + (3)'
4 * (x)' + 3 * ()'
※4は微分の外に出す。3は外に出すと微分するものがなくなってしまう。その場合は1の微分とする。
4 * (x)' + 3 * (1)'
※微分の公式によると、xの微分は1,1の微分は0
4 * 1 + 3 * 0
→4が正解

②(3x^{2}+4x+7)'を求めよ。\\

3 * (x^{2})' + 4 * (x)' + 7 * (1)' \\
3 * 2x + 4 * 1 + 0 \\
= 6x + 4 \\

偏微分

傾きの変数が一つなのが微分。
偏微分とは、傾きが複数存在する(多変数の)微分。
家賃を予測したい場合にも、部屋の広さだけでなく、立地条件や耐震強度等が考えられるのと同じ。

 \frac{\partial}{\partial a} \\

※aの横にある記号はラウンドディー(ディー)と読む
  つまり、ディーエー分のディーと読む
この場合、分母の\partialの横にある値(今回はa)で偏微分する(a以外を定数と仮定して微分する)、という意味。
  aは微分で使ったxと全く同じ。(x)' = 1等。
  具体的な求め方は以下の通り。

例題1)

 \frac{\partial}{\partial a}(3a^{2}) \\
①aで偏微分していく。まずはa以外の値を外に出す。\\
 3 * \frac{\partial}{\partial a}(a^{2}) \\
②\partialは、分子と分母で消し合う。\\
 3 * \frac{(a^{2})}{a} \\
③aをxに読み替えると、a = 1,a^{2}=2aなので、\\
 3 * 2a \\
 = 6a\\

例題2)

 \frac{\partial}{\partial x_{1}}(4x_{1}+3x_{2}) \\
①x_{1}で偏微分を行っていく。まずは足し算を分ける。\\
 \frac{\partial}{\partial x_{1}}(4x_{1})+\frac{\partial}{\partial x_{1}}(3x_{2}) \\
②x_{1}以外の値を外に出す。\\
 4 * \frac{\partial}{\partial x_{1}}(x_{1})+3x_{2} * \frac{\partial}{\partial x_{1}}(1) \\
③aをxに読み替えると、x_{1} = 1,1 = 0、dは分子と分母で消し合うので、\\
 4 \\

例題3)

 \frac{\partial}{\partial a}(C_{0}-2C_{1}a+C_{2}a^{2}) \\
①aで偏微分を行っていく。まずは足し算を分ける。\\
 \frac{\partial}{\partial a}(C_{0})-\frac{\partial}{\partial a}(2C_{1}a)+\frac{\partial}{\partial a}(C_{2}a^{2}) \\
②a以外の値を外に出す。\\
 C_{0} * \frac{\partial}{\partial a}(1) - 2C_{1} * \frac{\partial}{\partial a}(a) + C_{2} * \frac{\partial}{\partial a}(a^{2}) \\
③aをxに読み替えると、a^{2} = 2a,a = 1,1 = 0、dは分子と分母で消し合うので、\\
 0 - 2C_{1} + 2aC_{2}\\
 = 2aC_{2} - 2C_{1}\\
1
2
0

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
1
2