25
情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法 1. 復習 2. scikit-learn入門 3. モデルとは?(問題設定、アルゴリズム、モデル) 4. 線形回帰モデル 5. 仮説、損失関数、目的関数 6. 最小二乗法 7. 最急降下法 8. 参考サイト 2015年度:情報工学実験4:データマイニング班 1 実験ページ: h<p://ie.u-ryukyu.ac.jp/~tnal/2015/info4/dm/

情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

情報工学実験4:データマイニング班(week3)線形回帰モデルと最急降下法

1.  復習2.  scikit-learn入門3.  モデルとは?(問題設定、アルゴリズム、モデル)4.  線形回帰モデル5.  仮説、損失関数、目的関数6.  最小二乗法7.  最急降下法8.  参考サイト

2015年度:情報工学実験4:データマイニング班 1

実験ページ:h<p://ie.u-ryukyu.ac.jp/~tnal/2015/info4/dm/

Page 2: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

Example:Irisflowerdataseth<p://en.wikipedia.org/wiki/Iris_flower_data_set

•  ClassificaOon–  InClassificaOon,thesamplesbelongtotwoormoreclassesandwewanttolearnfromalreadylabeleddatahowtopredicttheclassofunlabeleddata.

–  E.g.,disOnguishesthespeciesfromeachother.

2015年度:情報工学実験4:データマイニング班 2

(1)WhatisexperienceE?(2)WhatistaskT?

(3)HowtomeasuretheperformanceP?

review

Page 3: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

Terminology•  supervised,unsupervised

learning•  classificaOon,regression,

clustering•  sample•  features,a<ributes

–  numericalvalue–  categoricalvalue–  trueorfalse

•  supervisorysignal,teacher,class,label,outputdata,targetvariable

•  input,output•  trainingdata/trainingset•  testdata/testset

–  opentest–  closetest

•  model•  parameters•  learn,fit•  predict,esOmate•  evaluaOon

2015年度:情報工学実験4:データマイニング班 3

review

Page 4: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

情報工学実験4:データマイニング班(week3)線形回帰モデルと最急降下法

1.  復習2.  scikit-learn入門3.  モデルとは?(問題設定、アルゴリズム、モデル)4.  線形回帰モデル5.  仮説、損失関数、目的関数6.  最小二乗法7.  最急降下法8.  参考サイト

2015年度:情報工学実験4:データマイニング班 4

実験ページ:h<p://ie.u-ryukyu.ac.jp/~tnal/2015/info4/dm/

Page 5: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

AnintroducOontomachinelearningwithscikit-learn(1/3)

•  Loadingandanexampledataset– workonpy34–  (py34)python– >>>fromsklearnimportdatasets– >>>iris=datasets.load_iris()#datasets.load[tab]– >>>print(iris.DESCR)– >>>print(iris.data)– >>>print(iris.target)– >>>print(iris.target_names)

2015年度:情報工学実験4:データマイニング班 5

h<p://scikit-learn.org/stable/tutorial/basic/tutorial.html

hgclonessh://info3dm@shark//home/info3dm/HG/tnallesssklearn_intro.py

Page 6: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

AnintroducOontomachinelearningwithscikit-learn(2/3)

•  LearningandpredicOng– >>>fromsklearnimportsvm– >>>clf=svm.SVC(gamma=0.001,C=100.)– >>>clf.fit(iris.data[:-1],iris.target[:-1])– >>>clf.predict(iris.data[-1]]– >>>print(iris.target[-1])– >>>clf.score(iris.data,iris.target)

2015年度:情報工学実験4:データマイニング班 6

h<p://scikit-learn.org/stable/tutorial/basic/tutorial.html

Page 7: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

AnintroducOontomachinelearningwithscikit-learn(3/3)

•  Modelpersistence–  #save–  >>>importpickle–  >>>file=open("PredicOveModel.dump","wb")–  >>>pickle.dump(clf,file)–  >>>file.close()–  #load–  >>>file=open("PredicOveModel.dump","rb")–  >>>clf2=pickle.load(file)–  >>>file.close()–  >>>clf2.predict(iris.data[-1]]–  >>>print(iris.target[-1])

