Mạng thần kinh nhân tạo đưa ra dự đoán như thế nào?

RESEARCH CREW
11:12 03/02/2020

Gần đây, mạng thần kinh nhân tạo (neural network) nhận được nhiều sự quan tâm từ giới nghiên cứu cũng như công chúng yêu công nghệ. Các mô hình này là một hệ thống tính toán có các nút (node) liên kết với nhau và hoạt động tương tự như chức năng của bộ não người. Những hệ thống này phân loại, gom cụm một lượng dữ liệu lớn bằng cách tìm và xác định các loại hình mẫu (pattern) nhằm giải quyết các vấn đề trong một bài toán phức tạp, ví dụ đưa ra dự đoán khó nhằn từ những dữ liệu đưa vào. Trong đó, một đặc điểm không thể không nhắc đến là nó có khả năng không bao giờ ngừng việc học để đưa ra các dự đoán. Vậy làm cách nào mà mạng nơ-ron lại có thể đưa ra phán đoán của mình? Thí dụ như phân biệt đâu là dấu hiệu của một cuộc tấn công, xâm nhập hay một loại mã độc nguy hại cho hệ thống?

Để có thể hiểu được mạng neurons là gì thì ta phải bắt đầu tìm hiểu từ 1 neuron nhân tạo được gọi là perceptron. Perceptrons được phát triển vào khoảng những năm 1950 – 1960 bởi nhà khoa học Frank Rosenblatt và được lấy cảm hứng từ những ý tưởng trước đó của Warren McCulloch và Walter Pitts.

Perceptron sẽ nhận input đầu vào là nhiều tín hiệu khác nhau, output là 1 tín hiệu duy nhất. "Tín hiệu" ở đây bạn có thể tưởng tượng như một vật nào đó có dòng chảy như dòng điện hay sông chẳng hạn. Dòng điện thì sẽ được truyền đi theo đường dây, việc dòng điện được truyền đi có bản chất là dòng dịch chuyển các electron dựa trên sự chênh lệch hiệu điện thế. Khác với dòng điện, tín hiệu của Perceptron mang 2 giá trị "1/0", 1 mang ý nghĩa là truyền tín hiệu, 0 là không truyền tín hiệu.

Trong kiến trúc của mạng thần kinh nhân tạo, thành phần cốt lõi chính là các perceptron. Lí do cho việc này chính là mạng neural cần chia nhỏ các dữ liệu đầu vào phức tạp thành các mẫu nhỏ hơn, đơn giản hơn. Giả sử, chúng ta có một tấm ảnh chân dung , thì chúng ta phân nhỏ các thành phần của tấm ảnh ra với các đặc điểm của: mắt, mũi, màu mắt, miệng, tai,.... Mỗi một đặc điểm mang tính đặc trưng này có thể đóng vai trò như là một perceptron trong cùng một lớp (layer). Ở lớp tiếp sau nó, những đặc điểm này lại được phân nhỏ thành các đặc tính nhỏ, chi tiết hơn nữa. Thí dụ, mắt trái và mắt phải, môi trên hay môi dưới; sau đó chúng được phân nhỏ tiếp tục ở lớp kế cận phía sau như con ngươi và mống mắt, hoặc lông mi. Mỗi một trong những đặc điểm này có thể là một tri giác (perceptron), và sau khi chia nó thành các đặc điểm nhỏ nhất, khi đó chúng ta sẽ có các khối cấu tạo của khuôn mặt.

 

Hình - Mạng thần kinh nhân tạo được cấu tạo bởi nhiều neuron (perceptron)

Trong ví dụ này, bài toán phân loại hình ảnh sẽ được sử dụng để giải thích và mô tả cụ thể hơn về cách một mạng lưới thần kinh đưa ra dự đoán. Một mạng lưới thần kinh có thể bắt đầu bằng cách chụp ảnh khuôn mặt và chia nhỏ nó thành các đặc tính nhất định, và xây dựng lại nó bằng cách truyền đạt với lớp tiếp theo nếu các tính năng đó ở đó. Cuối cùng, tùy thuộc vào số lượng thuộc tính được truyền vào, mạng lưới thần kinh có thể đưa ra dự đoán bằng cách cho biết có bao nhiêu đặc tính mà nó nhìn thấy so với số lượng tính năng tạo nên khuôn mặt. Nếu hầu hết các đặc tính được nhìn thấy, thì nó sẽ phân loại bức ảnh đó là một khuôn mặt. Mặt khác, nó sẽ được phân loại là không phải một khuôn mặt (chú ý làm thế nào nó không được phân loại là một cái gì đó khác, nó là một khuôn mặt hoặc không phải là một khuôn mặt, đúng hay sai).

Cần chú ý rằng, một tri giác (perceptron) và một nơron không giống nhau. Mặc dù chúng dường như khá giống nhau, một nơron khác với một perceptron. Perceptron là một đơn vị có đầu vào có trọng số (weight) và độ lệch (bias), và tạo ra đầu ra nhị phân (giá trị 0 hoặc 1). Tế bào thần kinh nhân tạo (ở đây là 1 nơ-ron) chính là sự khái quát, trừu tượng hóa của một tri giác trong mạng lưới thần kinh nhân tạo. Một nơ-ron vẫn nhận đầu vào có trọng số và độ bias nhưng nó khác với perceptron ở chỗ: nó tạo ra đầu ra có giá trị được phân loại từ 0 đến 1 (tức giá trị trong khoảng từ 0 đến 1). Lưu ý rằng các nút được thiên vị (bias) để chọn giá trị cực gần 0 hoặc gần 1 bằng cách sử dụng 1 hàm đặc biệt gọi là hàm kích hoạt sigmoid (đầu ra), cho phép nó hoạt động rất giống như một perceptron.

Tóm lại, một mạng lưới thần kinh nhân tạo (hay mạng nơ-ron) là một ý tưởng rất đơn giản, nhưng các mạng này với kích thước lớn có thể tạo ra kết quả đáng kinh ngạc. Mỗi nơ-ron chịu trách nhiệm phân loại một tính năng duy nhất và dựa vào nơ-ron trước đó để thực hiện đúng công việc của mình nhằm đưa ra quyết định chính xác. Tương tự như với bất kỳ đội nhóm xuất sắc nào đó, mạng nơ-ron nhân tạo thành công nhờ vào việc coi trọng, sự tin tưởng và tinh thần đồng đội để cung cấp sức mạnh nhằm giải quyết vấn đề.

 

Lược dịch & tham khảo: Gerry Saporito

TIN LIÊN QUAN
Federated Learning (FL): Khái niệm Các mô hình ML/DL truyền thống thường yêu cầu dữ liệu gốc của người dùng được gửi lên một server trung tâm để train tập trung, điều này gây ảnh hưởng đến quyền riêng tư (privacy). Do đó, các mô hình hiện nay thường sử...
Chào các bạn yêu thích nghiên cứu và công nghệ thông tin! Sau sự thành công của WannaResearch Episode 06, chúng tôi xin trân trọng thông báo về sự trở lại của chuỗi sự kiện nghiên cứu uy tín với Episode 07: "Audio Deepfake Detection." Buổi seminar này sẽ mang...
💨 SẮP TỚI CNSC CÓ GÌ? 🔥 KHOÁ HỌC LẬP TRÌNH PYTHON đã có mặt tại CNSC !!! 💼 Và đặc biệt hơn những ưu đãi vô cùng hấp dẫn cho “người nhà” các bạn SINH VIÊN UIT, các bạn đã sẵn sàng sắm ngay chứng chỉ này cho mình...