J = 0;
grad = zeros(size(theta));
%对于y=1,cost为 -log[h(x)]
% y=0,cost为 -log[1-h(x)]
%J可以表示为 - log[| if(y==0,1,0) -h(x) |] if(判断,true的输出值,false的输出值)
z = X*theta;
neg=find(y==0);
tmp=zeros(m,1);
tmp(neg,1)=1;
J=mean(-log(abs(tmp-sigmoid(z))));
%可以从结果的行列数考虑 输出为 p行1列 = [p行m列] m行1列 这里p行m列的可以是 X的转置
grad=X'*(sigmoid(z)-y)/m;
plot
pos=find(y==1);neg=find(y==0);
plot(X(pos,1),X(pos,2),"k+","LineWidth",2,"MarkerSize",7);
plot(X(neg,1),X(neg,2),"ko","MarkerFaceColor","y","MarkerSize",7);