๐Ÿš€ ๋”ฅ๋Ÿฌ๋‹ ์‹ค์Šต - Tensorflow ๋ชจ๋ธ ์„ค๊ณ„ํ•˜๊ธฐ (IRIS ๋ถ“๊ฝƒ ํ’ˆ์ข… ๋ถ„๋ฅ˜)

vincaยท2022๋…„ 12์›” 14์ผ
0

๐ŸŒ” AI/DL - Training

๋ชฉ๋ก ๋ณด๊ธฐ
2/5

Introduction

๋ถ—๊ฝƒ์˜ ํ’ˆ์ข…์„ ๋ถ„๋ฅ˜ํ•ด๋ณด์ž. (๋ฐ์ดํ„ฐ ์…‹ ๋‹ค์šด๋กœ๋“œ)

๋ฌธ์ œ ์ •์˜

๋ถ—๊ฝƒ์€ ๊ฝƒ์žŽ ๋ชจ์–‘๊ณผ ๊ธธ์ด๋ฅผ ๊ธฐ์ค€์œผ๋กœ ํ’ˆ์ข…์„ ๊ตฌ๋ถ„ํ•œ๋‹ค.

๋ฐ์ดํ„ฐ ์„ธํŠธ ํ™•์ธ

๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ด 4๊ฐœ์˜ ์†์„ฑ์œผ๋กœ ์ด๋ฃจ์–ด์ง์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

์ƒ๊ด€๋„ ๊ทธ๋ž˜ํ”„

ํด๋ž˜์Šค๊ฐ„ ์ƒ๊ด€๋„๋ฅผ ์•Œ์•„๋ณด์ž(์ƒ๊ด€๋„ == ์œ ์‚ฌ๋„) ์–ผ๋งˆ๋‚˜ ๊ฐ ๋ฐ์ดํ„ฐ๋“ค์ด ์„œ๋กœ ์ƒ๊ด€๋˜์–ด์žˆ๋Š”์ง€๋ฅผ ํ™•์ธํ•œ๋‹ค.
๋šœ๋ ทํ•˜๊ฒŒ ๊ตฌ๋ถ„ํ•˜๊ธฐ ์œ„ํ•ด์„œ ์ด๋Ÿฌํ•œ ์ƒ๊ด€๋„๋Š” ๋‚ฎ์„์ˆ˜๋ก ์ข‹๋‹ค.(๋งŽ์ด ๋‹ค๋ฅด๋ฏ€๋กœ ๊ตฌ๋ถ„ํ•˜๊ธฐ ์ข‹์Œ)

import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
df = pd.read_csv(my_data, names = ["sepal_length", "sepal_width", 
"petal_length", "petal_width", "species"])
sns.pairplot(df, hue='species');
plt.show()

์›-ํ•ซ ์ธ์ฝ”๋”ฉ

์ปดํ“จํ„ฐ๊ฐ€ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ์–ธ์–ด๋กœ ๋ ˆ์ด๋ธ”์„ ๋ณ€๊ฒฝํ•ด์ค€๋‹ค.

from sklearn.preprocessing import LabelEncoder
e = LabelEncoder()
e.fit(Y_obj)
Y = e.transform(Y_obj)
Y_encoded = tf.keras.utils.to_categorical(Y)

๋ชจ๋ธ ์ •์˜ ๋ฐ ์ปดํŒŒ์ผ

model = Sequential()
model.add(Dense(16, input_dim=4, activation='relu'))
model.add(Dense(3, activation='softmaxโ€™))
model.compile(loss='categorical_crossentropy',
optimizer='adam',
metrics=['accuracyโ€™])
model.fit(X, Y_encoded, epochs=50, batch_size=1)

ํ•ด๋‹น ์ฝ”๋“œ๊ฐ€ ์ดํ•ด๊ฐ€ ์ž˜ ๋˜์ง€ ์•Š๋Š”๋‹ค๋ฉด ๋”ฅ๋Ÿฌ๋‹ ๋ชจ๋ธ ์„ค๊ณ„๋ฅผ ์ฐธ๊ณ ํ•˜๋ผ. ๊ฐ„๋‹จํ•œ ๋‚ด์šฉ์ด๋‹ค.


์ œ๊ณต๋˜๋Š” ๋ฐ์ดํ„ฐ ์„ธํŠธ

โšซ Scikit-lean ์ œ๊ณต ๋ฐ์ดํ„ฐ ์„ธํŠธ
https://scikit-learn.org/stable/datasets.html

profile
๋ถ‰์€ ๋ฐฐ ์˜ค์ƒ‰ ๋”ฑ๋‹ค๊ตฌ๋ฆฌ ๊ฐœ๋ฐœ์ž ๐ŸฆƒCloud & DevOps

0๊ฐœ์˜ ๋Œ“๊ธ€