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.
- 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ọ.
- 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.
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.
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.
- 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).
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.
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.
Ví 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:
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.
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.
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ước
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.
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.
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 cơ 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:
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.
TS. Hoàng Hữu Hưng
Tài liệu tham khảo
[1]. V. H. Tiep, Machine Learning cơ 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.