딥러닝

[패스트캠퍼스 수강 후기] 인공지능강의 100% 환급 챌린지 8회차 미션

인공지능개발자 2020. 7. 6. 08:35

인공지능강의

05. PART 4) 딥러닝의 3 STEP의 기초

04. Ch 01. 딥러닝이 무엇인가요 - 04. 딥러닝의 현재

딥러닝의 대중화 - Framework

. Caffe2

. MatConvNet

. TensorFlow

. PyTorch

현재는 Tensorflow 와 PyTorch의 양강 구도가 이루어지고 있다.

집입 장벽이 낮고 속도가 빠른 PyTorch, 다양한 플랫폼으로 확장되고 있는 Tensorflow

 

딥러닝의 대중화 - Cloud Platform

. aws

. Google CloudPlatform

. Microsoft Azure

 

딥러닝의 대중화 - Hardware

. GTX 1080ti

. Titan

. TESLA

 

딥러닝의 대중화 - Cloud Platform

IaaS(Infrastructure as a Service), PaaS(Platform as a Service)를 넘어서 SaaS(Software as a Service)가 대중화되고 있다.

 

딥러닝 시장 전망

05. Ch 01. 딥러닝이 무엇인가요 - 05. 딥러닝 실습 환경 소개

딥러닝 실습 환경 소개

1. 하이퍼 파리미터 설정

2. 네트워크 구조정의

3. 학습루프 정의

4. 테스트루프 정의

5. 테스트셋 가져오고 정리

6. 네트워크 생성

7. 손실함수 최적화 알고리즘 정의

8. 알고리즘 평가지표 설정

9. 알고리즘 학습, 평가 루프

 

# 딥러닝 실습 환경 소개
import tensorflow as tf
# Specify hyperparameters
EPOCHS = 5
# Define network architecture
class MyModel(tf.keras.Model):
def __init__(self):
super(MyModel, self).__init__()
self.flatten = tf.keras.layers.Flatten(input_shape=(28, 28))
self.d1 = tf.keras.layers.Dense(128, activation='sigmoid')
self.d2 = tf.keras.layers.Dense(10, activation='softmax')
def call(self, x):
x = self.flatten(x)
x = self.d1(x)
return self.d2(x)

# Implement training loop
@tf.function
def train_step(model, images, labels, loss_object, optimizer, train_loss, train_accuracy):
with tf.GradientTape() as tape:
predictions = model(images)
loss = loss_object(labels, predictions)
gradients = tape.gradient(loss, model.trainable_variables)
optimizer.apply_gradients(zip(gradients, model.trainable_variables))
train_loss(loss)
train_accuracy(labels, predictions)
# Implement algorithm test
@tf.function
def test_step(model, images, labels, loss_object, test_loss, test_accuracy):
predictions = model(images)
t_loss = loss_object(labels, predictions)
test_loss(t_loss)
test_accuracy(labels, predictions)
# Import and organize dataset
mnist = tf.keras.datasets.mnist

(x_train, y_train), (x_test, y_test) = mnist.load_data()
x_train, x_test = x_train / 255.0, x_test / 255.0

x_train = x_train[..., tf.newaxis]
x_test = x_test[..., tf.newaxis]

train_ds = tf.data.Dataset.from_tensor_slices((x_train, y_train)).shuffle(10000).batch(32)
test_ds = tf.data.Dataset.from_tensor_slices((x_test, y_test)).batch(32)
# Create model
model = MyModel()
# Define loss and optimizer
loss_object = tf.keras.losses.SparseCategoricalCrossentropy()
optimizer = tf.keras.optimizers.Adam()
# Define performance metrics
train_loss = tf.keras.metrics.Mean(name='train_loss')
train_accuracy = tf.keras.metrics.SparseCategoricalAccuracy(name='train_accuracy')

test_loss = tf.keras.metrics.Mean(name='test_loss')
test_accuracy = tf.keras.metrics.SparseCategoricalAccuracy(name='test_accuracy')
# Do training loop and test
for epoch in range(EPOCHS):
for images, labels in train_ds:
train_step(model, images, labels, loss_object, optimizer, train_loss, train_accuracy)

for test_images, test_labels in test_ds:
test_step(model, test_images, test_labels, loss_object, test_loss, test_accuracy)

template = 'Epoch {}, Loss: {}, Accuracy: {}, Test Loss: {}, Test Accuracy: {}'
print(template.format(epoch + 1,
train_loss.result(),
train_accuracy.result() * 100,
test_loss.result(),
test_accuracy.result() * 100))
train_loss.reset_states()
train_accuracy.reset_states()
test_loss.reset_states()
test_accuracy.reset_states()

 

 

https://bit.ly/3g72Rmm

 

딥러닝/인공지능 올인원 패키지 Online. | 패스트캠퍼스

성인 교육 서비스 기업, 패스트캠퍼스는 개인과 조직의 실질적인 '업(業)'의 성장을 돕고자 모든 종류의 교육 콘텐츠 서비스를 제공하는 대한민국 No. 1 교육 서비스 회사입니다.

www.fastcampus.co.kr