HỆ THỐNG THÔNG TIN THÔNG MINH -...

23
5/3/19 1 H TH NG THÔNG TIN THÔNG MINH PGS.TS. Trần Văn Lăng Học viện Khoa học và Công nghệ, VAST NỘI DUNG Các hệ thống thông minh có thể dựa trên các tính toán mang tính thông minh. Nên có thể sử dụng những tri thức sau đây để xây dựng hệ thống 1. Tư duy logic với hệ thống điều khiển dùng Python 2. Machine Learning với TensorFlow 3. Thuật toán tiến hóa dùng Python A.Prof. Tran Van Lang, PhD -- VAST MACHINE LEARNING VỚI TENSORFLOW Ngày nay, ở góc độ khoa học thì Lĩnh vực Công nghệ thông tin có xu hướng chuyển Khoa học máy tính (Computer Science) sang Khoa học dữ liệu (Data Science) Có nghĩa là: từ những nghiên cứu về sự lưu trữ và xử lý của máy tính, sang những nghiên cứu về nội hàm của dữ liệu. Bởi bản thân trong dữ liệu đang tồn tại đã hàm chứa thông tin từ đó có thể rút ra quy tắc dùng trong việc xử lý A.Prof. Tran Van Lang, PhD -- VAST MACHINE LEARNING VỚI TENSORFLOW Input: X, Y là các tập dữ liệu thỏa mãn bởi quy tắc một cách tự nhiên: f : X à Y Output: Quy tắc hay mô hình f A.Prof. Tran Van Lang, PhD -- VAST Từ đó giải quyết bài toán trước đây (Khoa học máy tính) Input: X ,với quy tắc f đã tìm được ở trên, suy ra Output: Y

Transcript of HỆ THỐNG THÔNG TIN THÔNG MINH -...

Page 1: HỆ THỐNG THÔNG TIN THÔNG MINH - fair.conf.vnfair.conf.vn/~lang/lecture/compIntelligence/CI_2.pdf · không gian chứa dữ liệu ban đầu thành không gian mới hữu

5/3/19

1

HỆ THỐNG THÔNG TIN THÔNG MINH

PGS.TS. Trần Văn Lăng

Học viện Khoa học và Công nghệ, VAST

NỘI DUNG

Cáchệthốngthôngminhcóthểdựatrêncáctínhtoánmangtínhthôngminh.Nêncóthểsửdụngnhữngtrithứcsauđâyđểxâydựnghệthống

1. TưduylogicvớihệthốngđiềukhiểndùngPython

2. MachineLearningvớiTensorFlow

3. ThuậttoántiếnhóadùngPython

A.Prof. Tran Van Lang, PhD -- VAST

MACHINE LEARNING VỚI TENSORFLOW

• Ngàynay,ởgócđộkhoahọcthìLĩnhvựcCôngnghệthôngtincóxuhướngchuyểnKhoahọcmáytính(ComputerScience)sangKhoahọcdữliệu(DataScience)

• Cónghĩalà:từnhữngnghiêncứuvềsựlưutrữvàxửlýcủamáytính,sangnhữngnghiêncứuvềnộihàmcủadữliệu.

• Bởibảnthântrongdữliệuđangtồntạiđãhàmchứathôngtintừđócóthểrútraquytắcdùngtrongviệcxửlý

A.Prof. Tran Van Lang, PhD -- VAST

MACHINE LEARNING VỚI TENSORFLOW

• Input:X,Ylàcáctậpdữliệuthỏamãnbởiquytắcmộtcáchtựnhiên:

f:X à Y

• Output:Quytắchaymôhìnhf

A.Prof. Tran Van Lang, PhD -- VAST

Từđógiảiquyếtbàitoántrướcđây(Khoahọcmáytính)Input:X’,vớiquytắcf đãtìmđượcởtrên,suyraOutput:Y’

Page 2: HỆ THỐNG THÔNG TIN THÔNG MINH - fair.conf.vnfair.conf.vn/~lang/lecture/compIntelligence/CI_2.pdf · không gian chứa dữ liệu ban đầu thành không gian mới hữu

5/3/19

2

MACHINE LEARNING

• Nhưtrên,mọibàitoánluônđặtradướidạngphảicóinputvàoutput.

• Mốiliênhệgiữainputvàoutputtrongtoánhọcthườnggọiđólàhàm(function).

• Nhưvậy,hàmlàtậphợpnhữngquytắcđểnhữngphầntửởtậpnguồnđềucómộtvàchỉmộtphầntửởtậpđích.

A.Prof. Tran Van Lang, PhD -- VAST

MACHINE LEARNING

• NhiệmvụcủaMachineLeraning(ML)làlàmsaogiúpmáytínhtìmrahàmnày

• MLphânthành2nhómthuậttoánchính.Sựkhácnhaugiữa2nhómnàylàviệccungcấptậpdữliệuhuấnluyện;cáchthuậttoánsửdụngdữliệuvàloạivấnđềmàthuậttoángiảiquyết.

• Họccógiámsát (SupervisedLearning)

• Họckhônggiámsát (UnsupervisedLearning)

A.Prof. Tran Van Lang, PhD -- VAST

SUPERVISED LEARNING

• Họccógiámsátlàviệccóinputlàmộttậpnguồnvàmộttậpđíchtươngứng(gọilàđãđượcgánnhãn)đểlàmcơsởtìmraoutputlàhàmhaymôhình(model)mongmuốn.

• Tậphợpkếthợpbởihaitậpnàyđượcgọilàtậphuấnluyện(TrainingSet)

• Khithựchiện,dữliệumớilạiđượcsửdụngđể huấnluyện.Việchuấnluyện lạinhằmcảitiếnmôhìnhnàyhơnnữa

