Machine Learning là gì? Khái niệm cơ bản và ứng dụng trong đời sống
Machine learning trong thời đại 4.0 hiện nay đang được ứng dụng phổ biến trên mọi lĩnh vực. Machine learning giống như một phần không thể thiếu cùng với trí tuệ nhân tạo. Trong bài viết hôm nay, Bizfly Cloud sẽ nêu ra những khái niệm cơ bản để bạn đọc hiểu rõ hơn nhé.
Machine learning là gì?
Machine learning là một lĩnh vực con của Trí tuệ nhân tạo, sử dụng các thuật toán giúp cho máy tính có thể học từ dữ liệu để thực hiện các công việc thay vì được lập trình một cách rõ ràng.
Trong vài năm gần đây, machine learning gây nên cơn sốt công nghệ trên toàn thế giới. Trong giới học thuật mỗi năm có hàng ngàn bài báo khoa học về đề tài này. Còn đối với giới công nghiệp, từ các công ty lớn như Google, Facebook, Microsoft đến những công ty khởi nghiệp đều đầu tư vào machine learning.
Trên thực tế, machine learning hiện nay đang là lĩnh vực thể hiện rõ sự tiến bộ trong tiến trình của Trí tuệ nhân tạo. Đây là một chủ đề nóng và có khả năng làm cho máy móc trở nên thông minh hơn.
Sự ra đời của machine learning
Điều khác biệt chính giữa con người và máy tính là con người học hỏi từ những kinh nghiệm được đúc kết từ trong quá khứ, nhưng với máy tính hoặc máy móc thì cần được thực hiện theo một quy trình có sẵn. Máy tính là những thiết bị hoạt động một cách nghiêm ngặt với ý nghĩa thông thường.
Như vậy chúng ta có thể hiểu được rằng, nếu muốn máy làm một việc gì đó chúng ta cần cung cấp cho nó những quy trình và hướng dẫn chi tiết từng bước về chính xác những việc cần làm.
Vậy nên, con người đã viết ra các kịch bản và lập trình để máy tính làm theo hướng dẫn và có khả năng tự học hỏi. Đây là cách mà machine learning ra đời.
Khái niệm máy học chính xác là máy tính học hỏi từ các dữ liệu có trong quá khứ và rút kinh nghiệm qua thời gian để thực hiện các việc chúng ta muốn một cách hoàn chỉnh nhất.
Phân loại machine learning
Supervised machine learning (Học máy có giám sát)
Supervised machine learning hay Học máy có giám sát sử dụng các tệp dữ liệu được gắn nhãn để tạo các thuật toán nhằm phân loại dữ liệu hoặc dự đoán chính xác kết quả. Nói cách khác, mỗi đầu vào Xi sẽ có nhãn Yi tương ứng.
Supervised machine learning giúp các tổ chức giải quyết các vấn đề trong thế giới thực trên quy mô lớn như phân loại thư rác trong hộp thư đến vào một thư mục riêng. Một số phương pháp phổ biến trong Supervised machine learning bao gồm Naive Bayes, hồi quy tuyến tính, hồi quy logistic, mạng nơ-ron, SVM,...
Unsupervised machine learning (Học máy không giám sát)
Loại machine learning này sử dụng các thuật toán học máy để phân tích và phân cụm các tệp dữ liệu không gắn nhãn. Các thuật toán này sẽ tìm ra điểm tương quan dữ liệu, mô hình hóa dữ liệu để máy tính có thể hiểu về dữ liệu, từ đó phân loại dữ liệu thành các lớp, nhóm (clustering) giống nhau hoặc giảm số chiều dữ liệu.
Với khả năng phát hiện điểm tương đồng và khác biệt của dữ liệu, Unsupervised machine learning là giải pháp hữu hiệu để phân tích dữ liệu, phân khúc khách hàng, lên chiến lược bán chéo và nhận dạng mẫu, hình ảnh. Các thuật toán sử dụng trong loại machine learning này bao gồm mạng nơ-ron, K-means, phân nhóm xác suất,...
Semi-supervised machine learning (Học máy bán giám sát)
Semi-supervised machine learning cung cấp phương tiện kết nối giữa machine learning có giám sát và machine learning không giám sát. Trong quá trình đào tạo, loại machine learning này sử dụng tệp dữ liệu có nhãn nhỏ hơn để hướng dẫn phân loại, trích xuất tính năng từ tệp dữ liệu lớn hơn không gắn nhãn. Semi-supervised machine learning giúp giải quyết vấn đề không có đủ dữ liệu được gắn nhãn để đào tạo thuật toán học có giám sát.
Quy trình làm việc của machine learning như thế nào?
Machine Learning sẽ có quy trình cơ bản như sau:
- Data collection/Gathering data (Thu thập dữ liệu): Đây là công việc tốn thời gian nhất, có thể chiếm đến 70-80% tổng thời gian quy trình. Tuy nhiên, việc thu thập dữ liệu đóng vai trò rất quan trọng, ảnh hưởng đến mô hình máy học. Để mô hình có thể hoạt động một cách tốt nhất sẽ cần một bộ dữ liệu tốt.
- Data preprocessing (Tiền xử lý dữ liệu): Tiền xử lý dữ liệu giúp chuẩn hóa dữ liệu và loại bỏ các thuộc tính không cần thiết.
- Training model (Huấn luyện mô hình) & Evaluating model (Đánh giá mô hình): Công việc này sẽ chiếm ít thời gian hơn và được xoay vòng thực hiện liên tục. Sau khi đánh giá mô hình sẽ tiếp tục tối ưu, huấn luyện và đánh giá đến khi độ chính xác tăng cao. Tuy không chiếm nhiều thời gian nhưng đây cũng là giai đoạn quan trọng để lựa chọn mô hình phù hợp.
- Improve (Cải thiện): Sau khi đánh giá và chọn được mô hình phù hợp, một vài mô hình chưa đạt yêu cầu về độ chính xác sẽ cần được huấn luyện lại. Do đó, quy trình sẽ lặp lại từ bước 3 cho đến khi đạt độ chính xác như yêu cầu. Thời gian thực hiện các bước huấn luyện, đánh giá và cải thiện chiếm khoảng 30% tổng quy trình.
Sự phát triển của Machine Learning
Ngày nay, nhờ vào công nghệ điện toán machine learning không còn là máy tính "học" những chuyện trong quá khứ nữa. Machine learning được sinh ra từ khả năng nhận diện pattern và từ lý thuyết các máy tính có thể "học" mà không cần phải lập trình.
Các nhà nghiên cứu quan tâm đến trí tuệ nhân tạo lại muốn xem thử liệu máy tính có thể học dữ liệu như thế nào. Yếu tố lặp trong machine learning rất quan trọng vì khi các models tiếp xúc với dữ liệu mới. Machine learning có thể thích ứng được 1 cách độc lập. Machine learning sẽ "học" các computations trước để trả về các kết quả, các quyết định đáng tin cậy.
Từ lâu đã có nhiều thuật toán Machine learning nổi tiếng nhưng với khả năng tự động áp dụng các phép tính vào Big Data - lặp đi lặp lại với tốc độ nhanh hơn chỉ mới phát triển gần đây.
Một số thuật toán trong machine learning
Linear Regression (Hồi quy tuyến tính)
Đây được coi là thuật toán nổi tiếng trong machine learning. Hồi quy tuyến tính là phương pháp thống kê để hồi quy dữ liệu với biến phụ thuộc có giá trị liên tục, trong khi biến độc lập sẽ có giá trị liên tục hoặc giá trị phân loại. Ví dụ, bạn cần sắp xếp các khúc gỗ ngẫu nhiên theo thứ tự tăng dần về trọng lượng. Vì không cân được từng khúc, bạn sẽ sắp xếp bằng cách đoán trọng lượng dựa vào chiều cao và chu vi của chúng. Đây được coi là loại thuật toán dễ sử dụng và có thể thực hiện nhanh chóng.
Logistic Regression (Hồi quy logistic)
Logistic Regression được sử dụng để ước tính các giá trị rời rạc, thường là giá trị nhị phân từ một tệp hợp các biến độc lập. Bằng cách khớp dữ liệu với một hàm logit, hồi quy logistic giúp dự đoán xác suất của sự kiện. Tương tự hồi quy tuyến tính, hồi quy logistic hoạt động hiệu quả hơn khi loại bỏ các thuộc tính không liên quan đến biến đầu ra, hoặc các thuộc tính tương tự nhau. Đây là mô hình có thể học nhanh và hiệu quả đối với các vấn đề phân loại nhị phân.
Naive Bayes
Đây là thuật toán đơn giản nhưng có mô hình tiên đoán vô cùng chính xác. Mô hình Naive Bayes giả định rằng sự hiện diện của một đối tượng địa lý cụ thể trong một lớp không liên quan đến sự hiện diện của bất kỳ đối tượng nào khác.
Nếu các tính năng này có liên quan với nhau, Naive Bayes sẽ giúp xem xét độc lập các thuộc tính này khi tính toán xác suất và đưa ra một kết quả cụ thể. Mô hình Naive Bayes có thể được xây dựng dễ dàng và rất hữu ích cho các bộ dữ liệu lớn với nhiều vấn đề phức tạp.
Support Vector Machine (SVM)
Đây là phương pháp thuật toán phân loại, trong đó biểu đồ dữ liệu thô được vẽ dưới dạng các điểm trong không gian N chiều (N là số đối tượng đang có). Giá trị của mỗi đối tượng địa lý sẽ được gắn với một tọa độ cụ thể, giúp phân loại dữ liệu dễ dàng hơn. Các dòng đó được gọi là bộ phân loại để tách dữ liệu và vẽ trên biểu đồ. Thuật toán SVM giúp giải quyết các vấn đề như phân loại hình ảnh có phạm vi rộng, hiển thị quảng cáo,...
K-means
K-means là thuật toán machine learning không giám sát nhằm giải quyết các vấn đề phân cụm. Các tệp dữ liệu được phân loại thành một số cụm cụ thể (gọi là K) mà các điểm dữ liệu trong một cụm sẽ đồng nhất và không đồng nhất với dữ liệu trong cụm khác.
K-mean tạo thành các cụm như sau:
- Chọn K số điểm (centroid) cho mỗi cụm
- Mỗi điểm dữ liệu tạo thành một cụm (cụm K) với các trung tâm gần nhất.
- Tạo các trung tâm mới dựa trên cụm thành viên hiện có
- Khoảng cách gần nhất cho mỗi điểm dữ liệu được xác định dựa trên những trung tâm mới này. Quá trình này sẽ lặp lại đến khi các trung tâm không thay đổi.
Decision Tree (Cây quyết định)
Đây là thuật toán machine learning có giám sát để phân loại vấn đề. Decision Tree được sử dụng khi phân loại biến phụ thuộc phân loại và biến phụ thuộc liên tục. Ngoài ra, có thể chia tổng thể thành hai hay nhiều tệp đồng nhất dựa trên các thuộc tính hoặc biến độc lập quan trọng.
Dimensionality Reduction (Thuật toán giảm kích thước)
Trong thế giới ngày nay, các công ty, cơ quan chính phủ và tổ chức nghiên cứu thường lưu trữ và thực hiện phân tích một lượng lớn dữ liệu. Vì các dữ liệu thô này chứa rất nhiều thông tin nên cần xác định được các mẫu và biến quan trọng. Nói cách khác, Dimensionality Reduction là việc chuyển đổi dữ liệu từ không gian chiều cao thành không gian chiều thấp để biểu diễn chiều thấp, một số thuộc tính có ý nghĩa của dữ liệu ban đầu sẽ được giữ lại.
Một số ứng dụng của machine learning
Cảnh báo giao thông (ứng dụng Google Maps)
Google Maps có lẽ là ứng dụng được sử dụng nhiều nhất mỗi khi bạn tham gia giao thông. Đặc biệt, khi các ứng dụng khác về di chuyển như Grab, Be được áp dụng rộng rãi.
Những thông tin về quãng đường đi, thời gian di chuyển được cùng lúc phân tích trên Google Maps. Trên thực tế, dữ liệu lịch sử của tuyến đường đã được thu thập theo thời gian và thu thập từ một số dữ liệu có từ các nguồn khác.
Những thông tin này được Google thu thập và tổng hợp thành dữ liệu về lưu lượng truy cập, thông qua những thuật toán phân tích trên machine learning.
Mạng xã hội Facebook
Một trong những ứng dụng phổ biến nhất của machine learning là "đề xuất gắn thẻ bạn bè tự động trên Facebook". Facebook sử dụng tính năng nhận diện khuôn mặt và nhận dạng hình ảnh để tự động tìm thấy khuôn mặt của người phù hợp.
Dự án DeepFace của Facebook thực hiện nhiệm vụ nhận diện khuôn mặt và xác định đối tượng cụ thể trong ảnh. Ngoài ra, nó cũng cung cấp Thẻ Alt (Thẻ thay thế) cho hình ảnh đã được tải lên trên facebook.
Trợ lý cá nhân ảo
Với úng dụng trợ lý cá nhân ảo, bạn có thể tìm kiếm các thông tin hữu ích khi được yêu cầu qua văn bản hoặc giọng nói. Một số ứng dụng chính của machine learning như là:
- Nhận dạng giọng nói
- Chuyển đổi lời nói thành đoạn văn bản
- Xử lý ngôn ngữ tự nhiên
- Chuyển đổi văn bản thành giọng nói
Truyền phát video trực tuyến trên Netflix
Những thuật toán được xây dựng trên Netflix sẽ liên tục thu thập lượng dữ liệu khổng lồ về hoạt động của người dùng như:
- Khi nào bạn tua lại hoặc tua nhanh, khi nào bạn tạm dừng
- Bạn xem nội dung gì
- Ngày, giờ bạn xem
- Khi bạn tạm dừng và để lại nội dung
Phát hiện gian lận (Fraud detection)
Theo các chuyên gia dự đoán, giá trị gian lận thẻ tín dụng trực tuyến sẽ tăng vọt lên đến 32 tỷ đô la vào năm 2020. Đồng thời, số lượng tội phạm cũng đã trở nên thận trọng hơn. Đây sẽ là vấn đề đáng lo ngại.
Chính vì vậy, machine learning được coi là một giải pháp hoàn hảo cho vấn đề này. Bởi phát hiện gian lận là một trong những tính năng quan trọng nhất của machine learning.
Hiện nay, mặc dù machine learning vẫn chưa thể đạt được mức độ chính xác lên tới 100% bởi thuật toán là do con người tạo ra. Tuy nhiên, machine learning thực sự là một công cụ tuyệt vời giúp AI tiếp cận được với nhiều đối tượng sử dụng hơn.
Theo Bizfly Cloud chia sẻ
Bizfly Cloud là nhà cung cấp dịch vụ điện toán đám mây với chi phí thấp, được vận hành bởi VCCorp.
Bizfly Cloud là một trong 4 doanh nghiệp nòng cốt trong "Chiến dịch thúc đẩy chuyển đổi số bằng công nghệ điện toán đám mây Việt Nam" của Bộ TT&TT; đáp ứng đầy đủ toàn bộ tiêu chí, chỉ tiêu kỹ thuật của nền tảng điện toán đám mây phục vụ Chính phủ điện tử/chính quyền điện tử.
Độc giả quan tâm đến các giải pháp của Bizfly Cloud có thể truy cập tại đây.
DÙNG THỬ MIỄN PHÍ và NHẬN ƯU ĐÃI 3 THÁNG tại: Manage.bizflycloud