Naver Project (diabetes prediction_16_feature)

Jacob Kim·2024년 1월 29일
0

Naver Project Week 1

목록 보기
23/28
import tensorflow as tf
import numpy as np
import matplotlib.pyplot as plt

tf.__version__
#2.15.0
from google.colab import drive
drive.mount('/content/drive')
Drive already mounted at /content/drive; to attempt to forcibly remount, call drive.mount("/content/drive", force_remount=True).
xy = np.loadtxt('/content/drive/MyDrive/dataset/example_data/logistic_regression_dataset_16_features (1).csv', delimiter=',', dtype=np.float32)
x_train = xy[0:-100, 0:-1]
y_train = xy[0:-100, [-1]]

x_test = xy[-100:, 0:-1]
y_test = xy[-100:, [-1]]

print(x_train.shape, y_train.shape)
print(x_test.shape, y_test.shape)
#(900, 16) (900, 1)
#(100, 16) (100, 1)
print(x_test)
print(y_test)
[[-0.7244851   1.3556042  -0.7149444  ... -0.85890603 -1.9053533
  -0.2046343 ]
 [-0.8029174   0.6253252  -0.04345221 ...  2.240588    1.76353
  -1.7704611 ]
 [-0.02266894  1.6755017   0.02397674 ...  1.4200407  -1.5515019
  -0.6292267 ]
 ...
 [-0.03057244  0.9291818  -0.5378848  ...  1.4716104  -0.01332215
   1.3443856 ]
 [ 1.5770882   0.22941801  0.39344442 ... -1.7842149  -0.14629813
   0.23497753]
 [-0.8128021   0.41440588  0.28651828 ...  1.1447431   0.05587194
   0.6620453 ]]
[[0.]
 [1.]
 [0.]
 [0.]
 [1.]
 [0.]
 [1.]
 [1.]
 [0.]
 [1.]
 [0.]
 [1.]
 [0.]
 [0.]
 [1.]
 [0.]
 [1.]
 [1.]
 [1.]
 [0.]
 [1.]
 [1.]
 [0.]
 [0.]
 [1.]
 [0.]
 [0.]
 [0.]
 [1.]
 [1.]
 [0.]
 [1.]
 [1.]
 [0.]
 [1.]
 [0.]
 [1.]
 [0.]
 [0.]
 [1.]
 [0.]
 [0.]
 [0.]
 [0.]
 [1.]
 [1.]
 [1.]
 [1.]
 [0.]
 [0.]
 [0.]
 [1.]
 [1.]
 [1.]
 [0.]
 [1.]
 [0.]
 [1.]
 [1.]
 [1.]
 [0.]
 [0.]
 [1.]
 [0.]
 [1.]
 [1.]
 [0.]
 [1.]
 [0.]
 [1.]
 [1.]
 [0.]
 [0.]
 [0.]
 [0.]
 [0.]
 [1.]
 [0.]
 [1.]
 [1.]
 [0.]
 [0.]
 [0.]
 [0.]
 [0.]
 [1.]
 [0.]
 [1.]
 [1.]
 [1.]
 [0.]
 [1.]
 [1.]
 [1.]
 [0.]
 [0.]
 [1.]
 [1.]
 [0.]
 [0.]]
dataset = tf.data.Dataset.from_tensor_slices((x_train, y_train)).batch(len(x_train))
W = tf.Variable(tf.random.normal([16, 1]), name='weight')
b = tf.Variable(tf.random.normal([1]), name='bias')

가설 설정

  • 병이 있다 / 없다로 분류
  • binary classification으로 진행

def logistic_regression(features):
    hypothesis  = tf.divide(1., 1. + tf.exp(-(tf.matmul(features, W) + b)))
    return hypothesis

