"Artificial Intelligence is the new electricity." — Andrew Ng —
Ảnh bởi
Owen Beard
trên
Unsplash
Từ nhỏ, mình đã là một người rất tò mò về mọi thứ. Mình luôn đặt ra vô vàn câu hỏi về thế giới xung quanh. Từ việc quan sát một tổ kiến để tìm hiểu cách chúng sinh hoạt hàng ngày, đến việc chăm chú xem xét những chiếc linh kiện điện tử trong case máy tính Windows 95 của bố. Chính sự "táy máy" của mình đã gây ra không ít phiền toái cho gia đình và mọi người xung quanh. Nhưng cũng nhờ vào tính cách tò mò không ngừng nghỉ ấy mà cuộc đời đã mở ra cho mình cơ hội được khám phá và nghiên cứu về một lĩnh vực cực kỳ thú vị.
Không thể phủ nhận rằng, lĩnh vực này sẽ mang lại giá trị to lớn cho nhân loại trong tương lai gần. Bạn chắc chắn đã từng nghe qua các phương tiện truyền thông nói về tác động của Trí tuệ Nhân tạo (Artificial Intelligence - AI) đến mọi lĩnh vực và đời sống xã hội. Trong loạt bài viết "HỌC MÁY CỦA MỘT THẰNG TỰ HỌC TRÊN MẠNG" này, mình sẽ đi sâu vào từng khái niệm, giải thích một cách dễ hiểu và sinh động để ngay cả một đứa trẻ cũng có thể hiểu được.
Ảnh bởi
Luca Bravo
trên
Unsplash
LƯU Ý: Mọi kiến thức và thông tin về Học Máy trong bài này sẽ chỉ dựa trên sự hiểu biết của một người tự tìm hiểu và tự học. Nếu có sai sót, xin vui lòng để lại bình luận dưới đây để mình có thể nhận ra và sửa chữa. Trong bài viết mình xin phép được sử dụng cụm từ Machine Learning hoặc ML thay cho Học Máy để tiện hành văn. Xin cảm ơn các bạn đã đọc bài của mình!

1. Artificial Intelligence (A.I) và Machine Learning

Vậy thì Artificial Intelligence (AI) là gì? Machine Learning là gì? Hai khái niệm này có thể đã từng khiến bạn lúng túng khi phải phân biệt chúng. Nhưng để dễ hình dung , Machine Learning là một tập hợp con nằm trong AI, và là một mảng cực kì quan trọng của AI. Mình sẽ giải thích hai khái niệm này rõ hơn một chút.
Artificial Intelligence (AI) là một lĩnh vực nghiên cứu cực kì rộng lớn trong khoa học máy tính, tập trung vào việc tạo ra những hệ thống, mô hình để thực hiện các nhiệm vụ đòi hỏi phải sử dụng trí tuệ của con người. Các nhiệm vụ bao gồm như: Xử lí ngôn ngữ tự nhiên, nhận diện hình ảnh, nhận diện giọng nói, hoặc có thể đưa ra những quyết định quan trọng đem lại lợi ích cho xã hội.
Machine Learning (học máy) là một nhánh của trí tuệ nhân tạo (AI). Nói cách khác, Machine Learning là phương pháp để đạt tới AI. ML tập trung vào việc phát triển các thuật toán giúp máy tính học cách đưa ra quyết định từ các dữ liệu đầu vào. Thay vì phải tuân theo các quy tắc lập trình cụ thể, ML cho phép máy tính tự tìm ra các quy tắc và mẫu trong dữ liệu.
Để dễ hình dung hãy tưởng tượng chiếc máy tính như một đứa bé 3 tuổi đang tìm hiểu thế giới xung quanh. Đứa bé ấy nhìn thấy một con vật đang di chuyển bằng bốn chân, có bộ lông màu vàng, đôi tai nhọn dựng đứng và đôi mắt tròn lấp lánh. Đứa bé sẽ đặt câu hỏi cho ba của nó đó là cái gì. Người ba nhẹ nhàng trả lời: "Đó chính là một con mèo lông vàng."
Trong ví dụ trên, con mèo chính là dữ liệu (Data) và các đặc trưng trong dữ liệu ấy gồm có: bộ lông màu vàng, cặp tai nhọn, và đôi mắt tròn. Đôi mắt của đứa bé sẽ tiếp nhận những đặc trưng này (Input) và chuyển đến não bộ, nơi các thông tin sẽ được xử lý (Model). Vậy làm sao đứa bé có thể phân biệt con vật đó để lần sau, khi gặp lại một con vật tương tự, nó có thể nhận ra
Bạn đoán đúng rồi đấy. Người ba sẽ là người dán nhãn con vật đó cho đứa bé (Output label). Với nhãn "con mèo lông vàng", lần sau khi gặp một con vật có các đặc trưng tương tự, đứa bé sẽ nhận ra đó là một con mèo.