A.Prof. Tran Van Lang, PhD -- VAST

SUPERVISED LEARNING

• Tronghọccógiámsát,căncứvàodữliệucủatậpđích;cóthểphânthành2dạngbàitoán:

• Phânlớp (Classification):Khibàitoánmàdữliệucủatậpđíchlàhữuhạnvàcógánnhãn.Chẳnghạn,

• Phânnhómhọcsinhvàotrườngdựavàobảngtên• Hồiquy haytiênlượng (Regression):Khidữliệutậpđíchcótínhliêntụcvànốitiếpnhau.Chẳnghạn,• Dựđoánbiếnđộngcủachứngkhoándựatrêndữliệucủanhữngnămtrước

A.Prof. Tran Van Lang, PhD -- VAST

Page 3: HỆ THỐNG THÔNG TIN THÔNG MINH - fair.conf.vnfair.conf.vn/~lang/lecture/compIntelligence/CI_2.pdf · không gian chứa dữ liệu ban đầu thành không gian mới hữu

5/3/19

3

UNSUPERVISED LEARNING

• Họckhônggiámsátphảisửdụngkhikhôngcótậpđíchmàchỉcótậpnguồnvàcácđặctrưngcủatậpnguồnnày.Nhằmkhámphácấutrúcvàmốiquanhệcủadữliệu

• Họckhônggiámsátcòngọilàhọckhôngđượcsựchỉbảo.

• Khithựchiện,dữliệumớiđượcsuydiễnđểthêmvào.Từđóđưavềviệchọccógiámsát.Chínhvìvậyranhgiớigiữahọcgiámsátvàkhônggiámsátđôikhicũngkhôngđượcphânchiarõràng.

• Cóthểgọitrongtrườnghợpnàylàhọcbángiámsát(Semi-SupervisedLearning)

A.Prof. Tran Van Lang, PhD -- VAST

UNSUPERVISED LEARNING

• Cácbàitoánhọckhônggiámsátcũngđượcchialàmhailoạidựavàodữliệutậpnguồn:

• Gomcụm (Clustering):Khitậpnguồnchứamộtsốđặctínhcóthểnhậndạngđược(gọilàcácđặctrưng- featurehaycáccategory).Chẳnghạn,

• Gomemailvàothưmụcspamdựatrêncáchđặttên,nơigửi,tầnsuấtxuấthiệncủanơigửi,mộtsốnộidung

• Rútgọn hayướclượng (Reduction,Estimation):nhằmđểgiảmbớtđộphứctạpcủabàitoán

A.Prof. Tran Van Lang, PhD -- VAST

ĐỊNH NGHĨA MACHINE LEARNING

• “AcomputerprogramissaidtolearnfromexperienceEwithrespecttosomeclassoftasksTandperformancemeasureP,ifitsperformanceattasksinT,asmeasuredbyP,improveswithexperienceE.”,byTomMitchell

• ”MộtchươngtrìnhmáytínhđượcgọilàhọcđểthựchiệncôngviệcTtừkinhnghiệmEnếunhưhiệuquảthựchiệncôngviệcTcủanóđượcđobởiđộđoPvàđượccảitiếnbởikinhnghiệmE.”

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN TRONG MACHINE LEARNING

• TrongMLcó3thuậttoánphổbiến,đólà:

• SupportVectorMachines(SVM): ýtưởngcơbảncủathuậttoánSVMlàchuyểnđổikhônggianchứadữliệubanđầuthànhkhônggianmớihữuhạnchiềumàtrongkhônggiannàycóthểphânchiadữliệuthànhcáclớp(dựatrênlabel)dễdànghơnbởicácsiêuphẳng- hyperlane).Siêuphẳnggiữa2lớpthỏamãnđiềukiệnlàkhoảngcáchgiữa2đốitượngcủa2lớpgầnnhaunhấtlàcựcđại.

A.Prof. Tran Van Lang, PhD -- VAST

Page 4: HỆ THỐNG THÔNG TIN THÔNG MINH - fair.conf.vnfair.conf.vn/~lang/lecture/compIntelligence/CI_2.pdf · không gian chứa dữ liệu ban đầu thành không gian mới hữu

5/3/19

4

THUẬT TOÁN TRONG MACHINE LEARNING

• Môhìnhxácsuất(ProbabilisticModels):Sửdụngcácphânbốxácsuấtđểgiảiquyết.ChẳnghạnthuậttoánNaiveBayessửdụnglýthuyếtBayestrongphânbốxácsuất.

• DeepLearning(Họcsâu):Dựatrêncácmôhìnhnhiềumạngthầnkinhnhântạo(ANN- ArtificialNeuralNetworks- làmộthệthốngcácchươngtrìnhmôphỏngcáchvậnhànhcủabộnãongười)cóliênkếtvớinhau.Nóicáchkhác,DeepLearningkhôngnhữngchỉhọcmàcòntạoracáccấutrúcbiểudiễncácđặctrưngquantrọngmộtcáchtựđộngđểliênkếtcácANN.

A.Prof. Tran Van Lang, PhD -- VAST A.Prof. Tran Van Lang, PhD -- VAST

Việc chọn lựa thuật toán trong ML

TENSORFLOW

• TensorFlow củaGoogle làcôngcụgiúptạoứngdụngvềthôngminhnhântạo-AI(ArtificalIntelligence)

• TensorFlowlàthưviệnphầnmềmnguồnmởvềtínhtoánsốhiệunăngcao(highperformancenumericalcomputation)thựchiệntrêncácloạimáytínhhiệnnay(desktop,cluster,mobile).

