Get in touch
or send us a question?
CONTACT

Giới thiệu ngắn về AI, Machine Learning, Deep Learning

Hiện tại, trong thời đại 4.0 có nhiều nhắc đến sự thay thế của máy móc cho con người, các thuật ngữ như trí tuệ nhân tạo (AI), học máy (Machine Learning), học sâu (Deep Learning), Bigdata, … Nhưng để có thể hiểu rõ và giải thích về các thuật ngữ trên thì chắc chắn là một vấn đề không dễ dàng.

Bài viết nhằm mong có thể đem lại một cái nhìn khái quát và chi tiết hơn về bản chất của AI.

I Overview

Vậy AI là gì ? Xin trích dẫn định nghĩ được phát biển theo trang Wikipedia:

Artificial intelligence (AI) is intelligence demonstrated by machines, as opposed to the natural intelligence displayed by humans or animals.

Có thể hiểu đơn giản là việc 1 hệ thống máy móc có thể bắt trước (mimic) hành động của con người. Đáp ứng được điều kiện trên thì có thể coi là 1 hệ thống trí tuệ nhân tạo.

Ví dụ: một ứng dụng xem phim thì không được coi là ứng dụng trí tuệ nhân tạo vì nó không mô phỏng hành động nào của con người. Trái ngược, 1 game cờ caro thì được coi là 1 ứng dụng trí tuệ nhân tạo, do nó đã có thể bắt trước được hành động chơi cờ khi nguời chơi tương tác, có thể đưa ra các chiến thuật chơi theo mức độ khó dễ như con người.

Biểu đồ trên thể hiện mối qua hệ của 3 thuật ngữ: AI, Machine Learning, Deep Learning. Machine Learning là tập con của AI, Deep Learning là tập con của Deep Learning.

Để hiểu rõ hơn mối quan hệ này chúng ta cần tìm hiểu chi tiết hơn về tính chất của Machine Leanring và Deep Learning.

II Machine Learning

Một số định nghĩa về học máy (Machine Learning) phổ biến:

[Machine Learning] is the field of study that gives computers the ability to learning without being explicitly programmed. – Adam Samuel , 1959

Một hệ thống học máy thế hiện khả năng học hành động con người mà không cần lập trình cụ thể. Vậy lập trình cụ thể là như thể nào ? Dựa vào ví dụ sau thì có thể hiểu rõ hơn về nó.

Ví dụ: 1 developer được giao xây dựng được một hệ thống lọc thư rác (tiếng Anh). Developer tiếp cận giải quyết bằng cách sau:

  • Bước 1: Developer xem qua tất cả các mail rác để tìm các đặc điểm chung của chúng. Họ phát hiện ra các cụm từ như 4U, free, amazing, … xuất hiện nhiều trong các chủ đề bài viết. Họ phát hiện thêm một số các mẫu viết về kiểu tên email gửi, nội dung mail, …
  • Bước 2: Developer viết một thuật toán, các pattern để phát hiện được các đặc điểm chung trên. Khi một trong các pattern tìm kiếm khớp thì mail đó được coi là mail rác.
  • Bước 3: Developer đưa vào thử nghiệp và lặp đi lặp lại các bước 1, 2 đến khi độ chính xác đạt cao nhất

Đây là cách tiếp cận truyền thống của AI. Các luật, đặc trưng được lập trình thành các pattern cụ thể và được tạo liên tục để đáp ứng đủ các pattern, đặc trưng cần thiết.

Vấn đề của cách tiếp cận này là khi số lượng đặc trưng của vấn đề tăng lên, ví dụ thay vì dùng “4U” thì mail được viết thay bằng từ “For you”, dẫn đến cần phải thêm pattern để bắt từ mới “for you”. Từ đó dẫn đến số lượng pattern ngày càng tăng lên, số lượng code tăng lên khiến hệ thống ngày càng khó maintain.

Ngược lại so với cách tiếp cận trên, cách tiếp cận khác sử dụng các phương pháp học máy để thay thế dựa vào dữ liệu đầu vào là mail thường và mail rác, đầu ra là nhãn của chúng.

Chúng ta có thể nhìn vào hình trên. Cách tiếp cận đầu, ta dựa vào data đầu vào và các rule tự phân tích để tạo ra output. Khác với nó, hướng tiếp cận học máy dựa vào data đầu vào và output mong muốn, dựa vào các thuật toán học máy để tìm ra các rules, pattern có độ chính xác cao nhất.

Cơ chế hoạt động của cách tiếp cận này như sau:

Dựa vào sơ đồ trên, khi có lỗi hay xuất hiện các pattern mới chỉ cần update dữ liệu training và train lại model thì giải quyết được vấn đề mà không cần sử đổi code. Dễ dàng hơn cho việc maintain hệ thống.

III Deep Learning

Học sâu hay Deep Learning là một dạng học máy, là tập con của Machine Learning. Khác với học máy sử dụng các thuật toán truyền thống, học sâu sử dụng thuật toán dựa trên cấu trúc phân lớp, cấu thành mạng mô phỏng từ cấu trúc mạng thần kinh còn người. Mạng trên thường được gọi là mạng nơ ron nhân tạo (artificial neural network).

Cơ chế của học sâu thì không khác học máy. Điểm khác biệt ở đây chính là cấu trúc thuật toán xây dựng model dựa trên các layer khác nhau.

Học sâu chỉ thực sự bùng nổ sau khi sự phát triển các thiết bị phần cứng như GPU, TPU, cũng như sự bùng nổ của các nền tảng chia sẻ thông tin, dữ liệu ngày càng nhiều. Việc huấn luyện các model học sâu có cấu trúc layer lớn cùng với số lượng tham số cần tìm lên đến hàng trăm, triệu thì việc các thiết bị phần cứng có thể đáp ứng được quá trình tính toán đã giúp học sâu được phát triển rộng rãi. Ngoài ra số lượng dữ liệu đầu vào cũng cần đến hàng triệu đơn vị dữ liệu để có thể đáp ứng được việc xử lý các dữ liệu phi cấu trúc như: âm thanh (voice), hình ảnh (computer vision), văn bản (nature language processing).

Có thể so sánh học máy và học sâu dựa trên các tiêu chí sau:

  • Học sâu có thể xử lý các dữ liệu phi cấu trúc theo cách mà học máy khó có thể làm được.
  • Học sâu đòi hỏi các thiết bị phần cứng có khả năng xử lý tính toán mạnh hơn so với học máy
  • Học sâu đòi hỏi thời gian huấn luyện lâu để tìm được bộ tham số tốt nhưng kết quả ngày càng tăng dần lên khi số dữ liệu tăng lên, khác so với họp máy.

IV Summary

Mong qua bài đọc có thể đem lại 1 cái nhìn khái quát chung về trí tuệ nhân tạo.

Tài liệu tham khảo :

  • Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems by Aurelien Geron
  • https://flatironschool.com/blog/deep-learning-vs-machine-learning