머신러닝, 딥러닝, 인공지능 용어 개념
머신러닝, 기계학습? (Machine Learning), 인공지능 AI(Artificial Intelligent) 기계가 인간처럼 행동하거나 업무를 수행 (ex 음성인식, 안면인식, 사물인식 등 존재) 하는것을 이야기한다.
기계학습, 머신러닝 Machine Learning AI의 일부분으로 접근방식 중 하나로 단순 프로그래밍적 접근이 아닌, 복잡한 알고리즘으로부터 대량의 데이터를 분석해 패턴을 만들고, 인식하여 예측하는것을 말합니다.
딥러닝 Deep Learning
컴퓨터의 지능을 한 차원 더 올려놓는 역할을 하며, 대량의 데이터와 컴퓨팅 기술을 활용해 심층신경망을 구현 심층신경망은 인간의 뉴런 구조를 모방해 만든 것으로 데이터 세터를 분류하고 상관관계 분석 (딥러닝은 데이터가 많아질수록 기계의 예측도 정확해짐)
기계학습(Machine Learning)은 지도학습, 교사학습(Supervised Learning)와 비지도, 비교사학습(Unsupervised Learning), 강화학습, 준 지도학습, 준 교사학습(Reinforcement, Semi-Supervised) 으로 나눠지며 또 교사학습(Supervised Learning)는 분류(Classification)과 회귀(Regression)으로 나눠진다. 비지도, 비교사학습(Unsupervised Learning)은 군집화(Clustering)이 있습니다.
머신러닝과 딥러닝 모두 다 인공지능이라는 테두리로 칭할 수 있습니다.
인공지능의 사전적 정의는 네이버에서 다음과 같이 정의한다.
인간의 학습능력과 추론능력, 지각능력, 자연언어의 이해능력 등을 컴퓨터 프로그램으로 실현한 기술. 인간의 지능으로 할 수 있는 사고, 학습, 자기 개발 등을 컴퓨터가 할 수 있도록 하는 방법을 연구하는 컴퓨터 공학 및 정보기술의 한 분야로서, 컴퓨터가 인간의 지능적인 행동을 모방할 수 있도록 하는 것을 인공지능이라고 말하고 있다. 또한 인공지능은 그 자체로 존재하는 것이 아니라, 컴퓨터 과학의 다른 분야와 직간접으로 많은 관련을 맺고 있다.
그러나 이 글을 보는사람은 이런 따분한 이야기를 듣고싶지 않아할것이다. 인공지능 말 그대로 인공으로 만든 지능이며, 이 인공지능이 어떻게 사물과 목소리를 알아듣고 학습하는지 알아보자.
당신은 PC에게 바나나가 무엇인지 가르쳐줘야한다고 생각해보자.
인공지능은 어떻게 학습할까?
바나나의 특징은 길고, 노란색이다. 속을 까보면 흰색이고, 긴 줄무니와 표면에 주름 …. 뭐 이런식으로 특징이있다.그렇지만 바나나가 꼭 저런 특징을 또한 다 같은 모양을 갖고있지않다.
자 위에 9개의 이미지는 모두 바나나 이다. 맨 처음 올린 바나나 사진을 보면 노란색만 있었는데 9개짜리 바나나 사진은 끝과 끝부분에 초록색도 보이고, 껍질을 안벗겨진 모양 ….많다. PC에게 저 바나나 9개 이미지 인식를 시켜준다. 자 그러면 PC는 총 10개의 바나나 이미지를 가르쳐주었다. PC라 생각하지말고 4살짜리 애기라고 생각해도 좋다.
자그럼 우리 4살짜리 애기한테 다음 사진을 보여주자. 어른들은 이 사진을 보고 “바나나” 라고 하겠지만 바나나사진을 10장바께 못본 4살짜리애기 혹은 PC는 이걸 바나나로 인식해야 할지 말지 고민하게될 것이다. 왜냐하면 위에서는 이미 바나나는 노란색에 길다란것을 의미했지만 초록색 바나나가 있다고 알려주지 않았기 때문이다.
자 그렇게해서 다시 PC(이해하기 힘들면 4살짜리 애기라 생각할 것)에게 이번엔 몇십장의 사진을 가르쳐준다.
그리고 이 모든 이미지를 바나나 라고 가르쳐준다. 중간에 초록색 바나나도 바나나고, 검은 반점이 있는 바나나도 바나나라고 알려주었다. 그렇다면 다시 초록색 바나나 사진을 보여줬을 때 바나나로 인식할까? 인식하지 못 할까? 이제는 초록색 바나나도 바나나로 인식 할 것이다.
위 수많은 이미지에 초록색 바나나가 몇장있으니까. 이렇게 기계에게 바나나라는 여러개라는 이미지를 알려주는 행위를 학습(Training)시킨다 라고 한다.
이 학습은 이미지 뿐만아니라 텍스트, 음성파일 등등으로도 학습시켜주면된다. 여러분은 빅스비나 시리에게 내 목소리를 계속해서 알려준다. 처음에는 내 목소리를 학습시킬때 저음으로 한다면 고음인 내 목소리를 못알아들 수 있다. 그렇기 때문에 고음인 내목소리, 저음인 내목소리, 소리지르는 내목소리, 슬픈 내목소리 계속 학습을 시켜야 정확도가 올라간다.
그리고 학습시킨 컴퓨터에게 초록 바나나를 보여주거나, 빅스비 또는 시리에게 명령을 내리는 행위를 테스트(Test)라고 한다. 트레이닝은 당연히 많이 시킬 수록 인공지능의 인식률이 올라간다.
알파고는 이러한 바둑의 모든 경우의 수 좌표 또는 이미지를 계속 트레닝 시켜 승률을 높힌다. 이렇게 특정한 대상(ex 바나나, 음성인식)에 대하여 규칙 또는 약속을 가르쳐주는 행위를 하여 최적의 인식률을 도출하는 행위를 기계학습/머신러닝(Machine Learning) 이라고 한다.
인공지능은 기계학습/머신러닝(Machine Learning)을 포괄하는 상위단계로 기계학습 시킨 특정 대상을 통해 컴퓨터가 학습능력, 추론능력, 연산능력과 같은 생각(Think)을 하게 만드는 행위를 뜻한다. 예를 들어 하나의 플랫폼(자율주행, 핸드폰 음성인식 등)에 접목해 보자
자율주행 시스템에는 사고현장, 상황, 발생 경로, 차간의 거리, 도로상황 등의 모든 데이터들 기계학습되어 있다. 그리고 컴퓨터는 이것들을통해 추론을한다. “지금 이 속도에 이정도 차선이면 부딪칠 것 같다.” 와 같은 결과들을 도출해낸다. 이제 인공지능과 머신러닝의 차이점과 각자의 단어 뜻을 습득하였길 바란다.
기계학습은 많은 방법이있다. 단순하게 아까의 예시처럼 바나나 인가? 아닌가? 와같은 이진법 적인 학습부터 바나나와 사과 포도 세개의 이미지를 학습시킨 뒤 어떤 과일인지 맞추는 학습 과거의 기후 데이터를 통해 기후 패턴이 어떠면 다음날 날씨가 어떤지와 같이 예측을 하는 학습 또는 모양 100개와 색상 100개가 서로달라 10,000개의 도형을 복잡하게 분류해야하는 학습 등등 아래부터는 기계학습을 조금더 전공적인 내용으로 서술해보려한다.
기계학습, 머신러닝의 종류
기계학습은 답을 알려주냐 안 알려주냐에 따라 크게 교사학습(Supervised Learning)과 비교사학습(Unsupervised Learning)으로 나눠진다. 무슨소린지 이해하기 힘들 것이다.
그래서 예시로 이해를 시켜주겠다. 바나나를 PC에게 학습하는건 교사학습일까 비교사학습일까? 교사학습이다. 사진을 보여줄때 이게 바나나야~ 라고 알려주기때문이다. 이렇게 답을 알려주고 학습시키는 행위를 말한다.
빅스비에게 나의 목소리를 알려주는 행위도 마찬가지다. 녹음을 하면서 너의 주인목소리가 이거다. 그러니까 톤 잘 분석해와 같은 행위를 말이다.
비교사학습의 간단한 예를 들어보자.
- 원기둥 모형의 빨간, 파란, 초록색 모형
- 삼각기둥 모형의 빨간, 파란, 초록색 모형
- 직육면체 모형의 빨간, 파란, 초록색 모형
총 9개의 도형이 있다. 비교사학습은 이것들을 분류의 기준만 알려주게하여 특징에 따라 분류를 하게하는 행위다. 예를들어 모양에 따라 나눠 보세요 라고한다면 원기둥 모형 3개, 삼각기둥 모형 3개, 직육면체 모형 3개 일 것이다.
만약 이 기준을 색깔에 따라 나눠보세요 라고 한다면
- 빨간색인 원기둥, 삼각기둥 직육면체 3개
- 파란색인 원기둥, 삼각기둥 직육면체 3개
- 초록색인 원기둥, 삼각기둥 직육면체 3개의 기준으로 나눌 것이며,
이런식으로 입력한 데이터 들에대한 명확한 답을 주지않는것이 비교사 학습이다. 이걸 조금더 그림으로 쉽게 이해해보자.
교사학습 예시
비교사 학습 예시 이러한 학습 기준에 따라 다양한 인공지능 알고리즘이 있다.
지도, 교사학습? (Supervised Learning)
데이터에 대한 Label(명시적 정답)을 주어준 상태에서 컴퓨터를 학습 시켜줌
비 지도, 비 교사학습? (unsupervised Learning)
데이터에 대해 어떠한 정답이 주어지지 않으며, 오로지 데이터간 상관 관계or 내부 패턴 을 찾아 분류
기계학습, 머신러닝을 공부하면서 필수적으로 알아야할 개념들
Data(데이터)
Training Data(학습 데이터, 트레이닝 데이터)
분석 모델을 만들기 위한 학습 데이터
=> 모형 수립
Validation Data(유효 데이터)
여러 분석 모델 중 어떤 모델이 적합한지 검증하기 위한 데이터
=> 모형 성능 개선
Test Data(테스트 데이터)
최종적으로 선택된 분석 모델이 얼마나 잘 동작하는지 확인하는 데이터
=> 모형 정확도 평가
모델링?
(Modeling)
모델을 평가하기 위해 교차검증을 진행
혼동행렬? (Confusion Matrix)
실제 | |||
참 | 거짓 | ||
예측 | 참 | TP | FP |
거짓 | FN | TN |
- 데이터의 정확도, 유효성을 검증하기 위한 분석 방법
- TP(True Positive) – 참으로 예측 했을 때, 참으로 인식한 비율
- TN(True Negative) – 거짓으로 예측 했을 때, 거짓으로 인식한 비율
- FP(False Positive) – 참으로 예측 했을 때, 거짓으로 인식한 비율
- FN(False Negative) – 거짓으로 예측 했을 때, 참으로 인식한 비율
검증방법? (Validation Method)
Accuracy, Error-rate, Sensitivity, Recall, Specificity, Precision
- 정확도(Accuracy) : 어떤 참값에 가까운 정도
- 에러율(Error-rate)
- 민감도(Sensitivity), 재현율(Recall) : True를 입력 했을 때, True로 인식
- 특이도(Specificity) : False를 입력 했을 때, False로 인식
- 정밀도(Precision) : 같은 값이 나오는 정도
정확도와 정밀도를 이해못하는 사람이 있어 아래 그림으로 한번에 이해 시킬 수 있다.
분류?(Classification)
데이터를 단순하게 나누는 것을 의미
예)
스팸 메일 분류 언어 인식 이미지 인식
회귀(Regression)
연속적인 숫자, 변수 간의 상관 관계 파악
Y=aX+b
예)
과거의 기후 데이터를 이용해 기후 예측
과거 주식 정보를 이용해 주식 예측
구매자의 나이와 소득을 이용해 제품 판매량 예측
회귀는 예측, 분류는 어떤 종류에 속하는지 파악
군집화(Clustering)
데이터들 간 유사한 특성을 가진 무리(Cluster)로 묶는 것을 의미
예)
유사한 음악 취향을 가진 사용자
사용자가 선호하는 동영상, 상품 추천
다른글 더 보기
위스키, 위스키 종류, 등급, 역사, 안주에 대해서 알아보자.