Top 10 mô hình học máy cho thống kê học thuật, được ứng dụng rộng rãi trong thực tế, đặc biệt là cho phần dự báo hay dự đoán trong thực tế, kinh tế, ý tế, tài chính, mạng xã hội …
TOP 10 MÔ HÌNH HỌC MÁY
Tại sao có nhiều mô hình học máy – Machine Learning – ML
Trong học máy , có một thứ gọi là định lý “ Không có bữa trưa miễn phí ”. Tóm lại, nó nói rằng không có một thuật toán học máy nào hoạt động tốt nhất cho mọi vấn đề và nó đặc biệt thích hợp cho việc học có giám sát (tức là mô hình dự đoán).
Ví dụ, bạn không thể nói rằng mạng nơ-ron luôn tốt hơn cây quyết định hoặc ngược lại. Có nhiều yếu tố tác động, chẳng hạn như kích thước và cấu trúc của tập dữ liệu của bạn.
Do đó, bạn nên thử nhiều thuật toán khác nhau cho vấn đề của mình, đồng thời sử dụng “bộ thử nghiệm” dữ liệu tạm dừng để đánh giá hiệu suất và chọn người chiến thắng.
Tất nhiên, các thuật toán bạn thử phải phù hợp với vấn đề của bạn, đó là nơi chọn nhiệm vụ học máy phù hợp. Tương tự như vậy, nếu bạn cần dọn dẹp nhà cửa, bạn có thể sử dụng máy hút bụi, chổi hoặc cây lau nhà. , nhưng bạn sẽ không lấy ra một cái xẻng và bắt đầu đào.
NGUYÊN TẮC LỚN MÔ HÌNH HỌC MÁY
Tuy nhiên, có một nguyên tắc chung làm nền tảng cho tất cả các thuật toán học máy được giám sát để tạo mô hình dự đoán.
Các thuật toán học máy được mô tả là học một hàm mục tiêu (f) ánh xạ tốt nhất các biến đầu vào (X) với một biến đầu ra (Y): Y = f (X)
Đây là một nhiệm vụ học tập chung mà chúng tôi muốn đưa ra dự đoán trong tương lai (Y) với các ví dụ mới về biến đầu vào (X). Chúng tôi không biết hàm (f) trông như thế nào hoặc dạng của nó. Nếu có, chúng tôi sẽ sử dụng nó trực tiếp và chúng tôi không cần phải học nó từ dữ liệu bằng các thuật toán học máy.
Loại máy học phổ biến nhất là học ánh xạ Y = f (X) để đưa ra dự đoán của Y cho X. Đây được gọi là mô hình dự đoán hoặc phân tích dự đoán và mục tiêu của chúng tôi là đưa ra dự đoán chính xác nhất có thể.
Đối với những người mới học máy , những người mong muốn hiểu những kiến thức cơ bản về máy học, đây là chuyến tham quan nhanh về 10 thuật toán máy học hàng đầu được các nhà khoa học dữ liệu sử dụng.
Top 10 mô hình học máy phổ biến
1 – Hồi quy tuyến tính
Hồi quy tuyến tính có lẽ là một trong những thuật toán nổi tiếng và được hiểu rõ nhất trong thống kê và học máy.
Mô hình dự đoán chủ yếu liên quan đến việc giảm thiểu sai số của một mô hình hoặc đưa ra các dự đoán chính xác nhất có thể, với chi phí là khả năng giải thích. Chúng tôi sẽ mượn, sử dụng lại và đánh cắp các thuật toán từ nhiều lĩnh vực khác nhau, bao gồm cả số liệu thống kê và sử dụng chúng cho những mục đích này.
Biểu diễn của hồi quy tuyến tính là một phương trình mô tả một đường phù hợp nhất với mối quan hệ giữa các biến đầu vào (x) và các biến đầu ra (y), bằng cách tìm trọng số cụ thể cho các biến đầu vào được gọi là hệ số (B).
Ví dụ: y = B0 + B1 * x
Chúng ta sẽ dự đoán y với đầu vào x và mục tiêu của thuật toán học hồi quy tuyến tính là tìm giá trị cho các hệ số B0 và B1.
Các kỹ thuật khác nhau có thể được sử dụng để tìm hiểu mô hình hồi quy tuyến tính từ dữ liệu, chẳng hạn như một giải pháp đại số tuyến tính cho bình phương nhỏ nhất thông thường và tối ưu hóa dốc xuống.
Hồi quy tuyến tính đã có hơn 200 năm và đã được nghiên cứu rộng rãi. Một số nguyên tắc chung khi sử dụng kỹ thuật này là loại bỏ các biến rất giống nhau (tương quan) và loại bỏ nhiễu khỏi dữ liệu của bạn, nếu có thể. Đây là một kỹ thuật nhanh và đơn giản và là một thuật toán đầu tiên tốt để thử.
2 – Hồi quy logistic
Hồi quy logistic là một kỹ thuật khác được máy học mượn từ lĩnh vực thống kê. Đây là phương pháp đi đầu cho các bài toán phân loại nhị phân (các bài toán có hai giá trị lớp).
Hồi quy logistic giống như hồi quy tuyến tính ở chỗ mục tiêu là tìm các giá trị cho các hệ số có trọng số của mỗi biến đầu vào. Không giống như hồi quy tuyến tính, dự đoán cho đầu ra được biến đổi bằng cách sử dụng một hàm phi tuyến được gọi là hàm logistic.
Hàm logistic trông giống như một chữ S lớn và sẽ biến đổi bất kỳ giá trị nào thành phạm vi từ 0 đến 1. Điều này rất hữu ích vì chúng ta có thể áp dụng một quy tắc cho đầu ra của hàm logistic để gắn các giá trị thành 0 và 1 (ví dụ: IF nhỏ hơn 0,5 thì đầu ra 1) và dự đoán một giá trị lớp.
Hồi quy logistic: Đồ thị của đường cong hồi quy logistic thể hiện xác suất vượt qua kỳ thi so với số giờ học
Do cách mô hình được học, các dự đoán được thực hiện bằng hồi quy logistic cũng có thể được sử dụng làm xác suất của một cá thể dữ liệu nhất định thuộc lớp 0 hoặc lớp 1. Điều này có thể hữu ích cho các vấn đề mà bạn cần đưa ra nhiều cơ sở hơn cho một dự đoán.
Giống như hồi quy tuyến tính, hồi quy logistic hoạt động tốt hơn khi bạn loại bỏ các thuộc tính không liên quan đến biến đầu ra cũng như các thuộc tính rất giống nhau (tương quan) với nhau. Đó là một mô hình nhanh chóng để học và hiệu quả đối với các vấn đề phân loại nhị phân.
3 – Phân tích phân biệt tuyến tính
Hồi quy logistic là một thuật toán phân loại theo truyền thống chỉ giới hạn trong các bài toán phân loại hai lớp. Nếu bạn có nhiều hơn hai lớp thì thuật toán Phân tích Phân biệt Tuyến tính là kỹ thuật phân loại tuyến tính được ưa thích.
Biểu diễn của LDA khá đơn giản. Nó bao gồm các thuộc tính thống kê của dữ liệu của bạn, được tính toán cho từng lớp. Đối với một biến đầu vào duy nhất, điều này bao gồm:
-
Giá trị trung bình cho mỗi lớp.
-
Phương sai được tính toán trên tất cả các lớp.
Phân tích phân biệt tuyến tính
Dự đoán được thực hiện bằng cách tính giá trị phân biệt cho mỗi lớp và đưa ra dự đoán cho lớp có giá trị lớn nhất. Kỹ thuật này giả định rằng dữ liệu có phân phối Gaussian (đường cong hình chuông), vì vậy bạn nên loại bỏ các giá trị ngoại lai khỏi dữ liệu của mình trước đó. Đó là một phương pháp đơn giản và mạnh mẽ để phân loại các vấn đề mô hình dự đoán.
4 – Phân loại và cây hồi quy
Cây quyết định là một loại thuật toán quan trọng để học máy mô hình dự đoán.
Biểu diễn của mô hình cây quyết định là một cây nhị phân. Đây là cây nhị phân của bạn từ các thuật toán và cấu trúc dữ liệu, không có gì quá lạ mắt. Mỗi nút đại diện cho một biến đầu vào duy nhất (x) và một điểm phân tách trên biến đó (giả sử biến là số).
Cây quyết định
Các nút lá của cây chứa một biến đầu ra (y) được sử dụng để đưa ra dự đoán. Các dự đoán được thực hiện bằng cách đi bộ các phần của cây cho đến khi đến một nút lá và xuất ra giá trị lớp tại nút lá đó.
Cây rất nhanh để học hỏi và rất nhanh để đưa ra dự đoán. Chúng cũng thường chính xác đối với một loạt các vấn đề và không yêu cầu bất kỳ sự chuẩn bị đặc biệt nào cho dữ liệu của bạn.
5 – Naive Bayes
Naive Bayes là một thuật toán đơn giản nhưng mạnh mẽ đáng ngạc nhiên để tạo mô hình dự đoán.
Mô hình bao gồm hai loại xác suất có thể được tính trực tiếp từ dữ liệu đào tạo của bạn: 1) Xác suất của mỗi lớp; và 2) Xác suất có điều kiện cho mỗi lớp cho mỗi giá trị x. Sau khi được tính toán, mô hình xác suất có thể được sử dụng để đưa ra dự đoán cho dữ liệu mới bằng cách sử dụng Định lý Bayes. Khi dữ liệu của bạn có giá trị thực, người ta thường giả định phân phối Gaussian (đường cong hình chuông) để bạn có thể dễ dàng ước tính các xác suất này.
Naive Bayes: Định lý Bayes
Naive Bayes được gọi là ngây thơ vì nó giả định rằng mỗi biến đầu vào là độc lập. Đây là một giả định mạnh mẽ và không thực tế đối với dữ liệu thực, tuy nhiên, kỹ thuật này rất hiệu quả đối với một loạt các vấn đề phức tạp.
6 – K-Những người hàng xóm gần nhất
Thuật toán KNN rất đơn giản và rất hiệu quả. Biểu diễn mô hình cho KNN là toàn bộ tập dữ liệu đào tạo. Đơn giản phải không?
Các dự đoán được thực hiện cho một điểm dữ liệu mới bằng cách tìm kiếm trong toàn bộ tập huấn luyện cho K trường hợp giống nhau nhất (hàng xóm) và tóm tắt biến đầu ra cho K trường hợp đó. Đối với các bài toán hồi quy, đây có thể là biến đầu ra trung bình, đối với các bài toán phân loại, đây có thể là giá trị lớp chế độ (hoặc phổ biến nhất).
Bí quyết là làm thế nào để xác định sự giống nhau giữa các cá thể dữ liệu. Kỹ thuật đơn giản nhất nếu các thuộc tính của bạn có cùng tỷ lệ (ví dụ: tất cả đều tính bằng inch) là sử dụng khoảng cách Euclide, một con số bạn có thể tính toán trực tiếp dựa trên sự khác biệt giữa mỗi biến đầu vào.
K-Những người hàng xóm gần nhất
KNN có thể yêu cầu nhiều bộ nhớ hoặc không gian để lưu trữ tất cả dữ liệu, nhưng chỉ thực hiện một phép tính (hoặc tìm hiểu) khi cần dự đoán, đúng lúc. Bạn cũng có thể cập nhật và quản lý các phiên bản đào tạo của mình theo thời gian để giữ cho các dự đoán luôn chính xác.
Ý tưởng về khoảng cách hoặc khoảng cách gần có thể bị phá vỡ theo các kích thước rất cao (nhiều biến đầu vào) có thể ảnh hưởng tiêu cực đến hiệu suất của thuật toán đối với vấn đề của bạn. Đây được gọi là lời nguyền của chiều không gian. Nó gợi ý rằng bạn chỉ sử dụng những biến đầu vào có liên quan nhất để dự đoán biến đầu ra.
7 – Học lượng tử hóa vectơ
Nhược điểm của K-Nearest Neighbors là bạn cần phải lưu giữ toàn bộ tập dữ liệu đào tạo của mình. Thuật toán Lượng tử hóa Vectơ học (hay viết tắt là LVQ) là một thuật toán mạng nơ-ron nhân tạo cho phép bạn chọn số lượng phiên bản huấn luyện để bám vào và tìm hiểu chính xác những trường hợp đó trông như thế nào.
Học lượng tử hóa vector
Biểu diễn cho LVQ là một tập hợp các vectơ sổ mã. Chúng được chọn ngẫu nhiên ngay từ đầu và được điều chỉnh để tóm tắt tốt nhất tập dữ liệu đào tạo qua một số lần lặp lại của thuật toán học. Sau khi học, các vectơ trong sổ mã có thể được sử dụng để đưa ra các dự đoán giống như K-Nearest Neighbors. Hàng xóm tương tự nhất (vectơ sổ mã phù hợp nhất) được tìm thấy bằng cách tính toán khoảng cách giữa mỗi vectơ sổ mã và cá thể dữ liệu mới. Giá trị lớp hoặc (giá trị thực trong trường hợp hồi quy) cho đơn vị phù hợp nhất sau đó được trả về như dự đoán. Kết quả tốt nhất đạt được nếu bạn bán lại dữ liệu của mình để có cùng phạm vi, chẳng hạn như từ 0 đến 1.
Nếu bạn phát hiện ra rằng KNN cho kết quả tốt trên tập dữ liệu của mình, hãy thử sử dụng LVQ để giảm yêu cầu bộ nhớ khi lưu trữ toàn bộ tập dữ liệu đào tạo.
8 – Máy hỗ trợ Vector
Máy hỗ trợ Vector có lẽ là một trong những thuật toán học máy phổ biến nhất và được nói đến nhiều nhất.
Siêu phẳng là một đường phân chia không gian biến đầu vào. Trong SVM, một siêu phẳng được chọn để phân tách tốt nhất các điểm trong không gian biến đầu vào theo lớp của chúng, lớp 0 hoặc lớp 1. Trong hai chiều, bạn có thể hình dung đây là một đường và giả sử rằng tất cả các điểm đầu vào của chúng ta có thể được ngăn cách hoàn toàn bởi dòng này. Thuật toán học SVM tìm các hệ số dẫn đến sự phân tách tốt nhất của các lớp theo siêu phẳng.
Máy vector hỗ trợ
Khoảng cách giữa siêu phẳng và các điểm dữ liệu gần nhất được gọi là lề. Siêu phẳng tốt nhất hoặc tối ưu nhất có thể tách hai lớp là đường thẳng có lề lớn nhất. Chỉ những điểm này có liên quan trong việc xác định siêu phẳng và trong việc xây dựng bộ phân loại. Những điểm này được gọi là các vectơ hỗ trợ. Chúng hỗ trợ hoặc xác định siêu phẳng. Trong thực tế, một thuật toán tối ưu hóa được sử dụng để tìm các giá trị cho các hệ số tối đa hóa lợi nhuận.
SVM có thể là một trong những công cụ phân loại mạnh mẽ nhất và đáng thử trên tập dữ liệu của bạn.
9 – Đóng túi và Rừng ngẫu nhiên
Random Forest là một trong những thuật toán học máy phổ biến nhất và mạnh mẽ nhất. Nó là một loại thuật toán học máy tổng hợp được gọi là Bootstrap Aggregation hoặc bagging.
Bootstrap là một phương pháp thống kê mạnh mẽ để ước tính một số lượng từ một mẫu dữ liệu. Chẳng hạn như một trung bình. Bạn lấy rất nhiều mẫu dữ liệu của mình, tính toán giá trị trung bình, sau đó tính trung bình tất cả các giá trị trung bình của bạn để cung cấp cho bạn ước tính tốt hơn về giá trị trung bình thực sự.
Trong phân tích, phương pháp tương tự cũng được sử dụng, nhưng thay vì ước tính toàn bộ mô hình thống kê, cây quyết định phổ biến nhất. Nhiều mẫu dữ liệu đào tạo của bạn được lấy sau đó các mô hình được xây dựng cho từng mẫu dữ liệu. Khi bạn cần đưa ra dự đoán cho dữ liệu mới, mỗi mô hình sẽ đưa ra dự đoán và các dự đoán được tính trung bình để đưa ra ước tính tốt hơn về giá trị đầu ra thực sự.
Rừng ngẫu nhiên
Rừng ngẫu nhiên là một sự tinh chỉnh trong cách tiếp cận này, trong đó cây quyết định được tạo ra để thay vì chọn các điểm phân tách tối ưu, các phân chia dưới mức tối ưu được thực hiện bằng cách đưa vào ngẫu nhiên.
Do đó, các mô hình được tạo cho mỗi mẫu dữ liệu sẽ khác biệt hơn so với các mô hình khác, nhưng vẫn chính xác theo những cách độc đáo và khác biệt của chúng. Kết hợp các dự đoán của chúng dẫn đến ước tính tốt hơn về giá trị đầu ra cơ bản thực sự.
Nếu bạn nhận được kết quả tốt với một thuật toán có phương sai cao (như cây quyết định), bạn thường có thể nhận được kết quả tốt hơn bằng cách đóng gói thuật toán đó.
10 – Thúc đẩy và AdaBoost
Adaboost
Tăng cường là một kỹ thuật tổng hợp cố gắng tạo ra một bộ phân loại mạnh từ một số bộ phân loại yếu. Điều này được thực hiện bằng cách xây dựng một mô hình từ dữ liệu huấn luyện, sau đó tạo một mô hình thứ hai cố gắng sửa các lỗi từ mô hình đầu tiên. Các mô hình được thêm vào cho đến khi tập huấn luyện được dự đoán hoàn hảo hoặc số lượng tối đa các mô hình được thêm vào.
AdaBoost là thuật toán thúc đẩy thực sự thành công đầu tiên được phát triển để phân loại nhị phân. Đó là điểm khởi đầu tốt nhất để hiểu về tăng cường. Các phương pháp thúc đẩy hiện đại được xây dựng dựa trên AdaBoost, đáng chú ý nhất là các máy tăng cường độ dốc ngẫu nhiên.
Giải thích về AdaBoost (Mô hình học máy)
AdaBoost được sử dụng với cây quyết định ngắn. Sau khi cây đầu tiên được tạo, hiệu suất của cây trên mỗi trường hợp huấn luyện được sử dụng để cân nhắc mức độ chú ý của cây tiếp theo được tạo ra sẽ chú ý đến mỗi trường hợp huấn luyện. Dữ liệu huấn luyện khó dự đoán sẽ có trọng lượng nhiều hơn, trong khi các trường hợp dễ dự đoán sẽ có ít trọng lượng hơn. Các mô hình được tạo tuần tự lần lượt, mỗi mô hình cập nhật trọng số trên các trường hợp huấn luyện ảnh hưởng đến việc học được thực hiện bởi cây tiếp theo trong trình tự. Sau khi tất cả các cây được tạo, các dự đoán sẽ được thực hiện cho dữ liệu mới và hiệu suất của mỗi cây được tính theo độ chính xác của nó trên dữ liệu huấn luyện.
Vì thuật toán tập trung vào việc sửa chữa các sai lầm nên điều quan trọng là bạn phải có dữ liệu sạch và loại bỏ các ngoại lệ.
Mô hình học máy tốt nhất
Một câu hỏi điển hình được hỏi bởi người mới bắt đầu, khi đối mặt với nhiều thuật toán học máy, là “tôi nên sử dụng thuật toán nào?” Câu trả lời cho câu hỏi thay đổi tùy thuộc vào nhiều yếu tố, bao gồm:
- (1) Kích thước, chất lượng và bản chất của dữ liệu;
- (2) Thời gian tính toán có sẵn;
- (3) Tính cấp thiết của nhiệm vụ; và
- (4) Bạn muốn làm gì với dữ liệu.
Ngay cả một nhà khoa học dữ liệu có kinh nghiệm cũng không thể nói thuật toán nào sẽ hoạt động tốt nhất trước khi thử các thuật toán khác nhau. Mặc dù có nhiều thuật toán Học máy khác nhưng đây là những thuật toán phổ biến nhất. Nếu bạn là người mới sử dụng Machine Learning, đây sẽ là một điểm khởi đầu tốt để học.