AIHieu.comAI Hiểu
AI là gì: nền tảng

Học sâu (deep learning) là gì: mạng nơ-ron nhiều lớp học nhận ra khuôn mặt thế nào

Học sâu là gì, "nơ-ron nhân tạo" giống và khác nơ-ron thật ở đâu, vì sao nhiều lớp lại mạnh, và vì sao học sâu cần nhiều dữ liệu, nhiều điện.

University students in a Thai Nguyen library reading room, one tracing layered paper cutouts stacked on the table with a pencil, notebooks open with blank pages, overhead view

Học sâu (deep learning) là một nhánh của học máy, dùng các mạng nơ-ron nhân tạo có nhiều lớp xếp chồng lên nhau để tự học cách nhận ra quy luật trong dữ liệu thô như ảnh, âm thanh, chữ viết. Chữ "sâu" chỉ số lớp nhiều, không có nghĩa là máy hiểu sâu sắc. Mỗi lớp biến đổi dữ liệu một chút, lớp sau dựa vào kết quả của lớp trước, và đến lớp cuối thì máy đưa ra câu trả lời: ảnh này có khuôn mặt hay không, câu nói này là chữ gì.

Học sâu là động cơ đứng sau phần lớn tiến bộ AI từ khoảng năm 2012 tới nay: điện thoại mở khoá bằng khuôn mặt, trợ lý giọng nói nghe được tiếng Việt, ứng dụng dịch ảnh chụp, và cả các chatbot lẫn công cụ vẽ ảnh. Bài này giải thích nó bằng ví dụ đời thường, không dùng công thức.

Nơ-ron nhân tạo: lấy cảm hứng từ não, nhưng không phải bản sao của não

Ý tưởng mạng nơ-ron nhân tạo có từ thập niên 1940–1950, khi các nhà khoa học thử mô phỏng thật đơn giản cách tế bào thần kinh truyền tín hiệu. Năm 1958, Frank Rosenblatt công bố perceptron, một cỗ máy học nhận dạng hình dạng đơn giản, từng khiến báo chí thời đó hứa hẹn rất nhiều. Từ đó tới nay, mạng nơ-ron đã đi qua nhiều lần được kỳ vọng rồi bị bỏ rơi trước khi trở thành công nghệ chủ đạo.

Một "nơ-ron nhân tạo" thực chất chỉ là một phép tính nhỏ. Nó nhận vài con số đầu vào, nhân mỗi số với một hệ số thể hiện mức quan trọng, cộng lại, rồi quyết định truyền tiếp bao nhiêu tín hiệu. Hãy hình dung một người gác cổng ở hội chợ nông sản: nghe ba người báo tin, tin người này hơn người kia, cộng lại xem có đủ lý do mở cổng không. Một nơ-ron như vậy rất ngốc; sức mạnh đến từ việc nối hàng triệu, hàng tỉ cái như vậy với nhau.

Não người thật phức tạp hơn nhiều. Tế bào thần kinh có hoá học riêng, có nhịp điện, có khả năng thay đổi kết nối theo những cách khoa học còn đang tìm hiểu. Mạng nơ-ron nhân tạo chỉ mượn ý tưởng chung là "nhiều đơn vị đơn giản nối với nhau, học bằng cách điều chỉnh độ mạnh kết nối". Vì vậy, khi đọc câu "AI hoạt động như bộ não", bạn nên hiểu đó là cách nói ví von, không phải mô tả chính xác.

Vì sao nhiều lớp lại mạnh: từ nét gạch đến khuôn mặt

Lớp đầu nhìn thấy những thứ rất nhỏ. Khi một mạng học sâu được huấn luyện để nhận ra khuôn mặt, các nhà nghiên cứu soi vào bên trong và thấy những lớp đầu tiên thường phản ứng với các nét cơ bản: cạnh sáng tối, đường thẳng nghiêng, vệt màu. Không ai dạy nó như vậy; đó là cách mạng tự tìm ra để bắt đầu.

