Video: Beko | #ProsBehindThePros Episode 2 "Training Days" 2025
Trước khi bạn có thể nạp bộ phân loại SVM (Support Vector Machine) với dữ liệu đã được tải cho các phân tích tiên đoán, bạn phải tách bộ dữ liệu đầy đủ vào một tập huấn luyện và Tập kiểm tra.
May mắn thay, scikit-learn đã thực hiện một chức năng sẽ giúp bạn dễ dàng phân chia bộ dữ liệu đầy đủ. Chức năng train_test_split lấy dữ liệu đầu vào và một giá trị phần trăm. Giá trị phần trăm được sử dụng để xác định kích thước của bộ kiểm tra. Hàm trả về hai bộ dữ liệu: tập dữ liệu thử nghiệm (với kích thước được chỉ định) và tập dữ liệu huấn luyện (sử dụng dữ liệu còn lại).
Nhập mã sau đây để chia bộ dữ liệu của bạn: >>>> từ nhập khẩu qua hàng chéo cross_validation >>> X_train, X_test, y_train, y_test = cross_validation. train_test_split (dữ liệu iris, iris, target, test_size = 0.10, random_state = 111)Thư viện xác nhận hợp lệ nhập khẩu đầu tiên vào phiên làm việc của bạn. Dòng thứ hai tạo ra bộ kiểm tra từ 10 phần trăm mẫu.
x_train sẽ chứa 135 quan sát và các tính năng của nó.
y_train sẽ chứa 135 nhãn theo cùng thứ tự như 135 quan sát.x_test sẽ chứa 15 (hoặc 10 phần trăm) quan sát và các tính năng của nó.
y_test sẽ chứa 15 nhãn theo thứ tự giống như 15 quan sát.
Đoạn mã dưới đây xác nhận rằng sự phân chia là những gì bạn mong đợi:
>>>> X_train. hình dạng (135, 4) >>> y_train. hình dạng (135,) >>> X_test. hình dạng (15, 4) >>> y_test. hình dạng (15,)
Bạn có thể thấy từ đầu ra rằng có 135 quan sát với 4 tính năng và 135 nhãn trong tập huấn luyện. Bộ kiểm tra có 15 quan sát với 4 tính năng và 15 nhãn.
Nhiều người mới bắt đầu trong lĩnh vực phân tích tiên đoán quên phân chia bộ dữ liệu - giới thiệu một lỗ hổng thiết kế nghiêm trọng vào dự án. Nếu 150 trường hợp đầy đủ đã được nạp vào máy như dữ liệu huấn luyện, điều đó sẽ không để lại dữ liệu không nhìn thấy cho việc thử nghiệm mô hình. Sau đó, bạn phải nghỉ mát để tái sử dụng một số các trường hợp đào tạo để kiểm tra các mô hình tiên đoán.Bạn sẽ thấy rằng trong tình huống như vậy, mô hình luôn dự đoán đúng lớp học - bởi vì bạn đang sử dụng cùng một dữ liệu chính xác mà bạn đã sử dụng để huấn luyện mô hình.Mô hình đã nhìn thấy mô hình này trước đây; nó sẽ không có vấn đề chỉ cần lặp lại những gì nó được nhìn thấy. Một mô hình dự báo hoạt động cần phải có những dự đoán cho dữ liệu mà nó chưa từng thấy.
Khi bạn có một cá thể của một bộ phân loại SVM, một tập dữ liệu huấn luyện và một tập dữ liệu thử nghiệm, bạn đã sẵn sàng để huấn luyện mô hình với dữ liệu huấn luyện. Gõ đoạn mã sau vào trình thông dịch sẽ làm chính xác: >>>> svmClassifier. fit (X_train, y_train)
Dòng mã này tạo ra một mô hình làm việc để đưa ra các dự đoán. Cụ thể, một mô hình dự đoán sẽ dự đoán lớp Iris nào là một tập dữ liệu không dán nhãn mới. Ví dụ svmClassifier sẽ có một số phương pháp mà bạn có thể gọi để làm những việc khác nhau.
Ví dụ, sau khi gọi phương thức phù hợp, phương pháp hữu ích nhất để gọi là phương pháp dự đoán. Đó là phương pháp mà bạn sẽ cung cấp dữ liệu mới; Đổi lại, nó dự đoán kết quả.