Perceptron là một thuật toán cho học giám sát của các phân loại nhị phân: Một hàm mà các x đầu vào của nó (một vector giá trị thực) đến một giá trị đầu ra f (x) (một giá trị nhị phân duy nhất).
trong đó: w là vector trọng số, w.x là tổng trọng số, và b là “hệ số hiệu chỉnh” liên tục mà không phụ thuộc vào bất kỳ giá trị đầu vào.
Các giá trị của f(x) là 0 hoặc 1 được sử dụng để phân loại như x hoặc là tích cực hay tiêu cực.
Các bước của thuật toán:
Bước 1: Khởi tạo w, b, x, hàm truyền hardlim. Bước 2: Với các mẫu học x, tính được w.x b n
+ Nếu n 0 thì sử dụng hàm truyền hardlim(n) được f(x) = 1 + Nếu n 0 thì sử dụng hàm truyền hardlim(n) được f(x) = 0
1 nÕu w.x + b 0 f(x) = 0 nÕu w.x + b < 0 (2.1)
19 Bước 3: Kết quả
Nếu f(x) = 1 thì sẽ có phân loại tích cực và cho kết luận cụ thể với từng bài toán.
Nếu f(x) = 0 thì sẽ có phân loại tiêu cực và cho kết luận cụ thể với từng bài toán.
Kết luận: Đưa ra lý do cho quá trình sử dụng thuật toán.
Một ví dụ: Trong phân loại nhị phân, nếu b là âm thì sự kết hợp có trọng số của đầu vào phải tạo ra một giá trị dương lớn hơn |b| để đẩy các mạng nơron phân loại trên ngưỡng 0.
Ví dụ về mặt không gian, hệ số hiệu chỉnh làm thay đổi vị trí (mặc dù không phải là định hướng) của ranh giới quyết định. Thuật toán perceptron không phải là tuyến tính thì các vectơ sẽ không bao giờ đạt đến một điểm mà tất cả các vector được phân loại đúng. Ví dụ thuật toán perceptron không có khả năng để giải quyết vấn đề với vectơ tuyến tính. Các không gian giải pháp của ranh giới quyết định cho tất cả các hàm nhị phân.
Trong các mạng nơron, perceptron là một mạng nơron nhân tạo bằng cách sử dụng chức năng là hàm kích hoạt. Thuật toán perceptron gồm có perceptron một lớp và perceptron nhiều lớp.