머신러닝과 컴퓨터의 문제 해결 방법 차이
1. 머신러닝의 정체?
개와 고양이가 뒤섞인 사진이 주어진 상태가 initial state이고 개와 고양이 사진을 완벽하게 분류한 상황이 바라는 terminal state
머신러닝 모델은 개와 고양이가 뒤섞인 사진을 받아 완전히 분류된 상태로 만들어주는 problem solving을 위한 도구
2. 컴퓨터의 deductive process
컴퓨터는 모든 가능한 조합을 고려하여 순간 최적인것이 나오면 update를 하고 다시 조합을 고려하는 것을 반복함
순간 순간에서는 최적을 고려했다고 하더라도 반드시 정답이라는 보장은 없지만 모든 경우를 다 고려한 최종 결과에서는 반드시 optimal한 결과
이 과정은 생각해보면 유한 상태 기계인 deterministic finite automata로 나타낼 수 있다.(모든 컴퓨팅의 계산은 DFA로 나타낼 수 있다)
S0의 현재 상태에서 모든 path를 고려하여 최적인 경우가 나오면 S1으로 이동하고 S1에서 모든 조합을 고려하여 최적인 경우가 나오면 S2로 이동하고
생각해보면 참인 전제(순간 최적)에 따라 상태를 변화해가며 최종 결론에 도달하므로 deductive한 과정이다.
왼쪽에서 path를 고려하여 길이가 가장 짧은 최적인 path가 나오면 오른쪽에 update하여 최종 결론이 나올때까지 반복하는 DFA
3. 머신러닝의 inductive process
optimizer가 최적치를 찾아가는 과정에서 애초에 모든 가능한 조합을 고려하는 것을 포기함
그나마 지금 상태에서 (다른 가능성도 있지만) 조금이라도 더 나은 방향을 찾아가는 방식으로 문제를 해결함
100퍼센트 확실한 참을 고려하는 것이 아니라 확률이 높은 경로를 고려하여 결론을 내리므로 inductive한 계산이라고 볼 수 있을듯
'컴퓨터과학(CS)' 카테고리의 다른 글
컴퓨터과학에서 말하는 problem (0) | 2024.11.12 |
---|---|
algorithm과 library의 의미 (0) | 2024.09.08 |
컴퓨터과학에서 말하는 quantization 개념 (0) | 2024.06.18 |
floating point와 fixed point 간단하게 (0) | 2024.05.22 |
폭포수 모형 vs 프로토타입 모형 vs 나선형 모형 (0) | 2024.04.14 |