Fundamental 14. 딥러닝과 신경망의 본질

♣ 오늘 Fundamental 내용은 이론 기반의 학습으로 AI-REMEMBER의 포스팅에 특화된 노드네요!

<기본 학습목표>
1. 딥러닝과 머신러닝의 차이 이해하기
2. 딥러닝은 데이터를 표현하는 것을 목표로 하는 '표현학습' 이라고 말할 수 있는 근거가 되는 본질 이해하기
3. 함수 차원에서, 연결주의를 계승하여 채택한 신경망 모델의 본질 이해하기
4. 선형성 이해하기

★14.2절★

  1. 참고자료
  2. 인공지능 : 사람이 직접 프로그래밍하는 것이라기보다는 기계가 자체적으로 시스템을 구축하는 과학으로 정의한다.
  3. 머신러닝 : 데이터를 분석하고 스스로 학습, 판단, 예측하는 방법론
  4. 딥러닝 : 머신러닝의 하위 집합에 속하며 특히 학습 모델의 형태가 신경망인 방법론
  5. 딥러닝의 대가, 조슈아 벤지오 - 참고자료2
  6. 조슈아 벤지오가 정의한 딥러닝 : 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.
  7. Representation은 '표현'을 뜻하며, 딥러닝에서 꽤 중요하게 여겨지는 개념이다.
  8. 그 데이터에 적합한 표현을 찾아낼 수 있는 기계를 만드는 것을 딥러닝이라 볼 수 있다.

★14.3절★

  1. 데이터는 그 자체로 데이터이다.
  2. 데이터는 분자 형태, 풀어서 말하면 가공을 거치지 않은 형태 그대로를 나타낸다.
  3. 이외의 다양한 데이터 표현 방식 : 이미지, 표, 카테고리
  4. 데이터의 4가지 표현 방식인 분자형태, 이미지, 표, 카테고리 사이에는 계층적 관계를 갖는다.
  5. 데이터의 4가지 표현 방식 중 카테고리가 가장 사람의 개입이 강하게 반영된다.
  6. 데이터의 4가지 표현 방식 중 분자형태가 가장 사람의 개입이 약하다.
  7. 딥러닝의 궁극적인 목표는 학습된 함수를 이용하여 데이터로부터 내재적 표현을 뽑아내는 것이다.
  8. 더욱 뛰어난 딥러닝 모델을 만들려면 해당 모델의 구조나 최적화 등의 세부 요인에 대한 연구도 필요하다.

★14.4절★

  1. 행동주의 : 철저하게 경험적이고 실증적인 방법으로 인간의 내면을 접근. 인간의 내성보다는 표면에 나타나는 행동을 중심으로 관찰하고 해석해서 심리 현상을 파악한다.
  2. 행동주의를 조금 더 쉽게 이해하면 생명체가 학습하는 과정은 단순히 자극과 행동의 반복으로 이루어지는 것이다.
  3. 조작적 조건화 : 생명체가 외부에서 받는 자극으로 인해 학습되는 과정
  4. 스키너의 상자 : 동물의 행동을 연구하기 위해 고안된 학습 실험 장치
  5. 강화학습의 근간이 되는 이론인 '강화이론'은 생명체가 자신에게 유리한 결과를 가져다주는 행동임을 알게 되면 그 행동의 빈도를 높인다.
  6. 행동주의는 인간의 내면을 지나치게 단순화했다는 비판이 있었다.

★14.5절★

  1. 행동주의는 '자극 → 행동' 관점에서만 설명하고 있다.
  2. 인지주의는 '자극 → (정보처리) → 행동' 관점을 가지고 있다.
  3. 인지주의는 행동주의와는 달리 인간이 자극을 받으면 내면에서 정보를 처리하고 가공하는 과정이 존재할 수 있다고 보았다.
  4. 결국 인지심리학은 신경과학이라는 분야를 만들어내며 새로운 패러다임이 되었다.

