Giới thiệu về Trí tuệ nhân tạo

Trong bài viết này, chúng tôi  sẽ  trình bày mấy  nét tổng quan về AI. Trong các bài sau sẽ đi vào chi tiết từng vấn đề cụ thể.

I. Một vài định nghĩa về Trí tuệ nhân tạo

Có khá nhiều các định nghĩa về Trí tuệ nhân tạo (Artificial Intelligence). Dưới đây xin  trình bày một vài định nghĩa khác nhau của AI.

  1. AI đề cập đến việc mô phỏng trí thông minh của con người trong những cỗ máy được lập trình để suy nghĩ giống như con người và bắt chước hành động của họ.
  2.  AI là nghiên cứu về các tác nhân nhận thức thế giới xung quanh, hình thành kế hoạch và đưa ra quyết định để đạt được mục tiêu của họ

Nói một cách khác Trí tuệ nhân tạo là các thuật toán giúp cho  các phần mềm  máy tính ngày càng thông minh hơn. Giúp chúng   có thể nhìn, nghe và phản hồi để cá nhân hóa tốt hơn, đề xuất thông minh và tìm kiếm chính xác hơn.

Nền tảng của AI được dựa trên các kiến thức  bao gồm: Xác suất, Tối ưu hóa, Khoa học thần kinh và Lý thuyết Quyết định.

AI1

II. Các ứng dụng của AI

Các ứng dụng của AI  là vô tận. Công nghệ này có thể được áp dụng cho nhiều lĩnh vực khác nhau như máy tính chơi cờ vua,  ô tô tự lái, tài chính và chăm sóc sức khỏe, nơi nó được sử dụng để phát hiện và đánh dấu hoạt động trong ngân hàng và tài chính, chẳng hạn như việc sử dụng thẻ ghi nợ bất thường và các khoản tiền gửi tài khoản lớn.

III. Học máy và Học sâu

Học máy (Machine Learning) và Học sâu (Deep Learning) là hai lĩnh vực của AI. Cả hai lĩnh vực  này đã và đang phát triển nhanh chóng và được nhiều chuyên gia quan tâm nghiên cứu.

AI ML DL

 

IV. Học máy

ML là một lĩnh vực của  AI. Nó bao gồm các thuật toán giúp cho phép máy tính tự học. Một thuật toán của ML cho phép máy tính xác định các mẫu trong dữ liệu quan sát, xây dựng mô hình, giải thích thế giới và dự đoán các sự kiện.
Các thuật toán của ML bao gồm ba loại: Học có giám sát (SL), Học không giám sát (UL) và Học củng cố (RL). Trong bài viết này chúng tôi chỉ tập trung trình bày về ML, phần Deep Learning sẽ được đề cập trong bài tiếp theo.

  1. Một vài khái niệm của ML

Véc tơ đặc điểm (Feature vector). Dữ liệu được đặc trưng bởi vectơ đặc điểm X = [x_1, x_2,…, x_d], trong đó x_i là đặc điểm của dữ liệu.
Ví dụ 1: Trong một bức tranh, mỗi pixel là một đặc điểm. Vectơ X của tất cả các pixel là một vectơ đặc trưng.
Ví dụ 2: Cho dữ liệu là một nhóm người. Khi  đó, tuổi, chiều cao, cân nặng là các đặc điểm. Khi đó X=[tuổi, chiều cao, cân nặng] là một vector đăc điểm.

Nhãn (Label). Một qui tắc  hay ánh xạ F từ  Rd → { y_1, y_2,…, y_m} được gọi là qui tắc gán nhãn. Cho vector đặc điểm X thuộc Rd và y ∈{ y_1, y_2,…, y_m}.  Nếu F(X)=y ta nói X có nhãn là y.  

Phân loại (Clasificaton): là bài toán dự đoán nhãn.

2. Học có giám sát (Supervised Learning) 

