반응형
Notice
Recent Posts
Recent Comments
Link
관리 메뉴

bro's coding

머신러닝.sigmoid function 적용 본문

[AI]/python.sklearn

머신러닝.sigmoid function 적용

givemebro 2020. 4. 13. 18:25
반응형

https://broscoding.tistory.com/114

 

머신러닝.iris data 불러오기

import numpy as np import matplotlib.pyplot as plt from sklearn.datasets import load_iris iris=load_iris() iris dir(iris) ['DESCR', 'data', 'feature_names', 'target', 'target_names'] iris.data.shape..

broscoding.tistory.com

https://broscoding.tistory.com/115

 

머신러닝.테스트데이터 뽑기

from sklearn.model_selection import train_test_split X_train,X_test,y_train,y_test=train_test_split(iris.data,iris.target,shuffle=False) # shuffle=False : 섞지 않겠다 # 기본 75% / 25% np.bincount(y_..

broscoding.tistory.com

 

# data 준비
X=iris.data[:,[2]]
y=iris.target

# y==0 아닌 것은 전부 1(1대 다)
y[y==2]=1

plt.scatter(X[:,0],y,c=y,s=30)
plt.colorbar()

def sigmoid(x):
    return 1/(1+np.exp(-x))

 

from sklearn.linear_model import LogisticRegression
C=10
model=LogisticRegression(C=C)
model.fit(X,y)

display(model.score(X,y),model.coef_,model.intercept_)

plt.figure(figsize=[10,8])
plt.scatter(X[:,0],y,c=y,s=30)
plt.colorbar()

from sklearn.linear_model import LogisticRegression
C=10
model=LogisticRegression(C=C)
model.fit(X,y)

display(model.score(X,y),model.coef_,model.intercept_)

plt.figure(figsize=[10,8])
plt.scatter(X[:,0],y,c=y,s=30)
plt.colorbar()

rng=np.arange(1,7,0.1)
plt.plot(rng,model.coef_[0]*rng+model.intercept_)
plt.plot(rng,sigmoid(model.coef_[0]*rng+model.intercept_),'r:')
plt.vlines([-model.intercept_[0]/model.coef_[0,0]],0,1,linestyles='dotted')
plt.ylim(-1,1.5)
plt.hlines([0],1,7,linestyles='dashed',alpha=0.3)
plt.text(3,0.5,'boundary=%.3f'%(-model.intercept_[0]/model.coef_[0,0]))
plt.title('LogisticRegression (C=%f)'%C)

# 1.0
# array([[3.16009911]])
# array([-8.16122736])

# 경계값 = -model.intercept_/model.coef_

 

반응형
Comments