๐Ÿ“ AI & Bigdata/NVIDIA

[NVIDIA] Deep Learning ์‹ค์Šต ๊ฐ•์˜

SOIT 2022. 8. 10. 17:08

๋”ฅ๋Ÿฌ๋‹ ์†Œ๊ฐœ

๋”ฅ๋Ÿฌ๋‹: 2010๋…„์— ๋ถ€์‘

 

์—ฌ๋Ÿฌ ์‚ฐ์—… ๋ถ„์•ผ

1. ์ปดํ“จํ„ฐ ๋น„์ „

  • ๋กœ๋ณดํ‹ฑ์Šค ๋ฐ ์ œ์กฐ
  • ๋ฌผ์ฒด ๊ฒ€์ถœ
  • ์ž์œจ์ฃผํ–‰ ์ž๋™์ฐจ: ์‚ฌ๋žŒ, ์‹ ํ˜ธ๋“ฑ, ๋„๋กœ, detection,, segmentation,, ๊ด‘๋ฒ”์œ„ํ•˜๊ฒŒ ์ ์šฉ

 

2. ์ž์—ฐ์–ด ์ฒ˜๋ฆฌ

  • ์‹ค์‹œ๊ฐ„ ๋ฒˆ์—ญ
  • ์Œ์„ฑ์ธ์‹

 

3. ์ถ”์ฒœ ์‹œ์Šคํ…œ

  • ์ฝ˜ํ…์ธ  ํ๋ ˆ์ด์…˜
  • ๋งž์ถคํ˜• ๊ด‘๊ณ 
  • ์‡ผํ•‘ ์ถ”์ฒœ(์•„๋งˆ์กด,, )

 

4. ๊ฐ•ํ™” ํ•™์Šต

  • ์•ŒํŒŒ๊ณ  vs ์ธ๊ฐ„
  • AI ๋ด‡ vs ํ”„๋กœ๊ฒŒ์ด๋จธ
  • ์ฃผ์‹ ๊ฑฐ๋ž˜ ๋กœ๋ด‡

 

๋“ฑ์— ํ™œ์šฉ


ํ•ธ์ฆˆ์˜จ ์—ฐ์Šต(์‹ค์Šต)

https://courses.nvidia.com/courses/course-v1:DLI+C-FX-01+V3-KR/courseware/258ba24018854cbfb9f7ff5e04b7d6f8/43eee6e2d779407286f142ccb8483fe0/ 

 

Sign In

 

static-login.nvidia.com

์‹ค์Šต ํ™˜๊ฒฝ: jupyter

ํ”„๋ ˆ์ž„ ์›Œํฌ: keras, pytorch,,

 

1) HELLO WORLD ํ”„๋กœ์ ํŠธ(์ˆซ์ž ์ธ์‹)

 

1. ์ฃผํ”ผํ„ฐ ํ™˜๊ฒฝ ๋“ค์–ด๊ฐ„ ํ›„์—

kernel ๋น„์šฐ๊ธฐ ๊ผญ ํ•ด์ค˜์•ผ(GPU ๋ฉ”๋ชจ๋ฆฌ ์ง€์›Œ์•ผ)

๋‹ค์šด๋ฐ›์ง€ ์•Š๊ณ  load dataset์œผ๋กœ ๋ฐ์ดํ„ฐ ๋ฐ›์„ ์ˆ˜ ์žˆ์Œ

MNIST ๋ฐ์ดํ„ฐ์„ธํŠธ๋กœ ์ด๋ฏธ์ง€ ๋ถ„๋ฅ˜

0~9์˜ ์ˆ˜๊ธฐ ๋ฌธ์ž๋กœ ๊ตฌ์„ฑ๋œ 70,000๊ฐœ

0~255(255์— ๊ฐ€๊นŒ์šธ ์ˆ˜๋ก ํ‘๋ฐฑ์— ๊ฐ€๊นŒ์›€)

(x_train, y_train), (x_valid, y_valid) = mnist.load_data()

 

2์ฐจ์›-> 1์ฐจ์›์œผ๋กœ flatten

์ •๊ทœํ™”

 

๋ฒ”์ฃผ ์ธ์ฝ”๋”ฉ

ํ•ด๋‹น ๊ฐ’๋งŒ 1์ด๊ณ  ๋‚˜๋จธ์ง€๋Š” 0์œผ๋กœ

 

๋ชจ๋ธ ์ƒ์„ฑ

 

model.add(Dense(units = 10, activation='softmax'))

์ถœ๋ ฅ์€ 0~10๊นŒ์ง€ 10๊ฐœ์—ฌ์„œ

 

๋ชจ๋ธ ์ปดํŒŒ์ผ

๋ชจ๋ธ ํŠธ๋ ˆ์ด๋‹

history = model.fit(
    x_train, y_train, epochs=5, verbose=1, validation_data=(x_valid, y_valid)
)

 

 

Cmder

 

import tensorflow.keras as keras
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense

x = np.array([ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9])
y = np.array([10, 20, 25, 30, 40, 45, 40, 50, 60, 55])

#model
layer0 = keras.layers.Dense(1, input_shape=[1])
model = Sequential([layer0])

model.compile(optimizer='sgd', loss='mean_squared_error')

model.fit(x, y, epochs=1000, verbose=0)

weights = layer0.get_weights()
print('weight: {} , bias: {}'.format(weights[0], weights[1]))

m = weights[0][-1]
b = weights[1][-1]
y_hat = x * m + b

plt.plot(x, y, '.')
plt.plot(x, y_hat, '-')
plt.show()

print("Loss:", np.sum((y - y_hat)**2)/len(x))

 


์ดํ›„ ์••์ถ• ํ›„ ๋‹ค์šด

!tar -czvf class.tar.gz ./* #์••์ถ•

728x90