首先生成一个线性不可分数据集
import numpy as np
import matplotlib.pyplot as plt
N = 200
x1 = np.linspace(-1, 1, N) # (1, 100)
y1 = x1 ** 2 + 0.2 * np.random.rand(N) # (1, 100)
x1 = np.reshape(x1, (N, 1)) # (100, 1)
y1 = np.reshape(y1, (N, 1)) # (100, 1)
x_c1 = np.concatenate((x1, y1), 1) # (100, 2)
x2 = np.linspace(0, 2, N)
y2 = -(x2 - 1) ** 2 + 0.2 * np.random.rand(N) + 1.5
x2 = np.reshape(x2, (N, 1))
y2 = np.reshape(y2, (N, 1))
x_c2 = np.concatenate((x2, y2), 1) # (100, 2)
data_x = np.concatenate((x_c1, x_c2), 0) # (200, 2)
y_c1 = np.zeros((N, 1)) # (100, 1)
y_c2 = np.ones((N, 1)) # (100, 1)
data_y = np.concatenate((y_c1, y_c2), 0) # (200, 1)
plt.scatter(x1, y1)
plt.scatter(x2, y2)
plt.show()
图像如下
![](https://i-blog.csdnimg.cn/blog_migrate/16efe71ed44d8e33cd42dffaa5bc6910.png)