Phân loại theo kiểu liên kết nơron

Một phần của tài liệu Ứng dụng mạng Neural trong phân loại thư rác (Trang 28)

Ta cĩ mạng nơron truyền thẳng và nơron mạng quy hồi:

-Mạng truyền thẳng, các nơron đi theo một hướng nhất định tạo thành

đồ thị khơng cĩ chu trình như trong hình 1.7. Chu trình cĩ các đỉnh là các nơron, cịn các cạnh là các liên kết giữa chúng.

Hình 1.7 Mạng truyền thẳng

-Mạng quy hồi: cho phép các liên kết nơron tạo thành chu trình như

Số hĩa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/

29 đã gĩp phần kích hoạt chúng. Vì thế nên mạng quy hồi cịn cĩ khả năng lưu giữ trạng thái trong dưới dạng các ngưỡng kích hoạt ngồi các trọng số liên kết nơron.

Hình 1.8 Mạng quy hồi 1.3.2. Một số loại mạng nơron điển hình

1.3.2.1. Mạng dẫn tiến (feedforward)

Cĩ thể nĩi mạng nơron dẫn tiến là một kiểu mạng đơn giản trong việc sắp đặt mạng. Trong mạng này thơng tin chỉ truyền trên một hướng duy nhất: từ lớp đầu vào xuyên qua lớp ẩn (nếu cĩ) và kết thúc tại lớp đầu ra. Mạng dẫn tiến khơng cĩ chu trình hoặc vịng ở bên trong.

a) Các mạng dẫn tiến (feedforward) đơn mức

Trong một mạng nơron phân mức, các nơron được tổ chức dưới dạng các mức. Với dạng đơn giản nhất của mạng phân mức, mạng cĩ một mức đầu vào gồm các nút nguồn chiếu trực tiếp tới mức đầu ra gồm các nơron.

Số hĩa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/

30 Mức đầu vào Mức đầu ra

Hình 1.9 Mạng tiến với một mức nơron

Như vậy, mạng thực sự là khơng cĩ chu trình. Mạng nơron trong hình 1.9 minh họa trường hợp ba nút đối với cả mức đầu ra và đầu vào. Một mạng như vậy được gọi là một mạng đơn mức. Mạng được gọi là “đơn mức” tức là chỉ cĩ một mức, chính là mức đầu ra gồm các nút tính tốn (các nơron). Chúng ta khơng tính mức đầu vào của các nút nguồn vì khơng cĩ tính tốn nào được thực hiện ở đây.

b) Các mạng dẫn tiến đa mức

Lớp thứ hai của một mạng nơron dẫn tiến được phân biệt bởi sự cĩ mặt của một hay nhiều mức ẩn. Các nút tính tốn của mức ẩn được gọi là các nơron ẩn hay các đơn vị ẩn (thuật ngữ “ẩn” ở đây mang ý nghĩa là khơng tiếp xúc với mơi trường). Chức năng của các nơron ẩn là can thiệp vào giữa đầu vào và đầu ra của mạng một cách hữu hiệu. Bằng việc thêm một vài mức ẩn, mạng cĩ khả năng rút ra được các thống kê bậc cao của tín hiệu đầu vào . Khả năng các nơron ẩn rút ra được các thống kê bậc cao đặc biệt cĩ giá trị khi mức đầu vào cĩ kích thước lớn.

Các nút nguồn trong mức đầu vào của mạng cung cấp các phần tử của vector đầu vào, chúng tạo nên các tín hiệu đầu vào cho các nơron (các nút tính tốn) trong mức thứ hai (mức ẩn thứ nhất). Các tín hiệu đầu ra của mức thứ hai được sử dụng như các đầu vào cho mức thứ ba, và như cứ vậy cho phần

Số hĩa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/

31 cịn lại của mạng. Về cơ bản, các nơron trong mỗi mức của mạng cĩ các đầu vào của chúng là các tín hiệu đầu ra của chỉ mức đứng liền trước nĩ (điều này cĩ thể khác trong thực tế cài đặt). Tập hợp các tín hiệu đầu ra của các nơron trong mức đầu ra của mạng tạo nên đáp ứng tồn cục của mạng đối với các vector đầu vào được cung cấp bởi các nút nguồn của mức đầu vào.

Mạng nơron trong hình 1.10 được gọi là kết nối đầy đủ. Tại đĩ, tất cả các nút trong mỗi mức của mạng được nối với tất cả các nút trong mức tiếp sau. Nếu một số kết nối khơng tồn tại trong mạng, chúng ta nĩi rằng mạng là kết nối khơng đầy đủ.

Mức đầu vào Mức ẩn Mức đầu ra gồm các nút gồm các gồm các