2. Học giám sát và không giám sát (Supervised and Unsupervised Learning)

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

Ví dụ con mèo và cậu bé kể trên là cách mà một thuật toán học máy có giám sát (Supervised Learning) hoạt động. Đầu tiên, chúng ta có một bộ dữ liệu cùng với nhiều đặc trưng (features). Đặc trưng là những đặc điểm riêng lẻ của dữ liệu mang những thông tin hữu ích giúp mô hình học máy có thể phân loại hoặc dự đoán.
Hãy lấy ví dụ về việc xây dựng một mô hình dự đoán giá nhà đất. Các đặc trưng của dữ liệu có thể bao gồm: diện tích nhà (số mét vuông), số phòng ngủ, số tuổi của ngôi nhà, và việc ngôi nhà có nằm trên mặt tiền hay không. Tôi sẽ gọi những đặc trưng này là X. Sau đó, chúng ta cần dán nhãn (label) cho những đặc trưng trên. Ví dụ, một ngôi nhà có diện tích 100m², có 2 phòng ngủ, với chỉ 5 năm tuổi đời, nằm trên mặt tiền của một con đường lớn, sẽ được dán nhãn giá trị khoảng 50 - 100 tỷ đồng. Và tôi sẽ gọi nhãn dán này là Y.
Ví dụ của một mô hình học máy có giám sát đang học từ dữ liệu đầu vào X, Y
Ví dụ của một mô hình học máy có giám sát đang học từ dữ liệu đầu vào X, Y
Sự khác biệt của một mô hình được lập trình cổ điển (ảnh trên cùng) và một mô hình ML học có giám sát
Sự khác biệt của một mô hình được lập trình cổ điển (ảnh trên cùng) và một mô hình ML học có giám sát
Học có giám sát (Supervised Learning) là một trong nhiều nhánh chính của học máy (Machine Learning). Để hiểu đơn giản, bạn có thể tưởng tượng như việc học của một học sinh.
Chúng ta đưa bộ dữ liệu X và Y vào trong mô hình học máy. Mô hình sẽ học từ các ví dụ này, giống như một học sinh đang được học từ bài giảng và đáp án của thầy cô. Sau khi học xong, mô hình có thể đưa ra các quy tắc hoặc dự đoán dựa trên các đặc trưng mới mà nó chưa từng thấy trước đây.
Hãy hình dung quá trình học của mô hình như việc học sinh được giao bài kiểm tra sau khi đã học qua bài giảng. Bài kiểm tra có cấu trúc tương tự những gì học sinh đã học, nhưng chỉ khác về con số. Tương tự, nếu bạn cho mô hình biết thông tin về một ngôi nhà khác như diện tích, số phòng ngủ, tuổi, và vị trí, nó có thể dự đoán giá trị của ngôi nhà đó.
Bằng việc dán nhãn cho những đặc trưng của dữ liệu, chúng ta đang trực tiếp giám sát quá trình học của mô hình. Điều này có nghĩa chúng ta không chỉ cung cấp các đặc trưng (features) cho mô hình mà cả các nhãn dán (label) tương ứng. Mô hình sẽ học bằng cách liên kết giữa đặc trưng với các nhãn dán. Giúp nó có thể đưa ra quyết định chính xác khi gặp những dữ liệu mới
Mô hình học có giám sát cũng tương tự với cách mà một học sinh đang học trên trường lớp
Mô hình học có giám sát cũng tương tự với cách mà một học sinh đang học trên trường lớp

B. Học không giám sát (Unsupervised Learning)

