일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 플랫폼 독점
- 다중큐빗
- 아마존의 반독점 역설
- 다중 레이블 분류
- 이진분류
- 다중분류
- qubit
- Bottom Tab Navigator
- 얽힘상태
- 머신러닝
- 머신러닝 교재
- 프로그래머스
- 빅테크 이슈
- 트리
- Top Tab Navigator
- 검증 데이터
- 파이썬
- 머신러닝 검증
- Amazon's Antitrust Paradox
- 양자우위
- Lv3
- NISQ
- 나의 첫 머신러닝/딥러닝
- 양자역학
- 줄 서는 방법
- 알고리즘
- 단일큐빗
- 트리의지름
- 리나칸
- 전자중첩
- Today
- Total
엄지척 블로그
[머신러닝 기초 1] [ 머신러닝을 시작하면서 .. ] 본문
막연하게 머신러닝 이 무엇인지, 어디서부터 시작해야할지 애매할수 가 있기에 가장 기초적인 개념부터 짚고 넘어가고자 한다.
1. 결정론 vs 비결정론
우선 머신러닝 기반 소프트웨어란 비결정론적 소프트웨어라는 사실을 인지하고 있어야 한다.
일반 프로그램 ▶ 언제나 똑같은 과정을 통해 동일한 결과를 낸다.
머신러닝 기반 소프트웨어 ▶ 데이터와 사용된 알고리즘에 따라 때로는 다른 결과를 추론해낸다.
스마트폰 얼굴인식 잠금해제 일경우를 생각해보자.
항상 같은 입력에 대해서 동일한 결과값만을 도출한다면 세상에서 오직 한 사람의 얼굴만 스마트폰의 잠금을 해제할 수 있을 것이다.
물론 조건문을 여러 번 적용하여 여러 명의 얼굴을 지원할 수도 있지만, 사용자만큼의 조건문을 만들어야 한다.
물론 어느정도 해결이 될수는 있다.하지만, 코드가 상당히 복잡해지고, ,표정이 조금만 달라져도 다른 사람으로 인식할 확률이 높다.
즉, 같은 Input 에 대해서 동일한 결과값만을 도출해내는 결정론적 소프트웨어에서 해결하기 어려운 문제는 비결정론적 소프트웨어를 사용하면 간소한 코드로 좋은 성능을 기대할 수 있다.
2. 머신러닝 프로젝트 과정
학습 데이터 ▷ 머신러닝 모델 구현시 활용할 데이터
검증 데이터 ▷ 여러 머신러닝 모델들의 성능을 검토할시 활용할 데이터
테스트 데이터 ▷ 최종적으로 선별된 머신러닝 모델의 성능을 측정할시, 사용할 데이터
문제정의 ▶ 프로젝트의 목표를 정의하고 그에 따른 계획을 세우는 단계이다. 대략적으로 어떤 데이터를 수집해서 어떠한 머신러닝 알고리즘으로 문제를 해결할지 결정.
데이터 획득 ▶ 머신러닝 모델에 필요한 데이터를 수집하는 단계이다. 이 때 획득한 데이터는 위에서 설명한 학습 데이터, 검증 데이터, 테스트 데이터 로 나누어진다.
모델 구현 ▶ 학습된 데이터를 기반으로 한 개 이상의 머신러닝 모델을 구현한다.
검증 ▶ 검증 데이터를 사용하여 머신러닝 모델들의 성능 검증. 이때의 결과를 바탕으로 더욱 최적화된 머신러닝 모델을 만들수 있으며, 최종적으로 검증 결과가 가장 높은 모델 선택
테스트 ▶ 검증 결과를 통해 선택된 모델의 성능을 테스트 데이터로 측정한다.
출저 : 나의 첫 머신러닝 딥러닝 교재
'머신러닝(Machine Learning)' 카테고리의 다른 글
[경사하강법] [목적식 증명](L2 노름) (0) | 2023.01.25 |
---|---|
[머신러닝 기초 2] [학습이란?] (0) | 2021.11.01 |