Hướng dẫn what is loocv in python? - loocv trong python là gì?

classsklearn.model_selection.leaveOut [Nguồn] ¶ sklearn.model_selection.LeaveOneOut[source]

Rời khỏi một validator chéo

Cung cấp các chỉ số đào tạo/thử nghiệm để phân chia dữ liệu trong các bộ tàu/thử nghiệm. Mỗi mẫu được sử dụng một lần làm bộ thử nghiệm (singleton) trong khi các mẫu còn lại tạo thành tập huấn luyện.

Lưu ý: LeaveOneOut() tương đương với KFold(n_splits=n)LeavePOut(p=1) trong đó n là số lượng mẫu.

Do số lượng lớn các bộ thử nghiệm (giống như số lượng mẫu) phương pháp xác thực chéo này có thể rất tốn kém. Đối với các bộ dữ liệu lớn, người ta nên ủng hộ KFold, ShuffleSplit hoặc StratifiedKFold.

Đọc thêm trong Hướng dẫn sử dụng.User Guide.

Xem thêm

LeaveOneGroupOut

Để phân tách dữ liệu theo phân tầng rõ ràng, cụ thể của miền của bộ dữ liệu.

GroupKFold

Biến thể Iterator K gấp K với các nhóm không chồng chéo.

Ví dụ

>>> import numpy as np
>>> from sklearn.model_selection import LeaveOneOut
>>> X = np.array([[1, 2], [3, 4]])
>>> y = np.array([1, 2])
>>> loo = LeaveOneOut()
>>> loo.get_n_splits(X)
2
>>> print(loo)
LeaveOneOut()
>>> for train_index, test_index in loo.split(X):
...     print("TRAIN:", train_index, "TEST:", test_index)
...     X_train, X_test = X[train_index], X[test_index]
...     y_train, y_test = y[train_index], y[test_index]
...     print(X_train, X_test, y_train, y_test)
TRAIN: [1] TEST: [0]
[[3 4]] [[1 2]] [2] [1]
TRAIN: [0] TEST: [1]
[[1 2]] [[3 4]] [1] [2]

Phương pháp

LeaveOneOut()0(X[, y, groups])

Trả về số lần lặp lại trong bộ xử lý chéo

LeaveOneOut()1(X[, y, groups])

Tạo các chỉ số để phân chia dữ liệu thành tập đào tạo và kiểm tra.

get_n_splits (x, y = none, nhóm = none) [nguồn] ¶(X, y=None, groups=None)[source]

Trả về số lần lặp lại trong bộ xử lý chéo

Tạo các chỉ số để phân chia dữ liệu thành tập đào tạo và kiểm tra.:Xarray-like of shape (n_samples, n_features)

get_n_splits (x, y = none, nhóm = none) [nguồn] ¶

Tham số: Xarray giống như hình dạng (n_samples, n_features)object

Dữ liệu đào tạo, trong đó LeaveOneOut()2 là số lượng mẫu và LeaveOneOut()3 là số lượng tính năng.

yobjectobject

Dữ liệu đào tạo, trong đó LeaveOneOut()2 là số lượng mẫu và LeaveOneOut()3 là số lượng tính năng.

Returns:n_splitsint:n_splitsint

yobject

Luôn luôn bị bỏ qua, tồn tại để tương thích.(X, y=None, groups=None)[source]

Tạo các chỉ số để phân chia dữ liệu thành tập đào tạo và kiểm tra.

Tạo các chỉ số để phân chia dữ liệu thành tập đào tạo và kiểm tra.:Xarray-like of shape (n_samples, n_features)

get_n_splits (x, y = none, nhóm = none) [nguồn] ¶

Tham số: Xarray giống như hình dạng (n_samples, n_features)array-like of shape (n_samples,)

Dữ liệu đào tạo, trong đó LeaveOneOut()2 là số lượng mẫu và LeaveOneOut()3 là số lượng tính năng.

yobjectarray-like of shape (n_samples,), default=None

Luôn luôn bị bỏ qua, tồn tại để tương thích.

Yields:trainndarray:trainndarray

GroupsObject

Trả về số lần lặp lại trong các validator chéo.ndarray

chia (x, y = none, nhóm = không) [nguồn] ¶

Loocv được sử dụng để làm gì?

Quy trình xác thực chéo một lần, hoặc LOOCV, được sử dụng để ước tính hiệu suất của các thuật toán học máy khi chúng được sử dụng để đưa ra dự đoán về dữ liệu không được sử dụng để đào tạo mô hình.to estimate the performance of machine learning algorithms when they are used to make predictions on data not used to train the model.

Lỗi LOOCV là gì?

Trong xác thực chéo một lần (LOOCV), mỗi bộ đào tạo trông rất giống với các bộ khác, chỉ khác nhau trong một quan sát. Khi bạn muốn ước tính lỗi kiểm tra, bạn sẽ lấy trung bình các lỗi trên các nếp gấp. Trung bình đó có một phương sai cao.leave-one-out cross-validation (LOOCV), each of the training sets looks very similar to the others, differing in only one observation. When you want to estimate the test error, you take the average of the errors over the folds. That average has a high variance.

Loocv tốt hơn k

Một yếu tố quan trọng khi lựa chọn giữa các phương pháp xác nhận chéo K và LOO là kích thước của bộ dữ liệu.Khi kích thước nhỏ, LOO phù hợp hơn vì nó sẽ sử dụng nhiều mẫu đào tạo hơn trong mỗi lần lặp.Điều đó sẽ cho phép mô hình của chúng tôi học các biểu diễn tốt hơn.When the size is small, LOO is more appropriate since it will use more training samples in each iteration. That will enable our model to learn better representations.

Tại sao chúng ta cần Kold?

Phương pháp xác thực chéo K cho phép sử dụng dữ liệu đào tạo và thử nghiệm khác nhau, điều này sẽ tránh được quá mức và cung cấp khả năng khái quát hóa tốt hơn.Nó cũng tự hào rằng hiệu suất phân loại độc lập với dữ liệu đào tạo.allows to use different training and testing data which will avoid the overfitting and give better generalization ability. It also prouves that the classifier performance are independent from the training data.