1. Mạng thần kinh nhân tạo là gì?
Mạng thần kinh nhân tạo (Artificial Neural Network – ANN) là một hệ thống phần cứng và phần mềm có kiến trúc được thiết lập dựa trên hoạt động của hệ thống nơ-ron thần kinh trong não người. ANN còn được gọi là mạng lưới thần kinh nhân tạo hay mạng nơ-ron nhân tạo, là một loạt công nghệ học sâu (deep learning) được hỗ trợ bởi trí tuệ nhân tạo (AI).
Các ứng dụng của công nghệ này thường tập trung vào việc xử lý các loại tín hiệu phức tạp hoặc nhận dạng mẫu. Ví dụ như nhận dạng chữ viết tay để xử lý séc ngân hàng, chuyển giọng nói thành văn bản, phân tích dữ liệu thăm dò dầu khí, dự đoán thời tiết và nhận dạng khuôn mặt.
Lịch sử của mạng thần kinh nhân tạo bắt nguồn từ những ngày đầu của ngành khoa học máy tính. Năm 1943, các nhà toán học Warren McCulloch và Walter Pitts đã xây dựng một hệ thống mạch điện mô phỏng theo gần đúng hoạt động của bộ não con người để chạy các thuật toán đơn giản.
Cho đến khoảng năm 2010, các nghiên cứu về lĩnh vực này mới được tiếp tục. Xu hướng dữ liệu lớn, nơi các công ty tích lũy vô số dữ liệu và tính toán song song đã cung cấp cho các nhà khoa học dữ liệu đào tạo và tài nguyên máy tính cần thiết để chạy các mạng thần kinh nhân tạo phức tạp. Vào năm 2012, ANN đã có thể đánh bại hiệu suất của con người trong việc nhận dạng hình ảnh trong cuộc thi ImageNet. Kể từ đó, sự quan tâm đến mạng thần kinh nhân tạo đã tăng vọt và công nghệ tiếp tục được cải thiện.
2. Nguyên lý hoạt động của mạng thần kinh nhân tạo
Một ANN thường bao gồm một số lượng lớn các bộ xử lý hoạt động song song và được sắp xếp theo từng cấp. Tầng đầu tiên nhận thông tin đầu vào dạng thô – tương tự như các dây thần kinh thị giác trong quá trình xử lý thị giác của con người. Mỗi tầng kế tiếp nhận đầu ra từ tầng trước nó, giống như cách mà các tế bào thần kinh ở xa dây thần kinh thị giác nhận tín hiệu từ những tế bào ở gần nó hơn. Tầng cuối cùng tạo ra đầu ra của hệ thống.
Mỗi nút xử lý có phạm vi kiến thức nhỏ của riêng nút đó, bao gồm những gì nó đã nhận diện và tất cả các quy tắc mà nó được lập trình hoặc phát triển từ lúc khởi tạo. Các tầng có tính liên kết mật thiết với nhau, có nghĩa là mỗi nút ở tầng n sẽ được kết nối với nhiều nút ở tầng n-1 (cung cấp dữ liệu đầu vào cho nó) và ở tầng n + 1. Có thể có một hoặc nhiều nút trong lớp đầu ra, từ đó có thể đọc được câu trả lời mà nó tạo ra.

