ICT이노베이션스퀘어 AI기본과정(CNU) 교육을 듣고 정리한 내용입니다.
AI기본과정(CNU) 교육 자료를 참고하였습니다.
인공지능
1. 인공지능 : 인공적으로 만든 지능
2. 인공지능 이용 사례 : 구글의 음성인식 기술, 인공지능이 운전하는 무인 자동차
3. 인공지능 > 머신러닝 > 딥러닝
머신러닝
1. 머신러닝 : 데이터를 사용해 기계가 스스로 학습하는 방식
2. 전통적인 방식 vs 머신러닝
- 전통적인 방식 : 데이터를 넣으면 그 데이터를 어떠한 식으로 처리하는지 프로그래머가 프로그램을 작성
- 머신러닝 : 데이터로 인해 나타나는 결과를 사용하여 학습하기 때문에 스스로 프로그램을 만들 수 있음, 특정한 데이터와 함께 그 데이터로 인해 나타나는 결과를 같이 넣어주면 기계가 그 관계를 찾아냄, 기계가 스스로 프로그램을 만드는 것을 가리켜 '기계가 학습한다'고 정의
3. 머신러닝 학습 과정
- 머신러닝은 크게 학습단계와 예측단계로 구분
- 학습단계에서는 학습 데이터를 대상으로 머신러닝 알고리즘을 적용하여 학습시키고, 그 결과로 모형이 생성됨
- 예측단계에서는 학습단계에서 생성된 모형에 새로운 데이터를 적용하여 결과 예측
- 머신러닝에서 컴퓨터가 스스로 입력받은 데이터를 분석하여 일정한 패턴이나 규칙을 찾아내려면 사람이 인지하는 데이터를 컴퓨터가 인지할 수 있는 데이터로 변환해주어야 하는데, 이때 데이터별로 어떤 특징을 가지고 있는지 찾아내고 그것을 토대로 데이터를 벡터로 변환하는 작업을 특성 추출(feature extraction)이라고 함
- 머신러닝의 주요 구성요소는 데이터와 모델
- 실제 데이터의 특징이 잘 반영되고 편향되지 않는 훈련 데이터를 확보하는 것이 중요
- '훈련 데이터셋'과 '검증 데이터셋'으로 분리해서 사용
- 모델은 머신러닝의 학습단계에서 얻은 최종 결과물로 '가설'이라고도 함
- 모델의 학습 절차 : 모델(또는 가설) 선택 -> 모델 학습 및 평가 -> 평가를 바탕으로 모델 업데이트
4. 머신러닝 분류
구분 | 유형 | 알고리즘 |
지도학습 (supervised learning) |
분류(classification) | K-최근접이웃(K-Nearest Neighbor, KNN) 서포트 벡터 머신(Support Vector Machine, SVM) 결정 트리(decision tree) 로지스틱 회귀(logistic regression) |
회귀(regression) | 선형 회귀(linear regression) | |
비지도학습 (unsupervised learning) |
군집(clustering) | K-평균 군집화(K-means clustering) 밀도 기반 군집 분석(DBSCAN) |
차원축소(dimensionality reduction) | 주성분 분석(Principal Component Analysis, PCA) | |
강화학습 (reinforcement learning) |
- | 마르코프 결정 과정(Markov Decision Process, MDP) |
5. 지도학습
- 인공지능을 누군가가 직접 가르치고 이끄는 학습 방법
- 데이터 중에서도 정답이 있는 데이터(레이블)를 이용하여 학습
- 분류 : 이진분류 - 두 가지를 구분할 수 있는 분류, ex) 스팸 메일인지 일반 메일인지 분류 다중분류 - 두 가지가 아닌 경우의 분류, ex) 지폐의 종류 분류
- 회귀 : 연속적인 값 예측, ex) 주식 예측, 집값 예측, 물건의 가격 예측
6. 비지도학습
- 정답이 없는 데이터로 학습하는 방식
- 정답이 없는 데이터에서 그 데이터의 특징을 찾아 스스로 구분해나감
- 새로운 데이터가 들어왔을 때 그 데이터가 어떤 그룹에 속하는지 스스로 판단할 수 있으며 정답이 없는 데이터를 사용해 스스로 판단할 수 있는 지능을 가지게 됨
- 군집화 : 데이터를 다양한 그룹으로 만들었을 때, 그 그룹을 군집이라고 하며 다양한 그룹으로 만드는 과정을 군집화라고 함
- 차원 축소 : 차원은 데이터의 특징(feature)을 뜻함, 모든 조건(데이터)을 고려할 수 없으므로 이 중에서 몇 가지의 특징만으로 좁혀나가는데 이를 '데이터의 feature를 줄인다'고 표현
7. 강화학습
- 자신의 행동에 대한 보상을 받으며 학습 진행
- 대표적 사례 : 게임
- 분류할 수 있는 데이터가 있는 것도 아니고 데이터가 있다고 해도 정답이 없기 때문에 어렵고 복잡함
- 시행착오를 거쳐 학습하는 방법
- 인공지능의 수준을 높인다는 의미로 이때 사용하는 것이 시행착오임
딥러닝
1. 딥러닝
- 인간의 신경망 원리를 모방한 심층 신경망 이론을 기반으로 고안된 머신러닝 방법의 일종
- 딥러닝이 머신러닝과 다른점은 인간의 뇌를 기초로 하여 설계했다는 것임
- 인간의 뇌가 엄청난 수의 뉴런과 시냅스로 구성되어 있는 것에 착안하여 컴퓨터에 뉴런과 시냅스 개념을 적용
- 각각의 뉴런은 복잡하게 연결된 수많은 뉴런을 병렬 연산하여 기존에 컴퓨터가 수행하지 못했던 음성 및 영상 인식 등의 처리를 가능하게 함
2. 딥러닝 모델의 학습 과정 : 데이터 준비 -> 모델 정의 -> 모델 컴파일 -> 모델 훈련 -> 모델 평가
3. 딥러닝 분류
구분 | 유형 | 알고리즘 |
지도 학습 (supervised learning) |
이미지 분류 | CNN AlexNet ResNet |
시계열 데이터 분석 | RNN LSTM |
|
비지도 학습 (unsupervised learning) |
군집(clustering) | 가우시안 혼합 모델(Gaussian Mixture Model, GMM) 자기 조직화 지도(Self-Organizing Map, SOM) |
차원 축소 | 오토인코더(AutoEncoder) 주성분 분석(PCA) |
|
전이 학습 (transfer learning) |
사전 학습 모델 | 엘모(ELMo) |
전이 학습 | 버트(BERT) MobileNetV2 |
|
강화 학습 (reinforcement learning) |
- | 마르코프 결정 과정(MDP) |
'AI 기본 과정' 카테고리의 다른 글
Python을 이용한 데이터 분석 - Numpy (0) | 2022.05.10 |
---|---|
Python을 이용한 데이터 분석 - Matplotlib (4) (0) | 2022.05.06 |
Python을 이용한 데이터 분석 - Matplotlib (3) (0) | 2022.05.05 |
Python을 이용한 데이터 분석 - Matplotlib (2) (0) | 2022.05.05 |
Python을 이용한 데이터 분석 - Matplotlib (1) (0) | 2022.05.02 |