2015年度:情報工学実験4:データマイニング班 7

h<p://scikit-learn.org/stable/tutorial/basic/tutorial.html

Page 8: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

情報工学実験4:データマイニング班(week3)線形回帰モデルと最急降下法

1.  復習2.  scikit-learn入門3.  モデルとは?(問題設定、アルゴリズム、モデル)4.  線形回帰モデル5.  仮説、損失関数、目的関数6.  最小二乗法7.  最急降下法8.  参考サイト

2015年度:情報工学実験4:データマイニング班 8

実験ページ:h<p://ie.u-ryukyu.ac.jp/~tnal/2015/info4/dm/

Page 9: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

Problems,Models,Algorithms

•  Problems–  ClassificaOon–  Regression–  Clustering

•  Algorithms–  OrdinaryLeastSquares–  GradientDescent–  BackPropagaOon

•  Models–  LinearRegressionModel–  GeneralizedLinearModels

–  NeuralNetwork–  DecisionTree–  (otherkindsofmodels)

•  Bag-of-wordsdocumentmodel

2015年度:情報工学実験4:データマイニング班 9

Whatisthat?

Page 10: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

Models

•  Representbyanyformulaswith(someOmesone)parametersfortherelaOonshipbetweeninputX’sandoutputY’s.–  Inmachinelearning,theformulascalledas“hypothesis”.

– E.g.,h=a*x+b•  a,b:parameters

– Parameterizedmodel.– PredicOvemodel.(e.g.,a=1,b=2)

2015年度:情報工学実験4:データマイニング班 10

-5 -2.5 0 2.5 5

-2.5

2.5

Page 11: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

Problem<->Algorithm+Model

2015年度:情報工学実験4:データマイニング班 11

Dataset

LearningAlgorithm

hInputX’s EsOmatedvalue’s

hθ (x)=θ0x0 +θ1x1 = θi xi∑ = θiΦi (x)∑hθ (x)=θ0 +θ1x

LinearRegressionModel

•  Howdoweprepareamodel?•  Howdoweevaluatethegoodness?•  Howdowechoosetheappropriateparameters?

Page 12: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

情報工学実験4:データマイニング班(week3)線形回帰モデルと最急降下法

1.  復習2.  scikit-learn入門3.  モデルとは?(問題設定、アルゴリズム、モデル)4.  線形回帰モデル5.  仮説、損失関数、目的関数6.  最小二乗法7.  最急降下法8.  参考サイト

2015年度:情報工学実験4:データマイニング班 12

実験ページ:h<p://ie.u-ryukyu.ac.jp/~tnal/2015/info4/dm/

Page 13: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

LinearRegressionModel•  Trainingdatasets–  (x,y)=(4,7),(8,10),(13,11),(17,14)

•  Hypothesis

•  Parameters– θ0,θ1

•  CostfuncOon

•  ObjecOvefuncOon(measurementofthegoodness)

2015年度:情報工学実験4:データマイニング班 13

J(θ0,θ1) =12m

(hθ (x(i) )− y(i) )2

i=1

m

minθJ(θ0,θ1)

hθ (x) =θ0 +θ1xAssump&on1Linearfunc&on

Assump&on2Squarederror

Page 14: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

Hypothesisvs.CostfuncOon(θ1=1)

Hypothesis: Costfunc&on:

2015年度:情報工学実験4:データマイニング班 14

h(x) = x

θ0=0,θ1=1,(x,y)=(4,7),(8,10),(13,11)

J(θ0,θ1) =12m

(hθ (x(i) )− y(i) )2

i=1

m

0

5

10

15

20

0 5 10 15 20

y

x

"train.txt"x

J(0,1) = 12m((4− 7)2 + (8−10)2 + (13−11)2 )

J(0,1) = 12*3

(9+ 4+ 4) = 176= 2.83

0

5

10

15

20

-10 -5 0 5 10

Cos

t fun

ctio

n: J

(thet

a 1)

theta 1

"h1-sample1.dat"

