Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 41 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
41
Dung lượng
1,13 MB
Nội dung
LỜI CAM ĐOAN Tôi xin cam đoan đề tài khoa học “Sử dụng mạng neural trong việc dự đoán kết quả đậu đại học” này là công trình nghiên cứu của bản thân tôi. Các số liệu và kết quả nghiên cứu trong luận văn này là trung thực, được trích dẫn từ các tài liệu tham khảo như đã trình bày trong luận văn và đã được giáo viên hướng dẫn khoa học thông qua nội dung và đồng ý cho ra bảo vệ trước hội đồng khoa học. Người thực hiện luận văn Thái Trung Hải MỤC LỤC Trang phụ bìa Lời cam đoan Mục lục Danh mục các từ viết tắt Danh mục các hình vẽ MỞ ĐẦU 1 1. Lời mở đầu 1 2. Mục tiêu và nội dung của đề tài 1 Chƣơng I. TỔNG QUAN VỀ MẠNG NEURAL 3 1.1. Giới thiệu chung về mạng Neural sinh học 3 1.2. Neural nhân tạo 4 1.2.1. Định nghĩa 4 1.2.2. Mô hình Neural 4 1.2.2.1. Mô hình cấu trúc một Neural với đại lượng vô hướng 4 1.2.2.2. Cấu trúc một Neural với vectơ nhập 5 1.3. Mạng Neural nhân tạo 6 1.3.1. Định nghĩa 6 1.3.2. Mô hình mạng nhiều lớp Neural 7 1.3.3. Một số chức năng của mạng neural nhân tạo 7 1.3.3.1. Chức năng phân loại mẫu 7 1.3.3.2. Học và tổng quát hóa 7 1.4. Kiến trúc mạng neural 8 1.4.1. Kiến trúc mạng neural nhân tạo 8 1.4.2. Các tầng của ANN 8 1.4.3. Các dạng mạng neural của một ANN 9 1.5. Hoạt động của một mạng neural 9 1.6. Các phương pháp học trong ANN 10 1.6.1. Học có giám sát (Supervised Learning) 10 1.6.2. Học không có giám sát (Unsupervised Learning) 12 1.6.3. Học tăng cường (Hydrid Learning) 12 Chƣơng II. GIỚI THIỆU MẠNG NEURAL ĐA LỚP TRUYỀN THẲNG VÀ GIẢI THUẬT LAN TRUYỀN NGƢỢC 13 2.1. Tổng quan về mạng neural đa lớp truyền thẳng (Multilayer Perceptrons - MLP) 13 2.2. Kiến trúc mạng 13 2.3. Mạng lan truyền ngược (Neural Backpropagation) 14 2.4. Các kỹ thuật cải tiến thuật toán lan truyền ngược 17 2.4.1. Khởi tạo và cố định tốc độ học (Fixed calculation of the learning rate) 17 2.4.2. Giảm tốc độ học theo quá trình học (Decreasing learning rate) 17 2.4.3. Điều chỉnh tốc độ học theo mỗi mẫu luyện (Learning rate adaptation for each training pattern) 17 2.4.4. Tiến hóa tốc độ học (Evolutionary adapted learning rate) 18 2.4.5. Điều chỉnh tốc độ học bằng thay đổi tín hiệu gradient (Learning rate adaptation by sign changes) 18 2.4.6. Ngăn lỗi bão hòa (Error Saturation Prevention) 19 Chƣơng III: ỨNG DỤNG MẠNG NEURAL XÂY DỰNG CHƢƠNG TRÌNH DỰ ĐOÁN ĐIỂM VÀ KHỐI THI 23 3.1. Phát biểu bài toán 23 3.2. Phân tích bài toán 23 3.3. Giải quyết bài toán 24 3.3.1. Xây dựng mạng neural 24 3.3.2. Xây dựng chương trình 25 3.4. Chương trình thực nghiệm 26 3.4.1. Quá trình huấn luyện mạng 26 3.4.2. Hệ thống chương trình 28 3.4.2.1. Giao diện chương trình 28 3.4.2.2. Chạy chương trình 29 3.4.2.3. Một số kết quả dự đoán 31 3.4.3.Tính độ chuẩn xác của chương trình 32 3.4.3.1. Phương pháp tính 32 3.4.3.2. Kết quả tính độ chuẩn xác của chương trình 33 3.4.3.3. Biểu đồ so sánh kết quả dự đoán 34 KẾT LUẬN 35 TÀI LIỆU THAM KHẢO PHỤ LỤC DANH MỤC CÁC TỪ VIẾT TẮT ANN: Artificial Neural Networks BP: Backpropagation ESP: Error Saturation Prevention GD&ĐT: Giáo dục và đào tạo MLP: Mutilayer Perceptron PSP: Post Synapic Potential function THPT: Trung học phổ thông DANH MỤC CÁC HÌNH VẼ Hình 1.1. Mô hình neural sinh học . 3 Hình 1.2. Cấu trúc một neural với đầu vào vô hướng 5 Hình 1.3. Cấu trúc một neural với vectơ nhập 5 Hình 1.4. Một lớp gồm nhiều neural . 5 Hình 1.5. Mô hình mạng nhiều lớp neural . 7 Hình 1.6. Ví dụ một ANN với một tầng ẩn . 8 Hình 1.7. Cấu tạo một neural 9 Hình 1.8. Mô hình hóa mạng neural 10 Hình 1.9. Sơ đồ khối mô tả luật học có giám sát 11 Hình 2.1. Các giá trị vào – ra tại một nút . 15 Hình 3.1. Neural nhân tạo 24 Hình 3.2. Mạng neural nhân tạo 24 Hình 3.3. Lưu đồ hoạt động của hàm huấn luyện 25 Hình 3.4. Giao diện giới thiệu chương trình 28 Hình 3.5. Giao diện màn hình chạy khi huấn luyện 30 Hình 3.6. Giao diện nhập thông tin dự đoán 30 Hình 3.7. Giao diện kết quả chương trình sau khi dự đoán . 31 Hình 3.8. Giao diện chương trình dự đoán file năm 2013 32 Hình 3.9. Biểu đồ so sánh kết quả dự đoán điểm thi tốt nghiệp . 34 Hình 3.10. Biểu đồ so sánh kết quả dự đoán điểm thi đại học 34 1 MỞ ĐẦU 1. Lời mở đầu Giáo dục và đào tạo giữ vai trò đặc biệt cần thiết đối với sự phát triển của mỗi con người và của cả xã hội. GD&ĐT được xem là quốc sách hàng đầu của Đảng và Nhà nước ta trong thời kì đổi mới. Nghị quyết hội nghị lần thứ II Ban chấp hành Trung ương khóa VIII đã nhấn mạnh: Thực sự coi giáo dục – đào tạo là quốc sách hàng đầu. Nhận thức sâu sắc giáo dục – đào tạo cùng với khoa học công nghệ là nhân tố quyết định tăng trưởng kinh tế và phát triển xã hội. Đầu tư cho giáo dục – đào tạo là đầu tư cho phát triển. Thật vậy. Bước vào thế kỉ XXI, việc học và việc lựa chọn nghề nghiệp trong xã hội có những chuyển biến nhiều so với giai đoạn trước đây. Cuộc cách mạng khoa học và công nghệ đang tạo điều kiện để nhân loại tiến từ nền kinh tế công nghiệp sang nền kinh tế tri thức. Trong hoàn cảnh đất nước ta hiện nay, để đạt được mục tiêu trên, chúng ta cần một lực lượng lao động có đủ trình độ năng lực và làm chủ được công nghệ kĩ thuật của đất nước, đủ điều kiện đảm bảo hoàn thành tốt công việc trong mọi lĩnh vực của đời sống xã hội. Vì vậy việc nâng cao trình độ học vấn, trình độ văn hóa cho nhân dân, đặc biệt là việc định hướng bậc học và định hướng nghề nghiệp cho thế hệ trẻ hiện nay, chủ nhân tương lai của đất nước, cần được quan tâm hơn bao giờ hết. Thế nhưng hiện nay việc cân đối giữa các ngành nghề trong xã hội là một vấn đề nan giải. Vì việc lựa chọn cho mình một nghề nghiệp phù hợp luôn được coi là một trong nhiều yếu tố quan trọng quyết định đến tương lai mỗi con người. Luận văn với đề tài “Sử dụng mạng neural trong việc dự đoán kết quả đậu đại học” đi sâu nghiên cứu tìm hiểu một số vấn đề về mạng neural và giải thuật lan truyền ngược để xây dựng chương trình giúp các nhà quản lý dự đoán trước tỉ lệ đậu đại học ở trường mình từ đó các nhà quản lý có thể đề ra phương hướng và kế hoạch nâng cao chất lượng dạy và học ở các trường THPT trong những năm tiếp theo. 2. Mục tiêu và nội dung của đề tài Mục tiêu của luận văn là: 2 - Tìm hiểu cơ sở lý thuyết của các phương pháp mạng neural (ANN), giải thuật lan truyền ngược (BP), kết hợp giải thuật lan truyền ngược và mạng neural (BP – ANN) - Thử nghiệm ứng dụng các phương pháp ANN, BP, BP – ANN giải bài toán dự đoán điểm thi tốt nghiệp và điểm thi đại học của từng học sinh, đồng thời từ số điểm đó ta có thể dự đoán học sinh có thể đậu các trường đại học nào. Với hai mục tiêu trên cấu trúc của luận văn gồm 3 chương với các nội dung cơ bản sau: Chƣơng I. Tổng quan về mạng neural: Giới thiệu tổng quan về mạng neural, kiến trúc, chức năng của mạng neural, hoạt động của mạng neural và các phương pháp học trong mạng neural. Chƣơng II. Giới thiệu về mạng neural đa lớp truyền thẳng và giải thuật lan truyền ngược. Chƣơng III. Ứng dụng mạng neural xây dựng chương trình dự đoán điểm và khối thi đại học Mặc dù đã hết sức nỗ lực, song do thời gian và kinh nghiệm nghiên cứu khoa học còn hạn chế nên không thể tránh khỏi những thiếu sót. Em rất mong nhận được sự góp ý của các thầy cô và bạn bè đồng nghiệp để hiểu biết của mình ngày một hoàn thiện hơn. Qua luận văn này em xin chân thành cảm ơn: TS. Phạm Trần Vũ – Khoa Khoa học và kỹ thuật máy tính, trường Đại học Bách Khoa TP. Hồ Chí Minh đã chỉ dẫn tận tình giúp em có thể hoàn thành luận văn này. Em xin chân thành cảm ơn các Thầy cô trong khoa công nghệ thông tin đã có những góp ý hữu ích giúp em hoàn thành bản luận văn này. Và em cũng vô cùng cảm ơn sự giúp đỡ và động viên khích lệ của người thân trong gia đình em, bạn bè và đồng nghiệp trong suốt quá trình thực hiện luận văn này. 3 Chƣơng I. TỔNG QUAN VỀ MẠNG NEURAL 1.1. Giới thiệu chung về mạng Neural sinh học Bộ não người chứa khoảng 10 11 tế bào thần kinh (còn gọi là neural) và mỗi kết nối có 10 4 neural nên con người có khả năng đưa ra những quyết định phức tạp và nhanh chóng. Mỗi tế bào thần kinh gồm 3 thành phần chính: soma, dendrites và axon[4]. Nguồn[Ben Krose and Patrick van der Smagt, 1996] Hình 1.1. Mô hình neural sinh học Trong đó : - Các soma là thân của neural. - Các dendrites là các dây mảnh, dài, gắn liền với soma, chúng truyền dữ liệu (dưới dạng xung điện thế) đến cho soma xử lý. Bên trong soma các dữ liệu đó được tổng hợp lại. Có thể xem gần đúng sự tổng hợp ấy như là một phép lấy tổng tất cả các dữ liệu mà neural nhận được. - Một loại dây dẫn tín hiệu khác cũng gắn với soma là các axon. Khác v ới dendrites, axons có khả năng phát các xung điện thế, chúng là các dây dẫn tín hiệu từ neural đi các nơi khác. Chỉ khi nào điện thế trong soma vượt quá một giá trị ngưỡng nào đó (threshold) thì axon mới phát một xung điện thế, còn nếu không thì nó ở trạng thái nghỉ. - Axon nối với các dendrites của các neural khác thông qua những khớp nối đặc biệt gọi là synapse. Khi điện thế của synapse tăng lên do các xung phát ra từ axon thì synapse sẽ nhả ra một số chất hoá học (neurotransmitters); các chất này mở "cửa" trên dendrites để cho các ions truyền qua. Chính dòng ions này làm thay đổi điện thế trên dendrites, tạo ra các xung dữ liệu lan truyền tới các neural khác. 4 1.2. Neural nhân tạo 1.2.1. Định nghĩa Neural nhân tạo (ANN - Artificial Neural Networks)[4,7] là sự mô phỏng lại một cách đơn giản nhất của neural sinh học. Mỗi một neural nhân tạo được tạo ra sẽ có nhiệm vụ tổng hợp các thông tin đầu vào và chuyển đổi thành thông tin một tín hiệu ở đầu ra. Mỗi neural nhân tạo có thể có nhiều đầu vào nhưng chỉ có một đầu ra. Mỗi đầu vào được gắn liền với một hệ số nhân bất kì nào đó gọi chung là trọng số (weight). Các trọng số có ý nghĩa hết sức quan trọng, được ví như mức liên kết tại các khớp nối trong neural sinh học. Trọng số có thể là các số dương hoặc âm, giống như các khớp nối kích thích và khớp nối ức chế trong các neural sinh học . Mỗi neural nhân tạo có một giá trị ngưỡng. Chức năng đầu vào của mỗi neural là tính tổng các tín hiệu đầu vào với các trọng số liên kết đồng thời kết hợp với giá trị ngưỡng để tạo ra một giá trị nhất định là tín hiệu đầu vào net input. Sự kết hợp này được thực hiện bằng một tổng hay theo một số tài liệu gọi là hàm PSP (Post Synapic Potential function) - hàm thế sau khớp nối. Mỗi neural nhân tạo cho ra một giá trị ở đầu ra, và giá trị đầu ra này phụ thuộc vào hàm truyền dẫn (transfer function). Hàm này sẽ nhận tín hiệu đầu vào net input sau đó tính toán và cho ra kết quả là đầu ra của neural. 1.2.2. Mô hình Neural Mạng neural nhân tạo gồm hai thành phần. Phần thứ nhất là các nút (đơn vị xử lý, neural) và phần thứ hai là các liên kết giữa chúng được gán một trọng số bất kỳ đặc trưng thể hiên mật độ liên kết của mạng. 1.2.2.1. Mô hình cấu trúc một Neural với đại lƣợng vô hƣớng Đầu vào một neural có thể là các đại lượng vô hướng (p) hoặc có hướng, các đại lượng này được nhân với các trọng số (w) tương ứng của nó mà trên từng neural có sẵn và có thể cộng thêm một ngưỡng (b) (bias) (thường b=1). Ta có thể tự điều chỉnh các trọng số, ngưỡng trên các neural để đạt được giá trị mong muốn nào đó, quá trình hiệu chỉnh đó gọi là huấn luyện mạng[7]. 5 Nguồn[tác giả] Hình 1.2. Cấu trúc một Neural với ngõ vào vô hướng 1.2.2.2. Cấu trúc một Neural với vectơ nhập Một neural với vector nhập[7] p = [p 1 , p 2 ,…., p R ], trọng số W = w 1,1 , w 1,2 , …. W 1,R , ngưỡng b và hàm truyền f. Tổng đối số và ngưỡng tạo ở ngõ ra n là: bpwpwpwn RR ,122,111,1 Hay bpwn Nguồn[tác giả] Hình 1.3. Cấu trúc một neural với vectơ nhập Tuy nhiên, khi một lớp gồm nhiều neural ta sẽ có công thức sau: Nguồn[Robert J.Challkoff, 1997] Hình 1.4. Một lớp gồm nhiều neural Trong đó: + R : Số phần tử của vector đầu vào a = F(wp) Neural không ngưỡng F(x) P W n a a = F(wp+b) Neural có ngưỡng F(x) P W n a b F(x) n a = F(wp+b) Neural có ngưỡng Pi Wij a b [...]... yếu tố cần dự đoán đó là: điểm thi tốt nghiệp, điểm thi đại học, trường sẽ đậu Muốn dự đoán điểm thi tốt nghiệp, điểm thi đại học và trường sẽ đậu đại học của một học sinh bất kì ta chỉ cần nhập đầy đủ dữ liệu vào phần thông tin dự đoán, sau đó nhấn nút Dự đoán, kết quả sẽ xuất hiện trong phần Kết quả dự đoán Và nếu ta muốn dự đoán điểm thi tốt nghiệp, điểm thi đại học và trường sẽ đậu đại học cho một... ta thu được tập tin Data.txt mới là các thông số của mạng sau khi được huấn luyện Sau khi huấn luyện chương trình xong ta dựa vào các trọng số trong file data.txt thu được để dự đoán kết quả Ta nhập thông tin vào để dự đoán: Nguồn[tác giả] Hình 3.6 Giao diện nhập thông tin dự đoán 31 Sau khi nhập thông tin xong ta nhấn vào nút du doan để dự đoán kết quả Kết quả sẽ hiện lên vùng kết quả của chương trình:... 80% học sinh thi vào đại học là khối A, A1; 70% học sinh thi vào các khối thi B, D1 Có 99% học sinh lựa chọn các môn Toán, Lý, Hóa, Sinh, Anh văn, Ngữ văn để thi vào các trường đại học Do đó các môn như Toán, Lý, Hóa, Sinh, Anh văn, Ngữ văn là các môn đóng vai trò chủ đạo quyết định đến tỉ lệ đậu đại học và thi đại học của học sinh Theo dữ liệu đã phân tích ở trên thì tỉ lệ đậu đại học và điểm thi đại. .. Giao diện kết quả chương trình sau khi dự đoán 3.4.2.3 Một số kết quả dự đoán Lấy ngẫu nhiên kết quả học tập của 88 học sinh năm học 2013 để chạy chương trình (Bảng 4.2 – Phụ lục) Lấy dữ liệu kết quả học tập của 6 môn học của học sinh ở hai năm học cuối cấp là lớp 11 và lớp 12 tương ứng ở hai năm 2012 và 2013 lưu vào file th.txt theo cấu trúc bảng : … Toán Lý Hóa Sinh Văn Anh Toán Lý Hóa Sinh Văn Anh... mô hình mạng neural đã được nghiên cứu, trong đó mạng neural đa lớp truyền thẳng với thuật toán lan truyền ngược là mô hình đơn giản và hay được sử dụng nhất Trong luận văn này, ta chỉ tìm hiểu và áp dụng mạng neural đa lớp truyền thẳng với thuật toán lan truyền ngược ANN là mô hình học từ dữ liệu có trước dựa trên cơ chế tổ chức và xử lý thông tin giống trong bộ não người Thông qua quá trình học các... tượng trên thì tăng giá trị n 23 Chƣơng III: ỨNG DỤNG MẠNG NEURAL XÂY DỰNG CHƢƠNG TRÌNH DỰ ĐOÁN ĐIỂM VÀ KHỐI THI ĐẠI HỌC 3.1 Phát biểu bài toán Qua các kì thi tốt nghiệp và đại học, ta thấy rằng: các học sinh có kết quả điểm tốt nghiệp THPT và thi đại học Tuy nhiên số lượng học sinh đậu đại học ở nguyện vọng một chưa cao Có em thi điểm rất cao nhưng lại chỉ đậu ở những trường có điểm thấp, và có những... trung bình học tập cả năm môn Toán học khối 11 và 12, điểm trung bình học tập cả năm môn Vật lý khối 11 và 12, điểm trung bình học tập cả năm môn Hóa học khối 11 và 12, điểm trung bình học tập cả năm môn Sinh học khối 11 và 12, điểm trung bình học tập cả năm môn Ngữ văn khối 11 và 12, điểm trung bình học tập cả năm môn Anh văn khối 11 và 12, khối học sinh sẽ chọn thi đại học Trong phần Kết quả dự đoán có... chương trình Trong giao diện này chỉ có một nút lệnh thoát (Thoat chuong trinh) Hệ thống chương trình chỉ có thể thoát thông qua nút lệnh này Hình 3.4 cũng là giao diện dùng để chạy chương trình Trong giao diện này gồm có 4 phần: phần thứ nhất đó là Thông tin dự đoán, phần thứ hai đó là Kết quả dự đoán, phần thứ ba đó là Thông số huấn luyện và phần thứ tư là sử dụng file Trong phần Thông tin dự đoán gồm... - Quá trình học thường rơi vào những cực tiểu địa phương - Tốc độ học thường chậm Trong các nghiên cứu để tăng tính hiệu quả của việc học trong mạng neural, người ta đã phát hiện ra rằng để tăng hiệu quả việc học thì cần phải ngăn chặn hiện tượng bão hòa[6] sớm trong quá trình học Hiện tượng bão hòa sớm là hiện tượng 20 kết quả xuất luôn có giá trị lỗi cao trong giai đoạn đầu quá trình học (đây cũng... thi đại học phụ thuộc các nhân tố sau: + Điểm của môn Toán + Điểm của môn Lý + Điểm của môn Hóa + Điểm của môn Anh + Điểm của môn Sinh + Điểm của môn Văn 24 Dựa vào các yếu tố chính đó ta xây dựng bài toán dự đoán điểm thi tốt nghiệp, điểm thi đại học của từng học sinh và từng trường 3.3 Giải quyết bài toán 3.3.1 Xây dựng mạng neural Đầu tiên, dựa vào các nhân tố ảnh hưởng đến kết quả thi đại học như . cam đoan đề tài khoa học Sử dụng mạng neural trong việc dự đoán kết quả đậu đại học này là công trình nghiên cứu của bản thân tôi. Các số liệu và kết quả nghiên cứu trong luận văn này là. tài Sử dụng mạng neural trong việc dự đoán kết quả đậu đại học đi sâu nghiên cứu tìm hiểu một số vấn đề về mạng neural và giải thuật lan truyền ngược để xây dựng chương trình giúp các nhà quản. về mạng neural: Giới thiệu tổng quan về mạng neural, kiến trúc, chức năng của mạng neural, hoạt động của mạng neural và các phương pháp học trong mạng neural. Chƣơng II. Giới thiệu về mạng neural