2022년 2학기 방송통신대 딥러닝의통계적이해 출석수업대체과제물)다층신경망의 학습과정을 정리 Teachable Machine 을 이용하여 머신러닝 모형을 만들고 그 결과를 갭처하여 정리 구글 Colab을 이용하여 MNIST에 대한 완전연결신경망 등
본 자료는 3페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
해당 자료는 3페이지 까지만 미리보기를 제공합니다.
3페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

2022년 2학기 방송통신대 딥러닝의통계적이해 출석수업대체과제물)다층신경망의 학습과정을 정리 Teachable Machine 을 이용하여 머신러닝 모형을 만들고 그 결과를 갭처하여 정리 구글 Colab을 이용하여 MNIST에 대한 완전연결신경망 등에 대한 보고서 자료입니다.

목차

1. 다층신경망의 학습과정을 정리하시오. (6점)

2. Teachable Machine(https://teachablemachine.withgoogle.com)을 이용하여 머신러닝 모형을 만들고 그 결과를 갭처하여 정리하시오. (8점)

3. http://playground.tensorflow.org/ 를 크롬으로 접속하여 분류과제(Classification) 중 하나를 학번 끝자리에 따라 선택하고, 해당 과제에 대한 최적의 신경망을 하이퍼파라미터를 달리하여 작성한 후 그 모형의 특성을 정리하시오. (8점)

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

5. 참고문헌

본문내용

파라미터의 효과를 파악하기 위한 도구로는 구글 텐서플로 플레이그라운드 등이 있다.
텐서플로 플레이그라운드에서는 하이퍼파라미터로 Epoch, Learning rate, Activation, Regularization rate 등을 선택할 수 있다. 은닉층은 최대 6개까지 가능하며 은닉층 당 최대 8개의 뉴런을 정할 수 있다. 이밖에도 Ratio of training to test data, noise, batch size 등도 조정하면서 학습 추이를 확인해 볼 수 있다. 노이즈가 증가하면 데이터 패턴이 더 불규칙하고 학습시간도 오래 걸린다. 배치 사이즈는 한 번에 학습시킬 데이터 수를 의미한다.
하이퍼파라미터를 결정하고 시행한 결과값에서 Test loss는 검증 데이터를 신경망에 넣었을 때 오차값, Training loss는 훈련 데이터에 대한 오차값이다. 학습이 진행되면서 각 오차값이 줄어드는 것을 그래프로 확인할 수 있다. 신경망을 훈련할 때 중요한 것은 \"훈련 손실\"을 최소화하고 테스트 데이터와 비교하여 \"테스트 손실\"도 최소화하려는 것이다.
이상의 사전 지식을 바탕으로 구글 텐서플로 플레이그라운드로 완전연결신경망의 구조 설계를 해본다. 먼저 입력 데이터로는 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점)
5. 참고문헌
김용대, 김기온(2020), 딥러닝의 통계적이해, 방송통신대학교출판문화원.
이영호(2020), 2020 모두의 인공지능 with 파이썬, 길벗.
천인국(2020), 인공지능 : 파이썬으로 배우는 머신러닝과 딥러닝, 인피니티북스.
  • 가격10,000
  • 페이지수9페이지
  • 등록일2022.10.19
  • 저작시기2022.10
  • 파일형식한글(hwp)
  • 자료번호#1187815
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니