Lớp giữa ghép nét thành hình. Các lớp tiếp theo kết hợp những nét đó thành bộ phận lớn hơn: một đường cong cộng hai chấm tối có thể là vùng mắt, một khối tối hình tam giác có thể là mũi. Mỗi lớp nhìn vào "tóm tắt" do lớp trước gửi lên, nên càng lên cao càng nhìn được những mẫu phức tạp hơn.

Lớp cuối đưa ra kết luận. Ở lớp cuối, mạng gom các bộ phận lại để quyết định: đây là khuôn mặt, và nó giống khuôn mặt đã đăng ký trong điện thoại tới mức nào. Toàn bộ chuỗi biến đổi này diễn ra trong một phần nhỏ của giây.

Máy tự thiết kế "đặc điểm" thay cho con người. Trước học sâu, kỹ sư phải tự nghĩ ra cách mô tả ảnh cho máy: đo khoảng cách hai mắt, đếm điểm góc. Công việc đó tốn công và hay bỏ sót. Học sâu cho phép máy tự học luôn bước mô tả từ ảnh thô. Đây là điểm khác biệt lớn nhất giữa học sâu và các kỹ thuật học máy đời trước.

Nhưng hình ảnh "lớp nhìn nét, lớp nhìn mắt" chỉ là cách giải thích gần đúng. Thực tế những gì một lớp học được thường lộn xộn hơn, khó gọi tên. Hiểu xem bên trong một mạng lớn đang làm gì là một hướng nghiên cứu riêng, đến nay vẫn còn rất nhiều câu hỏi mở.

Mạng học bằng cách nào: sai đâu sửa đó, lặp hàng triệu lần

Mạng học sâu học theo nguyên lý chung của học máy: đoán, so với đáp án, rồi điều chỉnh. Khó ở chỗ mạng có rất nhiều lớp, nên khi đoán sai phải biết lỗi đó do kết nối nào ở lớp nào gây ra nhiều nhất. Kỹ thuật giải quyết việc này gọi là lan truyền ngược (backpropagation): lỗi ở đầu ra được truyền ngược về từng lớp, và mỗi kết nối được chỉnh một chút theo mức nó "góp phần" vào lỗi. Kỹ thuật này được phổ biến rộng rãi nhờ bài báo năm 1986 của David Rumelhart, Geoffrey Hinton và Ronald Williams.

Hình dung một đội bóng thua trận, huấn luyện viên xem lại băng hình và chia trách nhiệm: hàng thủ lỗi phần lớn, tiền vệ lỗi một ít, thủ môn gần như không lỗi. Mỗi vị trí được góp ý theo đúng mức của mình, tuần sau đá lại. Chỉ khác là mạng nơ-ron "xem lại băng" sau mỗi lô ví dụ, và lặp việc đó hàng triệu lần.

Vì phải tính nhiều đến vậy, học sâu từng bị coi là quá chậm để dùng thực tế. Hai thứ đã thay đổi tình thế: lượng ảnh, âm thanh, chữ viết số hoá tăng vọt nhờ internet, và chip đồ hoạ (GPU) vốn làm ra cho trò chơi điện tử hoá ra rất hợp với kiểu tính toán song song mà mạng nơ-ron cần. Một phép tính lặp đi lặp lại trên hàng triệu con số cùng lúc chính là thứ chip đồ hoạ làm giỏi.

Năm 2012 và các mốc làm học sâu trở thành chủ đạo

Những mốc dưới đây là các sự kiện đã được ghi nhận rộng rãi trong lịch sử ngành; chúng cho thấy học sâu không xuất hiện bỗng dưng mà được tích luỹ qua nhiều thập niên:

  • Thập niên 1980–1990: lan truyền ngược được phổ biến; Yann LeCun và cộng sự phát triển mạng nơ-ron tích chập để đọc chữ số viết tay, được dùng thực tế cho việc đọc séc ngân hàng ở Mỹ.
  • Giữa thập niên 2000: nhóm của Geoffrey Hinton và các nhóm khác công bố cách huấn luyện mạng nhiều lớp hiệu quả hơn, khơi lại sự quan tâm với chữ "deep learning".
  • Đầu thập niên 2010: nhận dạng giọng nói chuyển mạnh sang mạng nơ-ron sâu, độ chính xác cải thiện rõ trên các hệ thống thương mại.
  • Năm 2012: mạng AlexNet của Alex Krizhevsky, Ilya Sutskever và Geoffrey Hinton thắng cuộc thi nhận dạng ảnh ImageNet với cách biệt lớn so với các phương pháp khác, huấn luyện trên chip đồ hoạ. Đây thường được coi là thời điểm giới nghiên cứu quay hẳn sang học sâu.
  • Năm 2016: chương trình AlphaGo của DeepMind, kết hợp học sâu với học tăng cường và tìm kiếm, thắng kỳ thủ cờ vây Lee Sedol.
  • Năm 2017: bài báo "Attention Is All You Need" giới thiệu kiến trúc transformer, nền móng của các mô hình ngôn ngữ lớn sau này.
  • Năm 2018: Hinton, LeCun và Yoshua Bengio nhận giải Turing, giải thưởng danh giá nhất ngành khoa học máy tính, vì đóng góp cho học sâu.

Danh sách này không đầy đủ và không có ý nói ba người kể trên làm nên tất cả; học sâu là kết quả của rất nhiều nhóm nghiên cứu ở nhiều nước.

Học sâu so với học máy "truyền thống"

Học sâu là một phần của học máy, nhưng trong thực tế người ta hay đặt hai nhóm cạnh nhau để chọn cách làm. Bảng dưới tóm tắt khác biệt ở mức nguyên lý:

Tiêu chíHọc máy truyền thốngHọc sâu
Dữ liệu hợp nhấtBảng số liệu có cột rõ ràng: tuổi, thu nhập, số lần muaDữ liệu thô: ảnh, âm thanh, văn bản, video
Ai mô tả đặc điểmKỹ sư tự chọn và tính trướcMạng tự học từ dữ liệu thô
Lượng dữ liệu cầnTừ vài trăm đến vài chục nghìn dòng có thể đủThường cần rất nhiều, càng nhiều càng tốt
Sức tính toánMáy tính thường chạy đượcThường cần chip đồ hoạ hoặc chip chuyên dụng
Giải thích kết quảNhiều mô hình dễ giải thíchKhó giải thích, như "hộp đen"
Ví dụ hợpDự báo doanh số tháng tới từ bảng bán hàngĐọc chữ trên ảnh chụp hoá đơn, nghe lời nói

Một sai lầm phổ biến là nghĩ học sâu luôn tốt hơn. Với bảng dữ liệu nhỏ, có cấu trúc rõ, các phương pháp đơn giản thường cho kết quả ngang bằng, nhanh hơn, rẻ hơn và dễ giải thích hơn. Người làm nghề chọn công cụ theo bài toán, không theo độ thời thượng.

Giới hạn của học sâu mà người dùng nên biết

Đói dữ liệu và đói điện. Huấn luyện các mạng lớn tốn rất nhiều điện năng và phần cứng đắt tiền. Đây là lý do chỉ một số ít tổ chức có thể tự huấn luyện những mô hình lớn nhất, và là một chủ đề tranh luận về môi trường được bàn ở danh mục AI và xã hội.

Dễ bị đánh lừa theo cách con người không bị. Các nhà nghiên cứu đã chỉ ra rằng thay đổi một vài điểm ảnh mắt người không nhận thấy có thể khiến mạng nhận dạng nhầm hoàn toàn. Mạng cũng có thể dựa vào những tín hiệu "ăn gian" trong dữ liệu, như nhận ra ảnh bò nhờ nền cỏ xanh chứ không nhờ con bò.

Mang thiên lệch của dữ liệu. Nếu ảnh khuôn mặt dùng để học thiếu người lớn tuổi hay thiếu một nhóm sắc tộc, mạng sẽ kém hơn với những nhóm đó. Khi dùng cho việc như kiểm soát ra vào hay xác minh danh tính, sai lệch này có hậu quả thật.

Khó giải thích từng quyết định. Một mạng có hàng triệu kết nối không cho bạn một câu lý do dễ hiểu. Với những quyết định ảnh hưởng tới quyền lợi của người khác, điều này đặt ra yêu cầu phải có người kiểm tra và có cách khiếu nại.

Không tự biết mình không biết. Đưa cho một mạng nhận dạng chó mèo bức ảnh cái ấm trà, nó vẫn có thể trả lời "mèo" với độ tự tin cao. Mạng không có cơ chế mặc định để báo rằng thứ trước mặt nằm ngoài phạm vi đã học, trừ khi được thiết kế riêng cho việc đó.

Câu hỏi thường gặp

Học sâu và mạng nơ-ron có phải là một không?

Gần như vậy trong cách dùng hằng ngày. Mạng nơ-ron nhân tạo là loại mô hình; học sâu là cách gọi việc dùng mạng nơ-ron có nhiều lớp. Mạng nơ-ron rất nông, chỉ một hai lớp, đã có từ lâu và thường không được gọi là học sâu.

Bao nhiêu lớp thì được gọi là "sâu"?

Không có ranh giới chính thức. Thời đầu, mạng có hơn hai ba lớp ẩn đã được coi là sâu. Các mạng hiện nay có thể có hàng chục tới hàng trăm lớp. Chữ "sâu" nên hiểu là nhiều tầng biến đổi nối tiếp nhau, không phải một con số cụ thể.

Chatbot có dùng học sâu không?

Có. Các mô hình ngôn ngữ lớn đứng sau chatbot hiện nay là mạng nơ-ron rất lớn, phần lớn dựa trên kiến trúc transformer, và được huấn luyện bằng kỹ thuật học sâu. Cách chúng đoán chữ tiếp theo được giải thích kỹ ở danh mục mô hình ngôn ngữ của trang.

Tại sao học sâu cần chip đồ hoạ mà không dùng chip máy tính thường?

Chip máy tính thông thường giỏi làm các việc khác nhau lần lượt. Chip đồ hoạ có rất nhiều lõi nhỏ làm cùng một phép tính trên rất nhiều con số cùng lúc, đúng kiểu tính mà mạng nơ-ron cần. Vì vậy việc huấn luyện chạy nhanh hơn nhiều lần, dù chip thường vẫn có thể chạy được các mô hình nhỏ.

Học sâu có giúp được gì cho nông nghiệp, y tế ở Việt Nam không?

Có nhiều hướng ứng dụng như nhận dạng sâu bệnh qua ảnh lá, hỗ trợ đọc ảnh chụp y khoa, đếm phương tiện qua camera giao thông. Mức độ hiệu quả phụ thuộc vào việc có dữ liệu địa phương đủ tốt để huấn luyện và kiểm tra. Với y tế, kết quả của máy chỉ là gợi ý, quyết định vẫn thuộc về bác sĩ.

Người không học kỹ thuật có cần biết học sâu không?

Không cần biết cách xây dựng, nhưng hiểu nguyên lý giúp bạn đánh giá đúng sản phẩm: vì sao nhận diện khuôn mặt có lúc sai, vì sao một ứng dụng cần mạng internet để xử lý, vì sao dữ liệu của bạn có giá trị với các công ty. Đó là những hiểu biết có ích khi quyết định dùng hay không dùng một dịch vụ.

Cần tư vấn cụ thể cho trường hợp của bạn?

Chúng tôi sẽ liên hệ trong vòng 24 giờ.

Đăng ký tư vấn ngay

Bài viết liên quan

Bạn cần hỗ trợ thêm?

Để lại thông tin, chúng tôi sẽ liên hệ trong 24 giờ.

hoặc
Gọi ngay 0926 138 138