머신러닝 어디서부터 시작해야 하지? [ 1 ]

John Yoon·2023년 2월 1일
1

사실 필자도 인공지능이 무엇인지 전문가수준으로 알지는 못한다.
그저 이 분야에 관심을 쏟고 공부하고 있는 일개 학생에 지나치지 않는다.
하지만 이 짧은 지식이라도 누군가에겐 막막한 인공지능이라는 개념의 벽을 허무는데 도움이 되길 바라며 이 글을 작성해본다.

인공지능이 대체 뭐야?

인공지능은 여타 개발자 혹은 학생들이 공부하면서 한번쯤은 관심을 가지게 되는 영역이라고 생각한다.

여타 창작물에서는 또 하나의 인격을 가진 기계로 소개되는 경우도 많고, 충실한 비서의 역할로 등장하는 경우도 많이 보인다.

(아아언맨에 등장하는 충실한 AI 조수, 자비스)

만약 Machine Learning, 기계학습에 대해서 조금 알아보신 분들이라면

위의 저런 그림과도 많이 친숙할 것이다.

하지만 생각보다 인공지능이라는 개념의 역사는 그리 깊지 않다.
에초에 인공지능을 설계할수 있는 수준의 기술이 나타난지도 얼마 되지 않았고, 현재에도 지속적으로 연구되고 있는 분야로써 인공지능이 무엇인지 정확히 정의내리기 어렵거나 잘못 알고 있는 경우가 허다하다.

인공지능의 종류

킹무위키에 적힌 설명을 몇줄 요약하자면, 인공지능은 강인공지능과 약인공지능 두가지로 나뉜다고 한다.

강인공지능이란?

강인공지능이란 미디어에서 많이 등장하는 완전한 자아를 가진 인공지능으로, 현실세계에서 실재로 구현된적은 없고 오히려 철학쪽에서 많은 관심을 받고 있다고 한다 (e.g. 과연 자아를 가진 인공지능은 사람일까?).

사실 강인공지능보다 더 완전한 사람같은 인공지능인 초인공지능도 있다고 하는데...

음.....🤨

강인공지능도 구현하지 못한 우리로써는 딱히 상관 없는 분야같다 ㅎㅎ

약인공지능이란?

다음으로 현재 우리가 많은 관심을 쏟고 있는 인공지능, 약인공지능이란 사실 사람이 어떠한 일을 하는데 사용되는 도구의 개념으로 상당히 포괄적이다.

말 그대로, 무언가의 결정을 내리는데 유용한 도구들, 예를 들어:

  • 체스게임에서 보드위에 있는 말들의 움직임을 점수로 바꿔서 이길 가능성이 가장 높은 수를 택하는 Minmax 알고리즘 (한국어로는 최소극대화 알고리즘이다, 이것도 나름 쉽고 재밌어서 나중에 다뤄볼 생각이다).
  • 길찾기 알고리즘하면 무조건 등장하는 국밥 알고리즘, Dijkstra 알고리즘.
  • 사람의 학습의 개념을 모방한 Machine Learning, 기계학습의 개념.

등등, 이 전부를 통틀어서 약인공지능이라고 칭한다.

이중에서 리스트 마지막에 있는 Machine Learning, 즉 기계학습의 개념이 요즘 뜨고있는 뜨거운 감자라고 생각한다.

이제 이 기계학습을 더 자세히 알아보자!

머신러닝

머신러닝 (Machine Learning), 다른말로 기계학습이란 말 그대로, "학습" 이라는 개념을 컴퓨터 알고리즘에 도입한 분야를 말한다.

머신러닝 자체도 하나의 포괄적인 개념이므로 대표적인 알고르즘 몇가지를 뽑는다면:

  • 유전알고리즘 (genetic algorithm): 다윈의 자연선택(natural selection) 의 개념을 채택해서 세대가 지나감에 따라 생존, 혹은 어떤 목표에 유리한 모델들을 남기고 다른 변종들은 도태시키는 원리를 사용한다.
  • 인공생명체 (Aritifical Life): 번식과 유전, 돌연변이같은 살아있는 유기체의 습성을 모방해서 환경에 따른 생태계를 시뮬레이션 하는 알고리즘이다. 주로 생태계 관련 공부에서 사용된다고 한다.
  • 인공신경망 (Aritifical Neural Network): 인간의 뇌에 많이 분포된 뉴런과 시냅스의 연결을 모방해서 만들어진 알고리즘이다.

사실 머신러닝하면 이 셋중에 우리는 주로 Aritifical Neural Network, ANN 혹은 한국어로 "인공신경망"를 주로 떠올리게 된다. 그리고 우리의 목표는 이 인공신경망의 Deep Learning, 딥러닝이라고 불리는 전략에 대해서 계속 알아보려고 한다.

정리

위의 복잡한 관계를 쉽게 그림으로 정리하자면 다음과 같다:

(원하는 관계도 이미지가 없어서 직접 그렸어요...)

사실 이 "머신러닝 어디서부터 시작해야 하지?" 는 시리즈로 포스팅할 계획입니다.

내가 머신러닝을 처음 공부하면서 느꼈던점들과 이해한바를 메모하는 느낌으로 올릴생각이므로 많은 관심과 피드백 부탁드려요.

블로그 쓰는것도 초보라 지금 "~다" 로 통일해야 할지 "~요" 로 통일해야 할지도 잘 모르겠지만..
에초에 Velog 자체를 가볍게 일기장처럼 쓸 생각이라 마음 가는대로 작성할게요 ㅋ.ㅋ

틀린점이나 궁금한점이 있다면 댓글로 남겨주시길~

다음 "머신러닝 어디서부터 시작해야 하지?" 편으로 찾아올게요!

끝!

0개의 댓글