Là các thuật toán dự đoán đầu ra của một hoặc nhiều tập dữ liệu dựa trên các cặp (X_i, Y_i) đã biết, ở đó X_i là feature vector và Y_i là nhãn của X_i. Nói cách khác  chúng ta có tập dữ liệu đầu vào A={X_1, X_2,…, X_N} và đàu ra là B={Y_1, Y_2,…, Y_N}. Các cặp (X_i, Y_i) tạo nên một tập huấn luyện.  Từ tập huấn luyện này chúng ta xây dựng một hàm số F sao cho Y_i ≈f(X_i). Mục đích là tìm hàm F thật tốt sao cho khi có đầu vào X, ta có thể dự đoán đầu ra là Y=F(X).

SupervisedLearning1

SL2

Làm thế nào ta có thể phát triển một mô hình học tập có giám sát của ví dụ này để giúp người dùng xác định thời gian đi làm. Điều đầu tiên bạn cần tạo là một bộ huấn luyện. Tập huấn luyện này sẽ chứa tổng thời gian đi lại và các yếu tố tương ứng như thời tiết, thời gian, v.v. Dựa trên tập huấn luyện này, máy của bạn có thể thấy có mối quan hệ trực tiếp giữa các yếu tố và thời gian sẽ về nhà theo quan hệ T=F(X).

Từ quan hệ này có thể  khẳng định rằng trời càng mưa, bạn sẽ lái xe càng lâu để trở về nhà. Nó cũng có thể thấy kết nối giữa thời gian bạn nghỉ làm và thời gian bạn sẽ đi trên đường.

Càng gần tới 6 giờ tối. bạn càng mất nhiều thời gian để về nhà. Máy của bạn có thể tìm thấy một số mối quan hệ với dữ liệu được dán nhãn của bạn.

ML3

 

Dưới đây là một số  loại thuật toán học máy có giám sát

2.1 Hồi qui (Regression)

Kỹ thuật hồi quy dự đoán một giá trị đầu ra duy nhất sử dụng dữ liệu huấn luyện.

Ví dụ: Bạn có thể sử dụng hồi quy để dự đoán giá nhà từ tập dữ liệu huấn luyện/đào tạo. Các biến đầu vào sẽ là  vị trí nhà,  kích thước của  ngôi nhà, vv

2. 2. Phân loại (Classification):

Phân loại có nghĩa là việc phân chia/gán nhãn dữ liệu thành các lớp khác nhau. Nếu thuật toán gán nhãn cho dữ liệu  thành hai lớp riêng biệt, nó được gọi là phân loại nhị phân. Gán nhãn cho nhiều hơn hai lớp được gọi là phân loại đa lớp.

dụ: Xác định xem có ai đó sẽ là sinh viên thích nghiên cứu về AI

2. 3. Phân loại Naïve Bayes

Bộ phân loại Naive Bayes là một mô hình học máy xác suất được sử dụng cho nhiệm vụ phân loại. Điểm mấu chốt của trình phân loại dựa trên công thức Bayes:

Bayes

2.4. Support vector machine

Máy vectơ hỗ trợ (SVM) là một bộ phân loại phân biệt được xác định chính thức bởi một siêu phẳng phân tách. Nói cách khác, khi cung cấp dữ liệu đào tạo được gắn nhãn (học có giám sát), thuật toán sẽ đưa ra một siêu phẳng tối ưu phân loại các  thành phần mới.

SieuPhang1

Một đường là xấu nếu nó đi quá gần các điểm vì nó sẽ nhạy cảm với nhiễu và nó sẽ không tổng quát hóa một cách chính xác. Do đó, mục tiêu của chúng ta là tìm đường thẳng đi xa nhất có thể so với tất cả các điểm.

SieuPhang2

3. Học không giám sát (UL)

Unsupervised Learning là một nhóm thuật toán hay phương pháp kỹ thuật cho phép máy tự học hỏi và tìm ra một mô hình hay cấu trúc nào đó ẩn trong một bộ dữ liệu không được gắn nhãn trước. Điều này đồng nghĩa với việc chúng ta chỉ có bộ dữ liệu đầu vào và hoàn toàn không biết kết cục (outcome) là gì.

