cs

내 맘처럼 되는 일은 하나 없징

머신러닝 렛츠고

 


최근까지 계속 파이썬 기초 문법 책을 통해 간단하고 복잡한? 문법들을 살펴봤다. 

 

물론 현재 직장에서도 파이썬을 통해 간단한 데이터 분석들을 하고있지만, 답답함과 아쉬움 그리고 욕심이 더해져 머신러닝으로 관심사가 가고있다. 

 

내 관심사+개인적 그리고 업무적 활용 가능성이 머신러닝을 통해 가능성이 있다는 것이 보인 이상 지체하면 안된다는 생각이 들었다. 

 

그래서 더 부족한 파이썬 기초 문법들을 한번 훑고 시작하고 싶었고, 이제야 머신러닝 첫 챕터로 들어간다. 

 

역시나 이번 책도 한빛미디어의 '혼공시리즈'를 통해 공부할 것이다. 가장 책중에 잘 맞았고, 내 수준정도에서 딱 알맞는 느낌!

 

첫 챕터이니만큼 무엇을 배우는지 정의를 한번 내리고 가봅시당. 


인공지능이란

인공지능 (Artificial Intelligence)은 사람처럼 학습하고 추론할 수 있는 지능을 가진 컴퓨터 시스템을 만드는 기술이다. 

 

책에서 나온 인공지능의 히스토리를 살짝 요약해보자면, 

 

1943년 워런 매컬러랑, 월터 피츠의 뉴런 개념, 그리고 앨런 튜링의 튜링 테스트가 있었던 인공지능 태동기를 거쳐 프랑크 로젠 블라트의 퍼셉트론이 있었던 인공지능 황금기까지 빠르게 발전했다.

 

하지만 성능의 문제로 겨울이 잠시 왔다고 한다. 

겨울이 왔다고?.. 이거 못참지...

암튼 역시나 사람들은 모두 극복하고 다시 각광받는 시대를 맞이한다. 

 

나도 정말 인상깊게 봤던 'Her'이라는 영화의 사만다(스칼렛 요한슨이 다 한 영화), 뭐 터미네이터 같은 인공지능 관련 상업영화가 많이 보이고 일상에 근접했다는건 그만큼 발전이 빨랐다는 이야기다. 

 

보통의 영화에 나오는 인공지능을 인공일반지능(Artificial General Intelligence) or 강인공지능(Strong AI)이라고 부른다고 한다.

 

즉, 사람과 구분하기 어려운 지능을 가진 인공지능을 부르는 말이다. 

 

그리고 우리가 흔히 일상에서 볼 수 있는 인공지능, 예를 들면 음성비서, 자율주행차, 음악추천, 번역 그리고 알파고 이런 친구들은 약인공지능(Week AI)라고 부른다.

 

쉽게 보면, 특정 분야에서 사람의 일을 도와주는 보조 역할을 하는 친구들이다. 

 

 

머신러닝이란

머신러닝(Machine Learning)은 규칙을 일일이 프로그래밍 하지 않아도, 자동으로 데이터에서 규칙을 학습하는 알고리즘을 연구하는 분야라고 한다.

 

인공지능의 하위 분야 중, 지능을 구현하기 위한 소프트웨어를 담당하는 핵심 분야라고 보면 될것같다. 

 

책에서도, 그리고 현실에서도 많이 느낀건 통계학과 관련이 깊은 학문이라는 것이다. 

 

거의 통계학에서 유래된 머신러닝 알고리즘이 많으며 통계학과 컴싸(Computer Science)의 상호작용을 통해 발전한다.

 

하지만 최근에는 통계, 수학적인 이론보다 경험을 바탕으로 발전하는 경우도 많다고 한다. 

 

수학적 지식보다는 컴퓨터 과학 분야가 발전을 주도하는데 대표적인 예로 scikit-learn 이 있다. (XGBoosting으로 한번 경험했었다)

 

책에서 소개해주듯이, 이번 공부는 당연히 파이썬 기반으로 이루어지고 다양한 머신러닝 라이브러리를 통해 실습을 할 예정이다.

 

 

딥러닝이란

딥러닝(Deep Learning)은 다양한 머신러닝 알고리즘 중에 인공신경망(Artificial Neural Network)을 기반으로 한 방법들을 통칭하여 부르는 말이다.

 

대부분의 사람들은 딥러닝과 인공신경망을 크게 구분하지 않고 사용한다고 말한다. 

 

대단한 사람이 책에 보여서 써보자면, 1998년 손글씨 숫자 인식을 성공시킨 얀 르쿤(Yann LeCun)이 있는데, 저 시대에 정말 대단하다고 생각했다...

 

그리고 시간이 지나 숫자를 넘어 이미지 분류 작업까지 나타나고있다. 

이젠 이것도 될걸?...

 

이미지 분석이 아니고, 우리에게 더 친근하고 익숙한건 알파고다.

 

어릴때 바둑에 빠져 살긴 했지만, 정말 보면서 감탄했다. 

 

딥러닝도 딥러닝이지만 이세돌의 수, 그 많은 수에서 단 한번의 수로딥러닝 박살내는 걸 보고 정말 감탄을 했다... 

 

인간도 딥러닝 박살내는게 가능하구나, 닥스냐...?

 

아 이세돌만 가능하다.

구글은 이런 영향력을 보고 오픈소스로 텐서플로(Tensor Flow)를 공개해버렸다.

 

그리고 이어서 페이스북에서도 파이토치(PyTorch) 라이브러리를 공개했다.

 


간단히 이렇게 정의를 해 보았는데, 이제 시작이라고 본다.

 

뭐 파이썬 배우고 데이터 분석 배우고, 이건 기초라고 생각을 하고

 

나는 아직 배울게 너무나 많은 인간이기 때문엥... 또 차근차근 하나씩 배워 보면 언제쯤이면 내가 원하는 분석 마음것, 머신러닝을 활용해 문제를 푸는 위치에 올라가지 않을까?

 

파이팅 해보자.

 

 

(최근에 PyCaret이라는 라이브러리도 알았으니, 더 속도 내야한다)

+ Recent posts