brunch

You can make anything
by writing

C.S.Lewis

by 삼더하기일 Apr 28. 2022

빅데이터/인공지능 공부 뭐부터 시작해야 해?

공부 커리큘럼을 짜는데 알아야 할 요소

빅데이터, 인공지능, 데이터 사이언스, 머신러닝 관련 직종의 채용은 줄어들 기세를 보이고 있지 않으며 그에 따라 관련 전문가들의 숫자도 증가하고 있다. 이처럼 빅데이터 및 인공지능 관련 전문가들이 늘어나고 있다는 것은 학생이나 커리어 전환을 노리는 사람 중에서 데이터 사이언스를 공부하는 사람이 증가하고 있다는 것을 의미한다. 하지만 새롭게 무언가를 배운다는 것은 분명 막막한 일이다. 어디부터 어떻게 공부를 시작하고 경험을 쌓아야 할지에 대해 방향을 잘 모르는 것이 당연하다. 이는 빅데이터, 인공지능 분야도 분명 마찬가지라고 볼 수 있다.


빅데이터나 인공지능 공부 시작하려는데 뭐부터 해야 하지?


데이터 사이언스 관련 커리어를 걷고자 마음먹은 사람이라면 누구나 던질법한 질문이 바로 어디서 무엇부터 공부를 해야 할지 모르겠다는 것이다. 이는 빅데이터와 인공지능 관련 지식이 너무도 어려운 것이고 이를 위해 배워야 할 내용이 너무 많다는 생각에 기인하는 것일 수 있다. 그리고 실제로 이는 어느 정도 맞는 말이라고 볼 수 있다. 프로그래밍, 머신러닝, 딥러닝, 시각화, 통계학, 수학 등 데이터 사이언스 커리어를 쌓고자 한다면 공부해야 할 내용이 산더미이다. 아직 관련 지식이 전무한 입문자라면 이 중 어떤 내용이 어떤 상황에서 중요하고, 공부의 우선순위를 어떻게 가져야 할지 고민이 드는 게 자연스러운 일이다.


아쉽게도 데이터 사이언스 분야의 길을 걷고자 마음먹었다면 위의 나열한 다양한 지식들을 모두 공부해야 한다. 프로그래밍, 인공지능, 통계학 등의 모든 내용이 데이터를 분석하고 모델을 만들어가는 데 있어 하나도 빠짐없이 중요한 내용이기 때문이다. 그래서 본인의 상황과 배경이 어떠하든 위 내용을 모두 공부해야 하는 것은 동일하고 세부적인 학습 순서에만 차이가 있을 확률이 높다. 다만 컴퓨터 공학과나 통계학과 등 특정 도메인에 강점을 가진 배경을 지닌 사람이 아니라는 가정 하에 어느 정도 추천하는 학습 순서라는 것은 존재한다. 실제로 데이터 분석 경험을 쌓아나가기 위해서 반드시 선행되어야만 하는 내용이 분명하기 때문이다.


프로그래밍 > 머신러닝, 통계학 > 딥러닝, 수학의 순서로 공부하는 것을 추천합니다. 


사실 어떤 것을 공부하고 그 순서는 어떻게 해야 할지에 대해 이야기를 하고자 한다면 본인이 넓디넓은 데이터 사이언스 분야 안에서 어떤 세부적 목표를 세우고 있는지를 정확히 알아야 한다. 하지만 이는 데이터 사이언스 입문자 입장에서 결코 쉬운 일이 아니다. 아직 관련 지식이 전무한 상태에서 세부 분야를 논하는 것 자체가 어불성설이기 때문이다. 그래서 이번 시간에는 구체적인 세부 분야에 대한 목표를 모르는 입문자 입장에서 이야기를 해보려 한다. 그리고 물론 코딩, 통계 등 특정 분야에 강점을 지니고 있지 않은 사람을 가정해보려 한다.


기본적으로 빅데이터, 인공지능 분야의 입문자라면 프로그래밍 언어를 가장 먼저 공부해야 한다. 대량의 데이터를 분석하는데 아예 프로그래밍 지식이 전무하다면 할 수 있는 것이 아예 없기 때문이다. 물론 통계학이나 인공지능에 대한 지식이 전무하다면 프로그래밍 능력이 있어도 데이터 처리를 하는데 한계가 있기는 하지만 코딩을 할 줄 모르는 건 전혀 다른 차원의 이야기이다. 또한 프로그래밍의 경우 학습 초기에는 매우 내용이 쉽기 때문에 공부의 즐거움을 더해다 줄 수도 있다. 시중에 파이썬, R 등 다양한 프로그래밍 교재가 있으므로 이를 이용한다면 어렵지 않게 프로그래밍 공부 시작을 할 수 있다.


코딩에 익숙해졌다면 무엇을 코딩할지에 대해 생각해보아야 합니다.