Học không giám sát là một loại ML tìm kiếm các mẫu chưa được phát hiện trước đó trong tập dữ liệu không có nhãn tồn tại trướcUL1

Dưới đây là một số thuật toán của UL

3.1. Phân cụm (Clustering)
Phân tích cụm hoặc phân cụm là nhiệm vụ nhóm một tập hợp các đối tượng theo cách mà các đối tượng trong cùng một nhóm (được gọi là một cụm) giống nhau hơn (theo một nghĩa nào đó)  hơn là các đối tượng trong các  cụm khác. Nó là một nhiệm vụ chính của khai thác dữ liệu thăm dò và là một kỹ thuật phổ biến để phân tích dữ liệu thống kê, được sử dụng trong nhiều lĩnh vực, bao gồm cả nhận dạng mẫu, phân tích hình ảnh.

Clustering

3.2 Phát hiện bất thường (Anomany Detection )
Phát hiện bất thường là việc xác định các vật phẩm, sự kiện hoặc quan sát sự hiếm hoi làm dấy lên nghi ngờ do khác biệt đáng kể so với phần lớn dữ liệu. Thông thường, các mục bất thường sẽ dẫn đến một số loại vấn đề như gian lận ngân hàng, khiếm khuyết về cấu trúc, các vấn đề hoặc sai sót về y tế trong một văn bản. Dị thường còn được gọi là ngoại lệ, tính mới, nhiễu, sai lệch và ngoại lệ

3.3. Mạng nơron (Neural Network)
Mạng nơ-ron là một tập hợp các thuật toán, được mô hình hóa  theo bộ não con người, được thiết kế để nhận dạng các mẫu.  Chúng giải thích dữ liệu cảm quan thông qua một loại cảm nhận máy móc, ghi nhãn hoặc phân cụm đầu vào thô. Các mẫu mà chúng nhận ra là số, được chứa trong các vectơ, trong đó tất cả dữ liệu trong thế giới thực, có thể là hình ảnh, âm thanh, văn bản hoặc chuỗi thời gian, phải được dịch.

Neural Network

4.Học củng cố (reinforcement Learning)

Học củng cố đề cập đến các thuật toán hướng đến mục tiêu, học cách đạt được một mục tiêu phức tạp (mục tiêu). Học tăng cường sâu kết hợp mạng nơ ron với kiến trúc học tăng cường cho phép các tác nhân do phần mềm xác định để học các hành động tốt nhất có thể trong môi trường ảo để đạt được mục tiêu của chúng.

Bản chất của RL là trial-and-error, nghĩa là thử đi thử lại và rút ra kinh nghiệm sau mỗi lần thử như vậy. Gần đây, RL đã đạt được những thành tựu đáng kể khi các thuật toán của DeepMind (AlphaGo, AlphaZero, AlphaStar,…) đã chiến thắng áp đảo các tuyển thủ thế giới trong những trò chơi mà con người đã từng nghĩ rằng máy móc sẽ không bao giờ có thể vượt mặt như cờ vây. Số nước cờ vây là 10^{170} trong khi số nguyên tử trong vũ trụ khoảng 10^{80}.

Các khái niệm bản

Gồm 7 khái niệm chính: Agent, Environment, State, Action, Reward, Episode, Policy. Để dễ hiểu hơn, chúng ta lấy ví dụ về một con robot tìm đường như hình  bên dưới:

RL3

 

Trong một episode, agent sẽ cố gắng chọn ra các actions tối ưu để tối đa hóa reward nhận được sau mỗi episode. Cách mà agent chọn những actions đó là Policy; ví dụ: “đi ngẫu nhiên”, “đi men theo rìa” hoặc “hướng về ô đích”. Mục đích của RL là tìm ra policy tốt nhất.

RL2

TS. Hoàng Hữu Hưng

Tài liệu tham khảo

[1]. V. H. Tiep, Machine Learning bản, http://machinelearningcoban.com/ebook

 

[2]. V. Maini and S. Sabri, Machine Learning for Humans,

 

[3]G. James, D. Witten, T. Hastic and R. Tibshirani, An Introduction to Statical Learning, Springer , 2015.