510 likes | 749 Views
ỨNG DỤNG MẠNG NEURON NHÂN TẠO TRONG VIỆC DỰ BÁO DỮ LIỆU CHUỖI THỜI GIAN CÓ TÍNH XU HƯỚNG VÀ TÍNH MÙA. GVHD: PGS.TS Dương Tuấn Anh SVTH 1: Đoàn Ngọc Bảo 50800107 SVTH 2: Ngô Duy Khánh Vy 50802706. Luận văn tốt nghiệp. Nội dung. Đặt vấn đề Giới thiệu chuỗi thời gian
E N D
ỨNG DỤNG MẠNG NEURON NHÂN TẠO TRONG VIỆC DỰ BÁO DỮ LIỆU CHUỖI THỜI GIAN CÓ TÍNH XU HƯỚNG VÀ TÍNH MÙA GVHD: PGS.TS DươngTuấnAnh SVTH 1:ĐoànNgọcBảo 50800107 SVTH 2:NgôDuyKhánhVy 50802706 Luậnvăntốtnghiệp 12/2012
Nội dung • Đặtvấnđề • Giớithiệuchuỗithờigian • Giớithiệumạng neuron nhântạo • Giảithuậtlantruyềnngược • Giảithuật RPROP • Ápdụngmạng neuron vàodựbáodữliệuchuỗithờigian • Môhìnhlai • Môhìnhkhửmùa, khửxuhướng • Thựcnghiệm • Kếtluận • Q&A 12/2012
Đặtvấnđề Mạng neuron nhântạolàmộtphươngphápmạnhđượcápdụngnhiềuvàobàitoándựbáochuỗithờigian. Nhiềukếtquảnghiêncứuthấyrằngmạng neuron nhântạokhôngcókhảnăngdựbáotốtchocácchuỗithờigiancótínhxuhướngvàtínhmùa Trongluậnvănnày, chúngtôicảitiếnmạng neuron nhântạođểcóthểdựbáotốthơn. 12/2012
Giớithiệuchuỗithờigian Chuỗithờigian: dữliệuđượcthunhập, lưutrữvàquansáttheothờigian Ta kýkiệuchuỗithờigianlà{Xt}vớitlàcácsốtựnhiên. Xtlàcácbiếnngẫunhiên (random variable) rútratừmộtphânbốxácsuất(probability distribution) nàođó. Cácchuỗithờigianthườngđượcbiểudiễnbằngmộtđồthịvớitrụchoànhlàbiếnthờigian 12/2012
Giớithiệuchuỗithờigian Lượngkháchhàngđặtchỗhàngthángcủahãnghàngkhông Pan Am từnăm 1946 đếnnăm 1960 12/2012
Giớithiệumạng Neuron nhântạo Mạng neuron nhântạo (Artificial Neural Network) làmộtmôhìnhtoánhọcđịnhnghĩamộthàmsốtừmộttậpđầuvàođếnmộttậpđầura Mạng neuron nhântạolàmộtmạnggồmmộttậpcácđơnvị (unit) đượckếtnốivớinhaubằngcáccạnhcótrọngsố. Mộtđơnvịthựchiệnmộtcôngviệcrấtđơngiản: nónhậntínhiệuvàotừcácđơnvịphíatrước hay mộtnguồnbênngoàivàsửdụngchúngđểtínhtínhiệura 12/2012
Giớithiệumạng Neuron nhântạo • Trongmộtmạng neuron cóbakiểuđơnvị: • Cácđơnvịđầuvào, nhậntínhiệutừbênngoài. • Cácđơnvịđầura, gửidữliệurabênngoài. • Cácđơnvịẩn, tínhiệuvàocủanóđượctruyềntừcácđơnvịtrướcnóvàtínhiệurađượctruyềnđếncácđơnvịsaunótrongmạng. 12/2012
Giớithiệumạng Neuron nhântạo Hình 2.1: Đơnvịmạng neuron 12/2012
Giớithiệumạng Neuron nhântạo Mạng neuron truyềnthẳng Mạng neuron hồiquy 12/2012
Giớithiệumạng Neuron nhântạo Tiếntrìnhđiềuchỉnhcáctrọngsốđểmạng “nhậnbiết” đượcquanhệgiữađầuvàovàđầuramongmuốnđượcgọilàhọc (learning) hay huấnluyện (training) 12/2012
Giảithuậtlantruyềnngược Giảithuậtlantruyềnngượctìmtậpcáctrọngsốthíchhợpchomộtmạng neuron truyềnthẳngnhiềulớpbằngphươngphápgiảmđộdốc Hàmlỗicủagiảithuậtlantruyềnngượcđượcđịnhnghĩatổngquátnhưsau 12/2012
Giảithuậtlantruyềnngược Ý tưởngchínhcủagiảithuậtlàgiátrịlỗisẽđượclantruyềnngượctừtầngxuấtvềtầngnhập. Vớimỗimẫutrongtậphuấnluyện, mạng neuron đượcápdụngđểtínhđầurasauđógiátrịđộdốccủahàmlỗiđượctínhchotừngđơnvịcủamạng. Cuốicùnggiảithuậtápdụngphươngphápgiảmđộdốcđểcậpnhậpcácgiátrịtrọngsố 12/2012
Giảithuật RPROP Với Thựchiệncậpnhậpcáctrọngsốwijdựavàothông tin vềdấucủacácđạohàmriêngphần 12/2012
Giảithuật RPROP Cácgiátrịcậpnhậptrọngsốtínhnhưsau 12/2012
Ápdụngmạng neuron vàodựbáodữliệuchuỗithờigian 12/2012
Ápdụngmạng neuron vàodựbáodữliệuchuỗithờigian Quátrìnhxâydựngmạng neuron chobàitoándựbáochuỗithờigiangồm 8 bước: • Lựachọncácbiến • Thu thậpdữliệu • Tiềnxửlýdữliệu • Phân chia tậpdữliệu • Xâydựngcấutrúcmạng • Xácđịnhtiêuchuẩnđánhgiá • Huấnluyệnmạng • Dựđoánvàcảitiến 12/2012
Ápdụngmạng neuron vàodựbáodữliệuchuỗithờigian 12/2012 Mạng neuron tuycókhảnăngxấpxỉtốtcáchàm phi tuyếnnhưngkhôngthểmôhìnhtốtcácchuỗithờigiancótínhxuhướngvàtínhmùa
Môhìnhlai (Hybrid Model) 12/2012
Môhìnhlai (Hybrid Model) • Gồmbamôđun: • Môđunmạng Neuron nhântạo • Môđunlàmtrơnlũythừa • Mođunlai 12/2012
Môđunlàmtrơnlũythừa(Exponential Smoothing) Môhìnhnhân 12/2012
Môđunlàmtrơnlũythừa(Exponential Smoothing) Môhìnhcộng 12/2012
Môđunlàmtrơnlũythừa(Exponential Smoothing) • Ướclượngbahệsốα, β, γ • Vétcạn (Brute Force) • Sửdụnggiảithuậtleođồi (Hill Climbing) • Leo đồidốcnhất (Steepest Ascent Hill Climbing) • Tôiluyệnmôphỏng (Simulated Annealing) • Sửdụngkếthợphaiphươngpháptrên • Sửdụngphầnmềm R (thông qua phầnmềmRAndFriend) 12/2012
Môđunmạng Neuron nhântạo(Neuron Network) • Cấutrúcmạng: • Mạng Neuron truyềnthẳng • Số node nhậpbằngsố node ẩnvàbằngchukìcủachuỗidữliệu • Giảithuậthuấnluyện: • Giảithuậtlantruyềnngược (Back Propagation) • Giảithuật RPROP (Resilient Propagation) 12/2012
Môđunlai (Hybrid Module) • Giátrịđầuvàocủamôđunlailàgiátrịđầuracủahaimôđun: làmtrơnlũythừavàmạng neuron nhântạo. • Giátrịđầurađượctínhtheocôngthức • Trongđó: đượcgọilàtrọngsốlai • Ướclượnggiátrịcủatrọngsốlaibằngcáchtốithiểuhóagiátrịbìnhphươngsaisốlỗi: • MSE = 12/2012
Môhìnhkhửxuhướng, khửmùa 12/2012
Môhìnhkhửxuhướng, khửmùa • Gồmhaimôđun: • Môđunmạng Neuron nhântạo (hiệnthựcnhưmôhìnhlai) • Môđunkhửmùavàkhửxuhướng 12/2012
Môđunkhửmùavàkhửxuhướng • Hiệnthựccáckĩthuậtsau: • Khửxuhướng • Kỹthuậtkhửxuhướngtuyếntính: ta xấpxỉchuỗithờigianbằngmộtđườnngthẳnghồiquyat + bvớitlàbiếnthờigian. Ứngvớimỗit, lấyYttrừđiat+b • Kỹthuậtkhửxuhướngbằnglấyhiệu: Vớichuỗithờigian{Yt}cótínhxuhướng, đặtXt = Yt+1 – Ytthìchuỗithờigian{Xt}sinhralàmộtchuỗikhôngcótínhxuhướng. 12/2012
Môđunkhửmùavàkhửxuhướng • Hiệnthựccáckĩthuậtsau: • Khửmùa • Kỹthuậtkhửmùabằnglấyhiệutheomùa:Kỹthuậtnàythựchiệnviệcbiếnđổichuỗithờigian{Yt}thànhchuỗi{Xt}nhưsauXt= Yt+s- Yt, vớislàđộlớnmộtchukỳcủachuỗithờigian 12/2012
Môđunkhửmùavàkhửxuhướng • Hiệnthựccáckĩthuậtsau: • Khửmùa • Kỹthuậtkhửmùabằng RTMA(ratio to moving average): Ta sẽướclượngchỉsốmùa(seasonal index) củacácthờiđoạntrongmộtchukỳcủachuỗithờigianrồilấygiátrịcủamỗithờiđoạn chia chochỉsốmùatươngứngcủanó 12/2012
Thựcnghiệm Chươngtrìnhđượchiệnthựcbằngngônngữlậptrình C# trongmôitrường .NET Framework 4.0 vàđượcthựcnghiệmtrênmáycóbộ vi xửlý Core 2 Duo, RAM 3GB. Sửdụngcácbộdữliệu: chuỗihànhkháchhàngthángcủahãnghàngkhôngPanAm (AirPassengers), mậtđộkhíCacbonic ở Hawaii (Co2), sốngườichếthàngthángvìbệnhphổi ở Anh (Death), doanhsốbánhàng ở mộtcửahànglưuniệm ở Úc (Fancy), lượngtiêuthụkhíđốthángquýtạiAnh (Gas). 12/2012
Thựcnghiệm • Cáchthứcthựcnghiệm: chạycácmôhìnhvớisựthayđổicácthôngsốcấuhình. • Mạng Neuron nhântạo: • Haigiảithuật RPROP – BP • Sốlượngtốiđaepoches (1000-1500) • Kỹthuậtlàmtrơnlũythừa • Ướclượng: sửdụng R, phươngphápkếthợpvétcạnvàtôiluyệnmôphỏng • Môhình: môhìnhcộngvàmôhìnhnhân 12/2012
Thựcnghiệm • Cáchthứcthựcnghiệm: chạycácmôhìnhvớisựthayđổicácthôngsốcấuhình. • Kỹthuậtkhửxuhướng, khửmùa • Khửxuhướng: tuyếntínhvàlấyhiệu • Khửmùa: lấyhiệuvà RTMA 12/2012
Thựcnghiệm • Sốlầnchạy: mỗicấuhìnhchạybalầnvàlấykếtquảtrungbình, cấuhìnhchokếtquảdựđoántốtnhấtsẽxemlàkếtquảcủamôhìnhđể so sánhvớicácmôhìnhkhác • Dữliệuđểđánhgiáđộchínhxácdựbáo: chukỳcuốicủachuỗithờigian. • Thôngsốđánhgiá: MAPE, MSE, MAE 12/2012
AirPassengers 12/2012
KếtquảdựbáochuỗiAirPassengers 12/2012
Co2 12/2012
Kếtquảdựbáochuỗi Co2 12/2012
Death 12/2012
Kếtquảdựbáochochuỗi Death 12/2012
Fancy 12/2012
Kếtquảdựbáochochuỗi Fancy 12/2012
Gas 12/2012
Kếtquảdựbáochochuỗi Gas 12/2012
Kếtluận Trongquátrìnhthựchiệnđềtài, chúngtôiđãlàmđượcnhữngcôngviệcsau: • Tìmhiểuviệcápdụngmạng neuron đểdựbáođốivớidữliệuchuỗithờigian. • Tìmhiểucácphươngphápkhửmùavàkhửxuhướngđốivớidữliệuchỗithờigiannhư: khửxuhướngbằngphươngpháplấyhiệu, khửxuhướngbằngphươngpháptuyếntính, lấyhiệutheomùa, khửmùabằngphươngpháp RTMA. 12/2012
Kếtluận • Tìmhiểucáckĩthuậtlàmtrơnlũythừanhư: làmtrơnlũythừagiảnđơn, làmtrơnlũythừa Holt, làmtrơnlũythừa Winters. Ngoàira, tiếnhànhnghiêncứuvàtìmraphươngphápướclượngcáchệsốtrongkĩthuậtlàmtrơnlũythừa Winters bằngviệckếthợpvétcạnvàphươngpháptôiluyệnmôphỏng. • Tìmhiểuphươngthứcgọihàm R bằng R(D)COM trongchươngtrình C#.NET 12/2012
Kếtluận • Nghiêncứuviệckếthợphaikĩthuật: khửmùa, khửxuhướngvàlàmtrơnlũythừavớimạng neuron nhằmnângcaochấtlượngdựbáođốivớidữliệuchuỗithờigiancótínhmùavàxuhướng. • Tiếnhànhhiệnthựchaimôhìnhdựbáotừcácnghiêncứutrên. 12/2012
Kếtluận • Tiếnhànhchạythựcnghiệmvớinămbộdữliệuthựctếvàđánhgiá, kiểmchứngtínhđúngđắncủacơsởlýthuyếtcũngnhưquátrìnhhiệnthực. Kếtquảhaimôhìnhđềxuấtchokếtquảdựbáotốthơnmạng neuron nhântạochochuỗithờigiancótínhmùavàxuhướng 12/2012
Hướngpháttriển Đốivớimôhìnhlai, thaythếphươngthứckhởitạocácthôngsốđốivớimôhìnhlàmtrơnlũythừađangdùngbằngcácphươngpháptiêntiếnhơnnhưphươngphápdựatrênhồiquy(regression-based procedure) hay phươngphápdựatrênphângiải(decomposition-based) đểcóthểđưaradựbáochínhxáchơn. 12/2012
Hướngpháttriển Đốivớimôhìnhkhửmùa, khửxuhướngkếthợpmạng neuron, cảitiếnphươngphápkhửxuhướngtuyếntínhđểcóthểápdụngtốtchocácchuỗithờigiancóxuhướngmanghìnhdạngđường cong. Ápdụngcáckỹthuậtkhửmùatiêntiếngầnđâynhưkỹthuật X-12-ARIMA vàochươngtrình 12/2012
Tàiliệuthamkhảo G. Zhang, M. Qi.Trend Time-Series Modeling And Forecasting With Neural Networks. IEEE Transactions on Neural Network, vol. 19, no. 5, pages 808-816, 2008. G. Zhang, D. M. Kline. Quaterly Time-Series Forecasting With Neural Networks. IEEE Transactions on Neural Network, vol. 18, no. 6, pages 1800-1814, 2007. K. Lai, L. Yu, S. Wang, W. Huang. Hybridizing Exponential Smoothing And Neural Network For Financial Time Series Predication. ICCS’06 Proceedings of the 6th international conference on Computional Science, vol. 4, pages 493-500, 2006. G. Zhang, M. Qi. Neural Network Forecasting For Seasonal And Trend Time Series. European Journal of Operational Research vol. 160, pages 501-514, 2005. J. E. Hanke, D. W. Wichenrn. Business Forcasting, Pearson Prentice Hall, ISBN 0-13-141290-6, 2005. TrầnĐức Minh. LuậnvănthạcsĩMạng Neural TruyềnThẳngVàỨngDụngTrongDựBáoDữLiệu. ĐạihọcquốcgiaHàNội, 2002 F. Virili, B. Freisleben. Preprocessing Seasonal Time Series For Improving Neural Network Predictions. Proceesings of CIMA 99 Computational Intelligence Methods and Applications, Rochester-NY, pages 622-628, 1999. G. Zhang, M. Y. Hu. Neural Network Forecasting Of The British Pound/US Dollar Exchange Rate. Omega, International Journal of Management Science, 26, pages 495-506, 1998. T. M. Mitchell. Machine Learning, McGraw-Hill Science/ Engineering/ Math, ISBN 0070428077, 1997. I. Kaastra, M. Boyd. Designing A Neural Network For Forecasting Financial And Economic Time Series.Neurocomputing, vol. 10, pages 215-236, 1996. M. Riedmiller. Advanced Supervised Learning In Multi-layer Perceptrons – From Backpropagation To Adaptive Learning Algorithms. Int. Journal of Computer Standards and Interfaces, 1994. 12/2012