• Tensor làkháiniệmmởrộngmatrixtrongtoánhọc.Trongtinhọclàmảngnhiềuchiều• Trườnghợp0chiềulàscalar(vôhướng),1chiềulàvector(véctơ),2chiềulàmatrix(matrận),vàn-chiềulàtensor

A.Prof. Tran Van Lang, PhD -- VAST

TENSORFLOW

• TrongML,việctìmrahàmhaymodelthểhiệnmốiquanhệgiữatậpnguồnvàtậpđíchlànhiệmvụchính.TensorFlowlàcôngcụđểhiệnthựcML,nênđãđưarakháiniệmFlownhưlàđồthịluồngdữliệu(dataflowgraphs)

• ĐóchínhlàluồngdữliệugiữacácTensor

• Chínhvìvậy,trongTensorFlowcó2kháiniệmcơbảnđólàNodevàTensor

• Node:làchỗlàmthayđổidữliệutrongluồngdữliệu.Nênnodelàcácphéptoán,cáchằnggiátrị,cácbiến.ĐóchínhlàđiểmgiaocắttrongGraph(đồthị)

A.Prof. Tran Van Lang, PhD -- VAST

Page 5: HỆ THỐNG THÔNG TIN THÔNG MINH - fair.conf.vnfair.conf.vn/~lang/lecture/compIntelligence/CI_2.pdf · không gian chứa dữ liệu ban đầu thành không gian mới hữu

5/3/19

5

TENSORFLOW

• Tensor:đóchínhlàloạidữliệu.ỞgócđộGraph,tensornằmtrêncạnh(Edge),củađồthịcònNodelànútcủađồthịđó.

• Tensorcó3thuộctínhcơbảnlà rank, shape và type:

• rank:0làScalar,1làvector,2làmatrix,3là3D-array,...• shape:làhìnhdạng,haykíchthướccủatensor

• type:kiểudữliệucủacácphầntửtrongtensor

A.Prof. Tran Van Lang, PhD -- VAST

GRAPH VÀ SESSION

• TrongTensorFlowcó2nhiệmvụrạchròi,đólà:

• Địnhnghĩa:nhằmxâydựngđồthị(Graph)• Thựcthicáctínhtoán:dùngSessionđểthựcthi

• Chẳnghạn,đểthựchiệnphéptoáncộng2sốnguyên,trướchếtcầnphảiđịnhnghĩamộtđồthịgồm3nút:• Biếna• Biếnb

• Phéptoáncộng

A.Prof. Tran Van Lang, PhD -- VAST

GRAPH VÀ SESSION

• SauđóthựcthibằngmộtphiênSession

• Lưuý:ngoạitrừcáchằnggiátrị,cácbiếnphảiđượckhởitạogiátrịmớidùngđượcbằnghànhviinitializer()

• Thayvìsess.run(),cóthểviết:

A.Prof. Tran Van Lang, PhD -- VAST

SESSION

• Trongtrườnghợpcóquánhiềubiếnphảikhởitạo,việckhởitạocũngcóthểthựchiệnchomọibiếnbằngcách:

A.Prof. Tran Van Lang, PhD -- VAST

• Lưuý:ĐểbỏquacáccảnhbáowarningkhidùngTensorFlow,vàđểcoiđồ.thịtrênTensorBoard,bổsungthêmcáccâulệnhsau:

Page 6: HỆ THỐNG THÔNG TIN THÔNG MINH - fair.conf.vnfair.conf.vn/~lang/lecture/compIntelligence/CI_2.pdf · không gian chứa dữ liệu ban đầu thành không gian mới hữu

5/3/19

6

TENSORBOARD

• Khiđó,saukhithựcthichươngtrìnhPythonbằngdònglệnh

pythonexample.py

• SẽgọiđếnTensorBoardđểtạologfilesửdụngtrongWebBrowser

tensorboard--logdir=./graphs--host127.0.0.1--port8088

• Kếtquảxuấtra

TensorBoard1.12.2athttp://127.0.0.1:8088(PressCTRL+Ctoquit)

đểchờgọiđếnhttp://127.0.0.1:8088 trongWebBroswer

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN HỒI QUY

• Hồiquy(Regression)làphươngphápmàmốiquanhệgiữatậpnguồnvàtậpđíchlàquanhệthểhạngdướidạnghàm.

• Trongphươngpháptính,thựcchấtlàphéptínhnộisuy,phươngphápbìnhphươngtốithiểu(MeanLeastSquare)

• HồiquytuyếntínhcòngọilàphươngphápBìnhphươngtốithiểutuyếntính(LinearLeastSquare)trongPhươngpháptính,hayphươngpháphiệuchỉnhtuyếntính(LinearFitting)trongThốngkê.

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN HỒI QUY TUYẾN TÍNH

• Chohàm!𝑦 = 𝑓 𝑥, 𝑤( , 𝑤) = 𝑤( + 𝑤)𝑥

• VàbảngN cặpgiátrị 𝑥+ , 𝑦+ , ∀𝑖 = 1, 𝑁

• Nếu

0+1)

2

𝑦+ − 𝑓 𝑥, 𝑤( , 𝑤)4

đạtcựctiểu,thìhàm !𝑦 = 𝑓 𝑥, 𝑤( , 𝑤) xấpxỉtốtnhấtbảngcácgiátrị𝑥+ , 𝑦+ , ∀𝑖 = 1, 𝑁

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN HỒI QUY TUYẾN TÍNH

• Trongphươngpháptrên

• Còngọi 𝑥+, 𝑦+ , ∀𝑖 = 1,𝑁 làcácgiátrịđầuvàovàđầura

• Cácgiátrịnàyquanhệvớinhautheoquytắctuyếntính• !𝑦 làđầuradựđoán(predictedoutput)

• w =w0,w1 làtrọngsố(weight)

A.Prof. Tran Van Lang, PhD -- VAST

Page 7: HỆ THỐNG THÔNG TIN THÔNG MINH - fair.conf.vnfair.conf.vn/~lang/lecture/compIntelligence/CI_2.pdf · không gian chứa dữ liệu ban đầu thành không gian mới hữu

5/3/19

7

THUẬT TOÁN HỒI QUY TUYẾN TÍNH

• Đặt

𝐿 𝑤 = 𝐿 𝑤(, 𝑤) = 0+1)

2

𝑦+ − 𝑓 𝑥, 𝑤( , 𝑤)4

• Phươngpháphồiquytuyếntínhlàtìm𝑤∗ thỏa:𝑤∗ = 𝑎𝑟𝑔𝑚𝑖𝑛 𝐿(𝑤)

>1(>?,>@)

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN HỒI QUY TUYẾN TÍNH

• Tacó:

𝜕𝐿𝜕𝑤(

= 20+1)

2

𝑦+ − 𝑤( −𝑤) 𝑥+ −1

𝜕𝐿𝜕𝑤)

= 20+1)

2

𝑦+ − 𝑤( −𝑤) 𝑥+ −𝑥+

𝜕𝐿𝜕𝑤

= 0 ⟺

0+1)

2

𝑦+ − 𝑤( −𝑤) 𝑥+ = 0

0+1)

2

𝑦+ − 𝑤( −𝑤) 𝑥+ 𝑥+ = 0

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN HỒI QUY TUYẾN TÍNH

• Suyra𝑤(, 𝑤) lànghiệmcủahệ:

E𝑁𝑤( + ∑+1)

2 𝑥+ 𝑤) = ∑+1)2 𝑦+

∑+1)2 𝑥+ 𝑤( + ∑+1)

2 𝑥+4 𝑤) = ∑+1)

2 𝑥+𝑦+

• Hoặcdướidạngmatrận

𝑁 0+1)

2

𝑥+

0+1)

2

𝑥+ 0+1)

2

𝑥+4

𝑤(𝑤)

=

0+1)

2

𝑦+

0+1)

2

𝑥+𝑦+

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN HỒI QUY TUYẾN TÍNH

• Đặt

𝑋 =1 … 1𝑥) … 𝑥2

,

• Suyra𝑤(𝑤)

= 𝑋𝑋I J)𝑋𝑦)⋮𝑦2

A.Prof. Tran Van Lang, PhD -- VAST

Page 8: HỆ THỐNG THÔNG TIN THÔNG MINH - fair.conf.vnfair.conf.vn/~lang/lecture/compIntelligence/CI_2.pdf · không gian chứa dữ liệu ban đầu thành không gian mới hữu

5/3/19

8

THUẬT TOÁN HỒI QUY TUYẾN TÍNH

1. Input 𝑥) … 𝑥2 I , 𝑦) … 𝑦2 I

2. output 𝑤( 𝑤) I

3. Begin4. Build X

5. XT =Transfer X6. A=XXT

7. b =X 𝑦) … 𝑦2 I

8. 𝑤( 𝑤) I=A-1b9. 𝐄𝐧𝐝

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN HỒI QUY TUYẾN TÍNH

• Cáchàmsauđâyđượcdùng

• len():lấysốphầntửcủamộtarray

• numpy.ones():tạomatrậncácphầntửbằng1(all-onesmatrix,matrixofones)• numpy.concatenate(...,axis=0/1):gộpthêm1matrậnvàomatrậnđãcó,axis=0nếuthêmdòng,axis=1nếucầnthêmcột

• numpy.dot():tínhtích2matrận

• numpy.linalg.pinv():tínhmatrậnnghịchđảo• numpy.linspace():trảvềcácgiátrịrờirạctrênđoạnchotrước.

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN HỒI QUY TUYẾN TÍNH

• Ứngdụng1:Tìmtrọnglượngcủamộtngườikhibiếtchiềucao

• Ngoàira,cũngđãcódữliệutươngứnggiữachiềucao(tậpnguồn- h)vàcânnặng(tậpđích- w)đểlàmcơsởchoviệcrútramôhìnhthểhiệnmốiquanhệnày.

• Trongứngdụngnàytìmw theoh dướidạngtuyếntính

w=w1h+w0

• Trongđów1 làtrọngsố(weight),w0 làđộlệch(Bias)

A.Prof. Tran Van Lang, PhD -- VAST

• Chiềucaovàcânnặngcủa2ongườitrongvídụtrướcchoởbảng

A.Prof. Tran Van Lang, PhD -- VAST

STT Cao Nặng STT Cao Nặng STT Cao Nặng

1 145 42 8 164 64 15 177 71

2 150 46 9 165 65 16 178 72

3 152 50 10 168 66 17 180 72

4 154 54 11 170 67 18 181 73

5 156 54 12 172 68 19 182 74

6 160 56 13 174 69 20 184 75

7 162 60 14 175 70

Page 9: HỆ THỐNG THÔNG TIN THÔNG MINH - fair.conf.vnfair.conf.vn/~lang/lecture/compIntelligence/CI_2.pdf · không gian chứa dữ liệu ban đầu thành không gian mới hữu

5/3/19

9

• Giảsửchiềucao(h)vàcânnặng(w)quanhệdướidạngtuyếntính

w =w1 xh +w0

• Vấnđềlàtìmcácmodelparameterw1,w0

• TheothuậttoánhồiquytuyếntínhđượcviếtbằngPythonnhưsau:

A.Prof. Tran Van Lang, PhD -- VAST

• Tạocácmatrậnnhưslidetrước

• Sauđótínhmatrậnnghịchđảo,rồinhânvớimatrậnbđểcókếtquảlàmodelparameters

A.Prof. Tran Van Lang, PhD -- VAST

• Kếtquảhàmxấpxỉdạngtuyếntínhnhưhình

A.Prof. Tran Van Lang, PhD -- VAST

• Từđócóthểsửdụngđểdựđoán

A.Prof. Tran Van Lang, PhD -- VAST

Page 10: HỆ THỐNG THÔNG TIN THÔNG MINH - fair.conf.vnfair.conf.vn/~lang/lecture/compIntelligence/CI_2.pdf · không gian chứa dữ liệu ban đầu thành không gian mới hữu

5/3/19

10

• Trườnghợpvớidữliệuđầuvàonhiềuhơn.Chẳnghạn,

• Bàitoánđịnhgiá(y)củaviênđáquýphụthuộcvào3tiềnđề:

• Trọnglượng(x1)• Kíchthước(x2)

• Độtinhkhiết(x3).

• Khiđó,đểtìmhàmdựđoánvềgiá- làquanhệf giữavectorgồm3thànhphầnx=(x1, x2, x3)Tvớimộtsốy(đạilươngvôhướng).

A.Prof. Tran Van Lang, PhD -- VAST

• Vớivídụtrên,hàmf ởdạngtuyếntính(lũythừabậc1củax)nhưsau,nêngọilàhồiquytuyếntính

y≈f(x)=w0+w1x1 +w2x2 +w3x3

Trongđów =(w0,w1,w2,w3)T làgiátrịcầntìm• Trườnghợptổngquát,hàmf códạng

y≈f(x)=w0+w1x1 +w2x2 +...+wMxMvớiM tiềnđề xk vàkếtluận y,trongđó

vector w =(w0,w1,w2,...,wM)T cầnphảitìm

A.Prof. Tran Van Lang, PhD -- VAST

• NếukýhiệulạixT =(1,x1,x2,x3)thìcóthểviếtlạihàmdựđoáncầntìmnhưsau:

y≈f(x)=xTw

• Vấnđềđặtralàphảitìmđượccácwk,k=1..M saochosaisốtrungbìnhphươnggiữay vàf(x)lànhỏnhất.

• Haylàphảitìmw saocho

(y– xTw)2 ≈ 0

A.Prof. Tran Van Lang, PhD -- VAST

• GiảsửđãcóN dữliệuyivềkếtluậnthuthậpđược,đồngthờiN dữliệunàytươngứngvớibộdữliệuxi ,i=1..N củaMtiềnđề.

• Nóicáchkhác,nếucóN bộdữliệu(cảtiềnđềvàkếtluận)(yi,x1i, x2i,..., xMi), i=1..N

• Bàitoánđặtralàtìmcácwk,k=1..M saocho

𝐿 𝒘 =0+1)

2

𝑦+ − 𝒙I𝒘 4

đạtcựctiểu

A.Prof. Tran Van Lang, PhD -- VAST

Page 11: HỆ THỐNG THÔNG TIN THÔNG MINH - fair.conf.vnfair.conf.vn/~lang/lecture/compIntelligence/CI_2.pdf · không gian chứa dữ liệu ban đầu thành không gian mới hữu

5/3/19

11

• Kýhiệuvector

y =(y1,y2,...,yN)T

vàmatrận

𝑿 =𝑥𝟏𝟏 ⋯ 𝑥𝟏𝑵⋮ ⋱ ⋮

𝑥Y) ⋯ 𝑥𝑴𝑵

• HàmL(w)đượcviếtlại

𝐿 𝒘 = 𝒚 − 𝑿𝑻𝒘𝟐

𝟐

A.Prof. Tran Van Lang, PhD -- VAST

• Đểtìmw saochoL(w)đạtcựctiểu,bàitoánđượcđưavềgiảiphươngtrình:

𝜕𝐿(𝒘)𝜕𝒘

= 0 ⟺𝜕𝜕𝒘

𝒚 − 𝑿𝑻𝒘𝟐

𝟐= 0

⟺ 𝑿 𝒚 − 𝑿𝑻𝒘 = 0

• Suyra,w đượctínhtừbiểuthứcsauvới𝒃 = 𝑿𝒚𝒘 = (𝑿𝑿𝑻)J)𝒃

A.Prof. Tran Van Lang, PhD -- VAST

• Saukhitìmđượcw,thayvàobiểuthức

f(x)=w0+w1x1 +w2x2 +...+wMxM

• Tacógiátrịdựđoán_𝒚 = 𝑓(_𝒙) nếucóđượccácgiátrị_𝒙.

• ChươngtrìnhviếtbằngPythonnhưsau:

A.Prof. Tran Van Lang, PhD -- VAST

• Cóthểmởrộngđểtìmtrọnglượngcủamộtngườikhibiếtchiềucaovàchiềudàibànchân

• Trongchươngtrìnhdưới:tronglượngđượclưutrữtrongx1,chiềudàilòngbànchântrongx2vàylàtrọnglượng.Từđótìmmốiquanhệgiữax1,x2vày

A.Prof. Tran Van Lang, PhD -- VAST

Page 12: HỆ THỐNG THÔNG TIN THÔNG MINH - fair.conf.vnfair.conf.vn/~lang/lecture/compIntelligence/CI_2.pdf · không gian chứa dữ liệu ban đầu thành không gian mới hữu

5/3/19

12

• Tạocácmatrậnnhưtrongphầnlýthuyết

• Từđótìmmatrậnnghịchđảođểsuyracácthamsốtrongmôhìnhtuyếntínhởtrên

A.Prof. Tran Van Lang, PhD -- VAST

• Kếtquả

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN HỒI QUY TUYẾN TÍNH

