2024년 1학기 방송통신대 중간과제물 딥러닝의통계적이해)Teachable Machine을 이용하여 충분한 데이터(10개 이상)로 자신의 머신러닝 모형을 만들고 그 결과를 정리하시오 다층신경망의 학습과정을 ChatGPT(또는 Bard, Bing Chat 등)에 물어서 찾고 등
본 자료는 3페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
해당 자료는 3페이지 까지만 미리보기를 제공합니다.
3페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

2024년 1학기 방송통신대 중간과제물 딥러닝의통계적이해)Teachable Machine을 이용하여 충분한 데이터(10개 이상)로 자신의 머신러닝 모형을 만들고 그 결과를 정리하시오 다층신경망의 학습과정을 ChatGPT(또는 Bard, Bing Chat 등)에 물어서 찾고 등에 대한 보고서 자료입니다.

목차

1. Teachable Machine을 이용하여 충분한 데이터(10개 이상)로 자신의 머신러닝 모형을 만들고 그 결과를 정리하시오.(8점)

2. 다층신경망의 학습과정을 ChatGPT(또는 Bard, Bing Chat 등)에 물어서 찾고, 이를 기반으로 다층신경망의 학습과정을 스스로 다시 정리하시오.(6점)

3. http://playground.tensorflow.org/ 접속하여 분류과제(Classification) 중 하나를 학번 끝자리에 따라 선택하고, 이 과제에 대해 하이퍼파라미터를 달리하여 신경망 2개를 만들고, 이 2개 신경망 성능을 비교하여 하이퍼파라미터의 특성을 정리하시오.(8점)

4. 구글 Colab을 이용하여 MNIST에 대한 완전연결신경망을 작성하고 그 과정을 설명하시오. 코드 작성할 때 교재의 코드를 참고하되 그대로 작성하지 않고 신경망 구조(은닉층 수, 뉴런 등)을 부분 수정하여 작성하시오.(코드와 최종결과 캡처해서 넣으시오.)(8점)

5. 참고문헌

본문내용

