Tiểu luận môn Máy học và ứng dụng TÌM HIỂU MÔ HÌNH HỆ THỐNG MẠNG NEURAL LAN TRUYỀN NGƯỢC –BACKPROPAGATION NEURAL NETWORK VÀ THUẬT TOÁN RESILIENT PROPAGATION ỨNG DỤNG TRONG DỰ BÁO CÁC CHỈ SỐ CHỨNG KHOÁN

38 771 0
Tiểu luận môn Máy học và ứng dụng TÌM HIỂU MÔ HÌNH HỆ THỐNG MẠNG NEURAL LAN TRUYỀN NGƯỢC –BACKPROPAGATION NEURAL NETWORK VÀ THUẬT TOÁN RESILIENT PROPAGATION ỨNG DỤNG TRONG DỰ BÁO CÁC CHỈ SỐ CHỨNG KHOÁN

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Phạm Xuân Dũng-CH1301007. Báo cáo môn Máy Học và Ứng Dụng Đại Học Quốc Gia TP.HCM Trường Đại Học Công Nghệ Thông Tin BÀI THU HOẠCH MÔN MÁY HỌC VÀ ỨNG DỤNG ĐỀ TÀI: TÌM HIỂU MÔ HÌNH HỆ THỐNG MẠNG NEURAL LAN TRUYỀN NGƯỢC – BACKPROPAGATION NEURAL NETWORK VÀ THUẬT TOÁN RESILIENT PROPAGATION ỨNG DỤNG TRONG DỰ BÁO CÁC CHỈ SỐ CHỨNG KHOÁN S&P500, DOW, NASDAQ COMPOSITE VÀ LÃI SUẤT PRIME LENDING RATE GVHD: PGS.TS. Vũ Thanh Nguyên Người thực hiện: Phạm Xuân Dũng Mã số: CH1301007 Lớp: Cao học khóa 8 TP.HCM – 03-2014 Mục lục Giới thiệu đề tài Trong quá trình học môn máy học và ứng dụng, thông qua các bài giảng trên lớp, em thấy rằng mô hình mạng Neural là một mô hình rất hay và có nhiều ứng 1 Phạm Xuân Dũng-CH1301007. Báo cáo môn Máy Học và Ứng Dụng dụng thực tiễn trong nhiều lĩnh vực kinh tế và khoa học kỹ thuật. Bản thân em có đam mê về lĩnh vực ứng dụng mô hình mạng Neuraltrong lĩnh vực kinh tế, tài chính. Vì vậy em chọn đề tài sử dụng mạng Neuralđể dự báo một số chỉ số chứng khoán trong thị trường Mỹ, chương trình minh họa sẽ dựa vào dữ liệu lịch sử của các chỉ số chứng khoán hàng đầu thế giới như S&P500, DOW, NASDAQ Composite vàlãi suấtPrime Lending Rate để huấn luyện mạng, sau đó sẽ dùng mạng đã huấn luyện để dự đoán các giá trị tương lai và dùng biểu đồ để so sánh dữ liệu dự đoán từ mạng với dữ liệu thực sự. Phần nội dung cơ sơ lý thuyết về mạng neural, em có tham khảo để kế thừa và phát triển từ [1] Phần cài đặt chương trình minh họa ứng dụng mạng Neural, em sử dụng thư viện mã nguôn mở encog-dotnet-core-3.1.0để xây dựng ứng dụng dự báo các chỉ số chứng khoán hàng đầu thế giới như S&P500, DOW, NASDAQ Composite và lãi suất Prime Lending Rate. Phần 1: Cơ sở lý thuyết mạng neural 1.1 Mạng Neural sinh học Đếnnayngườita biết rằngcácquátrìnhtínhtoántrongbộnãosinh họckhácvới cácmáytínhsố. Côngtrìnhnghiêncứuvềnãođầutiênthuộcvề Ramond-Cajál (1911),ôngchorằnghệthầnkinhcấutạotừcácNeural.Bộnãoxửlýchậmhơn(10 - 3 s)sovới cácthiếtbịvậtlý(10 -9 )tuynhiêntốnítnănglượnghơnvàthựchiệnđược nhiềuchứcnănghơn.Conngườicókhoảng10 11 Neural,10 15 khớpkếtnối.Cáckhớp khimớisinhítkếtnốivớinhau,chúngđượckếtnốinhờquátrìnhhọc. Đặcđiểmcủa não: Xửlýsongsong Phântán Phituyến 2 Phạm Xuân Dũng-CH1301007. Báo cáo môn Máy Học và Ứng Dụng Cấutạo của Neural sinh học CácthànhphầnchínhcủaNeural: Khớpkếtnối(Synapse):kếtnốicácNeuralnhờcáctínhchấthoálý Điện → Hoá → Điện Xúctu(dendrites):Thunhậnthôngtinvề nhânquakhớp. Thântếbào: tổnghợp tínhiệu vàkhi đủmạnhthìcó tínhiệuraởtruccảmứng vànổnlúcđógọilàcháy. Trụccảmứng(Axon)đưatínhiệuravàtruyềntớicácNeuralkhácquacác khớpkếtnối. 1.2 Đặc điểm của mạng Neuralnhân tạo Mặc dù hiểu biết của con người về kiến trúc và hoạt động của não còn chưa đầy đủ, người ta tạo ra được các máy có một số tính năng tương tự não nhờ mô phỏng các đặc điểm: Tri thức thu nhận được nhờ quá trình học Tính năng có được nhờ kiến trúc mạng và tính chât kết nối Các máy loại mô phỏng này có tên chung là mạng Neural nhân tạo hay gọn hơn mạng Neural (còn có tên gọi là máy thần kinh) và viết tắt là ANN hoặc gọn hơn là NN. Trong ứng dụng chúng thường được tích hợp với các hệ khác Đặc điểm chính của ANN Phi tuyến. Cho phép xử lý phi tuyến: Cơ chế ánh xạ vào → ra (x → d(x)) cho phép học có giám sát Cơ chế thích nghi. Thay đổi tham số phù hợp với môi trường. Đáp ứng theo mẫu đào tạo. Được thiết kế không nhữngcung cấp thông tin về mẫu đào tạo mà còn cho biết mức tin cậy của nó. 3 Phạm Xuân Dũng-CH1301007. Báo cáo môn Máy Học và Ứng Dụng Thông tin theo ngữ cảnh.Tri thức được biểu diễn tuỳ theo trạng thái và kiến trúc của ANN Cho phép có lỗi (fault tolerance). VLSI (very large scale Integrated). Phỏng sinh học. 1.3 Mô hình và kiến trúc mạng Một số các quy ước Đạilượngvôhướng(dùngchữthường.a,b, c, ) ĐạilượngVector(dùngchữthườngin đậma,b,c, ) MATRẬN(chữin hoaW,A,B,C ) 4 Phạm Xuân Dũng-CH1301007. Báo cáo môn Máy Học và Ứng Dụng Mô hình Neural Mô hình toán học của mạng Neural sinh học được đề xuất bởi McCulloch và Pitts, thường được gọi là Neural M-P, ngoài ra nó còn được gọi là phần tử xử lý và được ký hiệu là PE (Processing Element). Mô hình Neural có m đầu vào x 1 , x 2 , , x m , và một đầu ra y i như sau: Mô hình mạng Neuron nhân tạo Trong đó: Tập các đầu vào: Là các tín hiệu vào của Neural, các tín hiệu này thường được đưa vào dưới dạng một vector m chiều. Tập các liên kết (các trọng số): Mỗi liên kết được thể hiện bởi một trọng số (thường được gọi là trọng số liên kết). Trọng số liên kết giữa tín hiệu vào thứ j cho Neural i thường được ký hiệu là w ij . Thông thường các trọng số này được khởi tạo ngẫu nhiên ở thời điểm khởi tạo mạng và được cập nhật liên tục trong quá trình học mạng. Bộ tổng (Hàm tổng): Thường dùng để tính tổng của tích các đầu vào với trọng số liên kết của nó. Ngưỡng: Ngưỡng này thường được đưa vào như một thành phần của hàm truyền. Hàm truyền: Hàm này dùng để giới hạn phạm vi đầu ra của mỗi Neural. Nó nhận đầu vào là kết quả của hàm tổng và ngưỡng đã cho. Thông thường, phạm vi đầu ra của mỗi Neural được giới hạn trong đoạn [0,1] hoặc [-1,1]. Các hàm truyền rất đa dạng, có thể là các hàm tuyến tính hoặc phi tuyến. Việc lựa chọn hàm truyền tùy thuộc vào từng bài toán và kinh nghiệm của người thiết kế mạng. Đầu ra: Là tín hiệu đầu ra của một Neural, với mỗi Neural sẽ có tối đa một đầu ra Neural có đầu vào đơn Hình bên dưới môtảNeural cóđầuvàođơn,cóhoạtđộng nhưsau. Mộttínhiệuvàop đượcnhânvớitrọngsốwthànhwpvàmộttínhiệukhácbằng1nhânvớigiátrị khuynh hướngbđưatớibộtổng.Tínhiệurancủabộtổngquahàmchuyển fchotín hiệuraa.Trong đótrọngsốwtươngứngvớiđộliênkếtcủakhớpkếtnối(Synapse), hàm tổngvàhàmchuyển môphỏng thântếbàocòntínhiệuramôphỏngtínhiệuở Axon. 5 Phạm Xuân Dũng-CH1301007. Báo cáo môn Máy Học và Ứng Dụng Neuralcó đầuvàođơn Tínhiệuraa=f(wp+b) Vídụ: w=3p=2b=-1,5suyra a=f(3.2-1,5)=f(4,5) Tínhiệuraaphụthuộcvàohàmchuyểncònkhuynhhướngcóthểxemnhưlà mộttrọngsốcủatínhiệuvàobằng1. Hàmchuyển:Hàmchuyểnfcóthểlàhàmtuyếntínhhoặcphituyếnvàphụ thuộctheotừngbàitoán.Cónhiềuloạihàmchuyển, việcchọnhàmchuyểncầnphù hợpvớibàitoáncụthểphảigiảiquyết. Hàm truyền có thể có các dạng sau: Hàm bước    < ≥ = 00 01 xkhi xkhi y (1.6) Hàm giới hạn chặt (hay còn gọi là hàm bước)    <− ≥ == 01 01 )sgn( xkhi xkhi xy (1.7) Hàm bậc thang      < ≤≤ > == 00 10 11 )sgn( xkhi xkhix xkhi xy (1.8) Hàm ngưỡng đơn cực x λ − + = e y 1 1 với λ>0 (1.9) Hàm ngưỡng hai cực 1 1 2 − + = − x λ e y với λ>0 (1.10) Đồ thị các dạng hàm truyền được biểu diễn như sau 6 Phạm Xuân Dũng-CH1301007. Báo cáo môn Máy Học và Ứng Dụng Đồ thị các dạng hàm truyền Neuralnhiềutínhiệuvào. Thường thì một Neural có nhiều tín hiệu vào. Mô hình Neural có R tín hiệu vào n được cho trong hình sau. Neuralđơnnhiềutínhiệuvào a=f(Wp+b).Tasẽ môtả mộtcáchđơngiảnNeuraltrên. W: là trọng số kết nối b: Khuynh hướng f: Hàm chuyển 7 Phạm Xuân Dũng-CH1301007. Báo cáo môn Máy Học và Ứng Dụng 1.4 Cấu tạo và phương thức làm việc của mạng Neural Dựa trên những phương pháp xây dựng Neural đã trình bày ở mục trên, ta có thể hình dung mạng Neural như là một hệ truyền đạt và xử lý tín hiệu. Đặc tính truyền đạt của Neural phần lớn là đặc tính truyền đạt tĩnh. Khi liên kết các đầu vào/ra của nhiều Neural với nhau, ta thu được một mạng Neural, việc ghép nối các Neural trong mạng với nhau có thể là theo một nguyên tắc bất kỳ. Vì mạng Neural là một hệ truyền đạt và xử lý tín hiệu, nên có thể phân biệt các loại Neural khác nhau, các Neural có đầu vào nhận thông tin từ môi trường bên ngoài khác với các Neural có đầu vào được nối với các Neural khác trong mạng, chúng được phân biệt với nhau qua vector hàm trọng số ở đầu vào w. Nguyên lý cấu tạo của mạng Neural bao gồm nhiều lớp, mỗi lớp bao gồm nhiều Neural có cùng chức năng trong mạng. Mạng Neural được xây dựng như trên là mạng gồm 3 lớp mắc nối tiếp nhau đi từ đầu vào đến đầu ra. Trong mạng không tồn tại bất kỳ một mạch hồi tiếp nào. Một mạng Neural có cấu trúc như vậy gọi là mạng một hướng hay mạng truyền thẳng một hướng (Feed forward network), và có cấu trúc mạng ghép nối hoàn toàn (vì bất cứ một Neural nào trong mạng cũng được nối với một hoặc vài Neural khác). Mạng Neural bao gồm một hay nhiều lớp trung gian được gọi là mạng Multilayer Perceptrons) (MLP-Network). Mạng Neural khi mới được hình thành thì chưa có tri thức, tri thức của mạng sẽ được hình thành dần dần sau một quá trình học. Mạng Neural được học bằng cách đưa vào những kích thích, và mạng hình thành những đáp ứng tương ứng, những đáp ứng tương ứng phù hợp với từng loại kích thích sẽ được lưu trữ. Giai đoạn này được gọi là giai đoạn học của mạng. Khi đã hình thành tri thức mạng, mạng có thể giải quyết các vấn đề một cách đúng đắn. Đó có thể là vấn đề ứng dụng rất khác nhau, được giải quyết chủ yếu dựa trên sự tổ chức hợp nhất giữa các thông tin đầu vào của mạng và các đáp ứng đầu ra. Nếu nhiệm vụ của một mạng là hoàn chỉnh hoặc hiệu chỉnh các thông tin thu được không đầy đủ hoặc bị tác động của nhiễu. Mạng Neural kiểu này được ứng dụng trong lĩnh vực hoàn thiện mẫu, trong đó có một ứng dụng cụ thể là nhận dạng chữ viết. 8 Phạm Xuân Dũng-CH1301007. Báo cáo môn Máy Học và Ứng Dụng Nhiệm vụ tổng quát của một mạng Neural là lưu giữ động các thông tin. Dạng thông tin lưu giữ này chính là quan hệ giữa các thông tin đầu vào và các đáp ứng đầu ra tương ứng, để khi có một kích thích bất kỳ tác động vào mạng, mạng có khả năng suy diễn và đưa ra một đáp ứng phù hợp. Đây chính là chức năng nhận dạng theo mẫu của mạng Neural. Để thực hiện chức năng này, mạng Neural đóng vai trò như một bộ phận tổ chức các nhóm thông tin đầu vào, và tương ứng với mỗi nhóm là một đáp ứng đầu ra phù hợp. Như vậy, một nhóm bao gồm một loại thông tin đầu vào và một đáp ứng đầu ra. Các nhóm có thể được hình thành trong quá trình học, và cũng có thể không hình thành trong quá trình học. 9 Phạm Xuân Dũng-CH1301007. Báo cáo môn Máy Học và Ứng Dụng Mạng 1 tầng Neural Mạng một tầng của S ký hiệu W là ma trận trọng số, p là vectơ tín hiệu vạo và b là vectơ khuynh hướng. Matrậntrọngsốcódạng Ta quy ước chỉ số thứ nhất chỉ Neural mà tín hiệu đến còn chỉ số thứ hai là nguồn tín hiệu. n = Wp + b ; a = f(n) = f(Wp + b) Mạng nhiều tầng Neural MạngcóthểcónhiềutầngNeural,mộtmạngtruyền tới3tầng(hai tầngNeural) như minh họa bên dưới.Trongđóchỉsốtrênlà tầngNeuraltươngứng.Tanóimạngn-tầng thìnlàsố tầngNeural. Môhìnhmạngbatầngtruyềntới Tacó: a i làđầuracủatầngi n 1 =W 1 p+b 1 a i =f i (n i ), trongđón i =W i a i-1 +b i vớimọii≥2. Mạngtrênđượcmôtả đơngiảnhơn: 10 [...]... xạ và lan truyền ngược sai 17 Phạm Xuân Dũng-CH1301007 Báo cáo môn Máy Học và Ứng Dụng số để cập nhật các trọng số Các trọng số của mạng là các hệ số của mô hình Phương pháp giảm gradient được dùng để cập nhật những hệ số này sao cho giảm thiểu được sai số của mô hình Về cơ bản, thuật toán lan truyền ngược là dạng tổng quát của thuật toán trung bình bình phương tối thiểu (Least Means Square-LMS) Thuật. .. quả dự đoán chỉ số Down sau khi chạy chương trình như sau: 30 Phạm Xuân Dũng-CH1301007 Báo cáo môn Máy Học và Ứng Dụng Biểu đồ kết quả dự đoán lãi suất PIR 3 Đánh giá và kết luận: 3.1 Những kết quả đạt được: Trong quá trình làm bài báo cáo này và tham khảo các tài liệu liên quan, em đã hiểu được sự hoạt động của mạng Neural và xây dựng một ứng dụng sử dụng mạng Neural để dự báo một số chỉ số chứng khoán. .. trình và kết quả dự báo thể hiện ở dạng biểu đồ, chúng ta thấy rằng mô hình mạng Neural có tiềm năng rất lớn trong các bài toán về dự báo 31 Phạm Xuân Dũng-CH1301007 Báo cáo môn Máy Học và Ứng Dụng Cũng qua bài báo cáo này, em thấy được tiềm năng rất lớn của mạng Neural trong việc giải quyết các bài toán dự báo và phân loại, điều này hối thúc em hơn nữa trong việc nghiên cứu và ứng dụng mạng Neural trong. .. nhiều biến số Phần 2: Phần ứng dụng minh họa sử dụng mạng Neural 2.1 Dẫn nhập: Trong phần này em trình bầy hai thuật toán dùng để huấn luyện mạng neural phổ biến là thuật toán lan truyền ngược Backpropagation và thuật toán Rprop Và em cũng giới thiệu một số kiến thức cơ bản về các chỉ số chứng khoán để làm tiền đề cho việc xây dựng ứng dụng, sau đó em trình bầy phần cài đặt chương trình và một số kết quả... Thuật toán này thuộc dạng thuật toán xấp xỉ để tìm các điểm mà tại đó hiệu năng của mạng là tối ưu Chỉ số tối ưu (performance index) thường được xác định bởi một hàm số của ma trận trọng số và các đầu vào nào đó mà trong quá trình tìm hiểu bài toán đặt ra Mô tả thuật toán Xem xét một mạng với Q lớp lan truyền ngược, q=1,2, ,Q; với qneti và qyi lần lượt là đầu vào và đầu ra của khối trong lớp thứ q Mạng. .. Điềukiệubanđầua(0)đượcđưavàtừđáy.Bộnayđượckýhiệu: 11 Phạm Xuân Dũng-CH1301007 Báo cáo môn Máy Học và Ứng Dụng Bộtíchphân Bâygiờta làmquenvớimạnghồiquy.Mạnghồiquylàmạngcó mộtsố tínhiệu rađượcnốivớitínhiệuvàocủanó(cómốiliênh ngược) Mạng hồiquy thườngcó nhiềukhảnănghơn mạngtruyềntới Vídụtronghìnhlàmột mạnghồiquy Một mạnghồiquy Mạng Hopfield Mạng Hopfield là mạng phản hồi một lớp Cấu trúc chi tiết của nó được thể hiện trong hình. .. sử dụng để huấn luyện mạng neural nhiều lớp Thuật toán này được giới thiệu lần đầu tiên năn 1994 bởi Martin Riedmiller Mã giả của thuật toán như sau: 19 Phạm Xuân Dũng-CH1301007 Báo cáo môn Máy Học và Ứng Dụng Trong bài báo cáo này, em sử dụng thư viện mã nguồn mở encog-core-cs.dll đã cài đặt sãn thuật toán này 2.4 Giới thiệu các chỉ số chứng khoán trên thị trường Mỹ 2.4.1 Chỉ số S&P 500: S&P 500 (Standard... sẽ viết một số bài báo phân tích rõ bản chất, cách thức hoạt động, ưu nhược điểm của mô hình mạng neural để các lớp cao học sau hay các bạn yêu thích tìm hiểu mạng Neural có thể tiết kiệm thời gian cũng như công sức khi tìm hiểu về một mô hình rất hay và có nhiều ứng dụng thực tế này(hiện nay em thấy rằng hầu như các học viên cao học phải tốn nhiều công sức và thời gian tìm hiểu các nguồn tài liệu... của tất cả các sai số Sai số này được sử dụng để xác định các hàm trọng số mới 14 Phạm Xuân Dũng-CH1301007 Báo cáo môn Máy Học và Ứng Dụng Sau mỗi lần chạy, hàm trọng số của mạng được sửa đổi với đặc tính tốt hơn tương ứng với đặc tính mong muốn Từng cặp giá trị vào/ra phải được kiểm tra và trọng số được điều chỉnh một vài lần Sự thay đổi các hàm trọng số của mạng sẽ được dừng lại, nếu tổng các bình... mạng, nghĩa là mạng sẽ học thông qua những sai sót của nó Thuật toán lan truyền ngược được ứng dụng để giải các bài toán điều khiển các hệ phi tuyến phức tạp và bất ổn định Lan truyền ngược là một phương pháp cho phép xác định tập trọng số tốt nhất của mạng để giải một bài toán đã cho Việc áp dụng phương pháp lan truyền ngược là một quá trình lặp đi lặp lại nhiều lần hai tiến trình chính: lan truyền tiến . Dũng-CH1301007. Báo cáo môn Máy Học và Ứng Dụng Đại Học Quốc Gia TP.HCM Trường Đại Học Công Nghệ Thông Tin BÀI THU HOẠCH MÔN MÁY HỌC VÀ ỨNG DỤNG ĐỀ TÀI: TÌM HIỂU MÔ HÌNH HỆ THỐNG MẠNG NEURAL LAN TRUYỀN NGƯỢC. Báo cáo môn Máy Học và Ứng Dụng số để cập nhật các trọng số. Các trọng số của mạng là các hệ số của mô hình. Phương pháp giảm gradient được dùng để cập nhật những hệ số này sao cho giảm thiểu. vực ứng dụng mô hình mạng Neuraltrong lĩnh vực kinh tế, tài chính. Vì vậy em chọn đề tài sử dụng mạng Neural ể dự báo một số chỉ số chứng khoán trong thị trường Mỹ, chương trình minh họa sẽ dựa

Ngày đăng: 21/05/2015, 12:49

Từ khóa liên quan

Mục lục

  • Giới thiệu đề tài

  • Phần 1: Cơ sở lý thuyết mạng neural

    • 1.1 Mạng Neural sinh học

    • 1.2 Đặc điểm của mạng Neuralnhân tạo

    • 1.3 Mô hình và kiến trúc mạng

      • Một số các quy ước

      • Mô hình Neural

      • 1.4 Cấu tạo và phương thức làm việc của mạng Neural

        • Mạng 1 tầng Neural

        • Mạng nhiều tầng Neural

        • Mạng hồi quy

        • Mạng Hopfield

        • Mạng BAM

        • 1.5 Các luật học (Learning rules)

          • Học có giám sát (Supervised Learning)

          • Học củng cố

          • Học không có giám sát (Unsupervised learning)

          • Phần 2: Phần ứng dụng minh họa sử dụng mạng Neural

            • 2.1 Dẫn nhập:

            • 2.2 Thuật toán lan truyền ngược – Backpropagation

            • 2.3 Thuật toán The Resilient Propagation (Rprop)

            • 2.4 Giới thiệu các chỉ số chứng khoán trên thị trường Mỹ

              • 2.4.1 Chỉ số S&P 500:

              • 2.4.2 Chỉ số Dow Jones Industrial Average, viết tắt DJIA:

              • 2.4.3 Chỉ số tổng hợp Nasdaq:

              • 2.5 Thiết kế ứng dụng:

                • 2.5.1 Mô hình thiết kế:

                  • Dữ liệu lịch sử của chỉ số DJIA(nguồn http://finance.yahoo.com/)

Tài liệu cùng người dùng

Tài liệu liên quan