• Ngoàiviệcsửdụngnhữnghàmtruyềnthốngliênquanđếntínhtoánkhoahọcnhưnhânmatrận,nghịchđảomatrận,...ChúngtacóthểsửdụngtrựctiếphàmLinearRegression()củathưviệnscikit-learn.

• Khiđóchươngtrìnhđượcviếtnhưsau:

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN HỒI QUY TUYẾN TÍNH

A.Prof. Tran Van Lang, PhD -- VAST

Page 13: HỆ THỐNG THÔNG TIN THÔNG MINH - fair.conf.vnfair.conf.vn/~lang/lecture/compIntelligence/CI_2.pdf · không gian chứa dữ liệu ban đầu thành không gian mới hữu

5/3/19

13

BÀI TẬP

• Sửdụngđiềukhiểnmờđểđưaradựđoáncânnặngkhibiếtchiềucao;vớiluậtlà“ngườicàngcaothìcàngcânnặng”.

• Dựđoángiácủacănhộchungcưcăncứvàotổngdiệntích,sốphòng,khuvựcbằngthuậttoánhồiquytuyếntínhdùngthưviệnscikit-learn.

A.Prof. Tran Van Lang, PhD -- VAST

DÙNG TENSORFLOW ĐỂ HUẤN LUYỆN

• QuaytrởlạivớibàitoándùngHồiquytuyếntính.

• Giảsửchúngtacầntìmramộtmodel(mộtquytắc)tươngứnggiữatậpnguồnlànhữngphầntửtrongtậphợp{0,1,2,3,4}vàtậpđích{1,3,5,7,9}

• Vềhìnhảnh,rõràngtacóthểrútraquytắcđólà

y =2x +1

• Trongđóx làphầntửthuộctậpnguồn,y làphầntửthuộctậpđích

A.Prof. Tran Van Lang, PhD -- VAST

• Bằngcáchxemxéttừngtọađộtrongmặtphẳng(x,y):đólàcácđiểm(0,1),(1,3),(2,5),(3,7),(4,9).

• Theophươngpháphồiquytuyếntính,hàmmấtmátlàvớiN=4

𝐿 𝑤 =12𝑁

0+1)

2

𝑊𝑥+ + 𝑏 − 𝑦+ 4

• VớiW =2,b =1,thìL(w)=0

A.Prof. Tran Van Lang, PhD -- VAST

• Tổngquáthóalên,tậpđíchvàtậpnguồncóquanhệvớinhaudạng

y=Wx+b

• BàitoánđặtralàtìmW,b saochomấtmátbằng0

• GiảsửchúngtachoW =1,b =1trongmôhìnhcủaTensorFlow,quađóvớixbấtkỳ,cóthểtínhy theocôngthứctrênnhưsau:

A.Prof. Tran Van Lang, PhD -- VAST

Page 14: HỆ THỐNG THÔNG TIN THÔNG MINH - fair.conf.vnfair.conf.vn/~lang/lecture/compIntelligence/CI_2.pdf · không gian chứa dữ liệu ban đầu thành không gian mới hữu

5/3/19

14

• Sauđóthựcthiđểtínhcácgiátrịy vớix thuộc{0,1,2,3,4},kếtquảy là{1,2,3,4,5}.

• Kếtquảnàyrấtkhácbiệtsovớitậphuấnluyệnlà{1,3,5,7,9},vàgiátrịhàmmấtmáttrongtrườnghợpnàylà3(bằngcáchthayY_trainbởi[1,2,3,4,5])

A.Prof. Tran Van Lang, PhD -- VAST

• Saisốbìnhphươngtrungbìnhtrongtrườnghợpnàylà4

• Trongkhiđó,nếuchọnW =2,b =1nhưtrênthìkếtquảrấttốt(giátrịhàmmấtmátbằng0,saisốcũngbằng0)

A.Prof. Tran Van Lang, PhD -- VAST

• Vấnđềđặtralàtìmmộthàmtốiưu(Optimizer)trongTensorFlowdùngchohuấnluyệnsaochogiátrịmấtmátđạtcựctiểu

• Tronggóitensorflow.traincómộtOptimizerđơngiảnđólàGradientDescentOptimizer()vớihệsốđểhuấnluyện(learningrate)là0.01.Nêncó2bước

optimizer=GradientDescentOptimizer(0.01)

train=optimizer.minimize(loss)

• TừđâycóthểdùngTensorFlowđểtìmmodelparameter(cácthamsốW,b)nhưsau:

A.Prof. Tran Van Lang, PhD -- VAST A.Prof. Tran Van Lang, PhD -- VAST

Page 15: HỆ THỐNG THÔNG TIN THÔNG MINH - fair.conf.vnfair.conf.vn/~lang/lecture/compIntelligence/CI_2.pdf · không gian chứa dữ liệu ban đầu thành không gian mới hữu

5/3/19

15

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN HỒI QUY TUYẾN TÍNH

• Quaytrởlạivớibàitoándựđoántrọnglượngkhibiếtchiềucao.TrongTensorFlow,sửdụngthuậttoántốiưuGradientDescentđểlàmtốithiểuhàmmấtmát

• DùngTensorFlowvớiPythonvớidữliệuhuấnluyệngồmcặp(X_train,Y_train))

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN HỒI QUY TUYẾN TÍNH

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN HỒI QUY TUYẾN TÍNH

• Kếtquảđượcxấpxỉbằngđồthịnhưhình,trongđóđườngthẳnglàđồthịcủa

Y=WX+B

A.Prof. Tran Van Lang, PhD -- VAST

Page 16: HỆ THỐNG THÔNG TIN THÔNG MINH - fair.conf.vnfair.conf.vn/~lang/lecture/compIntelligence/CI_2.pdf · không gian chứa dữ liệu ban đầu thành không gian mới hữu

