AI đang ở đâu trên thế giới, các bài toán AI tại Tech Awards 2018

Giám đốc công nghệ FPT bàn về xu hướng 'bình dân hóa AI'

Nối tiếp chương trình hội thảo là câu chuyện về trí tuệ nhân tạo. AI đang thay đổi diện mạo của thế giới với nhiều ứng dụng trong tất cả lĩnh vực. Với kinh nghiệm gần 10 năm nghiên cứu và phát triển AI, tiến sĩ Đặng Hoàng Vũ - Giám đốc công nghệ tập đoàn FPT cho rằng, 2019 sẽ là năm "bình dân hóa AI" bởi nó đã bùng nổ trên cả thế giới và dần phổ biến trong mọi lĩnh vực. Vậy chúng ta sẽ sống với các "trí thông minh nhân tạo" như thế nào?

Câu trả lời sẽ ông Đặng Hoàng Vũ giải đáp trong phần trình bày chủ đề "Trí tuệ nhân tạo điều khiển thế giới".

AI có thể chia thành hai loại, một là thay thế một số chức năng thay con người như xử lý video, nhận dạng tiếng nói, giọng nói và nghe hiểu ngôn ngữ thông qua văn bản hoặc lời thoại.

Học máy (machine learning) là công nghệ nền tảng của AI, giúp máy học được những dữ liệu quan sát trong đời sống thực. 

Ông nhấn mạnh không phải đến hiện tại mới có AI. Tượng đài cờ vua thế giới từng bị hạ gục bởi một thế hệ AI cũ. Đừng nghĩ AI là phương pháp hay công nghệ mà nó là nhu cầu bài toán thay thế trí tuệ con người bằng máy.

Bài toán thay thế trí tuệ

AI sẽ ứng dụng tốt trong kinh doanh, kỹ thuật, xã hội... Cụ thể như ngành phân tích dự đoán rất phổ biến trong video, bài hát... Ví dụ trong hệ thống nhà máy điện đoán được khi nào có sự cố, nhu cầu điện tăng cao vào mùa nào để điều chỉnh máy móc. Tiếp theo là giảm chi phi, tăng hiệu năng hoạt động sản xuất kinh doanh. Hiện nay toán học kết hợp máy tính để tạo nên thành một nền tảng AI.

Công nghệ tự động hóa có những ví dụ điển hình như xe tự lái, hoặc đơn giản hơn. Ví dụ, xưa nay chúng ta đến cửa hàng hoặc cửa công ty phải ghi sổ chấm công. Nay chỉ cần camera quét nhận diện khuôn mặt và biết bạn là ai, mỗi người tiết kiệm 10 giây thì cả công ty tiết kiệm khá nhiều.

Hoặc khi ra cửa hàng chỉ cần quét CMND là có thể thu thập dữ liệu vào trung tâm cửa hàng. Thay vì tốn nhiều thời gian và nhân công để ghi nhận thông tin khách hàng, AI có thể hỗ trợ thay thế và tiết kiệm chi phí.

"Bản chất cũng là toán học nhưng được nâng cấp và có thể học dữ liệu đầu vào, ứng dụng vào nhiều lĩnh vực khác nhau", ông lý giải.

Cuối cùng, các công cụ đều giúp mục tiêu cuối cùng là ra quyết định, nhanh và chính xác hơn người. Đó chính là bài toán khó nhất mà các ngành ứng dụng AI đều đang hướng tới. Ví dụ đề xuất cho vay bao nhiêu tiền, bán cái gì, cho ai... giúp loại bỏ bớt yếu tố cảm tính của con người, giúp giảm rủi ro, thúc đẩy tăng trưởng doanh nghiệp.

Tất cả công cụ đều phục vụ một bài toán: nhanh hơn, chính xác và hiệu quả hơn người. Hiện nay AI chỉ hỗ trợ ra quyết định, nên cho vay từng này tiền, bán từng này cho khách hàng... Trong tương lai khi độ chính xác tăng cao thì AI sẽ loại con người ra khỏi vòng quyết định ấy, tốc độ xoay vòng của kinh doanh sẽ tăng lên.

