Trang chủ » Diễn Đàn » Lập trình và Phát triển Web » Artificial Intelligence - Trí Tuệ Nhân Tạo » SOM - Lý thuyết và xây dựng ứng dụng sử dụng SOM!
Chủ đề đã bị khóa, bạn không thể xóa, sửa hay trả lời trong chủ đề này!
|
|
|---|
|
1
Ngắn gọn: topic này sẽ tập trung chủ yếu về giải thuật SOM và cố gắng hướng bạn đọc đến việc hiểu và ứng dụng giải thuật này vào các bài toán thực tế.
Các định nghĩa cơ bản như AI là gì, SOM là gì,...sẽ được trình bày tuy nhiên chỉ ở mức sơ lược. Các bạn có thể đọc ở mục tài liệu tham khảo của topic. Cấu trúc: các vấn đề cụ thể sẽ được chia thành tùng topic con tương ứng, hy vọng các Bạn nếu có phản hồi thì reply đúng vào từng topic con. Như vậy những người đến sau sẽ dễ dàng tham chiếu hơn. Còn chi nữa hè???? :D
_________________________________________
...They lose their health to make money and then lose their money to restore their health! ..:: lyf [-=at=-] vninformatics [-=dot=-] com ::.. |
|
|
|
0
SOM (Self-Organizing Maps - Bản đồ tự tổ chức) là một trong nhiều loại mạng AI do cố giáo sư, tiến sĩ Teuvo Kohonen đề xướng vào những năm 70 của thế kỷ trước. Ông là một trong những nhà nghiên cứu nổi tiếng và có nhiều công trình trong lĩnh vực tính toán nơron. Ông phát minh ra nhiều loại mạng khác nhau nhưng nhiều người biết đến “mạng Kohonen” mà không xác định rõ đó là loại mạng Kohonen gì và sự thiếu hiểu biết này có thể dẫn đến nhầm lẫn. Cụm từ “mạng Kohonen” thường dùng để tham chiếu đến một trong ba loại mạng sau đây:
NOTE: chi tiết của các loại mạng Kohonen này có thể tìm thấy nhiều trên NET! Các Bạn có thể tham khảo ở: + Trang web Trung tâm nghiên cứu mạng nơron (The Neural Networks Research Centre) của Đại học Kỹ thuật Helsinki http://www.cis.hut.fi/research/ + Các articles tại địa chỉ http://websom.hut.fi/we...-nets-new/html/root.html + Trang web của Akio Utsugi về Bayesian SOM http://www.aist.go.jp/NIBH/~b0616/Lab/index-e.html + Trang chủ của Bernd Fritzke tại http://pikas.inf.tu-dresden.de/~fritzke/ còn có các thông tin về sự phát triển của SOM và các kiểu liên quan khác của mạng nơron. Mạng SOM Cố giáo sư, tiến sĩ Teuvo Kohonen sinh ngày 11/07/1934, là giáo sư danh dự của Viện hàn lâm Phần lan. Giáo sư Kohonen được biết đến nhiều trong các lĩnh vực về mạng nơron, bao gồm các thuật toán phép học lượng tử hóa véctơ, các lý thuyết cơ bản về phân bố và ánh xạ tối ưu,... Ông đã xuất bản một số sách và viết khoảng 200 bài báo. Đóng góp nổi tiếng nhất của ông là bản đồ tự tổ chức - SOM hay còn được gọi là bản đồ Kohonen Giải thuật SOM ban đầu được phát triển cho mục đích phân loại tiếng nói, tuy nhiên SOM còn có thể áp dụng được trong nhiều lĩnh vực khác như điều khiển tự động (Control Engineering), hóa - sinh trắc học (Biomedical Sciences and Chemistry), phân tích tài chính (Financial Analysis) và xử lý ngôn ngữ tự nhiên (Natural Language Processing). Các thuộc tính cơ bản nhằm phân biệt SOM với các mạng nơron khác là nó sử dụng ký số thay cho ký tự, không tham số (non-parametric), và học không hướng dẫn. Phương pháp dùng số tự nhiên cho phép SOM xem xét, xử lý dữ liệu số tự nhiên thống kê được và nhằm để biểu diễn các mối quan hệ đã được chọn lọc. Bởi do SOM không yêu cầu cầu học có giám sát và là một dạng non-parametric nên nó có thể tìm ra cả những cấu trúc không hề mong muốn từ dữ liệu đã cho. Về mặt giải thuật Giải thuật SOM đơn giản được thực hiện qua một số lượng nhất định (thường rất lớn) vòng lặp và tại mỗi vòng lặp thực hiện các bước cơ bản sau: • Tìm nơron chiến thắng (BMU). • Cập nhật trọng số và các lân cận của BMU. • Lặp lại cho đến khi không có sự thay đổi nào trên các trọng số hoặc đạt được số lần lặp xác định. Tìm Best Matching Unit (BMU) Để chọn BMU, có ba loại hàm khoảng cách có thể dùng là Euclidian, Manhattan, và Vector Dot Product. Cả hai trường hợp Euclidian Distance và Manhattan Distance đều là những trường hợp đặc biệt của Minkowsky Distance. Cập nhật trọng số và lân cận của BMU Các lân cận của BMU được cập nhật tùy theo hàm lân cận mà SOM sử dụng. Hàm lân cận thường được sử dụng nhất là hàm Bubble [Kohonen (2000)] và Gaussian. NOTE: chi tiết của các công thức này sẽ được Lỳ tui up lên sau :D ! “Bản đồ” sử dụng trong SOM bị ảnh hưởng rất nhiều bởi quá trình lựa chọn các tham số của mạng. Các tham số này bao gồm: • kích thước của bản đồ (Width/Height); • số lần lặp (interactions); • kích thước của bán kính khởi tạo ban đầu (Radius); và • giá trị khởi tạo cho hệ số học. Thực sự không có một hướng dẫn cụ thể cho việc lựa chọn các tham số này ứng với các bài toán áp dụng SOM. Quá trình “thử sai” (trial and error) là rất cần thiết nhằm xác định tập các giá trị thích hợp ứng với tập dữ liệu đầu vào. Tuy nhiên, theo [Kohonen et al (1996)] thì các tham số đề nghị là sử dụng bản đồ hình chữ nhật không toàn phương, kích thước khuyến cáo nên dùng là (15, 10) và sử dụng bán kính khởi tạo đúng bằng giá trị bề rộng của bản đồ. Giá trị khởi tạo của hệ số học có thể chọn tương đương 0,05. Nên nhớ kỹ các giá trị này vì nó sẽ được dùng khi ta tiến hành xây dựng bất kỳ một ứng dụng nào có áp dụng SOM!!!!!!!!! Phép học của SOM viết dưới dạng mã giả dựa trên ngôn ngữ C như sau: /***************** Tìm kiếm BMU ******************/Các thuật toán SOM khác Batch SOM Batch SOM là một biến thể của SOM nhưng có tốc độ nhanh hơn đáng kể và có ít tham số điều chỉnh hơn. Mặc dù thuật toán là khác nhau nhưng về mặt kiến trúc của bản đồ thì lại tương tự nhau. Bản đồ phụ gồm có đơn vị bản đồ (map unit) được sắp có thứ tự trên lưới. Thông thường lưới này có hình chữ nhật và 2-chiều và được dùng để mô hình hoá dữ liệu. Tree-Structured SOM Tree-Structured SOM là một phiên bản đặc biệt nhanh của SOM. Nó gồm tập các lớp (layer), mỗi lớp là một mức lượng tử hóa hoàn chỉnh của không gian dữ liệu. Sự khác biệt giữa các lớp là ở số lượng các mẫu tăng theo hàm mũ tương tự như cây phát triển hướng xuống. Ví dụ, lớp đầu tiên chỉ có 4 véc-tơ mẫu, lớp thứ hai là 16, lớp thứ 3 là 64,…Như vậy mỗi véc-tơ mẫu của một lớp có bốn lớp con trong lớp kế tiếp. Các lớp trên cùng được sử dụng trong việc huấn luyện lớp đi sau: thay vì so sánh véc-tơ dữ liệu nhận được với tất cả các véc-tơ mẫu, giả sử của lớp 3, đầu tiên nó so sánh với các mẫu có trong lớp thứ nhất, sau đó so sánh tiếp với các lớp con của lớp chiến thắng thứ nhất và các lân cận của lớp này, và cứ thế tiếp tục. Các kết quả tính toán số khoảng cách thì giảm một cách đáng kể, đặc biệt là trên các lớp thấp hơn. Ngoài ra, các lớp được thêm vào theo từng lớpvì vậy bản đồ dữ liệu sẽ được chi tiết dần lên. MST-SOM Trong mô hình MST-SOM, các mối quan hệ lân cận được xác định bằng cách dùng cây cân bằng tối thiểu (MST – Minimal Spanning Tree). MST định nghĩa một cách ngắn gọn nhất có thể được tập liên kết của giữa tập các véc-tơ. Trong véc-tơ lượng tử hóa, MST-SOM nhanh và ổn định hơn SOM cơ bản. Hay nói cách khác, vị trí các mẫu trên một lưới có số chiều thấp là không được hoàn toàn xác định, vì vậy việc mô tả cũng sẽ khó khăn hơn. Neural Gas Neural Gass cũng là một biến thể khác của SOM với các lân cận được xác định trong suốt quá trình huấn luyện. Các lân cận được xác định theo vị trí thứ tự của khoảng cách các véc-tơ mẫu từ tập huấn luyện giả thiết. Growing Cell Structures Trong thuật toán Growing Cell Structures, khả năng thích nghi đã được thực hiện từng bước sâu hơn. Thay cho việc phải có một số lượng cố định các véc-tơ mẫu, thuật toán chỉ bắt đầu với 2 và sau đó thêm vào các véc-tơ mẫu tùy thuộc vào tiêu chuẩn hàm báo lỗi. Các lân cận được xác định tại thời điểm một mẫu mới được thêm vào mạng và các véc-tơ mẫu cũng được xóa đi. Các giải thuật Parallel SOM Huấn luyện mạng nơron theo mô hình song song hoặc thực hiện việc phân chia mạng theo số bộ xử lý (network partioning) hoặc thực hiện theo hướng phân chia dữ liệu đi qua bộ xử lý (data partioning). Trong mô hình network partioning mỗi bộ xử lý hoặc mỗi tác vụ song song phải xử lý tất cả các bản ghi huấn luyện xử dụng phần phần mạng nơ-ron được gắn kết tương ứng với nó. Trong mô hình data partioning, mỗi bộ xử lý là một bản sao đầy đủ của mạng chỉ sử dụng các bản ghi được gửi đến cho nó. TÓM LẠI: Bản đồ tự tổ chức là một thuật toán được sử dụng trong rất nhiều ứng dụng, thông thường trong việc gom cụm và/hoặc mô hình hóa dữ liệu đa chiều thành các lưới có hai hoặc ba chiều. Có thể kể đến là nhận dạng tiếng nói (Kohonen, 1989, robotics (Ritter et al., 1989), máy ảo (Oja, 1992), tối ưu tổ hợp (Fort, 1988), phân lớp (Kohonen, 1984),… -**-
_________________________________________
...They lose their health to make money and then lose their money to restore their health! ..:: lyf [-=at=-] vninformatics [-=dot=-] com ::.. |
|
|
|
0
Bài này viết hơn 2 năm rồi mà không thấy có ai reply là sao nhỉ?
Viết tệ quá đi...... :D Bóc tem cái nào!
_________________________________________
...They lose their health to make money and then lose their money to restore their health! ..:: lyf [-=at=-] vninformatics [-=dot=-] com ::.. |
|
|
|
0
Bạn osin có post 1 bài giới thiệu về chương trình bạn đó viết: http://www.vninformatic...mang-tu-to-chuc-SOM.html
Bác lỳ xem qua thử chương trình đó coi sao, thấy cũng khá được á :-)
---------
NBThanh Tutorial Room, cập nhật thường xuyên bài viết mới. Các bài viết mới cập nhật: - PHP - Lưu nội dung file ảnh vào CSDL NEW! - Làm việc với CSDL MySQL trong PHP - Học PHP qua ví dụ - Gởi email text, HTML, tiếng việt Unicode - Học PHP qua ví dụ - 1 chương trình download manager/giấu đường dẫn download - Học PHP qua ví dụ - Làm việc với Cookie và Session |
|
|
|
0
Quá được cho các bác muốn biết qua về mấy thứ đó, nhưng để hiểu chính xác nhất thì theo Lỳ tui, cách tốt nhất là tự code cho mình tùy thuộc ứng dụng định xây dựng.
:D
_________________________________________
...They lose their health to make money and then lose their money to restore their health! ..:: lyf [-=at=-] vninformatics [-=dot=-] com ::.. |
|
|
|
0
SOM (Self-Organizing Maps - Bản đồ tự tổ chức) là một trong nhiều loại mạng AI do cố giáo sư, tiến sĩ Teuvo Kohonen đề xướng vào những năm 70 của thế kỷ trước. Ông là một trong những nhà nghiên cứu nổi tiếng và có nhiều công trình trong lĩnh vực tính toán nơron. Ông phát minh ra nhiều loại mạng khác nhau nhưng nhiều người biết đến “mạng Kohonen” mà không xác định rõ đó là loại mạng Kohonen gì và sự thiếu hiểu biết này có thể dẫn đến nhầm lẫn. Cụm từ “mạng Kohonen” thường dùng để tham chiếu đến một trong ba loại mạng sau đây: Cảm ơn bạn đã chia sẻ, mình đang tìm tài leeiuj này mãi... |