Page 15: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

0

5

10

15

20

0 5 10 15 20

y

x

"train.txt"0.5*x

Hypothesisvs.CostfuncOon(θ1=0.5)

Hypothesis: Costfunc&on:

2015年度:情報工学実験4:データマイニング班 15

h(x) = 0.5* x

θ0=0,θ1=0.5,(x,y)=(4,7),(8,10),(13,11)

J(θ1) =12m

(hθ (x(i) )− y(i) )2

i=1

m

0

5

10

15

20

-10 -5 0 5 10

Cos

t fun

ctio

n: J

(thet

a 1)

theta 1

"h1-sample2.dat"

J(0.5) = 12m((2− 7)2 + (4−10)2 + (6.5−11)2 )

J(0.5) = 12*3

(25+36+ 20.25) = 81.256

=13.54

Page 16: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

Hypothesisvs.CostfuncOon(θ1=others)

•  θ1=0:–  H(x)=0*x=0–  J(0)=1/6{(0-4)^2+(0-10)^2+(0-13)^2}

•  =1/6{16+100+169}=47.5•  θ1=2:–  H(x)=2*x–  J(2)=1/6{(8-7)^2+(16-10)^2+(26-11)^2}

•  =1/6{1+25+225}=41.83•  θ1=1.5:–  H(x)=1.5*x–  J(1.5)=1/6{(6-7)^2+(12-10)^2+(19.5-11)^2}

•  =1/6{1+4+72.25}=12.87

2015年度:情報工学実験4:データマイニング班 16

θ0=0,θ1=others,(x,y)=(4,7),(8,10),(13,11)

Page 17: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

ObjecOvefuncOon:minimizeJ(θ1)

2015年度:情報工学実験4:データマイニング班 17

0

5

10

15

20

-1 -0.5 0 0.5 1 1.5 2

Cos

t fun

ctio

n: J

(thet

a 1)

theta 1

"h1-sample5.dat"

ConvexfuncOon

•  HowdoweobservetheshapeoffuncOon?•  HowdoweobservethebehaviorofGD?

Page 18: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

情報工学実験4:データマイニング班(week3)線形回帰モデルと最急降下法

1.  復習2.  scikit-learn入門3.  モデルとは?(問題設定、アルゴリズム、モデル)4.  線形回帰モデル5.  仮説、損失関数、目的関数6.  最小二乗法7.  最急降下法8.  参考サイト

2015年度:情報工学実験4:データマイニング班 18

実験ページ:h<p://ie.u-ryukyu.ac.jp/~tnal/2015/info4/dm/

Page 19: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

OrdinaryLeastSquares

2015年度:情報工学実験4:データマイニング班 19

h(x) =θ0 +θ1x (x,y)=(4,7),(8,10),(13,11),(17,14)

θ0=1029/194≒5.28,θ1=48/97≒0.495h(x)=5.28+0.495x

7 =θ0 + 4θ10 =θ0 + 4θ1 − 7e1 :=θ0 + 4θ1 − 7e12 = (θ0 + 4θ1 − 7)

2

E = ei2∑ ≥ 0

0

5

10

15

20

0 5 10 15 20

y

x

"train.txt"0.495*x+5.28

problems?

Ref.,h<p://gihyo.jp/dev/serial/01/machine-learning/0008

= (θ0 + 4θ1 − 7)2 + (θ0 +8θ1 −10)

2 + (θ0 +13θ1 −11)2 + (θ0 +17θ1 −14)

2

= 538θ12 +84θ0θ1 + 4θ0

2 − 978θ1 −84θ0 + 466= (2θ1 + 21θ0 − 21)

2 + 97(θ0 − 48 / 97)2 +121/ 97

Page 20: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

情報工学実験4:データマイニング班(week3)線形回帰モデルと最急降下法

1.  復習2.  scikit-learn入門3.  モデルとは?(問題設定、アルゴリズム、モデル)4.  線形回帰モデル5.  仮説、損失関数、目的関数6.  最小二乗法7.  最急降下法8.  参考サイト

2015年度:情報工学実験4:データマイニング班 20

