[tensorflow] #4. 複数のデータを使用した精度の調整


以下の英語の点数、採点、および上がらないデータがあります。


よく見ると同じデータの重複です.

テンセント導入、csv読み取り

import tensorflow as tf
import pandas as pd
import numpy as np

# pandas 엑셀 읽기
data = pd.read_csv('score.csv')

標準データと結果データを格納

# x데이터 (영어점수, 평점)
xData = []
for i,rows in data.iterrows():
    xData.append( [ rows['eng_score'], rows['tot_score'] ] )

# y데이터(합불)
yData = data['yn'].values

ニューラルネットワークのレイヤを設定する

# layer의 갯수 세팅
model = tf.keras.models.Sequential([
    tf.keras.layers.Dense(64, activation='tanh'),
    tf.keras.layers.Dense(128, activation='tanh'),
    tf.keras.layers.Dense(1, activation='sigmoid')
])

ニューラルネットワークの最適化アルゴリズム、損失アルゴリズム、結果値設定

model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy'] )

モデルにオーバーフローデータを入力し、ループを設定する


1000回回しましょうノートが熱くなりました.
model.fit( np.array(xData), np.array(yData), epochs=1000 )

モデル検証時間

# 영어점수와 학점으로 합불 예측
print(model.predict( [[9, 3.5]] ))
print(model.predict( [[9, 3.6]] ))
print(model.predict( [[9, 3.7]] ))
print(model.predict( [[9, 3.8]] ))
print(model.predict( [[9, 3.9]] ))

結果


英語の点数は9点、採点は4点だが、3.5点はない.しかし3.6~3.9区間の合格率の向上が見られる.
[[0.08848792]]
[[0.21077263]]
[[0.40116122]]
[[0.60247815]]
[[0.7551091]]