Mô tả nguyên lý của mạng thần kinh nhân tạo.
Mạng thần kinh nhân tạo có nhiều giá trị sử dụng vì có tính thích nghi cao, có nghĩa là chúng tự sửa đổi khi học thêm dữ liệu từ lần khởi chạy đầu tiên cho đến các lần chạy sau này. Mô hình học tập cơ bản nhất tập trung vào việc xác định giá trị dữ liệu từ các luồng đầu vào, đó là cách mỗi nút đánh giá tầm quan trọng của dữ liệu đầu vào từ mỗi nút trước đó. Đầu vào góp phần đưa ra câu trả lời đúng sẽ có độ ưu tiên cao hơn.
3. Mạng thần kinh nhân tạo học như thế nào?
Thông thường, ANN ban đầu được huấn luyện hoặc cung cấp một lượng lớn dữ liệu. Đào tạo bao gồm việc cung cấp đầu vào và thông báo cho mạng kết quả đầu ra. Ví dụ: Để xây dựng một hệ thống nhận dạng khuôn mặt của các diễn viên, đào tạo ban đầu có thể là một loạt các tấm ảnh, bao gồm cả những người là diễn viên, không phải diễn viên, mặt nạ, tượng và khuôn mặt động vật. Mỗi đầu vào đi kèm với nhận dạng phù hợp, chẳng hạn như tên của các diễn viên hoặc thông tin “không phải diễn viên” hoặc “không phải con người”. Việc cung cấp câu trả lời cho phép mô hình điều chỉnh mức độ ưu tiên nội bộ của nó để tìm hiểu cách thực hiện công việc của mình tốt hơn.
Ví dụ: Nếu các nút A, B và C nói với nút E rằng hình ảnh đầu vào hiện tại là hình ảnh của Trấn Thành, nhưng nút D lại nói đó là hình ảnh của Trường Giang và chương trình đào tạo xác nhận đó là Trấn Thành, thì nút E sẽ giảm mức độ ưu tiên mà nó gán cho nút D và tăng độ ưu tiên của các nút A, B, C.
Trong việc xác định các quy tắc và đưa ra quyết định – nghĩa là quyết định của mỗi nút về việc gửi cái gì đến tầng tiếp theo dựa trên các đầu vào từ các mạng thần kinh tầng trước sử dụng một số nguyên tắc. Chúng bao gồm đào tạo dựa trên độ dốc (gradient-based training), logic mờ (fuzzy logic), thuật toán di truyền và phương pháp Bayes. Chúng có thể được cung cấp một số quy tắc cơ bản về mối quan hệ đối tượng trong dữ liệu đang được mô hình hóa.
Ví dụ: Một hệ thống nhận dạng khuôn mặt có thể được hướng dẫn, “Lông mày được tìm thấy ở trên mắt” hoặc “Bộ ria mép ở dưới mũi. Bộ ria mép ở phía trên và bên cạnh miệng”. Các quy tắc trước có thể giúp quá trình đào tạo nhanh hơn và làm cho mô hình trở nên mạnh mẽ hơn trong thời gian sớm hơn. Nhưng nó cũng được xây dựng dựa trên các giả định về bản chất của vấn đề, có thể chứng minh là không liên quan và vô ích hoặc không chính xác và phản tác dụng, khiến việc đưa ra quyết định về những quy tắc nào, nếu có, là rất quan trọng.
Hơn nữa, những giả định mà mọi người đưa ra khi huấn luyện các thuật toán khiến mạng thần kinh nhân tạo khuếch đại các vấn đề. Những tập dữ liệu sai là một thách thức liên tục trong các hệ thống đào tạo tự tìm câu trả lời bằng cách nhận ra các mẫu trong dữ liệu. Nếu dữ liệu cung cấp cho thuật toán không chính xác – hoặc không có dữ liệu thì máy sẽ truyền đi sự sai lệch.
4. Phân loại các mạng thần kinh nhân tạo
Mạng thần kinh nhân tạo đôi khi được mô tả theo độ sâu của chúng, bao gồm số lớp chúng có giữa đầu vào và đầu ra, hoặc thậm chí là các lớp ẩn của mô hình. Đây là lý do tại sao thuật ngữ mạng thần kinh nhân tạo được sử dụng gần như đồng nghĩa với học sâu (deep learning). Chúng cũng có thể được mô tả bằng số lượng nút ẩn mà mô hình có hoặc theo số lượng đầu vào và đầu ra mà mỗi nút có. Các biến thể trong thiết kế mạng thần kinh nhân tạo cổ điển cho phép nhiều hình thức truyền thông tin về phía trước và phía sau giữa các tầng.
Các loại mạng nơ-ron nhân tạo cụ thể bao gồm:
- Mạng thần kinh nhân tạo chuyển tiếp (Feed-forward Neural Networks): Một trong những biến thể đơn giản nhất của ANN. Chúng truyền thông tin theo một hướng, qua các nút đầu vào khác nhau, cho đến khi nó đến được nút đầu ra. Mạng có thể có hoặc không có các lớp nút ẩn, làm cho chức năng của chúng dễ hiểu hơn. Loại mô hình ANN này được sử dụng trong các công nghệ như nhận dạng khuôn mặt và thị giác máy tính.
- Mạng thần kinh nhân tạo tuần hoàn (Recurrent Neural Networks – RNN): Mô hình này phức tạp hơn khi lưu kết quả đầu ra của các nút xử lý và đưa kết quả trở lại mô hình. Đây là cách mô hình được cho là học cách dự đoán kết quả của một lớp. Mỗi nút trong mô hình RNN hoạt động như một ô nhớ, tiếp tục tính toán và thực hiện các hoạt động. RNN bắt đầu với sự lan truyền phía trước giống như mạng chuyển tiếp, nhưng sau đó tiếp tục ghi nhớ tất cả thông tin đã xử lý để sử dụng lại trong tương lai. Nếu dự đoán của mạng không chính xác, thì hệ thống sẽ tự học và tiếp tục làm việc để hướng tới dự đoán chính xác trong quá trình nhân giống ngược. Loại ANN này thường được sử dụng trong chuyển đổi văn bản thành giọng nói.
- Mạng thần kinh nhân tạo chuyển đổi (Convolutional Neural Networks – CNN): Đây là một trong những mô hình phổ biến nhất được sử dụng hiện nay. Mô hình này sử dụng một biến thể của perceptrons nhiều lớp và chứa một hoặc nhiều lớp phức hợp có thể được kết nối hoàn toàn hoặc được gộp chung. Các lớp phức hợp này tạo ra các bản đồ đặc trưng ghi lại một vùng hình ảnh cuối cùng được chia thành các hình chữ nhật và gửi ra phi tuyến tính. Mô hình CNN này đặc biệt phổ biến trong lĩnh vực nhận dạng hình ảnh; nó đã được sử dụng trong nhiều ứng dụng tiên tiến nhất của AI, bao gồm nhận dạng khuôn mặt, số hóa văn bản và xử lý ngôn ngữ tự nhiên. Các ứng dụng khác bao gồm phát hiện paraphrase, xử lý tín hiệu và phân loại hình ảnh.
- Mạng thần kinh nhân tạo không hợp pháp (Deconvolutional Neural Networks – DNN): Sử dụng quy trình mô hình CNN đảo ngược. Nhằm mục đích tìm kiếm các tính năng hoặc tín hiệu bị mất mà ban đầu có thể được coi là không quan trọng đối với nhiệm vụ của hệ thống CNN. Mô hình mạng này có thể được sử dụng trong tổng hợp và phân tích hình ảnh.
- Mạng thần kinh nhân tạo mô-đun (Modular Neural Networks – MNN): Chứa nhiều mạng thần kinh nhân tạo hoạt động riêng biệt với nhau. Các mạng không liên lạc hoặc can thiệp vào các hoạt động của nhau trong quá trình tính toán. Do đó, các quy trình tính toán phức tạp hoặc lớn có thể được thực hiện hiệu quả hơn.
5. Ưu điểm của mạng thần kinh nhân tạo
- Khả năng xử lý song song có nghĩa là mạng có thể thực hiện nhiều hơn một công việc cùng một lúc.
- Thông tin được lưu trữ trên toàn bộ mạng, không chỉ là cơ sở dữ liệu.
- Khả năng học và mô hình hóa các mối quan hệ phi tuyến, phức tạp giúp mô hình hóa các mối quan hệ trong đời thực giữa đầu vào và đầu ra.
- Khả năng chịu lỗi có nghĩa là sự hỏng hóc của một hoặc nhiều ô của ANN sẽ không ngừng tạo ra đầu ra.
- Lỗi dần dần có nghĩa là mạng sẽ từ từ xuống cấp theo thời gian, thay vì sự cố phá hủy mạng ngay lập tức.
- Khả năng tạo ra đầu ra với kiến thức không đầy đủ với việc giảm hiệu suất dựa trên mức độ quan trọng của thông tin bị thiếu.
- Không có giới hạn nào được đặt ra đối với các biến đầu vào, chẳng hạn như cách chúng nên được phân phối.
- Học máy có nghĩa là ANN có thể học hỏi từ các sự kiện và đưa ra quyết định dựa trên các quan sát.
- Khả năng tìm hiểu các mối quan hệ ẩn trong dữ liệu mà không chỉ huy bất kỳ mối quan hệ cố định nào có nghĩa là ANN có thể lập mô hình tốt hơn cho dữ liệu có tính biến động cao và phương sai không cố định.
- Khả năng khái quát hóa và suy ra các mối quan hệ không nhìn thấy trên dữ liệu không nhìn thấy có nghĩa là ANN có thể dự đoán đầu ra của dữ liệu không nhìn thấy.
6. Nhược điểm của mạng thần kinh nhân tạo
- Việc thiếu các quy tắc để xác định cấu trúc mạng thích hợp có nghĩa là kiến trúc mạng thần kinh nhân tạo thích hợp chỉ có thể được tìm thấy thông qua thử nghiệm và sai sót và trải nghiệm.
- Yêu cầu của bộ xử lý có khả năng xử lý song song làm cho ANN phụ thuộc vào phần cứng.
- Mạng hoạt động với thông tin số, do đó tất cả các vấn đề phải được dịch sang các giá trị số trước khi chúng có thể được trình bày cho ANN.
- Thiếu lời giải thích đằng sau các giải pháp thăm dò là một trong những nhược điểm lớn nhất của ANN. Không thể giải thích lý do tại sao hoặc làm thế nào đằng sau giải pháp tạo ra sự thiếu tin tưởng vào mạng.
7. Các ứng dụng của mạng thần kinh nhân tạo
Nhận dạng hình ảnh là một trong những lĩnh vực đầu tiên mà mạng thần kinh nhân tạo đã được áp dụng thành công, nhưng việc sử dụng công nghệ này đã mở rộng sang nhiều lĩnh vực khác, bao gồm:
- Chatbots
- Xử lý ngôn ngữ tự nhiên, dịch thuật và tạo ngôn ngữ
- Dự đoán thị trường chứng khoán
- Lập kế hoạch và tối ưu hóa lộ trình của tài xế giao hàng
- Phát hiện và phát triển thuốc
Đây chỉ là một vài lĩnh vực cụ thể mà mạng thần kinh nhân tạo đang được áp dụng ngày nay. Việc ứng dụng của công nghệ này tuân theo các quy tắc hoặc mẫu nghiêm ngặt với một số lượng lớn dữ liệu. Nếu dữ liệu liên quan quá lớn mà con người không thể hiểu trong một khoảng thời gian cụ thể, thì mạng thần kinh nhân tạo có thể giúp rút ngắn quá trình một cách vô cùng hiệu quả.