Machine Learning (Máy Học) là gì?

Học máy (hay Machine Learning) là những thuật toán chung có thể cho bạn biết điều gì đó thú vị về một tập hợp dữ liệu mà không cần bạn phải viết bất kỳ mã tùy chỉnh cụ thể nào cho vấn đề. Thay vì viết mã, bạn cung cấp dữ liệu cho thuật toán chung và nó xây dựng logic riêng dựa trên dữ liệu.

Ví dụ, một loại thuật toán phân loại. Nó có thể đưa dữ liệu vào các nhóm khác nhau. Thuật toán phân loại tương tự được sử dụng để nhận dạng các chữ số viết tay cũng có thể được sử dụng để phân loại email thành thư rác và không phải thư rác mà không cần thay đổi bất kỳ một dòng mã nào. Nó cùng là một thuật toán nhưng nó đã cung cấp dữ liệu đào tạo khác nhau để đưa ra logic phân loại khác nhau.

Image for post
Thuật toán máy học này là một hộp đen có thể được sử dụng lại cho rất nhiều vấn đề phân loại khác nhau.

“Machine Learning” là một thuật ngữ ô bao gồm rất nhiều loại thuật toán chung.

Hai loại thuật toán học máy

Bạn có thể nghĩ về các thuật toán máy học theo một trong hai loại chính – học tập có giám sát (supervised learning) và học tập không có giám sát (unsupervised learning). Không khó để nhận ra sự khác biệt, nhưng nó rất quan trọng.

Supervised Learning – Học có giám sát

Hãy nói rằng bạn là một đại lý bất động sản. Doanh nghiệp của bạn đang phát triển, vì vậy bạn thuê một loạt các thực tập sinh mới để giúp bạn. Nhưng có một vấn đề – bạn có thể liếc nhìn vào một ngôi nhà và có một ý tưởng khá hay về ngôi nhà đó có giá trị gì, nhưng những thực tập sinh của bạn không có kinh nghiệm của bạn nên họ không biết cách định giá căn nhà đó.

Để giúp các thực tập sinh, bạn quyết định viết một ứng dụng nhỏ có thể ước tính giá trị của một ngôi nhà trong khu vực của bạn dựa trên kích thước của nó, khu phố, v.v., và những ngôi nhà tương tự đã bán.

Vì vậy, bạn viết ra mỗi khi ai đó bán một căn nhà trong thành phố của bạn trong 3 tháng. Đối với mỗi ngôi nhà, bạn viết ra một loạt các chi tiết – số phòng ngủ, kích thước bằng feet vuông, khu phố, v.v. Nhưng quan trọng nhất, bạn viết ra giá bán cuối cùng:

Image for post
Đây là dữ liệu đào tạo của chúng tôi.

Sử dụng dữ liệu đào tạo đó, chúng tôi muốn tạo một chương trình có thể ước tính giá trị của bất kỳ ngôi nhà nào khác trong khu vực của bạn:

Image for post
Chúng tôi muốn sử dụng dữ liệu đào tạo để dự đoán giá của các ngôi nhà khác.

Điều này được gọi là học tập có giám sát. Bạn biết mỗi căn nhà được bán với giá bao nhiêu, vì vậy nói cách khác, bạn biết câu trả lời cho vấn đề và có thể làm việc để từ đó tìm ra logic.

Để xây dựng ứng dụng của bạn, bạn cần cung cấp dữ liệu đào tạo về từng ngôi nhà vào thuật toán máy học của bạn. Thuật toán đang cố gắng tìm ra loại toán học nào cần được thực hiện để làm cho các con số hoạt động được.

Kiểu này giống như các kết quả trả lời cho bài kiểm tra toán với tất cả các ký hiệu số học bị xóa:

Image for post
Ôi không! Một học sinh ranh ma đã xóa các ký hiệu số học từ khóa trả lời của giáo viên!

Từ điều này, bạn có thể tìm ra loại bài toán nào trong bài kiểm tra không? Bạn biết rằng bạn có nghĩa vụ phải làm một điều gì đó với những con số bên trái để nhận được đúng câu trả lời ở bên phải.

Trong học tập có giám sát (supervised learning), bạn đang để máy tính giải quyết mối quan hệ đó cho bạn. Và một khi bạn biết toán học nào được yêu cầu để giải quyết tập hợp vấn đề cụ thể này, bạn có thể trả lời cho bất kỳ vấn đề nào khác cùng loại!

Unsupervised Learning – Học tập không giám sát

Hãy lùi lại ví dụ ban đầu của chúng tôi với các đại lý bất động sản. Nếu bạn không biết giá bán cho mỗi ngôi nhà thì sao? Ngay cả khi tất cả những gì bạn biết là kích thước, vị trí, vv của mỗi ngôi nhà, hóa ra bạn vẫn có thể làm một số thứ thực sự tuyệt vời. Điều này được gọi là học tập không giám sát.

Image for post
Ngay cả khi bạn không cố gắng dự đoán một con số không xác định (như giá cả), bạn vẫn có thể làm những điều thú vị với máy học.

Điều này giống như ai đó đưa cho bạn một danh sách các số trên một tờ giấy và nói rằng tôi không thực sự biết những con số này có nghĩa là gì nhưng có lẽ bạn có thể tìm ra nếu có một mô hình hoặc nhóm hoặc một cái gì đó – chúc may mắn!

Vậy những gì có thể làm với dữ liệu này? Để bắt đầu, bạn có thể có một thuật toán tự động xác định các phân khúc thị trường khác nhau trong dữ liệu của bạn. Có thể bạn tìm thấy những người mua nhà trong khu phố gần trường đại học địa phương thực sự thích những ngôi nhà nhỏ có nhiều phòng ngủ, nhưng những người mua nhà ở vùng ngoại ô thích những ngôi nhà 3 phòng ngủ có nhiều góc vuông. Biết về những loại khách hàng khác nhau này có thể giúp định hướng các nỗ lực tiếp thị của bạn.

Một điều tuyệt vời khác bạn có thể làm là tự động xác định bất kỳ ngôi nhà bên ngoài nào khác biệt so với mọi thứ khác. Có thể những ngôi nhà xa lạ đó là những lâu đài khổng lồ và bạn có thể tập trung những người bán hàng giỏi nhất của mình vào những khu vực đó vì họ có hoa hồng lớn hơn.

Học tập có giám sát (Unsupervised Learning) là những gì chúng tôi tập trung vào phần còn lại của bài đăng này, nhưng điều đó không phải vì học tập không giám sát là ít hữu ích hoặc thú vị. Trong thực tế, việc học tập không giám sát ngày càng trở nên quan trọng khi các thuật toán trở nên tốt hơn bởi vì nó có thể được sử dụng mà không phải gắn nhãn dữ liệu với câu trả lời đúng.

Lưu ý bên lề: Có rất nhiều loại thuật toán máy học khác. Nhưng đây là một nơi khá tốt để bắt đầu.

(Còn tiếp)

Nguồn: Medium.com

Người viết: Adam Geitgey