5/3/19

16

THUẬT TOÁN HỒI QUY TUYẾN TÍNH

• DùngkếtquảđểdựđoánvớichươngtrìnhLinearRegression2.py

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN HỒI QUY TUYẾN TÍNH

• Ứngdụng2:Mởrộnghơn,giảsửtrọnglượngkhôngnhữngphụthuộcchiềucaomàcòncảchiềudàibànchân.

• Khiđó,cầnphảicótậpnguồnlàcáccặp(X1,X2)vớiX1 làchiềucao,X2 làchiềudàibànchân;tậpđíchvẫnlàY.

• KhiđóYđượctìmdướidạng

Y =W1X1 +W2X2 +B

• TừđótìmW1,W2 vàB saochohàmmấtmátđạtcựctiểu

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN HỒI QUY TUYẾN TÍNH

• Dữliệuhuấnluyệntrongtrườnghợpnàybaogồm2thànhphần:

• Tậpnguồn(X_train)làmatrậncón dòng2cột,vớin làsốdữliệu

• Tậpđích(Y_train)làvectorcón thànhphầnLưuý:phảichuyểnvịmatrậnvàvectornàyđểđúngvớiyêucầu

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN HỒI QUY TUYẾN TÍNH

• CáccâulệnhcũngnhưỨngdụng1,chỉthayđổiđểlàmrõhơnw làmộttensorcóshapelà(2,1)

A.Prof. Tran Van Lang, PhD -- VAST

Page 17: HỆ THỐNG THÔNG TIN THÔNG MINH - fair.conf.vnfair.conf.vn/~lang/lecture/compIntelligence/CI_2.pdf · không gian chứa dữ liệu ban đầu thành không gian mới hữu

5/3/19

17

THUẬT TOÁN HỒI QUY TUYẾN TÍNH

• CácbướctiếptheohoàntoàngiốngvớitrườnghợptậpnguồnX_trainlàmatrậnn dòng1cột

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN HỒI QUY TUYẾN TÍNH

• Đểvẽhình,cầntáchtậpnguồnX_trainthành2thànhphần,mỗithànhthànhphầnlàmộtvectorn dòng.

A.Prof. Tran Van Lang, PhD -- VAST

A.Prof. Tran Van Lang, PhD -- VAST A.Prof. Tran Van Lang, PhD -- VAST

Page 18: HỆ THỐNG THÔNG TIN THÔNG MINH - fair.conf.vnfair.conf.vn/~lang/lecture/compIntelligence/CI_2.pdf · không gian chứa dữ liệu ban đầu thành không gian mới hữu

5/3/19

18

THUẬT TOÁN HỒI QUY TUYẾN TÍNH

• Tínhtoántheochươngtrình vớisốliệunhậpvào

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN KNN

• KNN(K-NearestNeighbor)làthuậttoánKlánggiềnggầnnhất

• KNNthuộcloạisupervised-learningđơngiảnnhất

• KNNcóthểápdụngđượcchocảClassification vàRegression

• Khitraining,KNN khônghọc mộtđiềugìtừdữliệu,mọitínhtoánđượcthựchiệnkhidựđoánkếtquảcủadữliệumới

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN KNN

• Với Classification,nhãn(đầura)củamộtđiểmdữliệu(DataPoint)mớiđượcsuyratừKđiểmdữliệugầnnhấttrongtrainingset.

• VớiRegresssion,đầuracủamộtđiểmdữliệusẽbằngchínhđầuracủađiểmdữliệuđãbiếtgầnnhất(trongtrườnghợpK=1).

• Tómtại,KNNlàthuậttoánđitìmđầuracủamộtđiểmdữliệumớibằngcách chỉ dựatrênthôngtincủaKđiểmdữliệutrongtrainingsetgầnnónhất(K-lâncận),mà khôngquantâmđếnviệccómộtvàiđiểmdữliệutrongnhữngđiểmgầnnhấtnàylànhiễu(dữliệumàcólờigiảisai)

A.Prof. Tran Van Lang, PhD -- VAST

MINH HỌA KNN

• Giảsửcómộtdatasetgồm2loạidữliệulàmàuđỏ(class1)vàmàuxanh(class0)nhưhìnhbêncạnh(hìnhnàyđượcvẽbằngchươngtrìnhPython)

• Thuậttoán3-NNtìmđiểm(50,25)– cóhìnhdấu*màuđen– thuộcclass1hayclass2bằngcáchtínhkhoảngcáchtừđiểmnàyđếntấtcảcácđiểmcótrongdataset.

• Sauđóchỉra3điểmgầnvớiđiểm*nàynhất,màtrongđócó2điểmthuộcclass1,1điểmthuộcclass0.Kếtluậnđiểmnàythuộcclass1

A.Prof. Tran Van Lang, PhD -- VAST

Page 19: HỆ THỐNG THÔNG TIN THÔNG MINH - fair.conf.vnfair.conf.vn/~lang/lecture/compIntelligence/CI_2.pdf · không gian chứa dữ liệu ban đầu thành không gian mới hữu

5/3/19

19

ĐỊNH NGHĨA KHOẢNG CÁCH

• MộttiêuchíquantrọngtrongKNNđólàkhoảngcách(đểđokháiniệmgần)

• Cho2vectorX,Ycócácthànhphầnnhưsau:

𝑋 = 𝑥), 𝑥4,… , 𝑥b I và𝑌 = 𝑦), 𝑦,… , 𝑦b I

• Khoảngcáchtổngquátgiữa2vectornàyđượckýhiệuvàđịnhnghĩalà:

𝑋−𝑌 d =0+1)

b

𝑥+ − 𝑦+ d e) d

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN KNN

