Fundamental 14. 딥러닝과 신경망의 본질
♣ 오늘 Fundamental 내용은 이론 기반의 학습으로 AI-REMEMBER의 포스팅에 특화된 노드네요!
<기본 학습목표>
1. 딥러닝과 머신러닝의 차이 이해하기
2. 딥러닝은 데이터를 표현하는 것을 목표로 하는 '표현학습' 이라고 말할 수 있는 근거가 되는 본질 이해하기
3. 함수 차원에서, 연결주의를 계승하여 채택한 신경망 모델의 본질 이해하기
4. 선형성 이해하기
★14.2절★
- 참고자료
- 인공지능 : 사람이 직접 프로그래밍하는 것이라기보다는 기계가 자체적으로 시스템을 구축하는 과학으로 정의한다.
- 머신러닝 : 데이터를 분석하고 스스로 학습, 판단, 예측하는 방법론
- 딥러닝 : 머신러닝의 하위 집합에 속하며 특히 학습 모델의 형태가 신경망인 방법론
- 딥러닝의 대가, 조슈아 벤지오 - 참고자료2
- 조슈아 벤지오가 정의한 딥러닝 : Deep learning is inspired by neural networks of the brain to build learning machines which discover rich and useful internal representations, computed as a composition of learned features and functions.
- Representation은 '표현'을 뜻하며, 딥러닝에서 꽤 중요하게 여겨지는 개념이다.
- 그 데이터에 적합한 표현을 찾아낼 수 있는 기계를 만드는 것을 딥러닝이라 볼 수 있다.
★14.3절★
- 데이터는 그 자체로 데이터이다.
- 데이터는 분자 형태, 풀어서 말하면 가공을 거치지 않은 형태 그대로를 나타낸다.
- 이외의 다양한 데이터 표현 방식 : 이미지, 표, 카테고리
- 데이터의 4가지 표현 방식인 분자형태, 이미지, 표, 카테고리 사이에는 계층적 관계를 갖는다.
- 데이터의 4가지 표현 방식 중 카테고리가 가장 사람의 개입이 강하게 반영된다.
- 데이터의 4가지 표현 방식 중 분자형태가 가장 사람의 개입이 약하다.
- 딥러닝의 궁극적인 목표는 학습된 함수를 이용하여 데이터로부터 내재적 표현을 뽑아내는 것이다.
- 더욱 뛰어난 딥러닝 모델을 만들려면 해당 모델의 구조나 최적화 등의 세부 요인에 대한 연구도 필요하다.
★14.4절★
- 행동주의 : 철저하게 경험적이고 실증적인 방법으로 인간의 내면을 접근. 인간의 내성보다는 표면에 나타나는 행동을 중심으로 관찰하고 해석해서 심리 현상을 파악한다.
- 행동주의를 조금 더 쉽게 이해하면 생명체가 학습하는 과정은 단순히 자극과 행동의 반복으로 이루어지는 것이다.
- 조작적 조건화 : 생명체가 외부에서 받는 자극으로 인해 학습되는 과정
- 스키너의 상자 : 동물의 행동을 연구하기 위해 고안된 학습 실험 장치
- 강화학습의 근간이 되는 이론인 '강화이론'은 생명체가 자신에게 유리한 결과를 가져다주는 행동임을 알게 되면 그 행동의 빈도를 높인다.
- 행동주의는 인간의 내면을 지나치게 단순화했다는 비판이 있었다.
★14.5절★
- 행동주의는 '자극 → 행동' 관점에서만 설명하고 있다.
- 인지주의는 '자극 → (정보처리) → 행동' 관점을 가지고 있다.
- 인지주의는 행동주의와는 달리 인간이 자극을 받으면 내면에서 정보를 처리하고 가공하는 과정이 존재할 수 있다고 보았다.
- 결국 인지심리학은 신경과학이라는 분야를 만들어내며 새로운 패러다임이 되었다.
★14.6절★
- 연결주의 : 수많은 신호들이 연결된 일련의 과정에 따라 정보가 처리된다는 이론
- 연결주의에 의해 학습된 내용은 연결된 뉴런 자체에 저장되어 있다.
- 외부에서 자극을 받고 연결 형태가 바뀐다면 학습된 내용도 함께 바뀌어간다.
- 딥러닝은 이 이론을 따른다.
- 딥러닝이 모델로 갖는 것은 인공 신경망이다. 인공 신경망은 뇌의 뉴런들이 얽히고 섥혀서 연결된 모양을 띤다.
- 딥러닝은 결국 인지주의와 연결주의의 철학과 문제의식을 계승한 것이다.
- 생명체가 데이터를 입력받았을 때 내부에서 정보를 처리하고 표현하는 매커니즘을 찾는 것은 딥러닝의 궁극적인 목표라고 볼 수 있다.
★14.7~14.8절★
- 아래의 도식을 해석하면, 자극을 입력받고 신경망 내부에서의 정보 처리 과정을 거쳐 출력을 만들어낸다는 의미로 해석가능하며, 이는 함수와 비슷한 매커니즘을 갖는다.
- 결국 신경망은 거대한 하나의 함수라고 볼 수 있다.
- 수학에서의 함수와 프로그래밍에서의 함수의 본질은 서로 다르지 않다. 모두 입력 / 내부연산 / 출력의 형태를 갖는다.
★14.9~14.10절★
- 함수의 역할
- Relation : y=f(x)에 대하여 x와 y의 관계를 표현할 수 있는 도구
- Transformation : x를 변환해주는 도구
- Mapping : x의 공간에서 y의 공간으로 매핑해주는 도구
- 참고영상
- Linear Transformation 즉, 선형변환이 되기 위한 조건
- 원점은 변환 후에도 여전히 원점 그대로일 것
- 모든 선은 변환 후 휨이나 구부러짐 없이 직선 형태를 유지할 것
- 2차원 평면에서의 Transformation : 변환을 어떤 방식으로 하느냐에 따라 수직 또는 수평인 2차원 축을 휘게, 꼬이게 할 수도 있다. 한마디로 축을 옮기는 역할을 한다.
- 스칼라는 크기만 가지는 양이며, 벡터는 크기와 방향을 모두 가지는 양이다.
- 함수의 매핑 방식
- One-to-one : 입력값과 출력값이 모두 하나의 스칼라 값을 가지는 매핑 방식으로, 단변량 회귀라고도 부른다.
- Many-to-one : 입력값은 벡터, 출력값은 스칼라 값을 가지는 매핑 방식으로, 다변량 회귀라고도 부른다.
- Many-to-many : 입력값과 출력값이 모두 벡터의 형태를 가지는 매핑 방식으로, 카테고리 개수로 이루어진 벡터를 출력하는 이른바 분류 문제에 이 방식이 주로 사용된다.
★14.11절★
- 모델(Model) : 머신러닝 또는 딥러닝 환경에서 데이터를 입력받고 원하는 값을 예측하거나 원하는 형태로 데이터를 표현하여 출력하는 모든 함수
- 현실 세계에는 다양하고 복잡한 요인들이 관여한다.
- 따라서 이러한 모든 요인을 정량화할 수 없다면, 완벽한 함수를 구현하는 것은 어렵다.
- 머신러닝과 딥러닝은 완벽한 함수를 구현하는 것이라기보다는 그나마 가장 잘 근사할 수 있는 함수(TASK1)에 가까워지기 위한 시도를 하는 것이다.
- TASK1을 찾기 위해 하는 일
- 해당 모델을 어떤 형태의 함수로 나타낼지 결정하기
- 해당하는 함수의 공간 안에서 최적의 함수 찾기
- Inductive Bias는 가설로, 데이터를 잘 설명할 수 있는 최적의 함수가 특정한 함수공간에 존재할 것이라고 보았다. 더 좋은 모델을 만들기 위해서는 더 좋은 Inductive Bias가 필요하다.
★14.12~14.14절★
♣ 해당 내용은 오늘 AI-REMEMBER에서는 다루지 않습니다.
♣ 해당 내용은 AI에 대한 현재와 미래를 탐구하는 부분으로, 금요일 Fundamental 내용과 함께 다룰 예정입니다!