본문 바로가기

Deep Learning

(8)
[딥러닝] 신경망 인공 신경망은 생물학적 신경망의 중추신경계인 인간의 뇌가 문제를 처리하는 방식을 모방한 모형으로, 그 시작은 1958년 로젠블랫이 선형 분류를 위한 이층 구조의 퍼셉트론을 개발하면서 시작했습니다. 이후 위드로와 호프는 최소 최소평균제곱 알고리즘이라고 불리는 adaline과 학습규칙을 소개를 했습니다. 우선 신경망의 특징을 살펴보면 다음과 같습니다. 신경망의 각 노드에 미분 가능한 비선형 활성함수를 적용한다. 신경망은 하나 이상의 은닉층을 포함한다. 신경망은 높은 수준의 연결성을 나타낸다. 이때 연결강도는 신경망의 가중치에 의해 결정한다. 그리고 신경망 훈련에서 가장 많이 사용하는 알고리즘은 역전파 알고리즘입니다. 입력 신호는 출력에 도달할 때까지 층별로 전파되며, 반대로 역방향 단계에서는 싱경망 출력을 ..
[딥러닝] 최적화 이론 지금까지 선형대수와 확률과 통계를 공부하며, 기초적인 수학을 공부했습니다. 이제 매개변수 공간을 탐색하고, 미분을 하며 경사하강을 해서 기울기가 0이 될 때까지 학습을 시키는 과정을 공부하겠습니다. 먼저 학습하는데 사용되는 데이터의 차원을 고려해야합니다. 만약 높은 차원의 즉 특징이 많은데 비해 훈련 집합의 크기가 작은 경우 참인 확률 분포를 구하는 일은 불가능에 가까워 집니다. 그렇기 때문에 머신 러닝은 적절한 모델을 선택하고 목적 함수를 정의하고 모델의 매개변수 공간을 탐색해서 목적함수가 최저가 되는 최적점을 찾는 전략을 사용합니다. 즉 특징 공간에서 해야하는 일을 모델의 매개변수 공간에서 하는 일로 대치하는 것입니다. 아래는 이러한 최적화를 이용해서 머신러닝의 문제풀이를 하는 과정을 보입니다. 반대..
[딥러닝, 수학] 확률과 통계 다음과 같은 윷이 있다고 가정을 합시다. 5가지중 한 값을 가지게 되는 확률 변수는 x이고, x의 정의역은 {도, 개, 걸, 윷, 모}가 됩니다. 그리고 이에 대한 확률 분포를 구하면 다음과 같을 것입니다. 그리고 이러한 확률밀도는 아래와 같이 히스토그램으로 그릴 수 있다, 만약 연속적인 입력을 받는 신호인 경우는 오른쪽과 같이 표현한다. 그리고 확률 벡터라는 개념이 있는데, 예로 들어 붓꽃에서 확률 벡터 x는 4차원의 벡터를 얻어낼 수 있습니다. 꽃받침 길이, 너비, 꽃잎 길이, 너비 또 다른 예시로 다음과 같은 번호가 담긴 주머니와 여기서 나오는 번호에 따라 해당 병에서 공을 뽑고 색을 관찰한다고 가정해봅시다. 이 때 번호를 y, 공의 색을 x라는 확률 변수로 표현하면 정의역은 다음과 같습니다. 일단..
[딥러닝, 수학]선형대수와 퍼셉트론 1. 벡터 벡터는 샘플을 n차원의 특징 벡터로 표현합니다. 예로 들어서 데이터에서 꽃받침의 길이, 너비, 꽃잎의 길이, 너비는 4가지 특징이기 때문에 4차원의 특징 벡터로 표현하게 됩니다. 여러 개의 특징 벡터가 존재한다면, 이는 첨자로 구분하게 됩니다. 다음은 행렬입니다. 만약 여러 개의 벡터가 쌓인다면, 이는 행렬로도 표현할 수 있습니다. 예로 들어 붓꽃 데이터가 있는 150개의 샘플이 있따고 하면, 이는 다음과 표현할 수 있습니다. 이러한 행렬도 쌓이면 3차원 이상으로 표현할 수 있습니다. 이를 텐서라고 합니다. 이 텐서는 보통 RGB 컬러 영상들이 쌓이는 경우 이를 표현하기 위한 도구로도 사용됩니다. 지금까지는 데이터를 표현하기 위한 방법에 대해 서술해보았습니다. 이제 벡터와 행렬의 크기를 측정하..
[딥러닝] 간단한 기계학습 다음과 같은 모델이 있다고 가정하자. 이 때 식은 y = wx + b이다. 이제 훈련을 할 때 손실률이 얼마나 나는가를 계산해야 한다. 이 때 많이 사용하는 것은 MSE(Mean Square Error) 평균 제곱 오차이다. 우리는 이 MSE값이 값을 줄이는 방향으로 매개 변수를 개선해야한다.
[딥러닝] 인공지능과 데이터 인공지능 과학 기술은 다음과 같은 프로세스를 통해서 발달하기 시작했다. 데이터를 수집하고 모델을 정립한 뒤 예측을 해보고 만약 내가 원하는만큼 나오지 않는다면 더 많은 데이터를 수집하고, 모델을 수정한 뒤 다시 예측한다. 즉 방대한 데이터는 단순한 수학 공식으로 표현하는 것이 불가능하기 때문에, 자동으로 모델을 찾아내는 과정은 필수이다. 데이터 모델으로 학습하기 떄문에 주어진 응용에 맞는 충분한 다양한 데이터를 충분한 양만큼 수집해야한다. 예로 들어 정면 얼굴만 데이터만 수집할 때 옆 면이나, 약간 잘린 사진을 준다면 매우 낮은 성능을 내지만, 정면 얼굴에 있어 높은 값을 줄 것이다. 즉 추정 정확도가 높아진다. 즉 주어진 응용 환경을 자세히 볼 필요가 존재한다. 하지만 MNIST를 예시로 들자면 2^7..
[인공지능] 특징 공간 인공지능에게 특징을 표현하는데 있어서 1차원 특징과 2차원 특징 공간이 있다. 보통 전 포스트와 같은 직선 상에서 하나의 값을 예측하는 것을 1차원 특징 공간이라 하며, 이미지와 같이 x, y를 전부 고려해야하는 것을 2차원 특징 공간이라 한다. 이 때 각 특징 벡터들은 다음과 같이 표기를 한다. 벡터 예시는 다음과 같다. 사실 다차원이라고 다른가? 라고 하면 그렇진 않다. 데이터베이스도 그렇듯이 d-차원이라고 하면 단순히 d개의 특징을 가지고 있다고 보면 된다. 그래서 d차원의 경우는 bias가 붙기 때문에 d+1 만큼의 매개변수를 가지며, 2차원의 경우는 매개변수는 d^2+d+1만큼의 매개변수를 가지게 된다. 하지만 2차원 데이터를 가지고 있고, 선형 분리를 하려고 한다고 가정하자. 그럼 다음과 같은..
[인공지능] 기계학습이란 기계학습도 결국 학습이다. 이는 기계가 배워서 익히는 것을 말하는 것이다. 인공지능 초창기 1950년대 컴퓨터가 학습을 할 수 있도록 프로그래밍을 하는 것을 말한다고 한다. 하지만 최근에는 프로그램 성능을 p라고 하면 그 척도가 경험을 통해 성능이 개선되었다면 프로그램이 학습했다고 볼 수 있으며, 사례 데이터 즉 가거 경험을 이용해 성능 기준을 최적화하도록 프로그래밍하는 것이라 했다. 그리고 2012년에는 성능을 개선하거나 정확하게 예측하기 위해 경험을 이용하는 계산학이라고 정의하기 시작한다. 먼저 이해해두면 좋은 키워드를 소개하겠습니다. AI는 감각과 사유 그리고 적응하며, 행동을 하는 것처럼 프로그램이 동작하는 것을 말한다. 머신러닝은 데이터가 쌓이면 쌓일수록 성능을 개선하는 것을 말합니다. 딥 러닝..