print(logistic_regression(x_train))
tf.Tensor(
[[9.85380113e-01]
 [5.73623598e-01]
 [9.84757900e-01]
 [9.67658222e-01]
 [1.50122810e-02]
 [4.26204056e-01]
 [8.71432796e-02]
 [9.20974135e-01]
 [9.69867408e-01]
 [1.55124650e-03]
 [9.29989934e-01]
 [2.21748045e-03]
 [7.17376471e-01]
 [3.94767194e-05]
 [4.24985588e-01]
 [9.55845475e-01]
 [1.31493673e-01]
 [2.10923306e-03]
 [5.11143029e-01]
 [1.66259687e-02]
 [2.35374493e-04]
 [8.47961903e-01]
 [2.38673575e-02]
 [4.34233516e-01]
 [8.73126626e-01]
 [9.23128307e-01]
 [9.93501484e-01]
 [1.39849052e-01]
 [3.70965570e-01]
 [3.09542775e-01]
 [8.81050885e-01]
 [9.87172842e-01]
 [7.86203325e-01]
 [6.95159554e-01]
 [1.40788689e-01]
 [9.99084592e-01]
 [3.22147012e-02]
 [9.86716866e-01]
 [1.28051132e-01]
 [9.90217865e-01]
 [7.91971564e-01]
 [4.56335358e-02]
 [2.17242613e-01]
 [4.81626153e-01]
 [1.53575242e-02]
 [6.53201044e-01]
 [4.26781356e-01]
 [6.74717128e-01]
 [2.04445302e-01]
 [9.98741806e-01]
 [3.20103243e-02]
 [9.15305674e-01]
 [9.76229787e-01]
 [3.35602999e-01]
 [6.64264802e-03]
 [4.28830972e-04]
 [7.29585588e-01]
 [6.30514920e-02]
 [8.97481963e-02]
 [6.85448647e-02]
 [3.96859556e-01]
 [1.35793467e-04]
 [6.17205858e-01]
 [1.19823283e-02]
 [5.25268633e-03]
 [9.96056437e-01]
 [4.76393759e-01]
 [9.11435783e-01]
 [1.09885536e-01]
 [1.90937370e-01]
 [6.31212518e-02]
 [7.35111952e-01]
 [1.67489517e-03]
 [7.85346508e-01]
 [4.13221866e-02]
 [9.49536264e-01]
 [8.95794928e-01]
 [8.90313148e-01]
 [8.09429586e-02]
 [3.17154340e-02]
 [6.02981567e-01]
 [6.16180837e-01]
 [1.40809268e-02]
 [4.95244972e-02]
 [1.74019895e-02]
 [8.93089354e-01]
 [3.50474775e-01]
 [2.60886759e-01]
 [8.14290106e-01]
 [6.21675789e-01]
 [4.83728111e-01]
 [4.89529967e-02]
 [9.91651952e-01]
 [9.95666504e-01]
 [5.17601550e-01]
 [9.55064237e-01]
 [9.97131109e-01]
 [9.94316757e-01]
 [8.48300904e-02]
 [2.01870784e-01]
 [1.52380774e-02]
 [4.61603522e-01]
 [1.07008405e-01]
 [6.22891426e-01]
 [1.39851635e-02]
 [7.37362862e-01]
 [2.13400950e-03]
 [4.61046487e-01]
 [9.81691837e-01]
 [3.03264678e-01]
 [1.93218559e-01]
 [8.33273530e-01]
 [1.06918544e-01]
 [8.64820898e-01]
 [1.32620230e-03]
 [3.82628918e-01]
 [2.50164360e-01]
 [5.25737628e-02]
 [8.56942654e-01]
 [9.82094467e-01]
 [8.94529466e-03]
 [1.06287585e-03]
 [9.68469620e-01]
 [1.03637606e-01]
 [5.99074602e-01]
 [9.97294009e-01]
 [2.59902716e-01]
 [5.10983877e-02]
 [8.26720715e-01]
 [5.94686687e-01]
 [4.10630815e-02]
 [9.97798204e-01]
 [1.24087064e-02]
 [7.44946778e-01]
 [9.63920832e-01]
 [4.47732955e-01]
 [4.05915156e-02]
 [1.31373093e-01]
 [2.84770317e-02]
 [3.11931893e-02]
 [3.73015463e-01]
 [1.77653387e-01]
 [8.62811565e-01]
 [9.92179921e-05]
 [4.85877972e-03]
 [4.76415187e-01]
 [9.51987028e-01]
 [8.27271402e-01]
 [9.52395797e-01]
 [1.82405025e-01]
 [3.01928103e-01]
 [9.99944448e-01]
 [1.24769909e-02]
 [8.22864890e-01]
 [9.99695420e-01]
 [3.15714121e-01]
 [9.93778646e-01]
 [2.88571347e-03]
 [9.94183123e-01]
 [6.70194253e-02]
 [7.95396209e-01]
 [9.81388450e-01]
 [2.45826896e-02]
 [9.54318345e-01]
 [4.30677265e-01]
 [5.34956483e-03]
 [9.36803818e-01]
 [9.98508036e-01]
 [7.72104785e-02]
 [1.17058605e-01]
 [8.51355612e-01]
 [6.92701340e-01]
 [9.56770957e-01]
 [1.74810831e-02]
 [5.48993289e-01]
 [8.68396521e-01]
 [6.12739801e-01]
 [8.74419391e-01]
 [2.54564043e-02]
 [2.88928556e-03]
 [1.10000901e-01]
 [9.94772971e-01]
 [2.11392730e-01]
 [1.00801140e-02]
 [8.53088856e-01]
 [3.30166668e-01]
 [5.48524112e-02]
 [6.32573888e-02]
 [2.59122699e-01]
 [2.25219931e-02]
 [9.41325366e-01]
 [8.43957663e-02]
 [1.96402133e-01]
 [9.98718977e-01]
 [8.40330198e-02]
 [9.52442408e-01]
 [8.51962447e-01]
 [9.56629574e-01]
 [8.35914686e-02]
 [6.51040733e-01]
 [7.74010360e-01]
 [3.92523915e-01]
 [2.58797735e-01]
 [6.29857095e-05]
 [2.70881563e-01]
 [9.83866274e-01]
 [7.53543019e-01]
 [9.70150948e-01]
 [8.58027041e-02]
 [6.48097135e-04]
 [8.53468001e-01]
 [3.65968555e-01]
 [8.13472152e-01]
 [1.17972679e-03]
 [5.54793254e-02]
 [1.23287353e-03]
 [6.57504844e-03]
 [6.90747619e-01]
 [9.99466360e-01]
 [3.77424955e-01]
 [9.87350285e-01]
 [4.51804027e-02]
 [1.56348180e-02]
 [1.18962966e-01]
 [9.90876615e-01]
 [6.50667772e-02]
 [7.85650074e-01]
 [5.51769556e-03]
 [9.62330580e-01]
 [5.16791530e-02]
 [9.76633728e-01]
 [8.26315761e-01]
 [6.16838690e-03]
 [7.72906542e-01]
 [4.03724343e-01]
 [1.07414804e-01]
 [2.72982270e-01]
 [2.50259531e-03]
 [2.29432015e-03]
 [1.38323205e-02]
 [7.58260190e-01]
 [9.62379932e-01]
 [2.09749892e-01]
 [9.98660326e-01]
 [9.48103011e-01]
 [3.69051009e-01]
 [9.49637234e-01]
 [1.08549945e-01]
 [2.27559212e-05]
 [2.81078190e-01]
 [4.42398965e-01]
 [8.82400751e-01]
 [2.72521600e-02]
 [9.03341770e-01]
 [9.98586059e-01]
 [1.07864419e-03]
 [2.48811487e-02]
 [8.88732255e-01]
 [9.99817789e-01]
 [6.89034283e-01]
 [1.19174182e-01]
 [8.58994603e-01]
 [4.99201626e-01]
 [6.24415517e-01]
 [2.59332918e-03]
 [2.69141272e-02]
 [2.30006743e-02]
 [6.78247865e-03]
 [9.50731993e-01]
 [1.95203915e-01]
 [6.57328367e-01]
 [8.80235016e-01]
 [9.72146988e-01]
 [2.53535479e-01]
 [7.68231928e-01]
 [1.01044523e-02]
 [1.28862802e-02]
 [1.02875762e-01]
 [7.83903241e-01]
 [9.84702170e-01]
 [6.88482702e-01]
 [3.57179105e-01]
 [1.40371714e-02]
 [9.02275920e-01]
 [3.23365360e-01]
 [2.05996353e-02]
 [2.33489528e-01]
 [1.82165205e-01]
 [9.47956920e-01]
 [3.09741437e-01]
 [8.87094438e-02]
 [9.82715368e-01]
 [4.55710012e-03]
 [2.88685739e-01]
 [9.99913454e-01]
 [9.56125796e-01]
 [9.81616020e-01]
 [5.04821897e-01]
 [3.78028393e-01]
 [2.65543938e-01]
 [9.40816641e-01]
 [1.38310567e-01]
 [1.44372240e-01]
 [3.66358906e-01]
 [7.32509613e-01]
 [9.83266905e-03]
 [9.29160535e-01]
 [4.50163513e-01]
 [9.93989229e-01]
 [9.33194339e-01]
 [5.54451495e-02]
 [1.67463228e-01]
 [9.87566471e-01]
 [2.26158604e-01]
 [1.94601119e-01]
 [5.91916084e-01]
 [9.66333435e-04]
 [9.78768885e-01]
 [1.16481846e-02]
 [9.71714020e-01]
 [9.44726467e-01]
 [9.69605386e-01]
 [8.81003857e-01]
 [6.96899951e-01]
 [8.71446788e-01]
 [4.64852422e-01]
 [9.96438265e-01]
 [9.13566828e-01]
 [9.57953036e-01]
 [2.96342485e-02]
 [1.45072192e-02]
 [9.74110365e-01]
 [5.26621826e-02]
 [7.99052566e-02]
 [5.75119674e-01]
 [3.28439146e-01]
 [4.02153730e-01]
 [2.62514758e-03]
 [5.99817373e-02]
 [6.00461125e-01]
 [3.72249670e-02]
 [1.37108378e-02]
 [8.13295126e-01]
 [6.17959559e-01]
 [3.32380325e-01]
 [4.63012457e-01]
 [2.91204393e-01]
 [9.31653798e-01]
 [9.87004116e-03]
 [6.82318747e-01]
 [7.76776910e-01]
 [6.38241649e-01]
 [4.42282975e-01]
 [5.05021334e-01]
 [6.29614174e-01]
 [7.65853584e-01]
 [3.03719323e-02]
 [1.70284227e-01]
 [7.64983118e-01]
 [9.62574542e-01]
 [5.57607673e-02]
 [2.01075897e-01]
 [9.99997854e-01]
 [8.17320794e-02]
 [9.72582221e-01]
 [9.69772756e-01]
 [2.05741689e-01]
 [9.99208629e-01]
 [7.24916905e-02]
 [3.25214505e-01]
 [6.71521425e-01]
 [2.59301573e-01]
 [6.66247904e-01]
 [7.33865857e-01]
 [4.15960476e-02]
 [8.22906137e-01]
 [2.26542011e-01]
 [1.59599539e-02]
 [7.72602260e-01]
 [7.57912695e-01]
 [1.54373969e-03]
 [2.00887218e-01]
 [9.89208639e-01]
 [8.79854739e-01]
 [8.81865501e-01]
 [2.06679285e-01]
 [9.65492785e-01]
 [3.26569332e-03]
 [3.32890987e-01]
 [6.53456628e-01]
 [4.80296537e-02]
 [6.47105137e-03]
 [9.16541755e-01]
 [5.43672979e-01]
 [8.37102711e-01]
 [3.65893275e-01]
 [9.62700620e-02]
 [1.46776752e-03]
 [9.71635222e-01]
 [7.61048555e-01]
 [8.26843798e-01]
 [7.26250112e-02]
 [4.76022303e-01]
 [5.62478378e-02]
 [3.33405823e-01]
 [4.65999514e-01]
 [2.27071926e-01]
 [5.59207518e-03]
 [8.68057460e-02]
 [2.81731933e-01]
 [8.90137106e-02]
 [6.74552694e-02]
 [1.81819722e-01]
 [2.27277223e-02]
 [6.39411569e-01]
 [1.80347618e-02]
 [9.99152899e-01]
 [8.46260846e-01]
 [9.97866571e-01]
 [9.77316916e-01]
 [9.74241972e-01]
 [9.90571022e-01]
 [4.28137779e-01]
 [7.81118795e-02]
 [2.74771512e-01]
 [9.00387704e-01]
 [1.63885728e-01]
 [8.85669470e-01]
 [3.70194614e-01]
 [8.23680222e-01]
 [5.10512352e-01]
 [1.43089175e-01]
 [7.40308821e-01]
 [9.87212241e-01]
 [9.80616450e-01]
 [5.54256380e-01]
 [8.29933807e-02]
 [9.74960625e-01]
 [1.31839365e-01]
 [6.09029710e-01]
 [8.34173560e-01]
 [6.45172834e-01]
 [1.53399542e-01]
 [9.99700785e-01]
 [3.85896534e-01]
 [2.31206283e-01]
 [5.23110898e-03]
 [5.85613489e-01]
 [3.91018420e-01]
 [3.62678409e-01]
 [9.39690828e-01]
 [4.68995981e-02]
 [4.00458127e-01]
 [1.39323115e-01]
 [5.00312960e-03]
 [3.65513384e-01]
 [5.11438679e-03]
 [2.17497617e-01]
 [4.44782943e-01]
 [9.30170238e-01]
 [5.68202920e-02]
 [1.80114508e-01]
 [6.37744427e-01]
 [3.36699635e-02]
 [4.13861573e-02]
 [9.42553461e-01]
 [6.26076519e-01]
 [5.24763346e-01]
 [5.48749447e-01]
 [7.00029314e-01]
 [6.82820752e-02]
 [3.04481480e-02]
 [9.70981836e-01]
 [8.18008184e-02]
 [4.32200544e-03]
 [2.38704830e-01]
 [5.57701945e-01]
 [9.31450188e-01]
 [8.65339696e-01]
 [6.06759369e-01]
 [7.93459535e-01]
 [5.48414469e-01]
 [1.66089423e-02]
 [2.22831845e-01]
 [7.68714666e-01]
 [3.87974578e-04]
 [1.52139813e-01]
 [5.21976054e-02]
 [5.25823116e-01]
 [4.30178531e-02]
 [1.45149173e-03]
 [9.97310758e-01]
 [6.36350095e-01]
 [8.71257186e-01]
 [1.39965802e-01]
 [1.88933179e-01]
 [2.41669327e-01]
 [4.56716567e-01]
 [7.35301673e-01]
 [1.52386233e-01]
 [9.80098248e-01]
 [2.64145494e-01]
 [8.40579450e-01]
 [4.49770421e-01]
 [9.33268249e-01]
 [9.98155773e-01]
 [9.53734517e-01]
 [1.43594518e-01]
 [1.18741550e-01]
 [5.31676590e-01]
 [8.75085831e-01]
 [2.31190864e-02]
 [1.60845652e-01]
 [9.97575104e-01]
 [4.49348949e-02]
 [3.55029665e-02]
 [9.87277865e-01]
 [2.49819178e-02]
 [7.11812377e-01]
 [1.45154282e-01]
 [9.80037451e-01]
 [9.85785663e-01]
 [1.79231644e-01]
 [7.85812497e-01]
 [9.73748446e-01]
 [9.39446688e-01]
 [9.99787867e-01]
 [9.93629396e-01]
 [9.84507203e-01]
 [3.35359275e-02]
 [3.79985213e-01]
 [4.70888108e-01]
 [9.63377487e-03]
 [9.68424022e-01]
 [9.34391379e-01]
 [8.99583101e-01]
 [9.31372106e-01]
 [9.68458876e-03]
 [9.29701865e-01]
 [1.56862140e-02]
 [9.85003412e-01]
 [3.61557931e-01]
 [8.90015289e-02]
 [4.89414424e-01]
 [4.74040210e-01]
 [1.75916523e-01]
 [2.78444976e-01]
 [7.97949553e-01]
 [1.80773456e-02]
 [9.98636186e-01]
 [1.12091750e-02]
 [8.90697062e-01]
 [4.24723029e-01]
 [2.74499203e-03]
 [2.65430003e-01]
 [3.49418074e-02]
 [8.65534693e-02]
 [9.96967614e-01]
 [1.53905177e-03]
 [9.98468459e-01]
 [6.48859918e-01]
 [1.93722144e-01]
 [8.59560192e-01]
 [3.74800235e-01]
 [1.50754407e-01]
 [1.04879439e-01]
 [8.10173035e-01]
 [6.33928716e-01]
 [1.06671704e-02]
 [9.66139555e-01]
 [7.36867309e-01]
 [8.38509481e-03]
 [1.76459372e-01]
 [9.34690177e-01]
 [4.07885224e-01]
 [1.20934740e-01]
 [9.74024057e-01]
 [9.62988675e-01]
 [6.22400828e-03]
 [9.99937415e-01]
 [1.64667820e-03]
 [8.97753716e-01]
 [1.70668901e-03]
 [1.67918712e-01]
 [2.15591714e-01]
 [1.53189942e-01]
 [3.41254696e-02]
 [3.84551175e-02]
 [3.20439078e-02]
 [3.10006320e-01]
 [7.12640397e-03]
 [9.82666373e-01]
 [3.66662862e-03]
 [9.58719194e-01]
 [1.84938440e-03]
 [6.86059654e-01]
 [2.08173960e-01]
 [1.02986870e-02]
 [9.67041910e-01]
 [1.67275697e-01]
 [9.98199463e-01]
 [7.76024461e-01]
 [2.85082340e-01]
 [8.53231013e-01]
 [9.81132030e-01]
 [1.15863150e-02]
 [3.86606276e-01]
 [9.98764277e-01]
 [4.31695133e-02]
 [1.61542729e-01]
 [7.84880757e-01]
 [6.19273841e-01]
 [9.82673168e-01]
 [1.80557668e-02]
 [1.42019643e-02]
 [8.26262712e-01]
 [2.32936546e-01]
 [9.96495545e-01]
 [3.26764472e-02]
 [1.55865382e-02]
 [7.12129772e-02]
 [1.13213189e-01]
 [9.75140274e-01]
 [9.90556359e-01]
 [4.32670116e-01]
 [8.74263465e-01]
 [4.65030894e-02]
 [3.09193969e-01]
 [9.26167846e-01]
 [1.63464531e-01]
 [7.64191747e-01]
 [9.99062788e-04]
 [2.87309498e-01]
 [8.06953609e-01]
 [4.64490533e-01]
 [5.35227597e-01]
 [9.09150004e-01]
 [9.90846932e-01]
 [8.63441408e-01]
 [2.37010941e-01]
 [9.46986079e-01]
 [1.74997654e-02]
 [6.15166187e-01]
 [2.94280142e-01]
 [1.29841836e-02]
 [9.08689022e-01]
 [8.69769081e-02]
 [4.26619500e-01]
 [9.68744636e-01]
 [9.12578940e-01]
 [9.86585855e-01]
 [5.59075475e-02]
 [9.46651757e-01]
 [9.87378418e-01]
 [4.13823247e-01]
 [7.02925399e-02]
 [9.64882255e-01]
 [4.63150501e-01]
 [8.63800883e-01]
 [9.77948785e-01]
 [4.75336105e-01]
 [3.59942436e-01]
 [1.02595007e-02]
 [9.42115188e-01]
 [1.14707910e-01]
 [5.31444788e-01]
 [9.78006244e-01]
 [2.34388094e-02]
 [5.83171129e-01]
 [3.14729482e-01]
 [9.37330484e-01]
 [3.02287221e-01]
 [8.60399455e-02]
 [1.64760947e-02]
 [2.73828246e-02]
 [8.69541049e-01]
 [9.97727811e-01]
 [2.38876846e-02]
 [4.03726637e-01]
 [3.04428726e-01]
 [8.84899437e-01]
 [9.78909552e-01]
 [9.88504112e-01]
 [3.93996909e-02]
 [7.05908716e-01]
 [1.23141184e-01]
 [6.43241107e-01]
 [4.33221936e-01]
 [7.43029416e-02]
 [7.55922496e-01]
 [8.16874802e-01]
 [8.74779880e-01]
 [2.47345753e-02]
 [4.62226272e-01]
 [5.40409721e-02]
 [9.64681625e-01]
 [9.64333057e-01]
 [6.66630745e-01]
 [8.16587806e-01]
 [5.02970874e-01]
 [3.23907332e-03]
 [7.88877666e-01]
 [2.02697024e-01]
 [8.48085403e-01]
 [9.58601892e-01]
 [9.94523287e-01]
 [6.44705892e-02]
 [1.75751392e-02]
 [1.63723707e-01]
 [2.07897294e-02]
 [9.38788895e-03]
 [8.86956751e-01]
 [8.15794393e-02]
 [5.97159751e-03]
 [3.00714731e-01]
 [5.84675014e-01]
 [9.94655728e-01]
 [7.62004018e-01]
 [6.34771585e-01]
 [5.83344162e-01]
 [5.34210682e-01]
 [5.06538153e-02]
 [4.66367044e-02]
 [5.77710032e-01]
 [9.77481902e-01]
 [9.98193562e-01]
 [1.78780116e-04]
 [5.09295948e-02]
 [9.99565899e-01]
 [2.82657415e-01]
 [2.98587382e-01]
 [3.94535422e-01]
 [2.72260327e-03]
 [2.37743501e-02]
 [3.44301201e-03]
 [1.93830788e-01]
 [7.41034467e-03]
 [5.18813729e-01]
 [1.55570164e-01]
 [6.44917488e-01]
 [7.30316341e-01]
 [9.99956250e-01]
 [7.22542048e-01]
 [2.08255187e-01]
 [2.40337271e-02]
 [2.25900814e-01]
 [2.20448315e-01]
 [1.69305094e-02]
 [8.05127025e-01]
 [8.23709726e-01]
 [1.21589534e-01]
 [2.27591261e-01]
 [8.32810700e-01]
 [9.99304056e-01]
 [9.55468655e-01]
 [7.29582429e-01]
 [4.26013172e-02]
 [9.04981673e-01]
 [8.64389241e-01]
 [1.85340531e-02]
 [2.40972545e-03]
 [9.93671298e-01]
 [3.00893560e-02]
 [1.36261627e-01]
 [5.81015192e-05]
 [3.46454829e-01]
 [9.88118351e-01]
 [3.22223723e-01]
 [1.30972797e-02]
 [5.47124565e-01]
 [8.73785198e-01]
 [1.63970515e-01]
 [1.89237773e-01]
 [5.49147010e-01]
 [8.56789295e-03]
 [9.57418263e-01]
 [2.89811313e-01]
 [6.79531574e-01]
 [9.88395691e-01]
 [8.86963755e-02]
 [9.97629642e-01]
 [9.07537818e-01]
 [3.23287696e-02]
 [5.20831964e-04]
 [2.35656559e-01]
 [1.76179949e-02]
 [7.29806364e-01]
 [9.01129842e-01]
 [3.57771083e-03]
 [3.47383410e-01]
 [8.45829308e-01]
 [3.33074108e-02]
 [9.93179604e-02]
 [1.55705644e-03]
 [9.79777575e-02]
 [1.87894657e-01]
 [3.53882521e-01]
 [5.03913164e-02]
 [1.12244068e-02]
 [9.89788473e-01]
 [2.67709456e-02]
 [1.73026249e-02]
 [8.59649479e-02]
 [9.41823721e-01]
 [3.83221775e-01]
 [8.53537798e-01]
 [8.22362721e-01]
 [9.75837529e-01]
 [8.96436393e-01]
 [3.74091446e-01]
 [9.85124171e-01]
 [2.74900645e-01]
 [4.36199874e-01]
 [7.37180829e-01]
 [2.95115948e-01]
 [9.99008775e-01]
 [9.67532218e-01]
 [1.29585400e-01]
 [1.22030675e-02]
 [8.44702959e-01]
 [9.42193925e-01]
 [9.37802315e-01]
 [7.95755684e-01]
 [9.99679327e-01]
 [9.33421016e-01]
 [1.67395830e-01]
 [7.30392635e-02]
 [3.10050666e-01]
 [1.41261788e-02]
 [1.14179300e-02]
 [1.09221704e-01]
 [8.91018892e-04]
 [1.00992993e-01]
 [1.97925493e-01]
 [4.41289783e-01]
 [3.40430886e-01]
 [4.81283851e-02]
 [5.36591530e-01]
 [9.93134260e-01]
 [1.83644630e-02]
 [9.74441588e-01]
 [9.68236327e-01]
 [6.79832101e-01]
 [7.63404131e-01]
 [9.24726784e-01]
 [1.83842611e-02]
 [2.90527165e-01]
 [2.23275974e-01]
 [1.70280617e-02]
 [3.95841748e-01]
 [8.08555901e-01]
 [9.88090515e-01]
 [9.59035754e-01]
 [7.50017107e-01]
 [3.43177736e-01]
 [4.44129497e-01]
 [1.51470557e-01]
 [1.92512432e-03]
 [2.51472533e-01]
 [8.53819788e-01]
 [7.64655292e-01]
 [4.47014302e-01]
 [9.83120918e-01]
 [8.43136683e-02]
 [9.86126721e-01]
 [9.15032104e-02]
 [2.61595398e-01]
 [6.00056469e-01]
 [7.17646062e-01]
 [6.47920549e-01]
 [9.41271067e-01]
 [9.27771151e-01]
 [5.03407605e-03]
 [4.60565463e-02]
 [2.38527991e-02]
 [6.12624809e-02]
 [6.06184304e-01]
 [3.46786641e-02]
 [4.28468823e-01]
 [1.71407629e-02]
 [1.02643333e-02]
 [8.06739032e-01]
 [1.58958718e-01]
 [9.38553959e-02]
 [2.77731605e-02]
 [3.11023116e-01]
 [9.90312338e-01]
 [3.94628406e-01]
 [9.23297033e-02]
 [2.49409266e-02]
 [6.17510453e-02]
 [9.22304273e-01]
 [2.03182325e-01]
 [9.89521146e-01]
 [9.95639920e-01]
 [9.45116580e-03]
 [9.55721319e-01]
 [8.67682815e-01]
 [1.40693128e-01]
 [9.90546107e-01]], shape=(900, 1), dtype=float32)