AI đang ở đâu trên thế giới

AI đang ở đâu trên thế giới? Mọi công nghệ mới đều đi theo vòng lặp: lúc mở ra được mọi người rất kỳ vọng nhưng hầu hết đều sụp đổ, chỉ khi thoát ra được thì mới có thể tăng trưởng. Nói về AI, mỗi người sẽ có những nhận định khác nhau về sự phát triển của AI.

"AI có rất nhiều công nghệ khác nhau, nằm trên những con đường khác nhau. Nếu có những ý kiến trái chiều về con đường phát triển của AI thì chỉ mô tả phiến diện một phần, chưa toàn diện", ông nhìn nhận.

Quy trình ứng dụng cơ bản của AI trong doanh nghiệp: thứ nhất là lấy dữ liệu đưa vào AI (sổ sách, video quay lại cửa hàng...), thứ 2 là xử lý (loại dữ liệu kém), chọn mô hình (thuật toán, phương pháp luận), thử nghiệm và đưa vào ứng dụng, nâng cấp lên.

Dù chỉ số tăng nhưng thời gian dùng sản phẩm không tăng. Chỉ số hài lòng liên quan rất ít đến mục tiêu kinh doanh. Điều đó nói lên khâu 1, 2 quan trọng, thu thập kiểu gì, sàng lọc ra sao.

AI chỉ làm việc theo dữ liệu

AI chỉ làm việc theo dữ liệu bạn đưa cho nó thôi chứ nó không biết được thời gian sử dụng dịch vụ mới quyết định hiệu quả kinh doanh.

Về quy trình, thứ nhất cần nhập liệu. Sau đó phải xử lý dữ liệu, loại bỏ thông tin kém giá trị. Thứ ba, chọn mô hình tương đương thuật toán, phương pháp và huấn luyện nó. Thứ tư là giai đoạn thử nghiệm. Thứ năm, chúng ta đưa vào ứng dụng và tiếp tụp cải thiện. 

Có một bước khá tốn chi phí, đó là bước thứ hai. Các bạn cần xử lý lượng dữ liệu khổng lồ để AI học được. Đừng dạy nó sai. Ví dụ như sau:

Khi một doanh nghiệp sử dụng AI để phục vụ khách tốt hơn, tăng doanh số, họ dùng mô hình AI để tối ưu chỉ số hài lòng của khách hàng. Họ có thang từ 1 đến 5, khi ứng dụng AI thì chỉ số tăng rõ rệt nhưng vấn đề là không hiệu quả. Vì sao?

Hội thảo Smart Tech for Smart Living là sự kiện mở màn cho lễ trao giải Tech Awards 2018

"Đối với một quy trình như vậy, đó là quy trình tiêu biểu cho kỹ thuật AI hiện nay đang dùng. Tôi có một danh sách các làn sóng AI hiện nay, có nhiều quan điểm về việc chia làn sóng AI. Theo tôi đã có 3 làn sóng mà hiện nay chúng ta ở làn sóng thứ 2 là học dựa trên thống kê. Tức là thu thập dữ liệu, dùng mô hình thống kê và học quy luật từ số đông", ông Vũ nhận xét.

Các chuyên gia đầu ngành nhận định AI hiện đã thông minh, muốn đẩy nó thông minh hơn thì cần giúp nó suy luận tốt hơn.

Tiếp theo, ông Vũ chia sẻ công nghệ học máy đứng đằng sau 99% AI hiện tại là công nghệ học máy sâu deep machine learning. Khác nhau căn bản là gì? Chỉ cần nhớ một điều, đối với machine learning truyền thống cần con người chuyển hóa thông tin đầu vào thành dạng máy hiểu được rồi mới dạy cho máy. Còn deep learning máy có khả năng tự học theo quy luật từ dữ liệu thô đầu vào.

"Bước sàng lọc dữ liệu chiếm 80% công sức thời gian một dự án AI. Nếu giảm được một nửa công sức, tiền của trong bước này thì tiết kiệm được rất nhiều", ông Vũ đánh giá.