★14.6절★

  1. 연결주의 : 수많은 신호들이 연결된 일련의 과정에 따라 정보가 처리된다는 이론
  2. 연결주의에 의해 학습된 내용은 연결된 뉴런 자체에 저장되어 있다.
  3. 외부에서 자극을 받고 연결 형태가 바뀐다면 학습된 내용도 함께 바뀌어간다.
  4. 딥러닝은 이 이론을 따른다.
  5. 딥러닝이 모델로 갖는 것은 인공 신경망이다. 인공 신경망은 뇌의 뉴런들이 얽히고 섥혀서 연결된 모양을 띤다.
  6. 딥러닝은 결국 인지주의와 연결주의의 철학과 문제의식을 계승한 것이다.
  7. 생명체가 데이터를 입력받았을 때 내부에서 정보를 처리하고 표현하는 매커니즘을 찾는 것은 딥러닝의 궁극적인 목표라고 볼 수 있다.

★14.7~14.8절★

  1. 아래의 도식을 해석하면, 자극을 입력받고 신경망 내부에서의 정보 처리 과정을 거쳐 출력을 만들어낸다는 의미로 해석가능하며, 이는 함수와 비슷한 매커니즘을 갖는다.
  2. 결국 신경망은 거대한 하나의 함수라고 볼 수 있다.
  3. 수학에서의 함수와 프로그래밍에서의 함수의 본질은 서로 다르지 않다. 모두 입력 / 내부연산 / 출력의 형태를 갖는다.

★14.9~14.10절★

  1. 함수의 역할
  • Relation : y=f(x)에 대하여 x와 y의 관계를 표현할 수 있는 도구
  • Transformation : x를 변환해주는 도구
  • Mapping : x의 공간에서 y의 공간으로 매핑해주는 도구
  1. 참고영상
  2. Linear Transformation 즉, 선형변환이 되기 위한 조건
  • 원점은 변환 후에도 여전히 원점 그대로일 것
  • 모든 선은 변환 후 휨이나 구부러짐 없이 직선 형태를 유지할 것
  1. 2차원 평면에서의 Transformation : 변환을 어떤 방식으로 하느냐에 따라 수직 또는 수평인 2차원 축을 휘게, 꼬이게 할 수도 있다. 한마디로 축을 옮기는 역할을 한다.
  2. 스칼라는 크기만 가지는 양이며, 벡터는 크기와 방향을 모두 가지는 양이다.
  3. 함수의 매핑 방식
  • One-to-one : 입력값과 출력값이 모두 하나의 스칼라 값을 가지는 매핑 방식으로, 단변량 회귀라고도 부른다.
  • Many-to-one : 입력값은 벡터, 출력값은 스칼라 값을 가지는 매핑 방식으로, 다변량 회귀라고도 부른다.
  • Many-to-many : 입력값과 출력값이 모두 벡터의 형태를 가지는 매핑 방식으로, 카테고리 개수로 이루어진 벡터를 출력하는 이른바 분류 문제에 이 방식이 주로 사용된다.

★14.11절★

  1. 모델(Model) : 머신러닝 또는 딥러닝 환경에서 데이터를 입력받고 원하는 값을 예측하거나 원하는 형태로 데이터를 표현하여 출력하는 모든 함수
  2. 현실 세계에는 다양하고 복잡한 요인들이 관여한다.
  3. 따라서 이러한 모든 요인을 정량화할 수 없다면, 완벽한 함수를 구현하는 것은 어렵다.
  4. 머신러닝과 딥러닝은 완벽한 함수를 구현하는 것이라기보다는 그나마 가장 잘 근사할 수 있는 함수(TASK1)에 가까워지기 위한 시도를 하는 것이다.
  5. TASK1을 찾기 위해 하는 일
  • 해당 모델을 어떤 형태의 함수로 나타낼지 결정하기
  • 해당하는 함수의 공간 안에서 최적의 함수 찾기
  1. Inductive Bias는 가설로, 데이터를 잘 설명할 수 있는 최적의 함수가 특정한 함수공간에 존재할 것이라고 보았다. 더 좋은 모델을 만들기 위해서는 더 좋은 Inductive Bias가 필요하다.

★14.12~14.14절★

♣ 해당 내용은 오늘 AI-REMEMBER에서는 다루지 않습니다.
♣ 해당 내용은 AI에 대한 현재와 미래를 탐구하는 부분으로, 금요일 Fundamental 내용과 함께 다룰 예정입니다!

profile
날개를 달고 날아오르자!

0개의 댓글