📄 gen_data_linear_sep.m
字号:
function [X,Y] = Gen_Data_Linear_Sep(N,d,gap)
X = rand(N,d);
Y = zeros(N,1);
beta_hat = ones(d,1);
beta_zero_hat = -1;
val = zeros(N,1);
for i = 1:N
val(i) = (beta_zero_hat + X(i,:) * beta_hat);
if val(i) > 0
Y(i) = 1;
else
Y(i) = -1;
end
end
ind_valid = find(abs(val)>gap);
X = X(ind_valid,:);
Y = Y(ind_valid,:);
ind_1 = find(Y >0);
ind_2 = find(Y<=0);
max_x = max(X);
min_x = min(X);
X_plot = [min_x;max_x];
figure(1000);
plot(X(ind_1,1),X(ind_1,2),'rs');
hold on
plot(X(ind_2,1),X(ind_2,2),'bo');
% if abs(beta_hat(2)) > abs(beta_hat(1))
% zx = X_plot(:,1);
% yy = -(zx * beta_hat(1) + beta_zero_hat)/beta_hat(2);
% plot(zx,yy,'r-');
%
% else
% zx = X_plot(:,2);
% yy = -(zx * beta_hat(2) + beta_zero_hat)/beta_hat(1);
% plot(yy,zx,'r-');
% end
%axis([min_x(1) max_x(1) min_x(2) max_x(2)]);
axis([0 1.3 0 1.3]);
xlabel('x_1');
ylabel('x_2');
legend(': y=+1',': y=-1');
hold off;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -