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

Một phần của tài liệu Trình bày các cơ sở lý thuyết và thuật toán dùng mạng nơron vào pháthiện khuôn mặt người trong ảnh số (Trang 67 - 74)

Có hai loại huấn luyện sử dụng trong mạng nơron là huấn luyện giám sátkhông giám sát. Với những loại mạng khác nhau thì sử dụng các loại huấn luyện khác nhau. Huấn luyện có giám sát sử dụng thông dụng nhất.

Trong việc học có giám sát, người sử dụng mạng phải có một tập hợp dữ liệu cần huấn luyện. Tập hợp này chứa những ngõ vào mẫu với ngõ ra

tương ứng và mạng sẽ huấn luyện để đưa ra mối liên hệ giữa ngõ ra ngõ vào. Tập hợp dữ liệu thường được lấy từ những bản ghi chép trước đó.

Mạng nơron sau đó được huấn luyện bằng một trong các thuật toán học

có giám sát (ví dụ backpropagation – lan truyền ngược), sử dụng các dữ liệu để điều chỉnh trọng sốngưỡng của mạng sao cho cực tiểu hóa sai số trong việc dự báo của mạng trên tập huấn luyện. Nếu mạng được huấn luyện chính xác, nghĩa là nó đã học mô phỏng một hàm chưa biết với mối liên hệ giữa ngõ ra

ngõ vào, do đó với các tín hiệu vào đến sau, mạng sẽ dự báo tín hiệu ra tương ứng.

5. Thu thập dữ liệu huấn luyện 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ố các trường hợp, mỗi trường hợp chứa những giá trị của tầm ngõ vàongõ ra khác nhau. Những việc đầu tiên cần làm là: những biến nào sử dụng, bao nhiêu trường hợp cần thu thập.

Sự lựa chọn các biến do trực giác quyết định. Kiến thức chuyên môn của ta trong lĩnh vực cần giải quyết sẽ giúp ta những ý tưởng về các biến ngõ vào phù hợp.

Phụ lục B: CƠ SỞ LÝ THUYẾT CỦA MẠNG NƠRON NHÂN TẠO

Một nơron nhân tạo là một đơn vị tính toán hay đơn vị xử lý thông tin cơ sở cho hoạt động của một mạng nơron. Chúng ta xác định ba thành phần cơ bản là các phần tử xử lý, kiến trúc mạng và việc huấn luyện mạng.

1. Phần tử xử lý

Một mạng nơron nhân tạo được kết nối bằng nhiều thân nơron, mỗi nơron là một phần tử xử lý. Mỗi phần tử xử lý này có nhiều ngõ vào và một ngõ ra. Để kết hợp các ngõ vào của phần tử xử lý thứ i ta dùng một hàm tổng hợp fi

có chức năng tổng hợp tất cả thông tin từ các nguồn bên ngoài hoặc từ nhiều

phần tử xử lý khác gửi đến và để kết hợp thành ngõ ra của mỗi phần tử xử lý

thứ i ta có một hàm tác động hay còn gọi là hàm truyền.

1.1 Hàm tổng hợp

Nếu xj là ngõ vào từ môi truờng bên ngoài, wijtrọng số kết nối giữa

xj và phần tử xử lý thứ i, bi là giá trị ngưỡng của phần tử xử lý thứ i, thì hàm tổng hợp fiđể kết hợp tất cả các thông tin từ các ngõ vào của phần tử xử lý thứ i

có thể được định nghĩa một trong các dạng sau: Hàm tổng hợp tuyến tính: ∑ = + = n j i j ij i w x b f 1 (1) Hàm tổng hợp tuyến tính bình phương: ∑ = + = n j i j ij i w x b f 1 2 (2)

1.2 Hàm tác động (phát động)

Kết hợp ngõ ra của phần tử xử lý thứ i là một hàm tác động hay còn gọi là hàm truyền. Hàm này giới hạn phạm vi biên độ cho phép của tín hiệu ngõ ra

trong một khoảng giá trị hữu hạn. Hệ số hiệu chỉnh bi có tác dụng tăng lên hay

giảm đi ngõvào thực của hàm tác động tùy theo nó dương hay âm.

Các hàm tác động phải có các đặc tính sau:

Hàm bị chặn trên và chặn dưới

Hàm có tính đơn điệu

Hàm phải có tính liên tục và trơn Các loại hàm tác động thường dùng:

Hàm Threshold hay còn gọi là Hardlimit (hàm nấc): (3) Khỏang trả về: [0, 1] Hàm nén đơn cực sigmoid: (4) (4) Khỏang trả về: [0, 1] Đồ thị như sau: Đồ thị như sau: 1, nếu x>=0 f(x) 0, nếu x<0 1 f(x) = 1 + e -λf

Hàm nén lưỡng cựcBipolarSigmoid: (5) (5)

Khỏang trả về: [-1, 1]

- Hàm Harlimit ánh xạ bất kỳ giá trị nào từ (-∞,+∞) vào tập có hai giá trị {0,1}, do vậy nó thích hợp cho các mạng thực hiện chức năng phân loại (multilayer perceptron-MLP).

- Các hàm SigmoidBipolarSigmoid, còn được gọi là các hàm nén, ánh xạ bất kỳ giá trị nào từ (-∞,+∞) vào các khoảng [0,1] và [-1,1] tương ứng.

2. Kiến trúc mạng nơron nhân tạo

Thành phần quan trọng thứ hai của mạng nơron nhân tạo đó là kiến trúc mạng. Kiến trúc mạng nơron nhân tạo có thể chia làm hai loại đó là mạng truyền thẳngmạng truyền lùi.

Mạng truyền thẳng (feedforward network): là mạng được xây dựng bằng cách ngõ ra của nơron ở lớp đứng trước chính là ngõ vào

của các nơron ở lớp đứng sau nó.

Mạng truyền lùi (feedback network): là mạng được xây dựng có các ngõ ra được định hướng lùi về làm các ngõ vào cho các nơron ở cùng lớp hoặc ở lớp đứng trước nó.

Các nơron của mạng được phân bố trên các lớp đan xen nhau. Mỗi mạng nơron có một lớp nhập, không có hoặc có nhiều lớp ẩn và một lớp xuất.

Số lượng ngõ vào của một mạng nơron bằng với số biến độc lập, số ngõ ra của mạng tùy thuộc vào bài toán và sẽ xác định số nơron trong lớp xuất. Mạng càng nhiều lớp ẩn cũng như càng nhiều nơron trong mỗi lớp ẩn thì mạng càng có khả năng xấp xỉ các hàm phức tạp. Trong phạm vi của đồ án này chúng tôi chỉ xét tới mạng nơron truyền thẳng.

Đồ thị như sau:

2

f(x) = -1 1 + e -λf

2.1 Mạng truyền thẳng đơn mức

Hình 0.4. Mô hình mạng truyền thẳng đơn mức

Đơn mức” tức là chỉ có một mức, chính là mức ngõ ra gồm các nút tính toán (các nơron). Đây là dạng mạng đơn giản nhất, hình 4 gồm có lớp các nơron ngõ vào, lớp các nơron ngõ ra và không có lớp nơron ẩn.

2.2 Mạng truyền thẳng đa mức

Mạng gồm ba lớp: lớp nhập (input), các lớp ẩn (hidden) và lớp xuất

(output).

• Mỗi nút trong lớp nhập nhận một giá trị biến độc lập và chuyển vào mạng. Dữ liệu từ tất cả các nút trong lớp nhập được

tích hợp (tổng trọng hóa) và chuyển kết quả cho các nút trong lớp

ẩn.

• Lớp thứ hai của mạng gồm một hay nhiều lớp ẩn, mà các nút tính toán của chúng được gọi là các nơron ẩn hay đơn vị ẩn. Thuật ngữ “ẩn” mang ý nghĩa không tiếp xúc với môi trường bên ngoài. Các nút trong lớp này chỉ liên lạc với các nút trong lớp

nhậpxuất.

• Các nút trong lớp xuất cũng nhận tín hiệu tổng trọng hóa từ các nút ẩn. Giá trị của các nút xuất chính là giá trị thực cần xác định cho bài toán.

x1 x2 xn y1 y2 yn Nhập Xuất

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

của chúng là các tín hiệu ngõra của mức đứng liền trước nó.

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

Hình 2.2 cho ta thấy rằng mô hình của mạng truyền thẳng nhiều lớp gồm có các nơron ngõ vào, các lớp ẩn và lớp các nơron ngõ ra. Ngõ ra của nơron đứng trước chính là ngõvào của các nơron ở lớp đứng sau.

Một phần của tài liệu Trình bày các cơ sở lý thuyết và thuật toán dùng mạng nơron vào pháthiện khuôn mặt người trong ảnh số (Trang 67 - 74)

Tải bản đầy đủ (DOC)

(91 trang)
w