nguồn nơron ẩn nơron đầu ra Hình 1.10 Mạng tiến kết nối đầy đủ với một mức ẩn và một mức đầu ra

1.3.2.2. Mạng quy hồi (recurrent network)

Trái với mạng nơron dẫn tiến , mạng nơron quy hồi là những mơ hình với hai luồng dữ liệu cĩ hướng. Trong khi mạng dẫn tiến truyền dữ liệu theo một đường thẳng thì mạng nơron quy hồi cĩ ít nhất một phản hồi từ những nơron xử lý sau quay trở lại các nơron xử lý trước đĩ.

Số hĩa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/

32 Hình 1.11 Mạng hồi quy khơng cĩ nơron ẩn và khơng cĩ vịng lặp tự phản hồi

Hình 1.12 Mạng hồi quy cĩ các nơron ẩn

Sự cĩ mặt của các vịng lặp phản hồi, trong cả cấu trúc hồi quy cĩ một ảnh hưởng sâu sắc đến khả năng học của mạng và đến tính năng của nĩ. Hơn nữa, các vịng lặp phản hồi bao hàm việc sử dụng các nhánh đặc biệt gồm cĩ (adsbygoogle = window.adsbygoogle || []).push({});

các phần tử đơn vị trễ (ký hiệu là z-1), thể hiện một hành vi phi tuyến động

theo thời gian (cùng với giả sử rằng mạng neuron bao gồm các đơn vị phi tuyến).

Số hĩa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/

33 Về cơ bản, ta cĩ thể hiểu mạng nơron là một đồ thị cĩ hướng như hình 1.13. Trong đĩ, các đỉnh của đồ thị là các nơron và các cạnh của đồ thị là các liên kết giữa các nơron.

Hình 1.13 Sơ đồ đồ thị cĩ hướng đơn giản

Vì vậy, để xây dựng một mạng nơron, ta xây dựng một đồ thị cĩ hướng: số đỉnh của đồ thị bằng số nơron trong mạng, giá trị của các cạnh chính là trọng số liên kết nơron.

1.5. Huấn luyện mạng nơron

1.5.1. Phương pháp học

Trong các hệ thống sinh vật, học hỏi được hiểu như những sự thay đổi hĩa học xảy ra ở điểm nối synapte giữa một tế bào này và một tế bào khác. Sự thay đổi đĩ làm mở ra một số cổng ở trên các dendrite-nơi nơron nhận tín hiệu.

Đối với các mạng nơron, học được định nghĩa như sau:

“Học là một quá trình mà trong đĩ các thơng số tự do của mạng nơron được điều chỉnh lại cho phù hợp thơng qua một quá trình kích thích bởi mơi trường”.

Định nghĩa này cĩ nghĩa:

- Mạng nơron được kích thích từ bên ngồi.

x h1 h2 h3 g2 g1 f

Số hĩa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/

34 - Mạng nơron biến chuyển bởi kích thích đĩ.

- Mạng nơron đáp lại bên ngồi một cách khác do những biến chuyển nội bộ. Một mạng nơron được huyấn luyện sao cho với một tập các vector đầu vào X, mạng cĩ khả năng tạo ra tập các vector đầu ra mong muốn T của nĩ. Tập X được sử dụng cho huấn luyện mạng được gọi là tập huấn luyện (training set). Các phần tử x thuộc X được gọi là các mẫu huấn luyện (training example). Quá trình huấn luyện bản chất là sự thay đổi các trọng số liên kết của mạng. Trong quá trình này, các trọng số của mạng sẽ hội tụ dần tới các giá trị sao cho với mỗi vector đầu vào x từ tập huấn luyện, mạng sẽ cho ra vector đầu ra T như mong muốn .

Cĩ ba phương pháp học phổ biến là học cĩ giám sát (supervised learning), học khơng giám sát (unsupervised learning) và học tăng cường (Reinforcement learning).

1.5.1.1. Học cĩ giám sát

Một thành phần khơng thể thiếu của phương pháp này là sự cĩ mặt của một “người thầy” (ở bên ngồi hệ thống). Người thầy này cĩ kiến thức về mơi trường. Điều này được thể hiện qua một tập hợp các cặp đầu vào - đầu ra đã được biết trước. Hệ thống học (ở đây là mạng nơron) sẽ phải tìm cách thay đổi các tham số bên trong của mình (các trọng số và các ngưỡng) để tạo nên một ánh xạ cĩ khả năng ánh xạ các đầu vào thành các đầu ra mong muốn. Sự thay đổi này được tiến hành nhờ việc so sánh giữa đầu ra thực sự và đầu ra mong muốn.[1]

1.5.1.2. Học khơng giám sát

Học khơng giám sát: Là việc học khơng cần cĩ bất kỳ một sự giám sát nào.

Trong bài tốn học khơng giám sát, tập dữ liệu huấn luyện được cho

Số hĩa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/

35 huấn luyện. Nhiệm vụ của thuật tốn là phải phân chia tập dữ liệu D thành các nhĩm con, mỗi nhĩm chứa các vector đầu vào cĩ đặc trưng giống nhau.

Như vậy với học khơng giám sát, số lớp phân loại chưa được biết trước, và tùy theo tiêu chuẩn đánh giá độ tương tự giữa các mẫu mà ta cĩ thể cĩ các lớp phân loại khác nhau. [3]

1.5.1.3. Học tăng cường

Học tăng cường: đơi khi cịn được gọi là học thưởng-phạt (reward- penalty learning), là sự tổ hợp của cả hai mơ hình trên. Phương pháp này cụ thể như sau: với vector đầu vào, quan sát vector đầu ra do mạng tính được. Nếu kết quả được xem là “tốt” thì mạng sẽ được thưởng theo nghĩa tăng các trọng số kết nối lên; ngược lại mạng sẽ bị phạt, các trọng số kết nối khơng thích hợp sẽ được giảm xuống. Do đĩ học tăng cường là học theo nhà phê bình (critic), ngược với học cĩ giám sát là học theo thầy giáo (teacher) [11],[3]

1.5.2. Thuật tốn học

Thuật tốn học của mạng nơron được thực hiện theo các bước sau: (adsbygoogle = window.adsbygoogle || []).push({});

- Bước 1: Xây dựng cấu trúc thích hợp cho mạng nơron, chẳng hạn cĩ (n + 1) nơron vào (n nơron cho biến vào và 1 nơron cho ngưỡng x0), m nơron đầu ra, và khởi tạo các trọng số liên kết của mạng.

- Bước 2: Đưa một vector x trong tập mẫu huấn luyện X vào mạng - Bước 3: Tính vector đầu ra o của mạng.

- Bước 4: So sánh vector đầu ra mong muốn t (là kết quả được cho trong tập huấn luyện) với vector đầu ra o do mạng tạo ra; nếu cĩ thể thì đánh giá lỗi.

- Bước 5: Hiệu chỉnh các trọng số liên kết theo một cách nào đĩ sao cho ở lần tiếp theo khi đưa vector x vào mạng, vector đầu ra o sẽ giống với y hơn. - Bước 6: Nếu cần, lặp lại các bước từ 2 đến 5 cho tới khi mạng đạt tới trạng thái hội tụ.

Số hĩa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/

36 Việc đánh giá lỗi cĩ thể thực hiện theo nhiều cách, cách dùng nhiều nhất là sử dụng lỗi tức thời :

Err = (o- t) hoặc Err = |o- t| (1.7)

Trong đĩ: - o là vector đầu ra của mạng - t là vector đầu ra mong muốn

Lỗi trung bình bình phương (MSE: mean-square error):

Err = (o-t)2/2 (1.8)

Thuật tốn tổng quát ở trên cho học cĩ giám sát trong các mạng nơron cĩ nhiều cài đặt khác nhau, sự khác nhau chủ yếu là cách các trọng số liên kết được thay đổi trong suốt thời gian học. Trong đĩ tiêu biểu nhất là thuật tốn lan truyền ngược.

1.6. Thu thập dữ liệu cho mạng nơron

Một khi ta quyết định giải quyết một vấn đề sử dụng mạng nơron ta cần phải thu thập dữ liệu cho mục tiêu huấn luyện. Tập hợp dữ liệu huấn luyện bao gồm một số trường hợp, mỗi trường hợp chứa những giá trị của đầu vào và đầu ra khác nhau.

Sự lựa chọn do trực giác và kinh nghiệm quyết định. Cơng việc chuyên mơn của ta trong lĩnh vực cần giải quyết sẽ cho ta những ý tưởng về các biến đầu vào phù hợp. Trong những mạng nơron ta cĩ thể chọn và loại bỏ nhiều biến và mạng nơron cũng cĩ thể xác định bằng quá trình thực nghiệm. Trong một bước ta nên tính đến bất kỳ biến nào mà ta nghĩ cĩ ảnh hưởng đến quá trình thiết kế.

Những mạng nơron xử lý dữ liệu số trong một tầm giới hạn rõ ràng. Điều này đưa ra một vấn đề, nếu dữ liệu nằm trọng một vùng đặc biệt như dữ liệu chưa biết hay khơng phải dữ liệu số. Do đĩ phải cĩ những phương pháp xử lý thích hợp, chẳng hạn. Dữ liệu số được chia nhỏ thành những khoảng thích

Số hĩa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/

37 hợp cho mạng và những giá trị thiếu cĩ thể thay thế bằng giá trị trung bình hay giá trị thống kê của biến đĩ thơng qua những biến khác đã được huấn luyện.

