본문 바로가기

머신러닝, 딥러닝

머신러닝과 딥러닝

머신러닝의 연산 과정에서 입력과 출력은 사람이 판단하지만, 내부 구조인 함수는 컴퓨터가 규칙으로 이끌어 내 생성한다.

지도 학습 (Supervised Learning) : 사람이 제시한 지도(정답) 데이터를 바탕으로 학습하는 방법

비 지도 학습 (UnSupervised Learning) : 사람도 예측할 수 업서나, 그 데이터의 양이 매우 많아 지도 데이터를 제공하기 어려운 경우에 사용, 보통 데이터의 특징을 파악하는 데에 사용

<클래스 분류와 군집화 >

클래스 분류 : 사람이 정답을 확인할 수 있는 분류 기준

Ex) 중간 고사 성적 평균이 50점 미만, 50점 이상인 학생의 그룹 분류 -> 사람이 제시한 지도를 바탕으로 학습하므로, 지도 학습

군집화 : 정답을 확인할 수 없는 상태로 그룹을 나눔, 데이터를 “몇 개 그룹으로 나눌 것인가?”를 정하는 것이므로, 비지도 학습, 제시한 지도가 없다.

Ex)중간고사 성적에서, 수학을 잘 한 그룹과 국어를 잘 한 그룹, 명확한 기준이 없다. 제시한 지도 또한 없으므로 비 지도 학습이다.

클라우드 컴퓨팅(영어: cloud computing)은 클라우드(인터넷)을 통해 가상화된 컴퓨터의 시스템리소스(IT 리소스)를 제공하는 것이다. 인터넷 기반 컴퓨팅의 일종으로 정보를 자신의 컴퓨터가 아닌 클라우드(인터넷)에 연결된 다른 컴퓨터로 처리하는 기술을 의미한다.

머신러닝의 장점

사람이 다룰 수 없는 빅데이터를 처리

빅데이터의 처리 속도 향상

사람보다 더 정확한 판단 결과 확보

어떠한 판단에 감정을 부여하지 않는다.

하지만 여전히 사람의 판단에 의존해야 하는 분야도 존재한다. 데이터양이 적은 경우에서는 정확한 결과를 얻기 힘들다.

머신러닝? : “해결하고 싶은 문제를 어떻게 수치화하는가?” -> 공과대학의 최종 목표..?

컴퓨터는 데이터를 수치화 하지 않으면 학습하거나 획득 할 수 없다.

딥러닝을 이해하려면, 신경망을 먼저 알아가자.

신경망 : 사람이 규칙을 가르칠 필요 없이, 자율적으로 학습할 수 있기 때문, 주어진 데이터를 변환해 결과를 출력하는 블랙박스, 함수 라고 생각하자.

과대적합(Overfitting) :학습 데이터에서만 좋은 결과를 나타내고, 지도 데이터와 비교했을 때, 학습 데이터에서만 좋은 결과가 나타나는 것

복잡한 신경망을 구성할 때는 작은 크기의 신경망부터 구성하는 것이 좋다.

활성화 함수(Activation Function) : 입력값에서 출력값을 계산할 때 덧셈과 곱셈으로 구분하는데, 해당 계산을 함수로 정의한 것

단위 계단 함수, 시그모이드 함수, ReLU 함수 등 다양한 경우를 사용한다.

0보다 작은경우는 0보다 큰 실수는 1, 그 사이는 1/2로 표현하는 간단한 것.

성공과 실패를 구분하는 부분은 기울기가 급한 곳, 나머지는 기울기가 완만한 곳, 하지만 신경망의 계층이 깊으면 신경망 학습이 제대로 이루어지지 않는다.

딥러닝은 이 활성화 함수를 사용, 입력값이 0을 넘는 순간, 그대로 출력값으로 전달, 하지만 입력값이 0 이하라면 학습을 진행하지 않는다. 뉴런이 활성화 되지 않은 상태로 진행 해 속도가 빠르다.