코딩 즉 프로그래밍 역량이 어느 정도 올라온다면 그다음 순서는 컴퓨터 프로그램을 통해 구체적으로 어떤 일을 할지 결정하는 것이다. 그리고 이를 위해 학습해야 하는 내용이 바로 통계학과 머신러닝에 대한 지식이다. 그중에서도 특히 인공지능 분야에 관심이 높은 사람이라면 머신러닝에 대한 지식을 습득해야 하고 데이터 분석 자체에 관심이 있는 사람이라면 통계학에 집중을 해야 한다. 다만 통계학과 머신러닝이라는 것이 칼로 무 자르듯 확실히 구분되는 영역은 아니다. 그래서 더더욱 본인의 세부 목표를 정하지 못한 입문자라면 이 둘을 동시에 학습하려는 자세가 필요하다.


통계와 머신러닝을 공부하는 단계에서는 대게 이론적인 내용과 이론을 코드로 구현하는 영역이 모두 포함된다. 그래서 이 둘이 적절히 조화된 서적을 찾아보거나 관련 강의를 찾아보는 것이 좋다. 그리고 이 단계에서부터 캐글을 비롯한 각종 경진대회에의 참여가 큰 도움이 될 수 있다. 관련 서적이나 강의를 통해서 이론적, 학술적으로 그 체계를 이해할 수 있다면, 경진대회 참여 등을 통해서는 실제 데이터 셋에서 해당 지식들이 어떻게 활용되고 있는지 추측할 수 있기 때문이다. 여타의 분야와 마찬가지로 데이터 사이언스 분야 역시 학술적, 실무적인 지식을 모두 지닌 사람이 그 가치가 올라가기 마련이다.


딥러닝과 이를 이해하는 수학은 최근 트렌드에 가장 중요합니다.


기본적인 프로그래밍 역량을 쌓고 머신러닝과 통계학에 대한 이해까지 뒷받침되었다면 마지막 단계로는 딥러닝 및 수학에 대한 공부가 필요하다. 딥러닝은 가히 최근 빅데이터와 인공지능 분야에서 가장 트렌디한 주제라고 할 수 있다. 머신러닝을 공부하다 보면 딥러닝 알고리즘의 우수성에 대해 자연스럽게 알게 될 것이며 딥러닝에 대해 깊은 수준의 이해도를 가지는 것은 특히 인공지능 분야로 커리어를 걷고자 하는 사람에게는 가장 중요한 일이다. 수학의 경우 딥러닝 알고리즘을 이해하기 위해 수반되는 지식이라고 볼 수 있다. 딥러닝 알고리즘의 경우 논문이나 구현 코드를 보면 수학적인 내용이 그 대부분을 차지하고 있다.


추가적으로 인공지능 전문가의 커리어보단 데이터 분석가로서의 길을 가고 싶은 사람이라면, 딥러닝에 대한 깊은 이해보다는 데이터를 처리하고 생성하는 다양한 방법론에 대해 심화적인 공부를 하는 것이 좋을 수 있다. 물론 데이터 분석가에게 있어서도 딥러닝은 반드시 공부가 필요한 분야 중 하나인 것은 분명하다. 딥러닝 공부를 위해서는 딥러닝의 각 세부 주제별(NLP, Computer Vision 등) 내용을 담고 있는 서적을 이용하거나 관련 논문을 살펴보는 것을 추천한다. 특히 딥러닝의 경우 가장 트렌디한 분야이다 보니 하루가 다르게 최신 논문들이 쏟아져 나오는 경향이 있다. 


핵심은 이 과정을 끝까지 수행하는 것입니다.


이번 시간에는 크게 보았을 때 입문자 입장에서 어떤 순서로 공부를 하면 좋을지에 대해 이야기해보았다. 사실, 편의를 위해 단계를 어느 정도 나누어보았지만 이는 분명 절대적인 기준이 아니다. 프로그래밍 공부를 하면서 동시에 딥러닝 공부를 해야 할 수도 있으며, 본인이 부족한 부분을 느낀다면 그 부분에 특히 더 집중을 해야 할 수도 있다. 그리고 각 단계에서의 공부가 끝이 있는 것도 아니다. 한 책을 다 보아도 다른 책을 보면 새로운 사실이 적혀있는 경우도 많으며 시간이 지남에 따라 새로운 개념이 나오기도 한다. 사실상 끝없는 공부의 향연이 펼쳐지는 곳이라 할 수 있다.


그렇기에 입문자 입장에서 이 모든 과정을 끝까지 수행하는 것은 굉장히 어렵게 느껴질 수 있다. 심지어 빅데이터나 인공지능을 전공하는 학생들도 이를 꼼꼼하고 완벽하게 공부하지 않는 경우도 많다. 그만큼 너무 공부해야 할 내용이 방대하고 그렇기에 의지가 꺾이기 쉽기 때문이다. 그래서 데이터 사이언스 분야는 한편으로 참 정직한 분야라고 생각한다. 몇 번의 대화만 나눠보면 저 사람이 얼마나 깊게 공부를 했고 다양한 경험을 했는지를 쉽게 느낄 수 있다. 이제 막 입문을 한 사람이건 한창 열심히 공부를 하고 있는 사람이건 원하는 목표에 이를 수 있도록 높은 의지를 보여주는 것이 중요하다 생각한다.



※ 평소 빅데이터/인공지능에 궁금한 점이 있어 답변을 원하는 내용이 있다면 공유해주시면 감사하겠습니다.

브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari