본문 바로가기

인공지능

Chapter 3 Convolutional Neural Networks Open Assistant 참여와 Pytorch based DQN을 코드 작성등 개인적인 일정이 겹쳐 조금 늦게 작성을 시작하게 되었다. 추가적으로 CNN을 어떤 식으로 설명할까 고민하다 전통적인 방식으로 진행하게 될 것 같다. 사람은 사물을 판단할 때, 컴퓨터와 달리 픽셀이 완전히 일치해야 동일한 사물이라고 하지 않는다. 이는 극단적인 예지만, 일반적으로 CNN의 시작은 다음의 O, X Classifier 문제를 푸는 방식으로 시작한다. 우리는 위와 아래의 구분이 명확하지만 컴퓨터는 그렇지 않다. 입력자체가 숫자로 들어오기 때문에, 다음의 그림이 일치하는지 알지 못한다. 그러면 컴퓨터에게 어떻게 이 둘이 동일한 X인지 설명인지 시키게 할 것인가? 이것은 참 어려운 문제이다. 컴퓨터에서 이미지는 픽셀의 .. 더보기
Chapter 2-2 Neural Networks Chapter2 초기를 상기해보자. 우리는 Shallow Network와 Deep Network의 정의를 하고 넘어갔다. 이론적으로 Shallow Networks는 모든 기능을 모방할 수 있지만, 노드 수가 기하급수적으로 증가할 수 있다. 이런 기하급수적 노드의 폭발을 피하기 위해 Deep Network를 채택하고 있다. 하지만 Deep Network는 매우 강력한 힘을 가지고 있지만 많은 문제점들이 존재한다. 대표적인 예로는 어려운 최적화, Overfitting, Internal covariate shift가 있다. 많은 노드들이 사용이된다면 많은 항이 곱해지며 연산이 많아지게 된다. 그 여파로 인하여, 일부 값들이 작은 경우 기울기가 전체적으로 매우 작아며 반대로 일부 값들이 큰 경우 기울기가 전체적.. 더보기
Chapter 2-1 Neural Networks 간단하게 인공 신경망(Artificial Neural Network, ANN)의 탄생을 설명하고 넘어가도록하자. 우리의 뇌는 1011개의 뉴런들로 이루어져있다. 뉴런은 다음 그림과 같이 생겼다. 간단하게 이 뉴런의 구조를 Cell body, Dendrite, Axon으로 나눌수 있다. 뉴런은 해당 구조를 활용하여 정보전달을 하는데, 이는 아래의 그림과 같이 나타난다. Dendrite: 신경전달물질을 받음 Axon: 신경전달물질을 방출 Cell body: 신경전달물질저장 공간 이를 모방한 것이 ANN이다. ANN을 위의 방식으로 모방하면 다음 그림과 같이 모방이 가능할 것이다. 초기 모델들이 Sigmoid function을 사용하는 것과 해당 function을 바탕으로 XOR문제를 풀 수 있는 것은 너무 .. 더보기
Chapter 1 Machine Learning Goal of Machine Learning 통상적으로 기계 학습(機械學習) 또는 머신 러닝(영어: machine learning)은 경험을 통해 자동으로 개선하는 컴퓨터 알고리즘의 연구로 정의한다. 결국, 해당 정의는 주어진 데이터를 가장 잘 설명하는 함수를 찾아라라는 의미이다. 예를 들어보자. 주어진 데이터를 다음 그림으로 정의하겠다. 이에 최적화된 함수를 찾기위해서는 어떻게 해야될까? 여러종류의 모델중에서 선택하면 된다! 임의의 함수 f에서 주어진 데이터에 가장 잘 부합도록 변수들을 조정하는 것이다. 마지막으로 결정된 함수를 이용하여 값을 예측하면 이것이 machine learning이다. 하지만 여기에도 문제점들이 있다. 주어진 데이터를 가장 잘 설명하는 함수를 찾아라에서 우리는 어떻게 가장 잘 .. 더보기