인공지능 28

손실함수(Loss function)

위와 같은 데이터가 있다고 해보자.  각 학생의 공부시간과 성적이 적히 데이터인데, 공부시간에 따른 성적을 예측하는 데이터다.  모델을 정의하기 앞서 y 라는 정답지의 유형이 범주형인지 실수형인지를 따져봐야한다. 위의 예시는 실수형태이니 풀어야 하는 문제가 회귀(Regression) 문제라고 인식할 수 있어야 한다.  회귀문제를 푼다고 정의를 했으니 이제 모델을 정의해야한다. 예시 데이터에서는 피처가 하나뿐이니 단순 선형 회귀 모델에 해당한다. $y = wx + b$ 머신러닝/딥런닝은 가장 정확히 예측할 수 있는, 최적의 매개변숫값을 찾는 작업이다. 모델을 정의했으니 이제 남은 건, 어떻게, 어떤 방법을 이용해 최적의(optimal) 매개변수 값을 찾을지다. (optimal : 데이터를 가장 잘 표현하는..

최적화와 경사하강법(Gradient Descent)

'머신러닝은 최적화 과정이다' 라고 얘기할 정도로 머신러닝은 최적화(Optimization)를 굉장히 많이 사용한다.고등학교 수학수업에서 배웠듯이, 최적화 문제에는 주로 미분을 사용하여 푼다. (미분을 통해 최소점과 최대점을 구할 수 있으니) 머신러닝과 딥러닝에서 최적화란 손실 함수(Loss Function)의 값을 최소화하는 파라미터를 구하는 과정이다. [손실함수란 예측값과 실제값의 차이를 비교하는 함수다]  해당 표는 6월 성적과 9월 성적을 토대로 수능 성적을 예측하는 문제에 대한 머신 러닝 모델의 예측값$(y ̂)$과 실제값$(y)$을 나타낸다. 6월 성적과 9월 성적 각각이 가지는 가중치는 동일하게 0.5 로 두었다. 이렇게 두 개의 파라미터의 값이 0.5 일시의 오차가 큰데, 이런 오차를 최소..

다층 퍼셉트론(MLP: Multi Layer Perceptron)과 활성화 함수(Activation function)

저번에 퍼셉트론에 대해서 설명했었다. 위처럼 은닉층이 없는, 훈련 데이터를 받아들이는 입력층(Input layer)과 결과를 도출하는 출력층(Output layer), 이렇게 두가지의 층으로만 이루어져있는 퍼셉트론을 단층 퍼셉트론이라고 한다. XOR 문제를 예시로, 단층퍼셉트론은 선형으로 분리가 가능하지 않은 상황은 처리가 불가능했다. XOR 문제와 같은 선형분리가 불가능한 상황을 층을 더한 다층 퍼셉트론을 이용하여 해결할 수 있게 되었다. 퍼셉트론에 대한 설명은 아내 링크를 참조해주세요. 인공신경망(ANN: Artificial Neural Network)과 퍼셉트론(Perceptrons)인간은 뇌를 통해 학습을 하니까, 기계에도 뇌와 비슷한 구조의 무언가를 만들어 주면 되지 않을까? 라는 질문을 토대로..

인공신경망(ANN: Artificial Neural Network)과 퍼셉트론(Perceptrons)

인간은 뇌를 통해 학습을 하니까, 기계에도 뇌와 비슷한 구조의 무언가를 만들어 주면 되지 않을까? 라는 질문을 토대로 만들어지게 된 것이 인공신경망이다.  그렇담, 먼저 우리 인간의 뇌는 어떻게 작동되는 것일까.  주름진 사람의 뇌에는 '뉴런(Neuron)'이라 하는 대략 1000억개의 신경세포가 존재한다.이 뉴런은 가장 작은 정보처리 단위로서 세포체와 수많은 가지들(수상돌기와 축삭들)로 이루어져 있다. 이 가지와 가지를 이어 신호를 주고받는 부위가 '시냅스(Synapse)'다. 시냅스에서는 전압이 일정 이상이 될 시, 신경 전달 물질을 분비하고 이것이 다음 신경세포에 전달되어 전기신호가 전해지는 것이다. 이렇듯, 인간의 뇌는 마치 전기회로와도 같아 인간의 지능이 컴퓨터로 실현되는게 가능하다고 보게 된 ..

인공신경망(Neural Network)

해당 내용은 유튜브 채널 '코딩애플'의 쉬운 딥러닝 강의를 정리한 글입니다.(⇓ 강의링크)https://www.youtube.com/watch?v=8oMwnXfVH14    해당 모델은 저번시간에 만든 머신러닝 모델이다.  (https://bruders.tistory.com/70?category=956446 )최적의 매개변수 값을 찾게 시키는게 머신러닝이라 하였다. 초기 단순한 형태의 모델에서 조금 더 복잡하고 정교하게 예측하기 위해서 중간에 층을 더 두면 되지 않을까? 라는 생각이 나온다. 생각이 나오게 된 계기는 "기계가 사람처럼 생각할 수 있으면 좋지 않을까?" 라는 가정이다.   그렇담 사람이 어떻게 생각하는지를 볼 필요가 있다.사람의 뇌에는 뉴런이라 불리는 굉장히 많은 신경세포가 존재한다. 각각..

Machine Learning 유형: 지도 | 비지도 | 강화 학습

가구나 프라모델을 조립해야한다고 가정해보자.이 때, 조립방식도 조립을 시작하게 되는 접근 방법도 다양할 것이다.  설명서가 있다면 설명서대로 따라서 조립하면 될 것이고, 이미 어떻게 조립하는지 스스로 알고 있다면 설명서 없이 조립하면 될 것이다. 하지만 설명서를 읽어도 도통 모르겠거나 알고있는 기본적인 조립방법 또한 알지 못하는 상태라면, 가구나 프라모델의 부품을 어떻게 조립하는지는 조립하는 사람에게 달려있다. 머신러닝도 마찬가지다.  연구하는 과제와 이용할 수 있는 데이터의 종류에 따라 이에 적합한 학습 모델을 사용해 알고리즘을 학습시키도록 한다. 여기서 알고리즘을 학습 시키는 방법은 위의 가구조립 예처럼 다양한 방식이 존재한다. 이 방식에는 크게 지도 방식에 따라 4가지 유형으로 나뉜다.   지도 학..

Machine Learning 기계 학습 개념

해당 내용은 책 Maschine Learning 기계학습 (한빛아카데미 | 오일석) 을 요약 및 정리한 글입니다. 머신러닝에 대해서 좀 더 깊이 알아보자. 기계 학습 개념 아래 예시를 통해 기계 학습의 개념을 알아보도록 하자. 아래 그래프에서 가로축은 시간이고 세로축은 물체의 이동한 위치다. 물론 다른 여러 상황이 될 수도 있고. 2초, 4초, 6초 점을 샘플링해 물체의 이동 위치를 측정한 결과, 3.0, 4.0, 5.0, 6.0 이렇게 4개의 값을 얻었다고 가정 시, 이때 임의의 시간에 대한 물체의 위치를 예측하는 문제를 풀어야 한다. 기계학습은 이러한 예측(Prediction) 문제를 푸는 것이며, 이 예측 문제는 회귀(Regression)와 분류(Classification)로 나뉜다. 위에 예시처럼..

Machine Learning 기계학습이란?

인간의 지능은 컴퓨터로 실현될 수 있는가? 라는 단순한 질문에서 시작된다.먼저, 인간의 뇌를 생각해보자.  주름진 사람의 뇌에는 '뉴런(Neuron)'이라 하는 대략 1000억개의 신경세포가 존재한다. 타체세포와 달리 신경세포에는 수많은 가지(축삭과 가지돌기)들이 뻗어나와 서로 연결되어 있는데, 이 가지와 가지를 이어 신호를 주고받는 부위가 '시냅스(Synapse)'다. 시냅스에서는 전압이 일정 이상이 될 시, 신경 전달 물질을 분비하고 이것이 다음 신경세포에 전달되어 전기신호가 전해진다. 따라서 인간의 뇌는 전기회로와도 같아 인간의 지능이 컴퓨터로 실현되는게 가능하다.  머신러닝에 대해 알아보기 전에 먼저 인공지능에 대해 알고 가자. 인공지능(Artificial Intelligence, AI) 인공지능..