実験ページ:h<p://ie.u-ryukyu.ac.jp/~tnal/2015/info4/dm/

Page 21: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

Gradientdescentalgorithm

2015年度:情報工学実験4:データマイニング班 21

θi :=θi −α∂∂θi

J(θ0,θ1)RepeatunOlconvergence{}

(1)Startwithanyparameters.(2)Updatetheparameterssimultaneously,unOlconvergence.

Simpleexample

J(θ ) =θ 2,α = 0.1

•  e.g.,α=0.1,θ=3,J(θ)=9•  1stupdate

•  New_θ=0.8*3=2.4•  J(θ)=2.4**2=5.76

•  2ndupdate•  New_θ=0.8*2.4=1.92•  J(θ)=1.92**2=3.6864

•  3rdupdate•  New_θ=1.536•  J(θ)=2.359296

•  4thupdate•  New_θ=1.2288000000000001•  J(θ)=1.5099494400000002

new_θ =θ −α ddθ

J(θ )

=θ − 0.1*2θ =θ − 0.2θ = 0.8θ

Page 22: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

Cont.)thebehaviorofGD

2015年度:情報工学実験4:データマイニング班 22

0

5

10

15

20

25

-4 -2 0 2 4

J(th

eta

theta

"xx.dat"x*x

Page 23: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

GradientdescentforLinearRegression

2015年度:情報工学実験4:データマイニング班 23

θi :=θi −α∂∂θi

J(θ0,θ1)

J(θ0,θ1) = 538θ12 +84θ0θ1 + 4θ0

2 − 978θ1 −84θ0 + 466•  e.g.,α=0.001,θ0=0,θ1=0,J(θ)=466•  1stupdate

•  New_θ0=0–0.001*(-84)=0.0084•  New_θ1=0–0.001*(-978)=0.0978•  J(θ)=374.86117384

•  2ndupdate•  New_θ0=0.01597176•  New_θ1=0.18500616•  J(θ)=302.3858537133122

•  3rdupdate•  New_θ0=0.022804930848•  New_θ1=0.2627653344•  J(θ)=244.75187010633334

•  4thupdate•  New_θ0=0.0289794580943616•  New_θ1=0.3321002229994368•  J(θ)=198.91981002677187

0

5

10

15

20

0 5 10 15 20

y

x

"train.txt"0

0.0084+0.0978*x0.01597176+0.18500616*x

0.022804930848+0.2627653344*x

∂∂θ0

J(θ0,θ1) = 84θ1 +8θ0 −84

∂∂θ1

J(θ0,θ1) =1076θ1 +84θ0 − 978

(x,y)=(4,7),(8,10),(13,11),(17,14)hθ (x) =θ0 +θ1x

Page 24: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

(opOonal)zig-zaggingbehavior

2015年度:情報工学実験4:データマイニング班 24

Ref.,h<p://en.wikipedia.org/wiki/Gradient_descent

Page 25: 情報工学実験4:データマイニング班tnal/2015/info4/dm/2015info4dm-w3.pdf · 情報工学実験4:データマイニング班 (week 3) 線形回帰モデルと最急降下法

References•  MachineLearning|Coursera,h<ps://class.coursera.org/ml-007•  Gradientdescent–Wikipedia,

h<p://en.wikipedia.org/wiki/Gradient_descent•  数理計画法 第12回,

h<p://www.dais.is.tohoku.ac.jp/~shioura/teaching/mp11/mp11-12.pdf

•  機械学習 はじめよう 第8回 線形回帰[前編],h<p://gihyo.jp/dev/serial/01/machine-learning/0008

•  機械学習 はじめよう 第9回 線形回帰[後編],h<p://gihyo.jp/dev/serial/01/machine-learning/0009

•  PRMLの線形回帰モデル(線形基底関数モデル),h<p://www.slideshare.net/yasunoriozaki12/prml-29439402

•  AnintroducOontomachinelearningwithscikit-learn,h<p://scikit-learn.org/stable/tutorial/basic/tutorial.html

2015年度:情報工学実験4:データマイニング班 25