머신러닝이란
- 인공지능 : 지능적인 기계 / 프로그램의 제작과 관련된 분야, 인터넷과 GPU의 발전으로 주목받기 시작
- 머신러닝 : 주어진 데이터를 분석하여 별도의 명시적인 프로그래밍 없이 규칙이나 지식을 스스로 추출하는 방법을 개발하는 연구 분야
- 딥러닝 : 심층 신경망에 기반한 학습 방법
※ 심층 신경망 : 인간의 뇌 세포 상호작용(다수의 이전 뉴런으로부터 입력을 받아 합을 구하고 임계치를 넘으면 다음 뉴런에 전달)을 모방
처리 과정
1. 학습 과정 : 입출력의 관계를 알려주는 모델을 찾는 과정
2. 추론 과정 : 실제 데이터에 모델을 적용해 결과를 얻는 과정
시스템 개발 과정
1. 문제 파악
2. 데이터(학습 데이터 및 테스트 데이터) 수집 및 이해
3. 전처리 : 입력 데이터에 대해 중복 및 불필요 데이터를 제거
4. 특징 추출 : 데이터의 차원을 줄이는 등 계산량과 메모리 절약
5. 모델 수립 및 분석
6. 모델 평가 : 적절하지 않은 모델이 수립될 경우 1번으로 돌아감
7. 배포
기본 요소
- 다양한 데이터들이 컴퓨터에서 다루어지기 위해서는 벡터화가 필요
- 학습 시스템 : 데이터로부터 학습을 통해 추출하고자 하는 정보를 표현하는 시스템
- 오차함수 : 학습 시스템의 출력과 원하는 출력의 차이를 비교하는 목적함수
- 일반화 오차 : 학습 시스템의 성능을 측정하는 척도로 입력 데이터의 분포에 따른 평균 오차 값, 실제로는 확률분포함수를 알 수 없기 때문에 계산 불가능 -> 교착검증법으로 근접한 값을 계산 가능
종류
- 지도학습 - 회귀, 분류
- 비지도학습 - 군집화, 연관, 변환
- 강화학습
지도학습(Supervised Learning)
- 정답이 있는 문제를 해결하는 것
- 독립변수와 종속변수의 관계를 학습 -> 모델이 산출됨
- 학습 데이터가 많고 정확할수록 좋은 모델이 생성됨
회귀(Regression)
- 종속변수가 숫자일 때 사용
ex. (공부시간, 시험점수), (기온, 물 판매량) 등
분류(Classification)
- 종속변수가 범주일 때 사용
- 데이터가 속하는 알맞은 범주를 구하는 것
- 학습 시스템의 결과로 결정경계, 결정함수가 산출됨
- 분류율을 최대화하고 분류오차를 최소화하는 것이 목표
ex. (공부시간, 합격여부) 등
비지도학습 (Unsupervised Learning)
- 관찰을 통해 새로운 의미나 관계를 밝혀내는 것
군집화(Clustering)
- 비슷한 것을 찾아 그룹화하는 것
- 클러스터 내 분산을 낮추고, 클러스터 간 분산을 높이는 것이 목표
연관 규칙 학습(Association Rule Learning)
- 데이터들간의 연관성을 찾는 것
강화학습(Reinforcement Learning)
- 더 좋은 보상을 받기 위해 수련하는 것
과적합(Overfitting)
- 학습 데이터에 대해서만 지나치게 적합하게 된 것
- 학습 데이터에서 오차율은 낮지만, 테스트 데이터에서 오차율이 높은 경우
- 학습 데이터가 부족하고, 노이즈가 많을 경우 발생
- 다양한 변형을 가진 학습 데이터를 사용, 과적합 전 조기 종료(early stopping), 정규항을 가진 오차함수 사용, 최적모델 선택 등으로 해결
'💻 Computer Science > AI' 카테고리의 다른 글
[AI] 데이터 전처리 (0) | 2024.12.28 |
---|---|
[AI] 회귀분석 (0) | 2024.12.28 |