티스토리 뷰

반응형

겨우 인공지능의 역사 따위 가르치자고, 한시간 수업 준비하자고 이렇게 많은 내용을 알아야 할까? 하는 의문이 든다면 지극히 정상이다. 평범한 수학 수업도 수업준비만 잠깐 하는 것 같지만, 대학 4년 다니면서 전공 공부한 시간을 생각하면 결코 준비가 쉽다고 할 수 없다.

인공지능수학에 나오는 수학적 개념은 모르는 것이 없더라도 인공지능과 연결짓고 그 관계를 이해하는 데는 시간이 걸리 수 밖에 없다. 교사도 호기심을 가지고 여러 가지 자료를 찾으며 공부해야 한다.

4. 인공지능의 부흥기 1990년대

이 시기는 그냥 딥러닝 이다. 드디어 인간의 신경망을 벤치마킹해서 인공지능이 급격하게 발전한다. 신경망 기반의 딥러닝에 대한 연구에 대한 결실을 볼 수 있었던 건 2000년 이후 자본컴퓨터의 성능 발달에 있다.

딥러닝은 교육과정 분류와 예측 영역, 교수・학습 방법 및 유의 사항에서

 

구체적인 이미지 분류 문제의 해결을 위해 인공신경망과 같은 방법이 개발되었음을 인식하게 한다.

 

라고 언급하고 있다. 자세한 설명은 그때 다시 하고 앞서 전문가 시스템처럼 딥러닝 실습을 할 수 있게 구글에서 만든 사이트 Neural Network Playground를 이용하면 좋다. 지도하는 관점에 따라서 이런 실습도 분류와 예측 영역에서 할 수도 있다.

 

 

Neural Network Playground

설명하는 위 번호와 같고, 실습 순서도 거의 이 순서를 따라하면 된다.

  1. 데이터 선택 : 파란색, 빨간색 데이터를 구분하는 것이 목표다. 네 가지 데이터 중에 어떤 것을 할 것인지 선택할 수 있다.
  2. 특성(feature) 선택 : 데이터를 분류하는 기준으로 특성을 조합하는 방법에 따라서 마지막 학습 결과에 영향을 많이 줄 수 있다. 많이 선택한다고 무조건 결과가 좋은 것은 아니다.
  3. 뉴런(neuron) 개수 선택 : 첫번째 단계에서 사용할 뉴런의 수를 선택한다.
  4. 은닉층(hidden layer) 개수 선택 : 최소 0개에서 최대 6개까지 은닉층을 선택할 수 있다. 학습이 시작되면 이전 단계의 뉴런에서 다음 단계의 뉴런으로 이어진 선의 굵기와 색에 따라 가중치(weight)가 달라지는 것을 확인할 수 있다.
  5. 학습 결과 확인 : 학습하면서 처음에 선택한 데이터를 분류가 바뀌어가는 것을 볼 수 있다.
  6. 손실(loss) : 학습(training) 과정과 테스트 과정에서 발생하는 손실을 알려준다. 일반적으로 학습 초기에는 1에 가깝지만 점점 0에 가까운 어떤 값에 수렴한다. 교과서에서도 손실함수에 대해서 배운다.
  7. 에포크(epoch) : 전체 데이터를 몇 번 반복하며 학습을 했는지 나타내는 횟수로 왼쪽에 화살표를 누르면 학습 횟수가 계속 증가한다. 시험공부를 할 때, 시험범위 시작부터 끝까지 1번 공부하는 게 1 에포크다.
  8. 학습률(learning rate) : 에포크를 반복하며 손실함수를 최소화하는 값을 반복적으로 찾는데, 얼마나 빠르게 그 값에 다가갈 것이냐, 를 결정한다. 학습률이 너무 크면 손실함수가 진동하거나 발산할 수도 있고, 너무 작으면 학습에 시간이 많이 걸리거나 국소 최솟값(local minimum)에 빠져서 전역 최솟값(global minimum)을 찾지 못할 수 있다. 적절히 작은 값을 선택해야 한다. 인공지능수학 과목에서도 배울 수 있다.
  9. 활성화 함수(activation) : 퍼셉트론을 모델링한 함수로 ReLU, tanh, sigmoid, linear 중에서 하나를 선택할 수 있다. 인공지능수학에서는 퍼셉트론에서 잠깐 언급하고 자세히 다루지 않는다.
  10. 정규화(regularization) : 인공지능이 학습한 데이터에는 굉장히 정확한 답을 내놓지만, 학습할 때 사용하지 않은 데이터에는 그에 한참 못미치고 오류가 많이 발생하는 경우 과적합(over fitting)이 되었다고 한다. 정규화는 과적합을 막기 위해서 하는 작업이다. 인공지능수학에서는 전혀 다루지 않는다.
  11. 정규화율(regularization rate)
  12. 문제 종류 : 회귀(regression)과 분류(classification). 예를 들어 미래의 부동산 가격을 수치적으로 예측하는 것은 회귀. 여러 사진들 중에서 강아지, 고양이 등을 구분하는 것은 분류다. 이 문제는 기본적으로 빨간색과 파란색 데이터를 구분하는 분류다. 지금부터는 내 추측이다. 이 문제를 회귀로 접근한다면 빨간색에 어떤 음수, 파란색에 어떤 양수 값을 부여하고 적절히 그 값을 예측한 후에 적절한 구분을 해준다면 회귀라고 볼 수도 있을 것 같다.
  13. 학습 데이터 비율, 노이즈, 배치 사이즈(batch size) : 전체 데이터 중에 학습에 사용할 데이터의 비율을 설정하면 나머지는 학습 후에 테스트 할 데이터로 사용된다. 노이즈 값을 높이면 빨간색과 파란색 사이에 서로 다른 색을 가지는 데이터가 발생하면서 좀 더 어려운 문제로 만들 수 있다. 배치 사이즈는 시험범위를 한 번에 몇 문제씩 공부할지 선택하는 것이다.

 

에포크(epoch)와 배치 사이즈(batch size), 그리고 과적합(over fitting)

이번 수학 시험 범위가 1쪽부터 100쪽 까지인 교과서 1권이라고 가정하자. 하루에 100쪽을 모두 공부할 수 없으니까 하루에 20쪽씩 보겠다고 계획을 세울 수 있다. 이 20쪽이 배치 사이즈다. 시험 범위를 한 번만 보고 시험을 보면 성적이 엉망일테니까 이 교과서를 10번 정도 봐야한다. 이때 교과서 전체를 보는 횟수 10번이 에포크다.
교과서를 10번을 보고 나서도 불안한 마음에 90번을 더 보면서 총 100번을 공부한다면 교과서의 모든 문제를 다 맞출 수 있다. 하지만 시험을 봤더니 60점 밖에 안 나왔다. 원인은 똑같은 교과서 문제에만 너무 반복해서 공부하는 바람에 조금이라도 다른 형태가 나오면 풀지 못한 것이다. 이걸 과적합이라고 한다.

반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함