Xử lý dữ liệu khơng phải số thì khĩ hơn. Loại dữ liệu khơng phải là số thơng thường nhất là những biến cĩ giá trị định danh như giới tính (nam, nữ). Biến định danh cĩ thể biểu diễn bằng số học và mạng nơron cĩ chức năng hỗ trợ điều này. Tuy nhiên, mạng nơron làm việc tốt với những trường hợp biến định danh là một tập nhiều giá trị.

Số lượng mẫu dùng để huấn luyện mạng rất khĩ xác định. Đã cĩ một vài hướng dẫn về mối liên hệ giữa số lượng mẫu với kích thước mạng (cách đơn giản nhất là số lượng mẫu gấp 10 lần số kết nối trong mạng). Thực ra số lượng mẫu cũng cĩ liên quan đến độ phức tạp của hàm mà mạng phải học. Khi số biến tăng lên, số lượng mẫu cần huấn luyện cũng tăng phi tuyến, vì thế với số các biến nhỏ (50 hoặc nhỏ hơn) thì lại cần một số lớn các trường hợp mẫu.

Trong hầu hết các vấn đề trong thực tế, số lượng mẫu là khoảng hàng trăm hay hàng nghìn mẫu. Đối với những vấn đề rất phức tạp thì cần nhiều hơn, nhưng trường hợp này rất ít. Nếu dữ liệu huấn luyện ít hơn, rõ ràng khơng đủ thơng tin để huấn luyện mạng, và cách tốt nhất là dùng mạng tuyến tính. Nhiều vấn đề trong thực tế cĩ dữ liệu khơng đáng tin cậy, một vài dữ liệu bị phá hỏng do liệu do nhiễu, hoặc các giá trị khơng phối hợp đựợc với nhau. Mạng nơron cĩ khả năng đặc biệt xử lý dữ liệu bị mất (sử dụng giá trị trung bình hay các những giá trị thống kê khác). Mạng nơron cũng chịu được nhiễu, nhưng cũng phải cĩ giới hạn. Nếu thỉnh thoảng cĩ giá trị nằm xa ra khỏi vùng giá trị bình thường thì mạng huấn luyện phải cĩ ngưỡng. Cách tốt nhất đối với trường hợp này là nhận ra và loại bỏ những giá trị nằm xa đĩ (cĩ thể hủy trường hợp này hoặc xem giá trị nằm xa này là giá trị bị mất). Nếu giá trị này khĩ nhận ra, mạng nơron cĩ chức năng huấn luyện chịu được giá trị

Số hĩa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/

38 nằm khỏi vùng này nhưng huấn luyện này thường kém hiệu quả hơn là huấn luyện chuẩn.

Tĩm lại cách thu thập dữ liệu cĩ thể nĩi gọn lại như sau:

- Chọn những giá trị huấn luyện cĩ tác dụng.

- Dữ liệu số và biến cĩ giá trị định danh cĩ thể xử lý trực tiếp bằng

mạng nơron. Chuyển những loại biến khác sang một trong các dạng này.

- Cần hàng trăm hoặc hàng ngàn trường hợp mẫu huấn luyện; càng

nhiều biến thì càng nhiều mẫu huấn luyện. Mạng nơron cĩ khả năng nhận ra những biến hữu dụng để huấn luyện.

1.7. Biểu diễn tri thức cho mạng nơron

Chúng ta cĩ thể đưa ra định nghĩa về tri thức như sau: (adsbygoogle = window.adsbygoogle || []).push({});

Tri thức chính là thơng tin được lưu trữ hay các mơ hình được con người và máy mĩc sử dụng để biểu diễn thế giới thực, phán đốn về thế giới và cĩ những đáp ứng phù hợp với thế giới bên ngồi.

Các đặc tính cơ bản biểu diễn tri thức là:

- Thơng tin gì thực sự được biểu diễn.

- Làm thế nào thơng tin được mã hĩa một cách vật lý cho việc sử dụng

sau này.

Trong các ứng dụng thực tế của các máy tính thơng minh, cĩ thể nĩi rằng một giải pháp tốt phụ thuộc vào một biến tri thức tốt. Điều đĩ cũng đúng với các mạng nơron, một lớp đặc biệt của các máy thơng minh. Tuy nhiên, các dạng biểu diễn cĩ thể từ các đầu vào thành các tham số bên trong của mạng là rất đa dạng, và cĩ khuynh hướng là cho việc tìm ra một giải pháp thích hợp nhằm biểu diễn tri thức bằng phương tiện mạng nơron trở nên một sự thách thức về thiết kế.

Một phần của tài liệu Ứng dụng mạng Neural trong phân loại thư rác (Trang 28)