Machine Learning được chia thành 3 nhánh chính: supervised learning (học có giám sát), unsupervised learning (học không có giám sát), và reinforcement learning (học tăng cường).

  • Học có giám sát được dùng trong trường hợp một thuộc tính (nhãn) có sẵn cho một tập dữ liệu nhất định (tập huấn luyện), nhưng thiếu và cần được dự đoán cho các trường hợp khác.
  • Học không có giám sát thì ngược lại, nó được sử dụng trong trường hợp khám phá các mối quan hệ tiềm ẩn trong một tập dữ liệu không được gán nhãn (các mục không được chỉ định trước).
  • Học tăng cường thì nằm giữa 2 loại trên – có một số hình thức phản hồi có sẵn cho mỗi bước tiên đoán hoặc hành động, nhưng không có nhãn chính xác hoặc thông báo lỗi

1. Cây quyết định (Decision Trees)

Cây quyết định là công cụ hỗ trợ quyết định sử dụng biểu đồ dạng cây hoặc mô hình của các quyết định và kết quả có thể xảy ra của chúng, bao gồm kết quả sự kiện ngẫu nhiên, chi phí tài nguyên và lợi ích. Dưới đây là một ví dụ điển hình của cây quyết định:

Cây quyết định (Decision Trees)

Cây quyết định này cho ta gợi ý về việc có đi đá bóng hay không. Ví dụ, quang cảnh có nắng, độ ẩm trung bình thì tôi sẽ đi đá bóng. Ngược lại, nếu trời mưa, gió mạnh thì tôi sẽ không đi đá bóng nữa.

Cây quyết định tuy là mô hình khá cũ, khá đơn giản những vẫn còn được ứng dụng khá nhiều và hiệu quả. Đứng dưới góc nhìn thực tế, cây quyết định là một danh sách tối thiểu các câu hỏi dạng yes/no mà người ta phải hỏi, để đánh giá xác suất đưa ra quyết định đúng đắn.

2. Phân loại Bayes (Naïve Bayes Classification)

Phân loại Bayes là một nhóm các phân loại xác suất đơn giản dựa trên việc áp dụng định lý Bayes với các giả định độc lập (naïve) giữa các đặc tính.

Phân loại Bayes (Naïve Bayes Classification)

Trong đó: P(A|B) là xác suất có điều kiện A khi biết B, P(A) là xác suất giả thuyết A (tri thức có được về giải thuyết A trước khi có dữ liệu B), P(B|A) là xác suất có điều kiện B khi biết giả thuyết A,P(B) là xác suất của dữ liệu quan sát B không quan tâm đến bất kỳ giả thuyết A nào.

Thuật toán này được áp dụng trong một số bài toán như:

  • Đánh dấu một email là spam hay không.
  • Phân loại bài viết tin tức thuộc lĩnh vực công nghệ, chính trị hay thể thao.
  • Kiểm tra một đoạn văn bản mang cảm xúc tích cực hay tiêu cực.
  • Sử dụng cho các phần mềm nhận diện khuôn mặt. …

3. Hồi quy tuyến tính (Ordinary Least Squares Regression)

Nếu bạn biết thống kê, bạn có thể đã nghe nói về hồi quy tuyến tính trước đây. Bình phương nhỏ nhất là một phương pháp để thực hiện hồi quy tuyến tính. Bạn có thể suy nghĩ về hồi quy tuyến tính như là nhiệm vụ kẻ một đường thẳng đi qua một tập các điểm. Có rất nhiều chiến lược có thể thực hiện được, và chiến lược “bình phương nhỏ nhất” sẽ như thế này – Bạn có thể vẽ một đường thẳng, và sau đó với mỗi điểm dữ liệu, đo khoảng cách thẳng đứng giữa điểm và đường thẳng. Đường phù hợp nhất sẽ là đường mà các khoảng cách này càng nhỏ càng tốt.

Hồi quy tuyến tính (Ordinary Least Squares Regression)

Một số ví dụ là người ta có thể sử dụng mô hình này để dự đoán giá cả (nhà đất, chứng khoán), điểm số,…

4. Hồi quy logistic (Logistic Regression)