Loss Function

  • 기존 MSE 대신 Cross Entropy 사용

def loss_fn(hypothesis, labels):
    loss = -tf.reduce_mean(labels * tf.math.log(hypothesis) + \
                           (1 - labels) * tf.math.log(1 - hypothesis))
    return loss

optimizer = tf.compat.v1.train.GradientDescentOptimizer(learning_rate=0.005)

학습

epochs = 5000

for step in range(epochs):
  for features, labels in dataset:
    with tf.GradientTape() as tape:
      pred = logistic_regression(features)
      loss_value = loss_fn(pred, labels)
      grads = tape.gradient(loss_value, [W,b])
      optimizer.apply_gradients(grads_and_vars=zip(grads,[W,b]))
      if step % 100 == 0:
            print("Iter: {}, Loss: {:.4f}".format(step, loss_fn(logistic_regression(features),labels)))
Iter: 0, Loss: 0.7933
Iter: 100, Loss: 0.7348
Iter: 200, Loss: 0.6819
Iter: 300, Loss: 0.6341
Iter: 400, Loss: 0.5912
Iter: 500, Loss: 0.5527
Iter: 600, Loss: 0.5183
Iter: 700, Loss: 0.4875
Iter: 800, Loss: 0.4601
Iter: 900, Loss: 0.4356
Iter: 1000, Loss: 0.4138
Iter: 1100, Loss: 0.3944
Iter: 1200, Loss: 0.3770
Iter: 1300, Loss: 0.3614
Iter: 1400, Loss: 0.3475
Iter: 1500, Loss: 0.3351
Iter: 1600, Loss: 0.3239
Iter: 1700, Loss: 0.3139
Iter: 1800, Loss: 0.3049
Iter: 1900, Loss: 0.2969
Iter: 2000, Loss: 0.2896
Iter: 2100, Loss: 0.2830
Iter: 2200, Loss: 0.2771
Iter: 2300, Loss: 0.2718
Iter: 2400, Loss: 0.2670
Iter: 2500, Loss: 0.2626
Iter: 2600, Loss: 0.2587
Iter: 2700, Loss: 0.2551
Iter: 2800, Loss: 0.2518
Iter: 2900, Loss: 0.2489
Iter: 3000, Loss: 0.2462
Iter: 3100, Loss: 0.2437
Iter: 3200, Loss: 0.2414
Iter: 3300, Loss: 0.2394
Iter: 3400, Loss: 0.2374
Iter: 3500, Loss: 0.2357
Iter: 3600, Loss: 0.2341
Iter: 3700, Loss: 0.2325
Iter: 3800, Loss: 0.2311
Iter: 3900, Loss: 0.2298
Iter: 4000, Loss: 0.2286
Iter: 4100, Loss: 0.2275
Iter: 4200, Loss: 0.2264
Iter: 4300, Loss: 0.2254
Iter: 4400, Loss: 0.2245
Iter: 4500, Loss: 0.2236
Iter: 4600, Loss: 0.2227
Iter: 4700, Loss: 0.2219
Iter: 4800, Loss: 0.2212
Iter: 4900, Loss: 0.2205

테스트

def accuracy_fn(hypothesis, labels):
    predicted = tf.cast(hypothesis > 0.5, dtype=tf.int32)
    accuracy = tf.reduce_mean(tf.cast(tf.equal(predicted, labels), dtype=tf.float32))
    return accuracy
test_acc = accuracy_fn(logistic_regression(x_test),y_test)
print("Testset Accuracy: {:.4f}".format(test_acc))
#Testset Accuracy: 0.8800
profile
AI, Information and Communication, Electronics, Computer Science, Bio, Algorithms

0개의 댓글