Machine learning là gì?Học máy là một ứng dụng của trí tuệ nhân tạo AI cung cấp cho các hệ thốngkhả năng tự động học hỏi và cải thiện từ kinh nghiệm mà không cần lập trình rõ ràng.Học má
MÁY HỌC VÀ ỨNG DỤNG
Sự ra đời của machine learning
Một trong những 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 trong quá khứ, nhưng với máy tính hoặc máy móc cần được phải được thực hiện theo một quy trình có sẵn Máy tính là những máy logic nghiêm ngặt với ý nghĩa thông thường [1]. Điều đó có nghĩa là nếu chúng ta muốn máy làm điều gì đó, chúng ta phải cung cấp cho nó những quy trình và các 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ì vậy, con người đã viết nên các kịch bản và lập trình để máy tính làm theo các hướng dẫn và có khả năng tự học hỏi Đó là cái cách mà Machine Learning ra đời.Khái niệm máy học chính xác là việc máy tính học hỏi từ dữ liệu trong quá khứ và rút kinh nghiệm qua thời gian.
Machine learning là gì?
Học máy là một ứng dụng của trí tuệ nhân tạo (AI) cung cấp cho các hệ thống khả năng tự động học hỏi và cải thiện từ kinh nghiệm mà không cần lập trình rõ ràng. Học máy tập trung vào việc phát triển các chương trình máy tính có thể truy cập dữ liệu và sử dụng nó để tự học [1].
Quá trình học bắt đầu bằng các quan sát hoặc dữ liệu Ví dụ, để tìm kiếm các mẫu trong dữ liệu và đưa ra quyết định tốt hơn trong tương lai dựa trên các ví dụ mà chúng tôi cung cấp Mục đích chính là cho phép các máy tính tự động học mà không cần sự can thiệp hay trợ giúp của con người và điều chỉnh các hành động tương ứng.
Thuật toán trong machine learning
Các thuật toán học máy thường được phân loại là giám sát hoặc không giám sát.
1.3.1 Các thuật toán học máy được giám sát
Nó có thể áp dụng những gì đã được học trong quá khứ vào dữ liệu mới bằng cách sử dụng các ví dụ được gắn nhãn để dự đoán các sự kiện trong tương lai Bắt đầu từ việc phân tích một tập dữ liệu huấn luyện đã biết, thuật toán học tạo ra một hàm được suy ra để đưa ra dự đoán về các giá trị đầu ra [1].
1.3.2 Các thuật toán học máy không giám sát
Ngược lại, thuật toán học máy không giám sát được sử dụng khi thông tin được sử dụng để đào tạo không được phân loại cũng không được dán nhãn Nghiên cứu học tập không giám sát làm thế nào các hệ thống có thể suy ra một chức năng để mô tả một cấu trúc ẩn từ dữ liệu không được gắn nhãn [1].
1.3.3 Các thuật toán Machine Learning bán giám sát
Các thuật toán học máy được giám sát bán nằm ở đâu đó giữa học tập có giám sát và không giám sát, vì chúng sử dụng cả dữ liệu được gắn nhãn và không nhãn cho đào tạo - thường là một lượng nhỏ dữ liệu được gắn nhãn và một lượng lớn dữ liệu không được gắn nhãn Các hệ thống sử dụng phương pháp này có thể cải thiện đáng kể độ chính xác trong học tập [1].
1.3.4 Thuật toán học máy gia cố
Một số ứng dụng của Machine Learning hiện nay
Phân loại tin tức là một ứng dụng điểm chuẩn khác của phương pháp học máy.Vận dụng như thế nào? Như một vấn đề thực tế là bây giờ khối lượng thông tin đã tăng lên rất nhiều trên web Tuy nhiên, mỗi người có sở thích hoặc lựa chọn cá nhân của mình Vì vậy, để chọn hoặc thu thập một phần thông tin phù hợp trở thành một thách thức đối với người dùng từ vô số nội dung trên trang web [1].
Hình 3 Tự động phân loại
Phân loại các danh mục một cách rõ ràng, dễ điều hướng giúp cho các khách hàng mục tiêu chắc chắn sẽ tăng khả năng truy cập các trang tin tức Hơn nữa, độc giả hoặc người dùng có thể tìm kiếm tin tức cụ thể một cách hiệu quả và nhanh chóng.
Có một số phương pháp học máy trong mục đích này, tức là, máy vectơ hỗ trợ, naive Bayes, k-nearest neighbor, v.v.
1.4.2 Ứng dụng trong các mạng xã hội
Học máy đang được sử dụng trong một loạt các ứng dụng ngày nay Một trong những ví dụ nổi tiếng nhất là Facebook News Feed Nguồn cấp tin tức sử dụng học máy để cá nhân hóa từng nguồn cấp dữ liệu thành viên [1].
Nếu một thành viên thường xuyên dừng lại để đọc hoặc thích một bài đăng của một người cụ thể, News Feed sẽ bắt đầu hiển thị nhiều hơn về hoạt động của người đó trước đó trong nguồn cấp dữ liệu. Đằng sau hệ thống ấy, phần mềm sử dụng phân tích thống kê và phân tích dự đoán để xác định các mẫu trong dữ liệu người dùng và sử dụng các mẫu đó để điền vào News Feed Nếu thành viên không còn dừng lại để đọc, thích hoặc bình luận trên các bài đăng của người dùng, dữ liệu mới đó sẽ được bao gồm trong tập dữ liệu và
Không chỉ riêng facebook, ta có thể bắt gặp những tính năng tương tự đó qua các mạng xã hội khác như google, instagram,
Nhận dạng hình ảnh là một trong những ví dụ về máy học và trí tuệ nhân tạo phổ biến nhất Về cơ bản, nó là một cách tiếp cận để xác định và phát hiện các đặc trưng của một đối tượng trong hình ảnh kỹ thuật số Hơn nữa, kỹ thuật này có thể được sử dụng để phân tích sâu hơn, chẳng hạn như nhận dạng mẫu, nhận diện hình khuôn,nhận dạng khuôn mặt, nhận dạng ký tự quang học và nhiều hơn nữa, [1]
THUẬT TOÁN PHÂN LOẠI VÀ PHÂN TÍCH DỮ LIỆU
2.1 Thuật toán phân loại (Classification)
Classification là một trong những khía cạnh quan trọng nhất của việc học có giám sát [2]
Regression logistic có thể là một thuật toán Classification học có giám sát sẽ không dự đoán xác suất của một biến mục tiêu Đây là một trong những thuật toán ML duy nhất sẽ được sử dụng cho các vấn đề Classification khác nhau như phát hiện spam, dự đoán bệnh tiểu đường, phát hiện ung thư, v.v [2].
Regression logistic đơn giản hơn để triển khai, diễn giải và thực sự hiệu quả để huấn luyện
Nếu số lượng quan sát ít hơn số lượng tính năng, thì không nên sử dụng Regression logistic, nếu không, nó sẽ gây ra tình trạng trang bị quá mức.
Thuật tốn Nạve Bayes cĩ thể là một thuật tốn học cĩ giám sát, được dự đốn trên định lý Bayes và được sử dụng để giải các bài toán Classification Đó không phải là một thuật toán mà là một nhóm thuật toán trong đó tất cả chúng đều có chung một nguyên tắc tiêu chuẩn, tức là mọi cặp tính năng đang được Classification là độc lập với mọi tính năng khác [2].
Nạve Bayes Classifier là một trong những thuật tốn Classification đơn giản và tốt nhất giúp xây dựng các mô hình học máy nhanh sẽ đưa ra các dự đoán nhanh chóng
Naive Bayes là một trong những thuật toán học máy mạnh mẽ được sử dụng đểClassification Nó là một phần mở rộng của định lý Bayes, trong đó mỗi đặc điểm giả định sự độc lập Nó được sử dụng cho nhiều nhiệm vụ khác nhau như lọc thư rác và các lĩnh vực Classification văn bản khác.
Các thuật toán Decision Tree được sử dụng cho cả dự đoán cũng như Classification trong học máy [2].
Sử dụng Decision Tree với một tập hợp các yếu tố đầu vào nhất định, người ta có thể lập bản đồ các kết quả khác nhau là kết quả của các hệ quả hoặc quyết định.
K-Nearest Neighbors gần nhất là một trong những thuật toán Classification cơ bản nhưng quan trọng nhất trong học máy [2].
KNN thuộc miền học được giám sát và có một số ứng dụng trong nhận dạng mẫu, khai thác dữ liệu và phát hiện xâm nhập Các KNN này được sử dụng trong các tình huống thực tế yêu cầu các thuật toán phi tham số Các thuật toán này không đưa ra bất kỳ giả định nào về cách dữ liệu được phân phối.
Máy vectơ hỗ trợ là một loại thuật toán học máy được giám sát cung cấp phân tích dữ liệu để Classification và phân tích Regression [2].
Trong khi chúng có thể được sử dụng để Regression, SVM chủ yếu được sử dụng để Classification Chúng tôi thực hiện vẽ đồ thị trong không gian n chiều Giá trị của mỗi đối tượng địa lý cũng là giá trị của tọa độ được chỉ định Sau đó, chúng ta tìm thấy siêu phẳng lý tưởng phân biệt giữa hai lớp.
Hình 5 Support vector machine (svm)
Các vectơ hỗ trợ này là biểu diễn tọa độ của quan sát riêng lẻ Nó là một phương thức biên giới để tách biệt hai lớp.
Bộ Classification Random Forest là một loại phương pháp học tập hợp được sử dụng để Classification, Regression và các tác vụ khác có thể được thực hiện với sự trợ giúp của Decision Tree Các Decision Tree này có thể được xây dựng tại thời điểm đào tạo và đầu ra của lớp có thể là Classification hoặc Regression [2].
Với sự giúp đỡ của những khu Random Forest này, người ta có thể sửa thói quen quá thích hợp với bộ huấn luyện.
2.1.7 Thuật toán Stochastic Gradient Descent
Stochastic Gradient Descent (SGD) là một lớp thuật toán học máy thích hợp cho việc học tập trên quy mô lớn Đó là một cách tiếp cận hiệu quả hướng tới việc học phân biệt các bộ Classification tuyến tính theo hàm mất mát lồi tuyến tính (SVM) vàRegression logistic [2].
Trong mô-đun con này, có nhiều chức năng khác nhau thực hiện tính gần đúng của các bản đồ đặc trưng tương ứng với một số hạt nhân nhất định được sử dụng làm ví dụ trong máy vectơ hỗ trợ Các hàm đặc trưng này thực hiện một loạt các phép biến đổi phi tuyến tính của đầu vào, đóng vai trò là cơ sở của Classification tuyến tính hoặc các thuật toán khác [2].
2.2.1 Phân loại thư rác (Email Spam Detection)
Một ứng dụng phổ biến của machine learning là phân loại email thành hai nhóm: thư rác và thư chính thống Các mô hình có thể học từ các đặc trưng như từ khóa, cú pháp, và các đặc điểm khác để xác định xem một email có phải là thư rác hay không [3].
2.2.2 Phát hiện bệnh trong hình ảnh y tế
Hình 9 Phát hiện bệnh trong hình ảnh y tế
Các mô hình classification có thể được sử dụng để phân loại hình ảnh y tế, chẳng hạn như tia X, MRI, hoặc CT scans để xác định các bệnh như ung thư, bệnh tim mạch, và nhiều loại bệnh khác [4].
Hình 10 Phân loại văn bản
Phân loại văn bản có thể được sử dụng để xác định cảm xúc trong các bài đăng trên mạng xã hội, phân loại tin tức thành các danh mục khác nhau, hoặc xác định chủ đề của các đoạn văn bản [5].
2.2.4 Phân loại sản phẩm trong thương mại điện tử
Hình 11 Phân loại sản phẩm trong thương mại điện tử
Các công ty thương mại điện tử sử dụng phân loại để xác định loại sản phẩm từ các hình ảnh hoặc mô tả, giúp khách hàng dễ dàng tìm kiếm và mua sắm trực tuyến [6].
2.2.5 Phân loại ngôn ngữ tự nhiên
Hình 12 Phân loại ngôn ngữ tự nhiên
Mô hình classification có thể được sử dụng để nhận biết ngôn ngữ và phân loại
2.3 Ứng dụng phân loại vào dữ liệu thực tế
- Mô tả yêu cầu : Bộ dữ liệu SUV chứa thông tin về khách hàng và liệu họ có mua SUV hay không.
Hình 13 Ảnh dữ liệu SUV
Trong dữ liệu này gồm 5 cột:
+ User ID: mã số ID của khách hàng
+ EstimaedSalary: mức lương ước tính của khách hàng
+ Purchased: Cột này có 2 giá trị là 0 và 1: o 0 là không mua xe o 1 là mua xe
Tuy dữ liệu có 5 cột nhưng ta chỉ sẽ dùng 4 cột đặc trưng và loại bỏ cột import pandas import seaborn import matplotlib