Khóa luận Nguyên cứu và xây dựng hệ thống quản lý và dự đoán xu thế giá chứng khoán dựa trên nền tảng mã nguồn mở

ĐẠI HC QUC GIA HÀ NI  
TRƯỜNG ĐẠI HC CÔNG NGHỆ  
Vũ Đức Vit  
NGUYÊN CU VÀ XÂY DNG HTHNG QUN LÝ  
VÀ DỰ ĐOÁN XU THẾ GIÁ CHNG KHOÁN DA  
TRÊN NN TNG MÃ NGUN MỞ  
KHOÁ LUN TT NGHIỆP ĐẠI HC HCHÍNH QUY  
Ngành: Công nghthông tin  
Cán bộ hướng dn: TS. Nguyn Hà Nam  
HÀ NI – 2010  
TÓM TẮT  
Bài toán dự báo tài chính ngày càng được nhiều người quan tâm trong bi cnh phát  
trin kinh tế xã hi Vit Nam hin nay. Đầu tư vào thị trường chứng khoán đòi hi  
nhiu kinh nghim và hiu biết của các nhà đầu tư. Các kĩ thuật khai phá dliệu được áp  
dng nhm dbáo slên xung ca thị trường là mt gi ý giúp các nhà đầu tư có thể ra  
các quyết định giao dch. Khóa lun này gii thiu mt kthut khai phá dliu hiu quả  
được sdng rng rãi trong nhiu lĩnh vực đó là mô hình mạng nơ ron và cách áp dụng  
vào dliu thi gian thc. Cu trúc và hoạt động cũng như cách thiết kế mng cho dliu  
thi gian thc áp dng trong bài toán dự báo tài chính được trình bày chi tiết nhm làm rõ  
cách áp dng mô hình vào bài toán thc tế.  
MỤC LỤC  
TÓM TT.....................................................................................................................  
MC LC ....................................................................................................................  
DANH MC HÌNH V...............................................................................................  
DANH MC BNG BIU..........................................................................................  
Chương 1. GII THIU.............................................................................................1  
Chương 2. GII THIU VKHAI PHÁ DLIU VÀ PHÁT HIN TRI THC. 2  
2.1. Khai phá dliu và phát hin tri thc ..............................................................2  
2.2 Ti sao phi tiến hành khai phá dliu? ...........................................................4  
2.3. Kiến trúc đin hình ca mt hkhai phá dliu..............................................5  
2.4. Các bài toán khai phá dliệu đin hình ...........................................................6  
2.5. Các ng dụng đin hình ca khai phá dliu ..................................................8  
2.6. Kết lun.............................................................................................................8  
Chương 3. CƠ SLÝ THUYT CA MNG NORON CHO VẤN ĐỀ DO9  
3.1. Khái nim vmng noron.................................................................................9  
3.2. Mô hình ca mt noron nhân to và hàm truyn..............................................9  
3.2.1. Mô hình ca mt noron.............................................................................9  
3.2.2. Hàm truyn .............................................................................................12  
3.3. Mô hình ca mng noron................................................................................14  
3.3.1. Mng tiến................................................................................................14  
3.3.2. Mng hi quy..........................................................................................16  
3.4. Phương pháp hc và thut toán lan truyn ngược cho mng.........................17  
3.4.1. Cơ slý thuyết hc ca mng................................................................. 17  
3.4.2. Thut toán lan truyn ngược (back – propagation)................................. 18  
Chương 4. MNG NORON CHO QUÁ TRÌNH DỰ ĐOÁN................................. 23  
4.1. Mô hình mng noron cho vic do............................................................23  
4.2. Các bước thiết kế mô hình..............................................................................24  
4.2.1. Chn la các biến.................................................................................25  
4.2.2. Thu thp dliu ...................................................................................25  
4.2.3. Tin xlý dliu .................................................................................25  
4.2.4. Phân hoch tp dliu .........................................................................26  
4.2.5. Xác định cu trúc mng........................................................................27  
4.2.6. Xác định tiêu chuẩn đánh giá ...............................................................30  
4.2.7. Hun luyn mng nơ ron......................................................................32  
4.2.8. Trin khai .............................................................................................33  
4.3 Tng kết...........................................................................................................34  
Chương 5. XÂY DNG CHƯƠNG TRÌNH VÀ..................................................... 35  
ĐÁNH G...............................................................................................................35  
5.1. Vài nét vcác phn mm ngun mở được sdng........................................35  
5.1.1. Weka.......................................................................................................35  
5.1.2. Jstock ......................................................................................................37  
5.2. Mô hình kết hp gia hai gói phn mm mã ngun m.................................38  
5.2.1. Chuyn dliu thi gian thc ................................................................39  
5.2.2. Xác đnh mô hình phù hp .....................................................................40  
5.2.3. Chuyn kết qucho stock hin th..........................................................43  
5.3. Đánh giá vi mt smô hình khác.................................................................43  
5.3.1. Mô hình cây quyết định ..........................................................................44  
5.3.2. Mô hình phân lp xác sut ngây thơ naïve bayes.................................. 46  
Chương 6. KT LUN............................................................................................. 49  
TÀI LIU THAM KHO ........................................................................................50  
DANH MỤC HÌNH VẼ  
Hình 2.1 – Quá trình khai phá tri thc [1] ...................................................................3  
Hình 2.2 – Kiến trúc điển hình ca mt hthng khai phá dliu [2].......................5  
Hình 2.3 – Bng thng kê xu thế phát trin khai phá dliu [1] ................................8  
Hình 3.1 - Mô hình ca mt noron[2]........................................................................10  
Hình 3.2 – Mô hình ca một noron đưc vli [2]...................................................11  
Hình 3.3 – Hàm ngưỡng ............................................................................................12  
Hình 3.4 – Hàm vùng tuyến tính ...............................................................................13  
Hình 3.5 – Hàm tuyến tính.........................................................................................13  
Hình 3.6 – Hàm sigma với các độ dc khác nhau .....................................................14  
Hình 3.7 – Mô hình mng tiến đơn mc....................................................................15  
Hình 3.8 – Mô hình mng tiến đa mức......................................................................16  
Hình 3.9 – Mô hình mng tiến có sphn hi ..........................................................17  
Hình 4.1 – Mô hình dự đoán sử dng mng noron....................................................23  
Hình 4.2 – Tlkích thước gia các tp hun luyn [9] ..........................................27  
Hình 4.3 – Độ hi t: 3 tng, 20 nơ ron n, 50 bước.................................................29  
Hình 4.4 – Độ hi t: 3 tng, 20 nơ ron n, 100 bước...............................................29  
Hình 4.5 – Độ hi t: 3 tng, 20 nơ ron n, 300 bước...............................................29  
Hình 4.6 – Độ hi t: 3 tng, 50 nơ ron n, 5 bước...................................................30  
Hình 4.7 – Độ hi t: 3 tng, 50 nơ ron n, 50 bước.................................................30  
Hình 5.1 – Giao din chính ca weka........................................................................36  
Hình 5.2 – Giao din chính ca Jstock ......................................................................37  
Hình 5.3 – Mô hình hthng khóa lun xây dng....................................................38  
Hình 5.4 – Kết quhun luyn mng noron bng dòng lnh weka...........................42  
Hình 5.5 – Mô hình cây quyết định ...........................................................................45  
DANH MỤC BẢNG BIỂU  
Bng 4.1 – Tchc dliu ca mô hình...................................................................26  
Bng 5.1 – Hun luyn mng noron ..........................................................................44  
Bng 5.2 – Hun luyn cây quyết đnh......................................................................46  
Bng 5.3 – Hun luyn naïve bayes...........................................................................48  
Bng 5.4 – So sánh các mô hình................................................................................48  
Chương 1. GIỚI THIỆU  
Trong những năm gần đây, người ta thường nhắc đến khai phá dliu (datamining)  
– khái niệm được dùng để tham chiếu đến quá trình phát hin tri thc và khai phá dliu  
(KDD – Knowledge Discovery and Data mining) – như là một phương pháp xác định ra  
tri thc tmột lượng dliu khng l. Sphát trin ca công nghthông tin và vic ng  
dng công nghthông tin trong nhiu lĩnh vực của đời sng, kinh tế xã hi trong nhiu  
năm qua cũng đồng nghĩa với lượng dliệu đã được các cơ quan thu thập và lưu trữ ngày  
mt tích lunhiều lên. Hơn nữa thông tin thu thập được tnhiu chiu khác nhau và gây  
nhiễu cho nhau đã thc strthành mt vấn đề nan giải cho con người để xlý lượng  
thông tin lớn đang tăng lên từng ngày mt. Vi nhng lý do như vậy, các phương pháp  
qun trị và khai thác cơ sở dliu truyn thống ngày càng không đáp ứng được thc tế đã  
làm phát trin một khuynh hướng kthut mới đó là Kỹ thut phát hin tri thc và khai  
phá dliu (KDD - Knowledge Discovery and Data Mining).  
Có nhiu kthut để khai phá dliệu trong đó kỹ thut da vào mng Noron khá là  
phbiến [2]. Mt trong nhng ng dụng kinh điển ca mng Noron là lp các bài toán dự  
đoán vì mng Noron ngoài khả năng dự đoán với độ chính xác cao nó còn có ưu điểm là  
mm do và thích nghi cao với môi trường, rt thích hp cho bài toán dự đoán với dliu  
thay đổi nhanh theo thi gian. Chính vì vy, khóa lun ssdng mạng Noron để dự  
đoán xu thế ca giá chng khoán.  
Các hthng chng khoán thường là nhng hthng rt phc tp vì vy rt khó có  
thdự đoán được dliu ca nó. Nó phthuc vào rt nhiu yếu tố trong đó có những  
yếu tkhông thể định lượng được như: tâm lý, smù quáng của nhà đầu tư…. Mc dù  
vy thị trường chng khoán không phi là mt quá trình ngu nhiên và nó có quy lut ca  
nó và có thdự đoán được. Tìm ra được xu hướng ca thị trường chng khoán slà chìa  
khóa giúp cho quá trình htrquyết định ca nhà đầu tư.  
Trước shp dn ca các ng dng ca mng noron, sphát triển đi lên ca thị  
trường chng khoán, cùng sự động viên khuyến khích ca thầy hướng dn, tôi đã quyết  
định thc hin nhng nghiên cu vmng noron để dbáo xu thế thị trường chng khoán  
nhằm đưa ra những gi ý cho nhà đầu tư. Do thời gian làm khóa lun có hn nên tôi mi  
chxây dựng được các thành phần cơ bản nht ca phn mm. Các tính năng nâng cao tôi  
schoàn thin sau này.  
1
Chương 2. GIỚI THIỆU VỀ KHAI PHÁ DỮ LIỆU  
VÀ PHÁT HIỆN TRI THỨC  
2.1. Khai phá dữ liệu và phát hiện tri thức  
Phát hin tri thức trong cơ sở dliu (Knowledge Discovery in Databases – KDD)  
(đôi khi còn được gi là khai phá dliu) là mt quá trình không đơn giản nhm nhn  
dng ra nhng mu có giá tr, mi, hu ích tiềm năng và hiểu được trong dliu. Đây là  
lĩnh vực nghiên cu và triển khai được phát trin rt nhanh chóng và có phm vi rt rng  
ln, lại được rt nhiu nhóm nghiên cu ti nhiu trường đại hc, vin nghiên cu, công  
ty nhiu quc gia trên thế gii quan tâm, cho nên có rt nhiu cách tiếp cn khác nhau  
đối vi lĩnh vực phát hin tri thc trong CSDL. Chính vì lý do đó các nhà khoa hc trên  
thế giới đã dùng nhiu thut ngkhác nhau, mà các thut ngữ này được coi là mang cùng  
nghĩa với KDD như chiết lc tri thc (knowledge extraction), phát hin thông tin  
(information discovery), thu hoch thông tin (information harvesting), khai qut dliu  
(data archaeology), xlý mu dliệu (data pattern processing)... Hơn nữa, trong nhiu  
trường hp, hai khái nim "Phát hin tri thức trong cơ sở dliu" và "khai phá dliu"  
còn được dùng thay thế nhau. Hai khái nim khai phá dliu phát hin tri thc trong  
các CSDL thường cặp đôi với nhau [1].  
Quá trình KDD thường bao gm nhiều bước là:  
- Làm sch dliu (Data Cleaning): Khnhiu và các dliu mâu thun.  
- Tích hp dliu (Data Integration): Kết hp nhiu ngun dliu khác  
nhau.  
- La chn dliu (Data Selection): Cht lc ly nhng dliu liên quan  
đến nhim vphân tích sau này.  
- Biến đổi dliu (Data Transformation): Biến đổi dliệu thu được vdng  
thích hp cho quá trình khai phá.  
- Khai phá dliu (Data Mining): Sdng những phương pháp thông minh  
để khai thác dliu nhằm thu được các mu mong mun.  
- Đánh giá kết qu(Pattern Evaluation): Sdụng các độ đo để đánh giá kết  
quả thu được.  
2
- Biu din tri thc (Knowledge Presentation): Sdng các công cbiu  
din trực quan để biu din nhng tri thức khai phá được cho người dùng.  
Hình 2.1 – Quá trình khai phá tri thc [1]  
Quá trình trên được tha nhn là không tầm thường theo nghĩa là quá trình đó không  
chnhiều bước mà còn được thc hin lp, và quan trọng hơn quá trình đó bao hàm một  
mức độ tìm kiếm tự động. Trong mô hình chúng ta đã coi KDD là mt quá trình bao gm  
nhiều bước thc hiện, trong đó, khai phá dữ liu là một bước thc hin chính yếu. Cách  
hiểu như vậy đã quy định có sphân bit gia hai khái nim khai phá dliu KDD.  
Từ đây có thể đi đến mt khái nim vkhai phá dliu:  
Khai phá dliu là một bước trong quá trình phát hin tri thc trong cơ sở dliu,  
thi hành mt thut toán khai phá dliệu để tìm ra các mu tdliu theo khuôn dng  
thích hp.  
3
Có thnhn xét rng, khái nim khai phá dliu là khá rng lớn, nhưng không  
phi tt cmi công việc liên quan đến dliệu đều được coi là khai phá dliu, chng  
hạn như những vic xlý truy vấn đơn giản như tra cứu mt số điện thoi, hay thng kê  
ra nhng hc sinh gii ca mt lp, thì không thể coi đó là khai phá dữ liệu. Nhưng  
nhng công việc như gom nhóm các tài liệu trvtmáy tìm kiếm theo tng ngcnh  
thì lại được xem là khai phá dliu [1] . Chính vì sự phong phú và đa dạng này mà dn  
đến thc trng là tn ti mt squan nim khác nhau vchuyên ngành nghiên cu gn  
gũi nhất vi lĩnh vc khai phá dliu.  
2.2 Tại sao phải tiến hành khai phá dữ liệu?  
Trong nhng năm gần đây, khai phá dữ liu trthành mt lĩnh vực nghiên cu rng  
rãi trong ngành công nghip thông tin, nguyên nhân chyếu là do khối lượng khng lồ  
ca dliệu mà con người tạo ra, đi kèm với nó là scn thiết ca vic rút trích tri thc từ  
nhng dliệu đó. Thông tin và tri thức có thể được áp dng vào nhiu lĩnh vực tphân  
tích thị trường tài chính, phát hin gimạo, cho đến điều khin sn xut và nghiên cu  
khoa hc.  
Nhìn vào hai lĩnh vực sinh ra nhiu dliu nhất đó là thương mại và khoa hc.  
Trong lĩnh vực thương mại, hàng ngày hàng giờ con người đang to ra, thu thập và lưu trữ  
li rt nhiu dliệu, như dữ liu web, dliu về thương mại điện t, dliu vvic thanh  
toán ti các ca hàng và các dliu thanh toán trong các tài khon… Tính cnh tranh  
trong kinh doanh là rt cao, cho nên vic phân tích dliệu để cung cp dch vtốt hơn, có  
nhiu tiện ích cho khách hàng, và đón bắt chính xác nhu cu ca khách hàng rt quan  
trng. Trong lĩnh vực khoa học, dường như lượng dliu sinh ra và thu thp li còn ln  
hơn nhiều, lên ti hàng GB/gi, chng hạn như dữ liu tvtinh, tcác nh chp vũ trụ  
và tcác mô phng thnghim khoa hc. Khai phá dliu giúp các nhà khoa hc trong  
vic phân lp dliu và htrtrong việc đưa ra các quyết định.  
Cùng vi sphát trin ca khoa hc, của ngành cơ sở dliu không thkhông kể  
đến là sphát trin ca ngành công nghiệp máy tính, người ta đã to ra những phương  
tiện lưu trữ lớn hơn, những máy tính rẻ hơn, tốc độ cao hơn, trợ giúp cho quá trình thu  
thp dliu cũng như khai phá chúng.  
4
Trong quá trình tác nghiệp, người ta thường phải đưa ra các quyết định, tuy nhiên,  
với lượng dliu khng lồ như thế, người ta không thsdng hết, hoc nếu mun sử  
dng thì phi mt thi gian quá nhiều, như vậy có nguy cơ đánh mất cơ hội. Do đó, việc  
sdụng máy tính để khai phá dliu nhằm giúp đỡ con người trong công việc càng được  
thúc đẩy mnh m, làm sao vi các dliệu đã thu thập được có thể đưa ra hành động  
mang li li ích tối đa.  
2.3. Kiến trúc điển hình của một hệ khai phá dữ liệu  
Dưới đây là kiến trúc ca mt hthng khai phá dliu:  
Hình 2.2 – Kiến trúc điển hình ca mt hthng khai phá dliu [2]  
Trong kiến trúc hthng này, các ngun dliu cho các hthng khai phá dliu  
bao gm hoặc Cơ sdliu, hoc Kho dliu, hoc World Wide Web, hoc kho cha dữ  
liu kiu bt kkhác, hoc thp các kiểu đã liệt kê nói trên. Cơ sở tri thc, bao cha các  
5
tri thc min ng dng hiện có, được sdng trong thành phn hthng khai phá dliu  
để làm tăng tính hiệu quca thành phn này. Mt stham sca thut toán khai phá dữ  
liệu tương ứng sẽ được tinh chnh theo tri thc min sn có từ cơ sở tri thc trong hệ  
thống. Cơ sở tri thc còn được sdng trong vic đánh giá các mẫu đã khai phá được  
xem chúng có thc shp dn hay không, trong đó có việc đối chng mu mi vi các tri  
thức đã có trong cơ stri thc. Nếu mẫu khai phá được là thc shp dn thì chúng được  
bổ sung vào cơ sở tri thức để phc vcho hoạt động tiếp theo ca hthng. Như vậy,  
ngun tri thc bổ sung vào cơ sở tri thc ở đây không chỉ tlp lun lôgic theo các hệ  
toán lôgic để có tri thc mi, không chdo con người hiu biết thêm vthế gii khách  
quan để bsung vào mà còn là tri thức được phát hin mt cách tự động tngun dliu  
[1].  
2.4. Các bài toán khai phá dữ liệu điển hình  
Mô tkhái nim/lp (concept/class description):  
Dliu có thể được kết hp vi khái nim hoc lp. Ví dta có chia dliu vsn  
phẩm điện tthành các lp sn phẩm như máy tính, máy in, máy chiếu… Mi lp/khái  
niệm được miêu triêng mt cách tng quan và chính xác. Vic miêu tả này có được  
thông qua: smô ttính cht ca dliu (data characterization) hoc phân bit dliu  
(data discrimination) hoc kết hp chai.  
Mô ttính cht dliu (data characterization): là stng hp những đặc tính chung  
nht ca lp dliu. ví dụ: đối vi những người khách hàng tiêu nhiu tin ta có thtng  
hp những đặc điểm của người đó như sau: tuổi đời trung niên, có vic làm ổn định, có  
khả năng thanh toán cao.  
Phân bit dliu (data discrimination): là sso sánh những đặc tính chung mt lp  
đối tưng dliu vi những đặc tính chung ca mt lớp đối tượng dliu khác tmt tp  
nhng lớp tương phản. ví dụ: so sánh hai đối tượng khách hàng, một đối tượng thường  
xuyên mua điện thoi còn một đối tượng ít khi mua điện thoại. điều này đem đên một sự  
so sánh giữa hai đối tượng, đối tượng thnhất thường là những người trtui còn đối  
tượng thứ 2 thường là những người trung tui.  
Phân tích kết hp (association analysis):  
6
Tmt hoc mt vài skin của đối tượng xy ra kết hp vi nhau có thkéo theo  
nhng skin khác xy ra.  
Ví d: một người mua máy tính thì rt có thhsmua phn mm, ta có thviết  
dưới dng luật như sau:  
Buys(X, “computer”) =>> buys(X, “software”) [support = 1%, confident = 50%]  
X: đại diện cho ngưi  
Support = 1%: có 1% khách hàng đã mua đồng thi máy tính và phn mm  
Confident = 50%: khả năng mỗi khách hàng mua đồng thi là 50%  
Trên đây là lut kết hp mt chiu. ta có thcó lut kết hp nhiu chiều như sau:  
Age(X, “20….29”) ^ income(X, “20…29K”) =>> buys(X, “PC”) [support = 2%,  
confident = 60%]  
Phân loi và dự đoán (classification and prediction)  
Sphân loi là quá trình tìm mt mô hình (model) mà mô tvà phân bit nhng lp  
đối tượng vi nhau. Mục đích của vic sdng mô hình là để dự đoán (predict) những  
lớp đối tượng chưa biết. Mô hình được suy dn ra da trên sphân tích mt tp dliu  
hun luyện (training data) (đối tượng dliệu mà ta đã biết). Hình thc biu din: cây  
quyết định (decision tree), lut phân loi (classification rule), mạng nơron (neural  
network).  
Phân cm (cluster analysis):  
Khác vi phân loi và dự đoán, phân cụm phân tích những đối tượng dliu mà  
không cn xem xét nhng lớp đã biết. phân cm dựa trên phương pháp: cực đại hóa sự  
tương đồng ca lp bên trong và cc tiu hóa sự tương đồng ca lp bên ngoài. Tc là  
nhng cụm đối tượng được thành lập để những đối tượng trong mt cm thì rt ging  
nhau nhưng khác rất nhiu so vi những đối tượng trong cm khác.  
Phân tích tiến hóa:  
Phân tích tiến hóa dliu miêu tvà mô hình xu hướng vnhng sự thay đổi ca  
đối tượng qua thời gian. Điều này giúp dự đoán được tương lai.  
7
2.5. Các ứng dụng điển hình của khai phá dữ liệu  
Dưới đây là bảng thng kê nhng xu thế phát trin ca các lĩnh vực ng dng khai  
phá dliệu đin hình trong các năm 2003, 2004, 2006 và xu hướng phát trin ca chúng.  
Hình 2.3 – Bng thng kê xu thế phát trin khai phá dliu [1]  
2.6. Kết luận  
Trong chương này tôi đã trình bày nhng nét cơ bản vkhai phá dliu và nhng  
ng dng ca nó. Có thnói lĩnh vc khai phá dliu là khá mi mẻ và có xu hướng tăng  
trưởng cao trong những năm tới. Trong chương tới, tôi sgii thiu mt kthuật được sử  
dng khá phbiến trong khai phá dliệu đó là kỹ thut sdng mng noron.  
8
Chương 3. CƠ SỞ LÝ THUYẾT CỦA MẠNG  
NORON CHO VẤN ĐỀ DỰ BÁO  
3.1. Khái niệm về mạng noron.  
Lý thuyết vmng noron [3] [2] được xut phát tý tưởng mô phng cu trúc bộ  
não con người. Thc tế có thcoi bnão con người là mt máy tính hay mt hthng xử  
lý thông tin song song, phi tuyến và cc kphc tp. Nó có khả năng tự tchc các bộ  
phn cu thành nó như là các tế bào thn kinh (noron) hay các khp ni thn kinh  
(synapse). Vic mô phng này da trên nhng nghiên cu vthn kinh sinh hc. Bnão  
con người có khả năng nhận dng mẫu và điều khin vận động rt tốt, do đó điểm mnh  
ca mng noron cũng chính là nhng khả năng này.  
Định nghĩa mạng noron [6]: mạng nơ ron nhân tạo, artificial neural network,  
(thường được gi ngn gn là mạng nơ ron, neural network) là mng các phn t(gi là  
nơ ron) kết ni vi nhau thông qua các liên kết (gi là trng sliên kết) để thc hin mt  
công vic nào đó. Khả năng xử lý ca mạng nơ ron được hình thành thông qua quá trình  
hiu chnh trng sliên kết giữa các nơ ron, nói cách khác là hc ttp hp các mu hun  
luyn.  
Như vậy mt mạng noron được cu thành tcác noron riêng bit. Cách thc kết hp  
các noron này vi nhau sto ra mt mng có tính chất riêng. Do đó để hiu vmng  
noron trước tiên chúng ta stìm hiu vcu trúc ca mt noron.  
3.2. Mô hình của một noron nhân tạo và hàm truyền  
3.2.1. Mô hình của một noron  
Mt noron nhân to là một đơn vị tính toán hay đơn vị xlý thông tin cơ sở cho hot  
động ca mt mng. Chúng có khả năng nhận đầu vào, xử lý đầu vào đó, đưa dữ liệu đã  
được xlý ra output và liên lc vi các nơron khác để gửi output này đi. Sơ đồ dưới đây  
chra mô hình ca mt noron nhân to [2]:  
9
Hình 3.1 - Mô hình ca mt noron[2].  
Trong mô hình trên bao gm các thành phn sau:  
x1, x2, ……, xm: các tín hiệu đầu vào. Thường được biu diễn dưới dng vecto m  
chiu X=(x1, x2, ….. , xm). Các tín hiu này có thể là đầu ra của các nơ ron trước nó hoc  
đầu vào ban đu ca mng.  
Các trng sca liên kết Wkj (j = 1,m). Tín hiệu đầu vào xj liên kết vi noron k sẽ  
được nhân vi Wkj. Trong đó k là chỉ sca noron trong mng, j là chsố đầu vào ca  
noron đang xét.  
Bthp tuyến tính ∑ để tính tng các tín hiệu đầu vào, đã được nhân vi các trng  
số tương ng.  
Giá trị ngưỡng bk ca noron thứ k, để làm tăng hoặc gim giá trca bcng ∑.  
Tăng nếu dương, giảm nếu âm. Ngưng có thể thay đổi trong quá trình hc.  
uk là tng các giá trkích hoạt lên nơ ron thứ k, giá trị này chính là đầu ra ca hàm  
tng và là tham số đầu vào cho hàm kích hot. Ta có công thc cho uk như sau:  
= ꢂ . ꢄ  
ꢄꢇꢈ  
10  
Hàm kích hot (activation function) hay còn gi là hàm truyn để gii hạn biên độ  
đầu ra ca noron. Hàm kích hoạt như là một hàm nén gii hn phạm vi biên độ cho phép  
của đầu ra trong mt khong giá trhu hạn nào đó, thường là trong đoạn [0, 1] hoc [-1,  
1] . Hàm truyn là có tính cht quyết định đến mng noron. Vì vy cn phi chn la cho  
ng dng mt hàm phù hp.  
Tín hiệu đầu ra yk ca noron k chính là kết quca quá trình xlý ti noron này.  
Hay nó chính là giá trca hàm kích hot. Mi noron chcó duy nht một đầu ra. Công  
thc chung ca yk là:  
= ꢊ(ꢀ+ ꢋ)  
Vì hsố ngưỡng bk là tham sngoài nên chúng ta có thể coi nó như một đầu vào x0  
cố định có giá trx0 = 1, và có trng sca liên kết là Wk0 = bk. Một cách tương ứng,  
chúng ta tng hp li các công thức như sau:  
= ꢂ . ꢄ  
ꢄꢇꢌ  
(j = 0,m tức là ta đã thêm mt liên kết mi)  
= ꢊ(ꢀꢁ)  
Mô hình được vlại như sau:  
Hình 3.2 – Mô hình ca một noron đưc vli [2]  
11  
3.2.2. Hàm truyền  
Như ở trên đã gii thiệu và sơ qua về hàm truyền, dưới đây tôi sẽ đưa ra một vài  
hàm truyền cơ bn:  
a.  
Hàm ngưỡng  
Công thc  
1 ꢎếꢀ ꢀ≥ 0  
0 ꢎếꢀ ꢀ< 0  
(
)
= ꢊ = ꢍ  
Đồ th:  
Hình 3.3 – Hàm ngưỡng  
b.  
Hàm vùng tuyến tính  
Công thc  
1
⎧1  
ếꢀ ꢀꢁ  
2
1
1
(
)
= ꢊ ꢁ  
=
ếꢀ > > −  
2
2
1
0
ếꢀ ꢀ≤ −  
2
Đồ thị  
12  
Hình 3.4 – Hàm vùng tuyến tính  
c.  
Hàm tuyến tính  
Công thc  
(
)
= ꢊ = ꢀ(ꢐꢑ − 1 ≤ ꢀ≤ 1)  
Đồ thị  
Hình 3.5 – Hàm tuyến tính  
13  
d.  
Hàm sigma  
Công thc  
ꢔꢕꢖ  
(
)
= ꢊ ꢁ  
=
ꢈꢒꢓ  
Trong công thc trên thì a chính là tham số độ dc ca hàm sigma, bng vic biến  
đổi a chúng ta sẽ thu được các hàm sigma với các độ dc khác nhau.  
Đồ thhàm sigma vi mt vài tham số độ dc  
Hình 3.6 – Hàm sigma với các độ dc khác nhau  
Các hàm truyn ở trên đều bgii hạn trong đoạn [-1, 1] hoc [0, 1]. Chúng ta cũng  
có thmrng gii hn nếu muốn để phù hp vi ng dng.  
3.3. Mô hình của mạng noron  
Mô hình ca mng noron chính là cách kết ni các noron li vi nhau. Có hai mô  
hình chính là mng tiến (feed forward network) và mng hi quy (recurrent network).  
3.3.1. Mạng tiến  
Mng tiến là mng mà ở trong đó luồng dliu từ đầu vào tới đầu ra ca các noron  
được truyn thng, không có sphn hi nào. Quá trình xlý dliu trong mng có thể  
mrng ra nhiu lớp do đó ta có thchia thành mng tiến đơn mức và mng tiến đa mức  
a.  
Mng tiến đơn mức  
14  
Mng tiến đơn mức chgồm các đầu vào (input) được truyn trc tiếp cho mt lp  
noron xlý và đưa ra kết quluôn.  
Mô hình:  
Hình 3.7 – Mô hình mng tiến đơn mc  
b.  
Mng tiến đa mức  
Trong mng tiến đa mức thì gia các inputs và lp noron output có thêm mt hoc  
nhiu lp noron xlý trung gian na – nhng lp noron xlý trung gian này được gi là  
lp n (hidden units). Vic thêm này giúp cho mạng tăng khả năng xử lý, thng kê và ghi  
nh. Tuy nhiên nếu có quá nhiu lp n mng strnên phc tp trong tính toán và dễ  
gây ra hiện tưng overfitting ( hiện tưng hc quá).  
Mô hình:  
15  
Hình 3.8 – Mô hình mng tiến đa mc  
3.3.2. Mạng hồi quy  
Khác vi mng tiến, mng hi quy có skết ni phn hi li từ đầu ra quay ngược  
trli làm tham số đầu vào. Vic này làm cho các thuc tính ca mạng là động tc là có  
khả năng thay đổi trong quá trình hoạt động. Như vậy mng scó khả năng thích nghi cao  
hơn.  
16  
Mô hình:  
Hình 3.9 – Mô hình mng tiến có sphn hi  
3.4. Phương pháp học và thuật toán lan truyền ngược cho mạng  
3.4.1. Cơ sở lý thuyết học của mạng  
a.  
Khái nim hc  
Vic hc cho mng noron rt quan trng vì nó squyết định cách ng xca mng  
với môi trưng. Vy hc là gì?  
Hc là mt quá trình mà nhờ đó ngưỡng và các liên kết gia những noron được thiết  
lập dưới tác động ca môi trường [2].  
Điểm mu cht ca quá trình hc chính là thut toán hc. Không có mt thut toán  
hc chung mà tn ti rất đa dạng các thut toán khác nhau áp dng linh hot cho tng ng  
dng cth. trong khóa lun này, tôi ssdng thut toán lan truyền ngược cho ng  
dng ca mình.  
17  
b.  
Mô hình hc  
Trong phn (a), ta thy vic hc cn có sự tác động của môi trường. Mô hình hc  
chính cách thc quan hca mng với môi trường. Có hai mô hình phbiến là hc có  
giám sát (supervised learning) hc không có giám sát (unsupervised learning).  
Hc có giám sát [3] : là phương pháp mà mạng được cung cp nhng cp mẫu đầu  
vào và đầu ra tương ứng. Nhim vca quá trình hc là từ đầu vào được đã cho sxlý  
to ra một đầu ra tương ứng sao cho gn nht với đầu ra mong mun. thut toán lan  
truyền ngược sgii thiệu sau đây thuc loi hc có giám sát  
Hc không giám sát [3]: điểm khác bit vi hc có giám sát chỗ là đầu ra đúng  
tương ứng cho mỗi đầu vào là không biết trước. Trong hc không có giám sát, mt tp dữ  
liệu đầu vào được thu thp. Học không có giám sát thường đối xvới các đối tượng đầu  
vào như là một tp các biến ngẫu nhiên. Sau đó, một mô hình mật độ kết hp sẽ được xây  
dng cho tp dliệu đó.  
3.4.2. Thuật toán lan truyền ngược (back – propagation)  
Gischúng ta mun hun luyn mng vi mt tp dliu hun luyn mu bao  
gm giá trị đầu vào là xp và giá trị đầu ra mong mun là dp. Vi mỗi đầu vào được cung  
cp sẵn, đầu ra ca mng sai khác so với đầu ra mong mun dp một lượng là (dp – yp),  
trong đó yp là đầu ra thc sca mng với đầu vào xp. Ta định nghĩa một hàm li ti  
noron k da trên ssai khác này là:  
1
= (ꢚ)ꢛ  
(2.1)  
2
Hàm li tng cng Ep được xác định bng tng li cho mu dliệu p đối vi các  
noron đầu ra:  
1
1
= ꢂ = ꢂ(ꢚ)ꢛ  
(2.2)  
2
2
ꢜꢇꢈ  
ꢜꢇꢈ  
Trong đó No tng số các noron đu ra  
Chúng ta xét noron k với đầu vào là các đầu ra ca các noron trong lớp trước đó.  
Như phần phân tích cu trúc ca mt noron trên ta có các biu thc ti noron k này:  
18  
= ꢊꢟꢠꢡ  
(2.3)  
(2.4)  
= ꢂ . ꢉꢙ  
là tín hiệu đu ra ca noron k vi mu p.  
là tín hiệu đu vào cho noron k cũng chính là đầu ra ca các noron lớp trước  
Mục đích quá trình học đối vi thut toán làn truyền ngược là điều chnh các tham  
stdo sao cho hàm li tng cng Ep đạt cc tiu. Phương pháp tìm cc tiu thông dng  
nhất là tính đạo hàm ca hàm sdch chuyn vector tham sli gần điểm đạo hàm trit  
tiêu theo chiều ngược vi vector gradient ca hàm s. Ý tưởng của phương pháp này là  
thay đổi các trng swkj mt lượng là ꢁꢄ được định nghĩa bi công thc.  
ꢤꢘꢙ  
ꢁꢄ = −ꢣ  
(2.5)  
ꢤꢢꢁꢄ  
γ là hng stlvà chính là tốc độ hc ca mng  
Chúng ta có thviết  
ꢤꢘꢙ  
ꢤꢘꢤꢠꢙ  
.
=
(2.6)  
ꢤꢠꢙ  
ꢤꢢꢁꢄ  
ꢤꢢꢁꢄ  
T(2.4) thì:  
ꢤꢠꢙ  
= ꢙ  
(2.7)  
ꢤꢢꢁꢄ  
Đặt = − kết hp vi (2.6) và (2.7), công thức (2.5) được viết li thành  
ꢦꢧ  
ꢦꢩ  
ꢁꢄ = ꢣꢥꢙ  
(2.8)  
Vic còn li là phi tính . Để tính được nó chúng ta thc hin mt chút biến đổi  
ꢤꢘꢙ  
ꢤꢠꢙ  
ꢤꢘꢙ  
= −  
= −  
.
(2.9)  
ꢤꢠꢙ  
ꢙ  
ꢤꢠꢙ  
= ꢊꢟꢠꢡ  
(2.10)  
19  
Trong công thc (2.10) giá trꢟꢠchính là đạo hàm ca hàm truyn ti noron k  
Để tính được ta xét 2 trường hp.  
ꢦꢧ  
ꢦꢪ  
Trường hp thnhất: noron k đang xét là noron đầu ra ca mng (k = o). Trong  
trường hp này chúng ta có:  
ꢤꢘꢙ  
ꢙ  
ꢤꢘꢙ  
ꢙ  
(
)
=
= − ꢚꢜ  
(2.11)  
Do đó:  
(
)
(
)
= ꢥ= ꢚ. ꢊ ꢜ  
(2.12)  
Trường hp thhai: noron k đang xét thuộc lp ẩn (k = h). Trong trường hp này  
chúng ta không thbiết được ssai khác gia đầu ra mong mun ca noron với đầu ra  
thc tế như trường hp thnht. Tuy nhiên chúng ta có thtính toán thông qua các noron  
thuc lớp đầu ra như sau:  
Coi = ꢘ(ꢠ, ꢠ, … … . , ꢠ, … ) khi đó:  
ꢤꢘꢙ  
ꢙ  
ꢤꢘꢤꢠꢙ  
.
ꢤꢘꢙ  
ꢤꢘꢙ  
= ꢂ  
= ꢂ  
.
ꢂ ꢢꢁꢜ= ꢂ  
ꢄꢇꢈ  
. ꢢꢫꢜ  
ꢜꢇꢈ ꢤꢠꢜꢇꢈ ꢤꢠꢙ  
ꢜꢇꢈ ꢤꢠꢙ  
= − ꢂ ꢥꢫꢜ  
(2.13)  
ꢌꢇꢈ  
Đo đó  
= ꢊ(ꢠ) ꢂ ꢥꢫꢜ  
ꢜꢇꢈ  
Phương trình (2.12) và (2.14) đưa ra một thtục đệ quy cho vic tính toán δ đối vi  
tt ccác noron trong mạng. Sau khi tính được δ chúng ta sdễ dàng tính được sbiến  
thiên trng sliên kết theo công thc (2.8).  
Trên cơ sở đó thuật toán lan truyền ngược sai số để hun luyn mạng MLP được mô  
tchi tiết hơn như sau:  
20  
INPUT: tp mu học được cung cấp dưới dng (x = (x1,x2,..,xp),y = (y1,y2,..,yq))  
vi số lượng mu là N  
OUTPUT: các ma trn trng sw1,w2,..,wM và các vector ngưỡng tại các nơ ron  
các lp b1,b2,..,bM  
PROCESS:  
Bước 1: Khi to các tham smng (trng số và ngưỡng), hshc , sai sti  
đa cho phép Emax và sln hun luyn tối đa I.  
Khi to k = 1 (mu hc thk), i = 1 (ln hun luyn thi)  
Bước 2: Đưa mẫu hun luyn thk vào mng  
Bước 3: Lan truyn xuôi tín hiệu đầu vào lần lượt qua các lớp nơ ron (từ lp n  
thnht, qua lp n thứ hai, .., đến lớp đầu ra) để tính đầu ra tương ứng ti mi lp  
theo công thc (2.0)  
Bước 4: Tính sai sE và tín hiu sai số ở lớp đầu ra ca mng theo công thc  
(2.12) và (2.13).  
Bước 5: Lan truyền ngược tín hiu sai s(tlớp đầu ra, qua lp n cui cùng,..,  
đến lp ẩn đầu tiên) để cp nht trng số và ngưỡng ti các lớp nơ ron cũng như tính  
tín hiu sai scho lớp trưc nó theo các công thc (2.10)(2.11) và (2.7)  
Bước 6: Nếu k<N (chưa hết smu hc) thì k:=k+1 và quay lại bước 2, ngược li  
chuyn tới bưc 7  
Bước 7: Tính sai strung bình sau ln hun luyn thi vi tp mu gm N mu  
N
E
E = (  
k ) /N  
k1  
Nếu E<Emax hoc i>I thì trvcác ma trn trng số và các vector ngưỡng và kết  
thúc quá trình hun luyện. Ngược li gán i:=i+1 ri lp lại các bước t2 ti 7  
21  
Như vậy tôi đã trình bày vmng noron cũng như thut toán lan truyền ngược. Đó là  
những cơ sở lý thuyết để tôi tiến hành đi vào xây dựng mô hình chương trình ca tôi sau  
này.  
22  
Chương 4. MẠNG NORON CHO QUÁ TRÌNH DỰ  
ĐOÁN  
4.1. Mô hình mạng noron cho việc dự báo  
Da trên kiến trúc ca mt hthng khai phá dliệu đã được tôi trình bày ở chương  
2, cùng vi nhn lý thuyết vmng noron ở chương 3. Chúng ta có thsdng mô hình  
sau cho vic dự đoán:  
n, ꢭ⃗  
Tp hun  
Hc cho mng  
luyn  
Mạng đã được hc  
Tập đánh  
giá  
Hàm đánh  
giá  
No  
Yes  
Kết quả  
Tp dự  
đoán  
Mng tối ưu  
Hình 4.1 – Mô hình dự đoán sử dng mng noron  
Mô hình trên bao gm:  
Tp hun luyn: là tp hp dliệu đu vào phc vcho quá trình hc ca mng  
23  

Tải về để xem bản đầy đủ

pdf 57 trang yennguyen 23/04/2025 70
Bạn đang xem 30 trang mẫu của tài liệu "Khóa luận Nguyên cứu và xây dựng hệ thống quản lý và dự đoán xu thế giá chứng khoán dựa trên nền tảng mã nguồn mở", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.

File đính kèm:

  • pdfkhoa_luan_nguyen_cuu_va_xay_dung_he_thong_quan_ly_va_du_doan.pdf