Hồi quy logistic là một cách thống kê mạnh mẽ để mô hình hóa một kết quả nhị thức với một hoặc nhiều biến giải thích. Nó đo lường mối quan hệ giữa biến phụ thuộc phân loại và một hoặc nhiều biến độc lập bằng cách ước tính xác suất sử dụng một hàm logistic, là sự phân bố tích lũy logistic.

Hồi quy logistic (Logistic Regression)

Thuật toán này được sử dụng trong một số trường hợp:

  • Điểm tín dụng ( quyết định có cho khách hàng vay vốn hay không)
  • Đo mức độ thành công của chiến dịch marketing
  • Dự đoán doanh thu của một sản phẩm nhất định
  • Dự đoán động đất ….

5. Support Vector Machines (SVM)

SVM là phương pháp phân loại nhị phân. Cho một tập các điểm thuộc 2 loại trong môi trường N chiều, SVM cố gắng tìm ra N-1 mặt phẳng để phân tách các điểm đó thành 2 nhóm. Ví dụ, cho một tập các điểm thuộc 2 loại như hình bên dưới, SVM sẽ tìm ra một đường thẳng nhằm phân cách các điểm đó thành 2 nhóm sao cho khoảng cách giữa đường thẳng và các điểm xa nhất có thể.

Support Vector Machines (SVM)

Xét về quy mô, một số vấn đề lớn nhất đã được giải quyết bằng cách sử dụng SVM (với việc thực hiện sửa đổi phù hợp) ví dụ như hiển thị quảng cáo, phát hiện giới tính dựa trên hình ảnh, phân loại hình ảnh có quy mô lớn …

6. Kết hợp các phương pháp (Ensemble Methods)

Phương pháp này dựa trên sự kết hợp của một vài phương pháp kể trên để dự đoán kết quả, sau đó sẽ đưa ra kết quả cuối cùng dựa vào trọng số của từng phương pháp

Kết hợp các phương pháp (Ensemble Methods)

Vậy phương pháp này hoạt động như thế nào và tại sao nó lại ưu việt hơn các mô hình cá nhân?

  • Trung bình sai số (bias): một số phương pháp hoạt động tốt và cho sai số nhỏ, ngược lại cũng có một số phương pháp cho sai số lớn. Trung bình ta được một sai số chấp nhận được, có thể nhỏ hơn sai số khi sử dụng duy nhất một phương pháp.
  • Giảm độ phụ thuộc vào tập dữ liệu (variance): ý kiến tổng hợp của một loạt các mô hình sẽ ít nhiễu hơn là ý kiến đơn lẻ của một mô hình. Trong lĩnh vực tài chính, đây được gọi là đa dạng hóa – một – một danh mục hỗn hợp của nhiều cổ phiếu sẽ ít biến động hơn so với chỉ một trong số các cổ phiếu riêng lẻ.
  • Giảm over-fit: over-fit là hiện tượng khi mô hình hoạt động rất tốt với dữ liệu training, nhưng rất kém đối với dữ liệu test. Việc kết hợp nhiều mô hình cùng lúc giúp giảm vấn đề này.

Học không có giám sát

7. Thuật toán gom cụm (Clustering Algorithms)

Gom cụm là nhiệm vụ nhóm một tập hợp các đối tượng sao cho các đối tượng trong cùng một nhóm (cluster) giống nhau hơn so với các đối tượng trong các nhóm khác.

Thuật toán gom cụm (Clustering Algorithms)

Gom cụm có nhiều phương pháp khác nhau, sau đây là một vài trong số đó:

  • Gom cụm dựa vào tâm điểm (Centroid-based algorithms)
  • Gom cụm dựa vào tính kết nối (Connectivity-based algorithms)
  • Gom cụm dựa vào mật độ (Density-based algorithms)
  • Gom cụm dựa vào xác suất (Probabilistic)
  • Gom cụm dựa trên giảm chiều dữ liệu (Dimensionality Reduction)
  • Gom cụm dựa trên mạng nơ-ron/deep leanring (Neural networks / Deep Learning)

8. Phân tích thành phần chính (Principal Component Analysis – PCA)

