인공지능/머신러닝

[머신러닝 - 이론] 인공지능이란? (What is artificial intelligence?)

바보1 2022. 4. 7. 17:31

들어가기에 앞서서 머신러닝의 대다수의 글은 코드 보다는 수학적 이론, 설명 위주로 할 예정입니다.

저는 원래 설명 - 수학적 이론 - 코드 방식으로 공부하는 bottom-up 방식을 매우 좋아합니다.

하지만 시간이 별로 없어서,,나중에 시간이 된다면 코드를 올리겠습니다.

중간중간 수학적인 수식이 나오지만, 좀 더 중점적으로 설명 위주로 할 겁니다.

 

마지막에는 설명을 바탕으로 코드를 구현한 글도 올릴 예정입니다.


1. 인공지능에 대한 정의

 

지능 : 계산이나 문장 따위의 지적 작업에서, 성취 정도에 따라 정하여지는 적응 능력

인공지능 : 인간의 지능이 가지는 학습, 추리, 적응, 논증 따위의 기능을 갖춘 컴퓨터 시스템

 

  • 강한 인공지능 vs 약한 인공지능
    • 강한 인공지능 
      • 다양한 지능의 복합체 (터미네이터에 등장하는 인조인간)
    • 약한 인공지능
      • 한 가지 기능에 특화된 인공지능 (현재의 인공지능, 인공지능 스피커, 알파고 등)

2. 인공 지능의 다양한 접근 방법

 

과학적 : 인간의 지능을 충분히 연구한 다음 그 원리를 충실히 모방하는 지능 기계 제작

공학적 : 쓸만한 지능 기계를 만들 수 있다면 굳이 인간의 지능 원리를 따르지 않아도 됨

(비행기 날개는 새의 날개를 그대로 모방하지 않는다)

 

-> 현재는 공학저 접근방법이 지배적입니다.

 

공학적인 방법론

 

  • 규칙 기반 방법론
    • 사람이 사용하는 규칙을 수집하여 프로그래밍 (if -else)
    • 하지만 규칙을 위반하는 샘플이 꾸준히 발생해서 무리가 있음 (사람마다 글씨가 다름)
  • 기계학습 방법론
    • 현재의 주도권
    • 충분한 데이터를 수집 -> 기계학습 모델이 학습하는 방법 (데이터-주도 패러다임)

 


3. 인공지능 공부를 위해 필요한 것

 

파이썬 라이브러리

넘파이(Numpy) : 다차원 배열 지원

맷플롯립(Matplotlib) : 데이터 시각화

 

인공지능 라이브러리

사이킷런(Scikit-learn) : 고전적인 기계 학습 지원

텐서플로우(TensorFlow) : 딥러닝 지원
케라스(Keras) : 텐서플로우를 한 단계 추상화한 라이브러리

파이토치(PyTorch) : 딥러닝 라이브러리


4. 요약

 

AI 정의 : agents that act intelligently (지능적으로 행동하는 에이전트)

AI 분류 : 규칙 기반 vs 학습 기반

 

 

 

감사합니다.

 

 

 

지적 환영합니다.