Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 35 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
35
Dung lượng
566,06 KB
Nội dung
Mạng Neural và ứng dụng của mạng Neural trong lĩnh vực CNTT Mục Lục Lời mở đầu Ngày nay không ai có thể phủ nhận vai trò cực kỳ quan trọng của máy tính trong nghiên cứu khoa học kỹ thuật cũng như trong đời sống. Máy tính đã làm được những điều kỳ diệu và giải được những vấn đề tưởng chừng nan giải. Từ đầu những năm 1940, ý tưởng truyền cho máy tính có khả năng suy nghĩ và học hỏi như con người đã được các nhà khoa học tìm tòi phát triền và đây cũng chính là nguồn gốc ra đời của mạng Neural. Nó thực sự được chú ý và nhanh chóng trở thành một hướng nghiên cứu đầy triển vọng trong mục đích xây dựng các máy thông minh tiến gần tới trí tuệ con người. Hiện nay mạng Neural đang được ứng dụng trong rất nhiều các lĩnh vực khác nhau như trong lĩnh vực nhận dạng ( hình ảnh, giọng nói, chứ viết…) hay trong lĩnh vực an ninh ( hệ thống phát 135 Mạng Neural và ứng dụng của mạng Neural trong lĩnh vực CNTT hiện xâm nhập). Như chúng ta đã biết, Thông tin ngày càng trở lên quan trọng, là chìa khóa thành công cho nhiều vấn đề. Chính vì thế mà bài toán bảo mật cho hệ thống thông tin là một bài toán khó tìm lời giải triệt để nhất. Làm thế nào để tăng cường an toàn cho dữ liệu, cho toàn hệ thống tránh khỏi việc mất mát dữ liệu do các lỗ hổng bảo mật hay sự tấn công từ hacker, virus, Trojan Một cách tổng quát, hệ thống phát hiện xâm nhập - Intrusion detection system ( IDS) là một loại mới của công nghệ an toàn mạng mà có thể bảo vệ tích cực máy tính của bạn từ những tấn công của người xâm nhập. Khi phát hiện bất kỳ nỗ lực xâm nhập hoặc sự xâm nhập, nó có thể báo cáo kịp thời chúng cho người quản trị mạng, cho phép người quản trị biện pháp ngăn cản hoặc khắc phục như là ngắt kết nối mạng để ngăn cản sự mở rộng của dữ liệu không chính xác, và gửi cảnh báo đến kẻ xâm nhập. Tuy nhiên, làm thế nào để phát hiện liệu có sự xâm nhập hay không là một vấn đề cần giải quyết đầu tiên. Phát hiện xâm nhập phụ thuộc vào sự phân loại và nhận dạng các vấn đề với một số lớn các điều kiện phi tuyến làm cho nó cần thiết phải học các cách tiếp cận đã tích hợp các điều kiện phi tuyến để giải quyết vấn đề. Công nghệ thông tin phát triển không ngừng và công nghệ phát hiện xâm nhập cũng luôn cần đổi mới. Mạng Neural là bước tiến cho sự đổi mới về công nghệ phát hiện xâm nhập, khắc phục được nhiều điểm thiếu sót của IDS truyền thống, cho thấy rằng công nghệ này sẽ không lạc hậu, hướng tiếp cận hệ thống an ninh an toàn có ứng dụng công nghệ này hứa hẹn nhiều điểm sáng. Do đó trong phần bài thu hoạch này, em xin trình bày về mạng Neural và ứng dụng của mạng Neural thông minh trong việc phát hiện các cuộc tấn công trong hệ thống phát hiện xâm nhập - Intrusion detection system ( IDS) Trong phạm vi của bài thu hoạch, em xin trình bày các vấn đề chính sau đây: Phần I: Sơ lược về mạng Neural: Phần này sẽ đưa ra khái niệm cơ bản về mạng Neural cũng như nguồn gốc và triển vọng phát triển. Phần II: Mô hình Neural và các kiến trúc mạng: Trình bày mô hình, việc phân loại mạng và một số thuật toán huấn luyện mạng. Phần III: Ứng dụng của mạng Neural trong hệ thống phát hiện xâm nhập trái phép (IDS): Em xin chân thành cảm ơn thầy giáo Hoàng Kiếm – đã tận tình chỉ bảo và giúp em hoàn thành bài thu hoạch này. 235 Mạng Neural và ứng dụng của mạng Neural trong lĩnh vực CNTT I) Sơ lược về mạng Neural: I.1. Nguồn gốc mạng Neural nhân tạo: Nguồn gốc của mạng Neural nhân tạo bắt nguồn từ nhiều ngành học thuật bao gồm vật lý, tâm lý học thần kinh. Những nghiên cứu này hoàn toàn về các lý thuyết của việc học, sự nhìn, phản xạ có điều kiện,v.v và hoàn toàn chưa có các mô hình toán học về các hoạt động của mạng Neural. Vào những năm thập niên 1940, Werren McCulloch và Walter Pitts chỉ ra rằng các mạng nơnron nhân tạo có thể tính toán được một số hàm logic và số học. Tiếp đó là Rosebatt, Windrow, Hoff đã có các mạng và các quy tắc học đầu tiên. Thập niên 1960 Minsky và Papert đã đưa ra các hạn chế của mạng Neural và các nghiên cứu gần như dừng lại. Những năm 1970 có Amari, Anderson, Kohonen tiếp tục nghiên cứu nhưng tốc độ chậm. Từ thập niên 80 với những phát triển mới quan trọng về thuật toán học như truyền ngược lỗi, mạng Neural đã hồi sinh và phát triển mạnh. Càng ngày chúng càng chứng tỏ vai trò và triển vọng của nó trong các ứng dụng thực tiễn và 335 Mạng Neural và ứng dụng của mạng Neural trong lĩnh vực CNTT không còn chỉ nằm trong các phòng thí nghiệm mà đã xuất hiện nhiều ứng dụng quan trọng. Người ta thấy rằng tất cả các chức năng thần kinh sinh học được thực hiện nhờ vào các liên kết giữa các Neural sinh học. Quá trình học tập của não là việc hình thành các liên kết mới giữa các Neural hoặc thay đổi các liên kết đang có. Từ những hiểu biết này, người ta xây dựng và phát triển mạng Neural nhân tạo dựa trên mô hình của Neural sinh học với mục đích là có thể huấn luyện các mạng Neural nhân tạo này để chúng có thể giải quyết một số bài toán theo cách của bộ não sinh học thực hiện đồng thời thông qua đó tìm hiểu các cơ chế nhớ và cách tính toán của bộ não. I.2. Neural Sinh học : Một Neural được cấu gồm những thành phần chính sau: Dendrite, Soma, Synapse, Axon như hình 1 Hình 1: Mô hình Neural sinh họ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 đó 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ỉ. 435 Mạng Neural và ứng dụng của mạng Neural trong lĩnh vực CNTT Axon nối với các dendrites của các Neural khác thông qua những mối 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 nhữ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. Bộ não con người có khoảng 10 11 Neural được nối với nhau bởi 10 4 liên kết. Sự sắp đặt các Neural và độ mạnh của các khớp thần kinh riêng biệt được quyết định bởi một quá trình hoá học phức tạp, tạo nên chức năng của mạng Neural. Một số cấu trúc thần kinh được các định ngay từ lúc sinh ra. Còn lại chúng phát triển qua quá trình học, các liên kết mới được tạo ra, một số khác mất đi. Các cấu trúc thần kinh liên tục thay đổi trong suốt cuộc sống. Giai đoạn đầu của cuộc sống là quá trình phát triển mạnh mẽ nhất, về sau chủ yếu là sự tăng hoặc giảm độ mạnh của các khớp thần kinh. Người ta đã thấy rằng, mỗi Neural có thể gồm vài chục hoặc hàng trăm khớp nối để nối với các Neural khác. Điều đáng chú ý là chính các Neural rất đơn giản trong cơ chế làm việc, nhưng mạng các Neural liên kết với nhau lại có khả năng tính toán, suy nghĩ, ghi nhớ và điều khiển. Các khả năng cơ bản của bộ não là: + Có thể tổng quát hoá, liên hệ các thuộc tính của đối tượng với nhau. + Có thể tiếp tục thực hiện ngay cả khi thông tin bị thiếu hoặc không chính xác. + Có thể phát hiện và phục hồi thông tin bị mất. + Có khả năng xuống cấp và có khả năng thay thế dần dần. + Có khả năng học. I.3. Neural nhân tạo Neural nhân tạo là một đơn vị tính toán có nhiều đầu vào và một đầu ra, mỗi đầu vào đến từ một liên kết. Đặc trưng của Neural là một hàm kích hoạt phi tuyến chuyển đổi tổ hợp tuyến tính của tất cả các tín hiệu đầu vào thành tín hiệu đầu ra. Hàm kích hoạt này đảm bảo tính chất phi tuyến cho tính toán của mạng Neural. 535 Mạng Neural và ứng dụng của mạng Neural trong lĩnh vực CNTT Hình 2: Mô hình một Neural nhân tạo Liên kết Neural là một thành phần của mạng Neural nhận tạo để liên kết giữa các Neural, nó nối đầu ra của Neural lớp này với đầu vào của một Neural trong lớp khác. Đặc trưng của thành phần liên kết là một trọng số mà mỗi tín hiệu đi qua đều được nhân với trọng số này. Các trọng số liên kết chính là các tham số tự do cơ bản của mạng neuron, có thể thay đổi được nhằm thích nghi với môi trường xung quanh. I.4. Triển vọng phát triển của mạng Neural Mạng Neural đã được ứng dụng trong nhiều lĩnh vực. Chất lượng và số lượng của chúng tăng lên rất nhanh và hứa hẹn giải quyêt nhiều bài toán mà thực hiện bằng các phương pháp truyền thống là rất khó khăn. Dưới đây liệt kê ra một số ứng dụng chính của mạng Neural: Aerospace: Phi công tự động, giả lập đường bay, các hệ thống điều khiển lái máy bay, bộ phát hiện lỗi. Automotive: Các hệ thống dẫn đường tự động cho ô tô, các bộ phận tích hoạt động của xe. Banking: Bộ đọc séc và các tài liệu, tính tiền của thẻ tín dụng. Defense: Định vị - phát hiện vũ khí, dò mục tiêu, phát hiện đối tượng, nhận dạng nét mặt, các bộ cảm biến thế hệ mới, xử lý ảnh radar,… Electronics: Dự đoán mã tuần tự, sơ đồ chíp IC, điều khiển tiến trình, phân tích nguyên nhân hỏng chip, nhận dạng tiếng nói, mô hình phi tuyến. 635 ∑ Mạng Neural và ứng dụng của mạng Neural trong lĩnh vực CNTT Entertainment: Hoạt hình, các hiệu ứng đặc biệt, dự báo thị trường. Financial: Định giá bất động sản, cho vay, kiểm tra tài sản cầm cố, đánh giá mức độ hợp tác, phân tích đường tín dụng, chương trình thương mại qua giấy tờ, phân tích tài chính liên doanh, dự báo tỷ giá tiền tệ. Insurance: Đánh giá việc áp dụng chính sách, tối ưu hoá sản phẩm. Bài toán lọc nhiễu Xử lý ảnh, xử lý tính hiệu …… Tuy có nhiều hứa hẹn nhưng mạng Neural cũng còn nhiều vấn đề như: Đánh giá các giới hạn của mạng Neural, đánh giá khả năng tổng quát của mạng Neural, kết hợp với các công nghệ khác như giải thuật gen hoặc tiếp cận mờ Một số vấn đề mở đang đặt ra hiện nay bao gồm: độ phức tạp của tổng thể của mạng là gì? Độ phức tạp của thuật toán huấn luyện là gì? Giải pháp mạng Neural nhân tạo có tổng quát quá không? Mạng học cái gì? Giải pháp mạng Neural nhân tạo tỷ lệ với số chiều của bài toán như thế nào? Ngoài ra còn nhiều yếu tố ảnh hưởng đến sự phát triển của mạng Neural. Không chỉ các cơ sở toán học, các phương pháp thiết kế mạng, các thuật toán huấn luyện, mà còn có cả các khám phá trong lĩnh vực sinh học, tâm lý học, sẽ là những yếu tố quan trọng đối với sự phát triển của mạng Neural nhân tạo. II)Mô hình Neural và các kiến trúc mạng II.1. Mô hình mạng Neural Mạng Neural nhân tạo (Artificial Neural Network) bao gồm các Neural ( còn gọi là một đơn vị xử lý hay một node) được nối với nhau bởi các liên kết Neural. Mỗi liên kết kèm theo một trọng số nào đó, đặc trưng cho tính kích hoạt/ ức chế giữa các Neural. Có thể xem các trọng số là các phương tiện để lưu trữ thông tin dài hạn trong mạng Neural. Nhiệm vụ chung của quá trình huấn luyện mạng là cập nhật các trọng số khi có thêm các thông tin về mẫu học. 735 Mạng Neural và ứng dụng của mạng Neural trong lĩnh vực CNTT Thông thường các Neural có nhiều đầu vào. Một Neural có R đầu vào p 1 ,p 2 ,p R sẽ có các trọng số tương ứng w 1 ,w 2 , ,w R tạo thành một ma trận W và được gọi là ma trận trọng số. Hình 3: Mô hình một Neural nhân tạo Đầu vào p i : Đặc trưng cho các tín hiệu điện kích thích trên các dây thần kinh của mạng Neural sinh học. Các đầu vào này có thể có giá trị nhị phân là +1/-1 hoặc +1/0. Trọng số w i : Mỗi đầu vào có một trọng số w i . Trọng số có giá trị là số thực dương hoặc âm. Tổng trọng số n( Net): là hàm tổng hợp các tín hiệu vào của Neural. Các hàm Net thường dùng là: • Hàm tổng: n = p 1 + p 2 + + p R • Hàm tuyến tính:(dùng phổ biến trong mạng một lớp) n = w 1 p 1 + w 2 p 2 + + w R p R . • Hàm bình phương: 835 ∑ ∑ Mạng Neural và ứng dụng của mạng Neural trong lĩnh vực CNTT n = w 1 p 1 2 + w 2 p 2 2 + + w R p R 2 Hàm chuyển f(n,b):(còn được gọi là hàm kích hoạt hay hàm tích hợp): là một dạng hàm không tuyến tính đóng vai trò biến đổi từ Net sang tín hiệu đầu ra a. Các dạng hàm kích hoạt sau thường được dùng trong thực tế: Hình 4: Hàm chuyển giới hạn cứng Hình 5: Hàm chuyển tuyến tính 935 ∑ Mạng Neural và ứng dụng của mạng Neural trong lĩnh vực CNTT Hình 6: Hàm chuyển Sigmoid Ngưỡng b: Ngưỡng b đóng vai trò tăng tính thích nghi và khả năng tính toán của mạng Neural. Trong các mạng Neural có sử dụng ngưỡng b, ta có thể coi như thêm một tín hiệu đầu vào x R+1 với trọng số tương ứng w R+1 . Giá trị của x R+1 là cố định và thường gán x R+1 =+1. Giá trị ban đầu của w R+1 =-b. Giá trị của w R+1 có thể thay đổi sau mỗi lần học. Tín hiệu đầu ra a: Tín hiệu đầu ra a là giá trị của hàm chuyển: a = f(Wp + b) Bảng tóm tắt một số hàm chuyển thông dụng: Tên Giá trị Tên hàm Ngưỡng cứng ≥ Hardlim Ngưỡng cứng đối xứng ≥ Hardlims Tuyến tính a = n Purelin Tuyến tính bão hòa ≤≤ Satlin Tuyến tính bão hòa đối xứng ≤≤ Satlins Log-Sigmoid a = 1/ (1+ e -n ) logsig Sigmoid tang hypebolic a = (e n - e -n )/ (e n + e -n ) Tansig Tuyến tính dương ≥ Poslin 1035 [...]... of 35 Mạng Neural và ứng dụng của mạng Neural trong lĩnh vực CNTT Đầu ra của lớp j-1 là đầu vào của lớp j, đầu ra của lớp j ;à đầu vào của lớp j+1 Do vậy với lớp thứ j có Sj-1 đầu vào, Sj Neural đầu ra và Sj-1.Sj trọng số trong ma trận Wj Đầu vào của mạng thứ j là aj-1 và đầu ra là aj Lớp cuối cùng của mạng Neural gọi là lớp ra Các lớp khác gọi là lớp ẩn Hình 7: Mạng Neural đa tầng Mạng nhiều lớp có... đạo của các mạng Neural hiện tại Hình 10 là sơ đồ mạng có 3 lớp, đầu ra của lớp đầu tiên là đầu vào của lớp thứ hai và đầu ra của lớp thứ hai là đầu vào của lớp thứ ba Page 20 of 35 Mạng Neural và ứng dụng của mạng Neural trong lĩnh vực CNTT Hình 10: Mạng đa tầng + Tập mẫu học: Mạng được cung cấp một tập mẫu chuẩn Q={p(q), t(q)}, trong đó: o Mẫu đầu vào p(q)= [p1, p2, pR], q=1,2, , Q ( R là số đầu vào,... phải dùng nhiều Neural hoạt động song song gọi là một lớp( hay còn gọi là một tầng) Neural Page 13 of 35 Mạng Neural và ứng dụng của mạng Neural trong lĩnh vực CNTT Một lớp của S Neural được mô tả trong hình 6 Các liên kết trong mạng này là nối đầy đủ, tức là R đầu vào được nối đầy đủ với các Neural và ma trận trọng số bây giờ có S hàng Hình 6: Mạng Neural một lớp có S -Neural Số đầu vào và số đầu ra là... dựng mạng Neural Về cơ bản ta có thể hiểu mạng Neural là một đồ thị có hướng như hình 1.8 Trong đó các đỉnh của đồ thị là các Neural và các cạnh của đồ thị là các liên kết giữa các Neural h1 g1 x h2 f g2 h3 Hình 9: Sơ đồ đồ thị có hướng đơn giản Page 16 of 35 Mạng Neural và ứng dụng của mạng Neural trong lĩnh vực CNTT Vì vậy để xây dựng một mạng Neural ta xây dựng một đồ thị có hướng: số đỉnh của đồ... Mạng Neural và ứng dụng của mạng Neural trong lĩnh vực CNTT II.3 Phân loại mạng Neural Mạng Neural là hệ thống bao gồm nhiều phần tử xử lý đơn giản( Neural) hoạt động song song Tính năng của hệ thống này tuỳ thuộc vào cấu trúc của hệ, các trọng số liên kết và quá trình tính toán tại các Neural đơn lẻ Có nhiều cách phân loại mạng Neural, chủ yếu là dựa trên các cơ sở sau: II.3.1 Theo kiểu liên kết Neural. .. t(q) và a (q) rồi truyền ngược từ lớp ra trở lại các lớp trước nhằm mục đích cho các lớp tự cập nhật trọng số theo các thông tin phản hồi đó Page 21 of 35 Mạng Neural và ứng dụng của mạng Neural trong lĩnh vực CNTT Thuật toán này có thể áp dụng với mạng có số lớp bất kỳ Xét mạng truyền thẳng với M lớp, m=1,2, ,M Đặt netmi và ami lần lượt là đầu vào và đầu ra của Neural thứ i trong lớp m Mạng có R đầu vào... hiện và bị dừng lại Nói cách khác, IDS truyền thống cần một thời gian dài để phân tích và thiết bị hãm, sau đó làm mới các luật Vấn đề chính của các mạng Neural BP là sụ thiếu tính làm rõ được thông tin ( thiếu khả năng trình diễn thông tin) Page 32 of 35 Mạng Neural và ứng dụng của mạng Neural trong lĩnh vực CNTT Kết Luận Với những sự thông minh và những ứng dụng cũng như những tiềm năng của mạng Neural, ... nhập hiệu quả cao Hệ thống lọc sự kiện đáng nghi và chuyển sự kiện này đến hệ thống để xử lý nhiều hơn Kết cấu có thể giảm chi tiêu của hệ thống và tỷ lệ cảnh báo sai của IDS Mô hình IDS dựa trên mạng Neural được hiển thị như dưới hình 11 Page 28 of 35 Mạng Neural và ứng dụng của mạng Neural trong lĩnh vực CNTT Hình 11: Mô hình IDS dựa trên mạng Neural Mạng Neural tăng thêm khả năng dự báo bằng kiểu đặc... lại Mô hình mạng hồi quy rời rạc theo thời gian được mô tả trong hình 8: Page 15 of 35 Mạng Neural và ứng dụng của mạng Neural trong lĩnh vực CNTT Hình 8: Mạng hồi quy Trong mạng đặc biệt này, tại thời điểm ban đầu t= 0, đầu ra của mạng được khởi tạo giá trị a(0)=p Các đầu ra về sau được tính từ đầu ra trước đó a (t+1) = f(Wa(t)+ b) Các mạng hồi quy có tiềm năng mạnh hơn các mạng chuyển tiếp và có thể... giám sát: Trong học giám sát, các quy tắc học được cung cấp bằng một tập mẫu chuẩn(tập huấn luyện) {p1,t1}, {p2,t2}, , {pq,tq} Trong đó pq là một đầu vào của mạng và tq là đầu ra đúng tương ứng. Khi đầu vào được áp dụng vào mạng, đầu ra của mạng được so dánh với đích Quy tắc học sau đó được áp dụng để điều chỉnh các trọng số và độ lệch của mạng cốt làm cho đầu ra của mạng gần đích đúng của đầu vào II.5.1.2 . tính toán của mạng Neural. 535 Mạng Neural và ứng dụng của mạng Neural trong lĩnh vực CNTT Hình 2: Mô hình một Neural nhân tạo Liên kết Neural là một thành phần của mạng Neural nhận. lỗi, mạng Neural đã hồi sinh và phát triển mạnh. Càng ngày chúng càng chứng tỏ vai trò và triển vọng của nó trong các ứng dụng thực tiễn và 335 Mạng Neural và ứng dụng của mạng Neural trong. hoạch này. 235 Mạng Neural và ứng dụng của mạng Neural trong lĩnh vực CNTT I) Sơ lược về mạng Neural: I.1. Nguồn gốc mạng Neural nhân tạo: Nguồn gốc của mạng Neural nhân tạo bắt nguồn