PCA là một thuật toán thống kê sử dụng phép biến đổi trực giao để biến đổi một tập hợp dữ liệu từ một không gian nhiều chiều sang một không gian mới ít chiều hơn (2 hoặc 3 chiều) nhằm tối ưu hóa việc thể hiện sự biến thiên của dữ liệu.

Phân tích thành phần chính (Principal Component Analysis – PCA)

Phép biến đổi tạo ra những ưu điểm sau đối với dữ liệu:

  • Giảm số chiều của không gian chứa dữ liệu khi nó có số chiều lớn, không thể thể hiện trong không gian 2 hay 3 chiều.
  • Xây dựng những trục tọa độ mới, thay vì giữ lại các trục của không gian cũ, nhưng lại có khả năng biểu diễn dữ liệu tốt tương đương, và đảm bảo độ biến thiên của dữ liệu trên mỗi chiều mới.
  • Tạo điều kiện để các liên kết tiềm ẩn của dữ liệu có thể được khám phá trong không gian mới, mà nếu đặt trong không gian cũ thì khó phát hiện vì những liên kết này không thể hiện rõ.
  • Đảm bảo các trục tọa độ trong không gian mới luôn trực giao đôi một với nhau, mặc dù trong không gian ban đầu các trục có thể không trực giao.

Một số ứng dụng của PCA bao gồm nén, đơn giản hóa dữ liệu để dễ dàng học tập, hình dung. Lưu ý rằng kiến thức miền là rất quan trọng trong khi lựa chọn có nên tiếp tục với PCA hay không. Nó không phù hợp trong trường hợp dữ liệu bị nhiễu (tất cả các thành phàn của PCA đều có độ biến thiên khá cao)

9. Singular Value Decomposition

Trong đại số tuyến tính, SVD là một thừa số của ma trận phức tạp thực sự. Đối với một ma trận m*n đã xác định M, tồn tại một sự phân rã sao cho M = UΣV, trong đó U và V là các ma trận đơn nhất và Σ là một ma trận chéo.

Singular Value Decomposition

PCA thực ra là một ứng dụng đơn giản của SVD. Trong khoa học máy tính, các thuật toán nhận dạng khuôn mặt đầu tiên được sử dụng PCA và SVD để biểu diễn khuôn mặt như là một sự kết hợp tuyến tính của “eigenfaces”, làm giảm kích thước, và sau đó kết hợp khuôn mặt với các tính chất thông qua các phương pháp đơn giản. Mặc dù các phương pháp hiện đại phức tạp hơn nhiều, nhiều người vẫn còn phụ thuộc vào các kỹ thuật tương tự.

10. Phân tích thành phần độc lập (Independent Component Analysis)

ICA là một kỹ thuật thống kê nhằm tìm ra các yếu tố ẩn nằm dưới các bộ biến ngẫu nhiên, các phép đo hoặc tín hiệu. ICA định nghĩa một mô hình phát sinh cho dữ liệu đa biến quan sát được, thường được đưa ra như một cơ sở dữ liệu lớn các mẫu. Trong mô hình, các biến số dữ liệu giả định là hỗn hợp tuyến tính của một số biến tiềm ẩn chưa biết, và hệ thống hỗn hợp cũng không rõ. Các biến tiềm ẩn được giả định không gaussian và độc lập với nhau, và chúng được gọi là các thành phần độc lập của dữ liệu được quan sát.

Phân tích thành phần độc lập (Independent Component Analysis)

ICA có liên quan đến PCA, nhưng nó là một kỹ thuật mạnh hơn nhiều, có khả năng tìm ra các yếu tố bên dưới của các nguồn trong khi những phương pháp cổ điển thất bại hoàn toàn. Ứng dụng của nó bao gồm hình ảnh kỹ thuật số, cơ sở dữ liệu tài liệu, chỉ số kinh tế và đo lường tâm lý.
Kết thúc bài viết ở đây, hi vọng bạn đọc đã có những cái nhìn tổng quan về các thuật toán phổ biến trong AI. Nếu cảm thấy thích thú, hãy đào sâu hơn về chúng để có thể tạo ra những ứng dụng có “trí tuệ nhân tạo” phục vụ cho mọi người.