Trái ngược với học có giám sát là học không giám sát, cũng giống như học có giám sát chúng ta sẽ đưa vào mô hình các đặc trưng (X) để cho mô hình có thể học được từ các đặc trưng ấy. Nhưng sự khác biệt ở đây là bộ dữ liệu của chúng ta lần này không có các nhãn dán (Y). Ngay cả con người cũng không biết phải dán nhãn cho các đặc trưng ấy như thế nào.
Hãy lấy một ví dụ thực tế giả sử bạn là người phụ trách phân loại các tệp khách hàng trong một công ty thời trang, dựa trên sở thích mua sắm thời trang của họ, nhưng bạn không biết chính xác khách hàng thuộc bộ sưu tập thời trang nào. Bạn có một tệp dữ liệu gồm 100 khách hàng của công ty này. Mỗi khách hàng được mô tả bởi các đặc trưng như loại sản phẩm họ mua, số lượng và tần suất mua hàng trong năm qua.
Sử dụng học không giám sát, bạn có thể áp dụng một thuật toán nổi tiếng mang tên phân cụm (Clustering) để phân nhóm các khách hàng dựa trên hành vi mua sắm của họ. Thuật toán sẽ tự động nhận diện các nhóm khách hàng có hành vi mua sắm tương đồng. Và sau đó công việc của chúng ta sẽ là dán nhãn cho những nhóm đó. Ví dụ, học không giám sát có thể phân thành các nhóm như: Nhóm khách hàng thường mua sản phẩm thời trang mùa Đông. Nhóm khách hàng thường mua sản phẩm thời trang mùa Hạ. Nhóm khách hàng mua sản phẩm thời trang cả bốn mùa. Nhóm khách hàng mua sản phẩm thời trang chủ yếu vào dịp lễ hội hoặc sự kiện đặc biệt.
Sau khi các nhóm được xác định, công ty có thể tối ưu hóa chiến lược marketing và quảng cáo sản phẩm phù hợp với từng nhóm khách hàng một cách hiệu quả hơn, mặc dù không cần biết trước rằng mỗi khách hàng thuộc nhóm khách hàng có sở thích mua sắm gì.
Nguồn: geeksforgeeks
Nguồn: geeksforgeeks
Mình xin phép lấy thêm một ví dụ cực kì quen thuộc nữa để giải thích cho khái niệm học không giám sát.
Một cậu bé 3 tuổi được ba mẹ mua cho bộ đồ chơi bao gồm nhiều loại xe khác nhau: xe thể thao, xe bán tải, xe quân sự, xe mô tô 2 bánh và một kệ tủ có nhiều ngăn để đặt các mô hình xe lên đó. Cậu bé còn rất trẻ không thể phân biệt chính xác từng loại xe khi nhìn vào chúng. Tuy nhiên, khi cậu bé lần lượt cầm các mô hình xe lên để quan sát, cậu bắt đầu nhận ra từng đặc trưng riêng biệt của từng loại xe.
Những chiếc xe tải thường có kích cỡ lớn và thùng xe dài để chở hàng, do đó cậu bé sắp xếp những chiếc xe này vào một ngăn. Tiếp theo, cậu chú ý đến những chiếc xe có bốn bánh, nhỏ gọn, thiết kế phức tạp và rất bắt mắt, và cậu đặt những chiếc xe có đặc trưng tương tự vào một ngăn khác. Cứ như vậy, từng ngăn của kệ tủ được cậu bé lấp đầy dần dần.
Vậy việc cậu bé nhìn vào những đặc trưng của các loại xe cũng như mô hình học không giám sát đang nhìn vào một các đặc trưng của bộ dữ liệu vậy. Mô hình sẽ đánh giá các ví dụ được đưa vào dựa trên sự tương đồng của các đặc trưng trong ví dụ. sau đó mô hình sẽ phân chia các ví dụ có cùng những đặc trưng tương đồng vào một nhóm riêng biệt. Như cái cách mà cậu bé đặt những mô hình xe sở hữu các đặc trưng tương đồng vào một ngăn tủ.
Và đó là hai nhánh chính của Machine Learning ngoài ra còn nhiều nhánh trong Machine Learning cũng quan trọng không kém đó là: Học Sâu (Deep Learning), Học Tăng Cường (Reinforcement Learning), Học Chuyển Giao (Transfer Learning). Mà mình sẽ giải thích từng khái niệm trên trong những bài viết tiếp theo.
Nguồn: Melissa Ng trong TheNewStack
Nguồn: Melissa Ng trong TheNewStack
Trong loạt bài viết về học máy của mình, mình sẽ khám phá sâu hơn vào hai nhánh chính của học máy: học giám sát và học không giám sát (Supervised Learning và Unsupervised Learning). Hiểu rõ các khái niệm và cách chúng hoạt động là cơ sở quan trọng để tiếp cận các nhánh khác như học sâu, học tăng cường và học chuyển giao. Mình sẽ giải thích mỗi khái niệm một cách chi tiết, giúp các bạn có cơ sở vững chắc hơn khi tiếp tục khám phá.
Cảm ơn các bạn đã dành thời gian để đọc bài viết của mình. Hãy cùng đón chờ những bài viết sắp tới trong "LOẠT BÀI VIẾT VỀ HỌC MÁY CỦA MỘT THẰNG TỰ HỌC TRÊN MẠNG."
"Chúng ta không thể dự đoán được nếu máy tính sẽ có thể nghĩ giống như con người được hay không, nhưng không có lý do nào làm cho chúng không thể. - Alan Turing
Còn tiếp...