tensorflow_입시예측AI 만들기(실습)

hwang·2024년 10월 17일

강의 영상 : https://www.youtube.com/watch?v=8ftqlASt6HY

위 강의 시청 후 복기를 목적으로 작성하는 포스팅입니다.

import pandas as pd
#외부파일 가져오기 위해서 pandas import 

data = pd.read_csv('gpascore.csv')
#파이썬으로 csv 파일 read 

data = data.dropna()
#빈값있는 행을 제거 

y데이터 = data['admin'].values
x데이터 = [ ]

for i, rows in data.iterrows():
	#iterrow() data라는 데이터프레임을 가로 한줄씩 출력해라 
    x데이터.append([ rows['gre'], rows['gpa'], rows['rank'] ])
    #'gre','gpa','rank' 는 csv 컬럼명 
    
#여기까지 데이터 전처리 완료 

import tensorflow as tf
import numpy as np 

model = tf.keras.models.Sequential([
	#히든레이어 3개
    tf.keras.layers.Dense(64,activation='tanh'),
    tf.keras.layers.Dense(128,activation='tanh'),
    tf.keras.layers.Dense(1,activation='sigmoid'),
    #괄호안에 숫자는 노드의 갯수 > 결과가 잘 나올때까지 숫자 바꾸면서 실행해보기 
    #activation function 종류
    #마지막 레이어 : 결과물 하나여야하기때문에 숫자 1 
    #sigmoid 함수는 모든 결과를 0~1로 압축시켜줌 
])

model.compile(optimizer='adam',loss='binary_crossentropy',metrics=['accuracy'])
#oprimizer 종류
#loss 함수 종류 
#binary_crossentropy : 0~1사이 확률문제에서 제일 많이 씀 

model.fit(np.array(x데이터), np.array(y데이터), epochs=1000)
#모델 학습(fit)시키기 
#학습데이터,실제 정답, epochs(몇번 학습 시킬 것인가)
#fit에는 python 리스트를 바로 넣을 순 없고, numpy array 처럼 다른걸로 변형시켜줘야함

#예측: x데이터만 넣기
예측값 = model.predict(np.array([[750,3.7,1],[400,2.2,1]]))
print(예측값)

terminal에서 python app.py 실행

각각 61% , 1.9% !

! 틀리거나 지적하실 부분이 있다면 편하게 댓글 남겨주세요.
tensorflow 입문자에게 큰 도움이 된답니다.. ^__^

tensorflow 맛보기 끝 !

profile
🍀

0개의 댓글