Hướng dẫn generate linearly separable data python - tạo python dữ liệu có thể phân tách tuyến tính

Không có tùy chọn "phân tách tuyến tính", nhưng bạn có thể từ chối một bộ dữ liệu khi nó không thể tách rời tuyến tính và tạo ra một dữ liệu khác. Như thế này:

separable = False
while not separable:
    samples = make_classification[n_samples=100, n_features=2, n_redundant=0, n_informative=1, n_clusters_per_class=1, flip_y=-1]
    red = samples[0][samples[1] == 0]
    blue = samples[0][samples[1] == 1]
    separable = any[[red[:, k].max[] < blue[:, k].min[] or red[:, k].min[] > blue[:, k].max[] for k in range[2]]]
plt.plot[red[:, 0], red[:, 1], 'r.']
plt.plot[blue[:, 0], blue[:, 1], 'b.']
plt.show[]

Điều này chỉ kiểm tra phân tách dọc hoặc ngang, nhưng đó là những điều bạn mong đợi sẽ xảy ra với thiết lập của bạn.

Ngoài ra, việc tăng đối số class_sep làm cho sự tách biệt có nhiều khả năng xảy ra.

Làm thế nào để tạo ra các vấn đề kiểm tra dự đoán hồi quy tuyến tính.

Bạn có câu hỏi nào không? Đặt câu hỏi của bạn trong các ý kiến ​​dưới đây và tôi sẽ cố gắng hết sức để trả lời.

Dưới đây là các ví dụ tương tự về dữ liệu có thể tách rời tuyến tính:linearly separable data:

Và đây là một số ví dụ về dữ liệu không thể tách biệt tuyến tínhlinearly non-separable data

Khái niệm này có thể được mở rộng đến ba hoặc nhiều chiều là tốt. Ví dụ: bên dưới là một ví dụ về bộ dữ liệu ba chiều có thể tách rời tuyến tính:example of a three dimensional dataset that is linearly separable :

Theo kích thước n, bộ tách là một mặt phẳng siêu chiều [N-1]-mặc dù không thể hình dung được trong 4 hoặc nhiều chiều. – although it is pretty much impossible to visualize for 4 or more dimensions.

Định nghĩa đại số:

Về mặt đại số, bộ tách là hàm tuyến tính, tức là nếu điểm dữ liệu x được cho bởi [x1, x2], khi bộ tách là hàm f [x] = w1*x1 + w2*x2 + b

Tất cả các điểm mà f [x] = 0, nằm trên đường phân cách. Tất cả các điểm mà f [x]> 0 nằm ở một bên của dòng và tất cả các điểm mà f [x]

Chủ Đề