PyTorch - Kiến thức cơ bản về mạng thần kinh
Nguyên tắc chính của mạng nơ-ron bao gồm một tập hợp các phần tử cơ bản, tức là nơ-ron nhân tạo hoặc nơ-ron cảm thụ. Nó bao gồm một số đầu vào cơ bản như x1, x2… .. xn tạo ra đầu ra nhị phân nếu tổng lớn hơn tiềm năng kích hoạt.
Biểu diễn sơ đồ của nơron mẫu được đề cập dưới đây:
Đầu ra được tạo ra có thể được coi là tổng có trọng số với tiềm năng kích hoạt hoặc độ lệch.
$$ Đầu ra = \ sum_jw_jx_j + Bias $$
Kiến trúc mạng nơ-ron điển hình được mô tả dưới đây:
Các lớp giữa đầu vào và đầu ra được gọi là các lớp ẩn, mật độ và kiểu kết nối giữa các lớp là cấu hình. Ví dụ, một cấu hình được kết nối đầy đủ có tất cả các tế bào thần kinh của lớp L được kết nối với các tế bào thần kinh của L + 1. Để bản địa hóa rõ ràng hơn, chúng ta chỉ có thể kết nối một vùng lân cận cục bộ, chẳng hạn như chín tế bào thần kinh, với lớp tiếp theo. Hình 1-9 minh họa hai lớp ẩn với các kết nối dày đặc.
Các loại mạng nơ-ron khác nhau như sau:
Mạng Nơ-ron chuyển tiếp
Mạng nơron truyền thẳng bao gồm các đơn vị cơ bản của họ mạng nơron. Sự di chuyển của dữ liệu trong kiểu mạng nơ-ron này là từ lớp đầu vào đến lớp đầu ra, thông qua các lớp ẩn hiện tại. Đầu ra của một lớp đóng vai trò là lớp đầu vào với các hạn chế đối với bất kỳ loại vòng lặp nào trong kiến trúc mạng.
Mạng thần kinh tái diễn
Mạng thần kinh tái diễn là khi mẫu dữ liệu thay đổi do đó trong một khoảng thời gian. Trong RNN, cùng một lớp được áp dụng để chấp nhận các tham số đầu vào và hiển thị các tham số đầu ra trong mạng nơ-ron được chỉ định.
Mạng nơ-ron có thể được xây dựng bằng gói torch.nn.
Nó là một mạng chuyển tiếp đơn giản. Nó lấy đầu vào, nạp lần lượt qua nhiều lớp, rồi cuối cùng đưa ra đầu ra.
Với sự trợ giúp của PyTorch, chúng ta có thể sử dụng các bước sau cho quy trình đào tạo điển hình cho mạng nơron:
- Xác định mạng nơ-ron có một số tham số (hoặc trọng số) có thể học được.
- Lặp lại tập dữ liệu đầu vào.
- Xử lý đầu vào thông qua mạng.
- Tính toán tổn thất (kết quả đầu ra chính xác đến đâu).
- Truyền chuyển màu trở lại các tham số của mạng.
- Cập nhật trọng số của mạng, thường sử dụng một bản cập nhật đơn giản như dưới đây
rule: weight = weight -learning_rate * gradient