하고 테스트 데이터와 비교하여 \"테스트 손실\"도 최소화하려는 것이다.
이상의 사전 지식을 바탕으로 구글 텐서플로 플레이그라운드로 완전연결신경망의 구조 설계를 해본다. 먼저 입력 데이터로는 X1, X2를 선택한다. 좀 더 복잡한 features를 선택하면 학습속도도 길어진다. 즉, 데이터 전처리 과정에 따라 학습속도가 달라질 수 있다는 것이다. 정규화는 과적합(overfitting)을 줄이기 위한 것으로, 과적합은 모델이 학습된 데이터에는 잘 작동하지만 그렇지 않은 데이터에 대해서는 예측이 좋지 않은 것을 의미한다. 여기서는 일단 정규화는 선택하지 않는다.
플레이그라운드에서 제공하는 4종류의 데이터 세트 중 시계방향으로 봤을 때 3번째 데이터 세트를 제외한 나머지는 하나의 직선으로 구분할 수 없는 비선형 문제이므로 은닉층이 없는 단층 퍼셉트론으로는 분류를 정확히 할 수 없다. 따라서 1번째 데이터 세트로 완전연결신경망을 설계하기 위해서는 은닉층을 만들어야 한다. 은닉층의 뉴런 수가 적을 경우에는, 복잡한 데이터 세트에서 신호를 적절하게 감지할 수 있는 은닉층에 뉴런이 거의 없기 때문에 모델이 적합하지 않은 언더피팅(underfitting)이 발생한다. 반면 은닉층에 뉴런 수가 많으면 훈련 데이터에만 과도하게 정확하고 시험 데이터에는 부정확한 과적합의 문제가 발생한다.
아래 그림은 일단 하나의 은닉층에 4개의 뉴런으로 구성한 신경망을 학습시킨 결과이다. 이때 학습율은 일반적으로 많이 사용되는 0.03, 활성화함수는 Tanh를 사용했고 정규화는 설정하지 않았다. batch size를 5로 했는데 batch size 24로 했을 때에는 학습속도는 더 느렸고 test loss와 trainning loss 값을 비교해도 그 차이가 더 컸다. 이는 아래 그림을 통해 알 수 있다. 아래 그림은 batch size를 5 실행했을 때의 결과이다.
batch size 24로 했을 때의 결과는 다음과 같다.
그런데 활성화 함수를 ReLU로 했을 경우 학습속도는 tanh보다 더 느렸고 그 결과 또한 큰 차이를 보이는데, 부드러운 곡선이 아니라 다각형 형태로 구분하고 있음이 확인된다. sigmoid 함수 또한 학습속도는 tanh보다 큰 차이로 느린 모습을 보였지만 ReLU보다는 더 부드럽게 분류하고 있다. 아래 두 그림(좌:ReLU, 우 : sigmoid)을 통해 이러한 결과를 확인할 수 있다.
지금까지는 은닉층 수를 한 개로 설정했지만, 일반적으로 은닉층 수가 많을수록 더 학습결과가 좋으므로 최종적으로는 은닉층 수를 2개로 한 완전연결신경망을 설계했다. 실제 학습 결과를 보면 test loss와 trainning 모두 0.001로 양호하다. 그러나 은닉층이 2개가 되면서 그만큼 학습속도는 느릴 수밖에 없다. 다만, 학습할 때 적용되는 가중치값이 달라지므로 플레이그라운드를 재실행할 때마다 분류 과정이 조금씩 다를 수는 있을 것이다.
4. 구글 Colab을 이용하여 MNIST에 대한 완전연결신경망을 작성하고 그 과정을 설명하시오. 코드 작성할 때 교재의 코드를 참고하되 그대로 작성하지 않고 신경망 구조(은닉층 수, 뉴런 등)을 부분 수정하여 작성하시오.(코드와 최종결과 캡처해서 넣으시오.)(8점)
import tensorflow as tf
import matplotlib.pyplot as plt
hidden__neurons = 512 # 은닉층 뉴런 개수
output_neurons = 10# 출력층 뉴런 개수(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
batch_size = 256# 가중치 변경 전에 처리하는 샘플의 개수
epochs = 20# 에포크 개수
(x_train, y_train), (x_test, y_test) = tf.keras.datasets.mnist.load_data()
x_train.shape, y_train.shape, x_test.shape, y_test.shape
# 입력 이미지의 픽셀 값이 0.0에서 1.0 사이의 값이 되도록 변환.
x_train = x_train.astype(\'float32\')/255
x_test = x_test.astype(\'float32\')/255
model = tf.keras.models.Sequential([
tf.keras.layers.Flatten(input_shape=(28, 28)), # 입력층의 이차원 이미지를 1차원 벡터로 변환
tf.keras.layers.Dense(hidden__neurons, activation=\'relu\'),
tf.keras.layers.Dense(output_neurons, activation=\'softmax\')])
model.summary()
# 손실함수, 학습 알고리즘 선택
model.compile(loss=\'sparse_categorical_crossentropy\',
optimizer=\'adam\', metrics=[\'accuracy\'])
history = model.fit(x_train, y_train, batch_size=batch_size, epochs=epochs, validation_split=0.25)
score = model.evaluate(x_test, y_test, verbose=0)
print(\'테스트 손실값:\', score[0])
print(\'테스트 정확도:\', score[1])
plt.plot(history.history[\'accuracy\'], \'r-\')
plt.plot(history.history[\'val_accuracy\'], \'b--\')
plt.legend([\'train\', \'validation\'], loc=\'upper left\')
plt.ylim([0.89,1.001])
plt.xlabel(\'Epoch\')
plt.ylabel(\'Accuracy\')
plt.show()
5. 참고문헌
김용대, 김기온(2020), 딥러닝의 통계적이해, 방송통신대학교출판문화원.
이영호(2020), 2020 모두의 인공지능 with 파이썬, 길벗.
천인국(2020), 인공지능 : 파이썬으로 배우는 머신러닝과 딥러닝, 인피니티북스.
https://chat.openai.com/
  • 가격9,000
  • 페이지수11페이지
  • 등록일2024.03.25
  • 저작시기2024.03
  • 파일형식한글(hwp)
  • 자료번호#1244987
청소해
다운로드 장바구니