• Cácbiểuhiệncụthểcủakhoảngcáchnàylà

• Khip =2,đóchínhlàkhoảngcáchEuclide𝑋−𝑌 4 = 𝑥) − 𝑦) 4 + 𝑥4 − 𝑦4 4 +⋯+ 𝑥b − 𝑦b 4

• Khip =1,đólàkhoảngcáchtrịtuyệtđốibìnhthường𝑋−𝑌 = 𝑥) − 𝑦) + 𝑥4 − 𝑦4 +⋯+ 𝑥b − 𝑦b

• Khi𝑝 →∞𝑋−𝑌 i = 𝑀𝑎𝑥 𝑥) − 𝑦) , 𝑥4 − 𝑦4 ,… , 𝑥b − 𝑦b

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN KNN

• Dữliệuthửcóthểtìmthấyởhttp://yann.lecun.com/exdb/mnist/

• Dữliệunàykhálớn,độchínhxáckhácao:

• Accuracyof1NNforMNIST:96.91%

• Runningtime:1828.86s(hơn30phút)• Cóthểthửnghiệmvớibộdữliệunhỏhơnchứa3loàihoalan

A.Prof. Tran Van Lang, PhD -- VAST

• DữliệuIrisflowerdataset baogồmthôngtincủabaloạihoalankhácnhau:Irissetosa,IrisvirginicavàIrisversicolor. Trongnày có 150records(mỗiloạilannàycó50bông),mỗirecordcó4attributes:chiềudàicánhhoa(petallength),chiềurộngcánhhoa(petalwidth),chiềudàiđàihoa(sepallength),chiềurộngđàihoa(sepalwidth).

• Vìvậy,khilưutrữcầnmộtvector4thànhphầnchomỗitấmhình

A.Prof. Tran Van Lang, PhD -- VAST

Page 20: HỆ THỐNG THÔNG TIN THÔNG MINH - fair.conf.vnfair.conf.vn/~lang/lecture/compIntelligence/CI_2.pdf · không gian chứa dữ liệu ban đầu thành không gian mới hữu

5/3/19

20

THUẬT TOÁN KNN

• Trongcơsởdữliệugồm150bônghoanày,đượcphânbố50bônghoađầuthuộccùngmộtloại,50bônghoatiếptheocùngmộtloại,và50bônghoacuốithuộccùngmộtloại.

• Ứngdụng3:DựđoáncácbônghoalanđưavàothuộcloạilanIrisgìtrong3loại:IrisSetosa,hayIrisVersicolor,hayIrisVirginica

• Giảsửdữliệuđượclưutrữtrongtậptin./Data/iris.data.

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN KNN

• Khiđócóthểđọcdữliệuđểhiểnthịvàsửdụng

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN KNN

• Trong150dữliệunày,dùng120dữliệuđểhuấnluyện,30dữliệuđểthửnghiệm.Sauđóphânlớpvớikgồm10lánggiềng.

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN KNN

• Đểtínhsaisốtrungbìnhứngvớicácgiátrịk khácnhautrong[1,40]

A.Prof. Tran Van Lang, PhD -- VAST

Page 21: HỆ THỐNG THÔNG TIN THÔNG MINH - fair.conf.vnfair.conf.vn/~lang/lecture/compIntelligence/CI_2.pdf · không gian chứa dữ liệu ban đầu thành không gian mới hữu

5/3/19

21

THUẬT TOÁN KNN

• Đồthịsaisốtrungbình

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN KNN

• HoặclấytrựctiếpbộdữliệuhoalanIriscótrongthưviệnscikit-learn(https://scikit-learn.org/stable/),đọcđểlưuvàobiếntrongchươngtrình

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN KNN

• Táchngẫunhiênđểcó100dữliệuhuấnluyệnvà50dữliệukiểmtra

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN KNN

• Đưavàothử5hoalanIriscầnbiếtđólàloạilangì

A.Prof. Tran Van Lang, PhD -- VAST

Page 22: HỆ THỐNG THÔNG TIN THÔNG MINH - fair.conf.vnfair.conf.vn/~lang/lecture/compIntelligence/CI_2.pdf · không gian chứa dữ liệu ban đầu thành không gian mới hữu

5/3/19

22

THUẬT TOÁN KNN

• Dùng10lánggiềng(10-NN)đểxácđịnhloạilanvớikhoảngcáchEuclidegiữamộtbônghoacầnkiểmtravới10bônghoatronglâncậncủabônghoanày

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN KNN

• Sosánhgiữakếtquảchínhxácvàkếtquảdựđoán;đồngthờiđưarakếtquảcủa5bônghoacầnbiếtlàloạilanIrisgì

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN KNN DÙNG TENSORFLOW

• Tronghaichươngtrìnhtrên,chúngtasửdụngthưviệnkNNcủascikit-learn.

• ĐểdùngthưviệnTensorFlow,bổsungmộtsốbướcnhưsau:

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN KNN DÙNG TENSORFLOW

• Lưuý,tậptindữliệuiris.datađượcthaycộtphânloạilanIriscógiátrịlà0,1,2tươngứngcho3loạilan

A.Prof. Tran Van Lang, PhD -- VAST

Page 23: HỆ THỐNG THÔNG TIN THÔNG MINH - fair.conf.vnfair.conf.vn/~lang/lecture/compIntelligence/CI_2.pdf · không gian chứa dữ liệu ban đầu thành không gian mới hữu

5/3/19

23

THUẬT TOÁN KNN DÙNG TENSORFLOW

A.Prof. Tran Van Lang, PhD -- VAST

THUẬT TOÁN KNN DÙNG TENSORFLOW

• KếtquảcủachươngtrìnhdùngTensorFlow

A.Prof. Tran Van Lang, PhD -- VAST