우선 가장 처음 시작해야 하는 공부는 수학, 코딩, 알고리즘 등이 아니다. 경영학적으로 기업 문제들이 발생했을 때 어떠한 데이터 분석 기법으로 문제를 해결할 수 있는지 알아야 한다. - P126
기본적인 AI 빅데이터의 개념부터 등장 배경, 특성, 저장 및 처리 기술들에 대해서 한번 쭉 훑어보아야 한다. 이런 것들을 자세하게 암기할 필요는 없다. 그냥 읽고 넘어가면 된다. 다만 전통적인 데이터와는 다르게 빅데이터의 특성에 무엇이 있고, 저장 및처리 기술에 어떤 것이 있는지 정도만 알면 된다. 그리고 여기서 파생된 AI의 등장 및 다양한 활용 사례들도 살펴볼 수 있다. - P127
또한 기계학습, 딥러닝에 대한 간단한 개념과 그 안에 종류가 어떤 게 있는지 정도를 살펴볼 수도 있다. 그다음에 다양한 활용 사례들을 보면서 실제 비즈니스 환경에서 어떻게 적용되고 있는지도 알 수 있다. 실제 분석 케이스들을 보면서 분석 결과를 이런 식으로 시각화하고 이런 식으로 보고서를 작성하는구나 느낄 수도 있다. 사실 이러한 공부가 처음에 잘 되어 있어야 공부하는 데 재미도 있고 추후에 실제 분석을 하고 결과를 도출할 때에 어느 정도 모방해서 매끄럽게 결과 보고서를 작성할 수 있다. - P127
AI 빅데이터의 기본 개념, 저장 및 처리 방식, 활용 사례, 기본적인 분석 기법 등을 망라한 책이 좋다. ...(중략)... 이 부분이 나중에 실제 현장에서 문제를 발견하고 데이터를 이용한 문제 해결 아이디어를 도출할 때 가장 도움이 되는 공부다. 또한 결과 도출 및 실제 활용을 할 때에도 참고할 수 있다. - P128
실제 현장에서 일을 할 때 가장 중요하지만 어려운 것 중에 하나가 비즈니스 문제를 어떻게 정의하고 이 문제를 해결하기 위해서 어떤 데이터로 어떻게 접근하는가다. - P129
활용 사례들을 읽어보면서 사고를 넓히고 현장에서 비슷한 문제가 발생했을 때 모방하는 능력을 키워야 한다. - P129
데이터 마이닝에서 주로 배우는 기계학습을 이용한 분류, 회귀, 군집 또는 연관 규칙, 빈발 패턴 분석, 아웃라이어 분석과 같은 것들은 대단히 어려운 수학적인 지식이 필요한 게 아니다. 또한 어차피 프로그래밍 언어에서 라이브러리 함수가 수행해주기 때문에 직접 수학 공식을 풀거나 증명할 필요도 없다. 읽어보고 이해한 다음에 바로 넘어가면 된다. - P131
데이터의 종류는 명목 데이터, 이진 데이터, 순서 데이터, 숫자 데이터, 이산/연속형 데이터가 있다. - P132
명목 데이터는 사물의 기호나 이름과 같은 데이터고 이진 데이터는 0과 1로 이루어진 데이터다. 순서 데이터는 상중하처럼 등급이나 계급이 있는 데이터고 숫자 데이터는 절대영점을 가지고 있으면 비율척도 데이터, 없으면 등간척도 데이터로 나뉜다. 정수형이냐 연속형이냐에 따라서 이산/연속형 데이터로 나누어지기도 한다. - P132
데이터 유형에 따라 어떠한 분석이 사용되는지 간단히 짚고 넘어가면 좋다. - P132
기본적인 평균, 중위값, 최빈값, 표준편차, 사분위수와 같은 기초 통계들의 개념과 각 기초 통계들이 어떠한 상황에서 쓰여야 데이터를 잘 요약, 표출할 수 있는지 알아야 한다. - P132
데이터 분석에서 가장 오랜 시간과 에너지가 요구되는 부분이 전처리 부분이다. 보편적으로 많이 사용되는 데이터 전처리 기술들을 익히고 실제 분석 시 필요한 기술들을 골라서 쓸 수 있어야 한다. 데이터 정제(결측치 제거 또는 대치, 노이즈 제거), 데이터 통합(중복 데이터 처리, 복사, 단위 통합), 데이터 축소(주성분 분석, 속성선택법, 샘플링), 데이터 변환(데이터 정규화, 비닝)과 같은 기술들을 익혀야 한다. - P133
어떤 기술들을 무조건 해야 한다는 법칙은 없지만 각 기술들을 왜 써야 하고 어떠한 상황에 쓸 수 있고 어떠한 방식으로 작동하는지 충분히 숙지해두어야 실제 데이터 분석 시에 자유자재로 구사할 수 있다. 여기에서 수학적인 내용은 아예 필요 없거나 간단한 지식 정도만 필요하다. 물론 주성분 분석 같은 경우는 고유 벡터, 고유 값에 대한 지식이 필요하다. 선형대수학을 공부하지 않았으면 사실 이해가 안 될 수도 있는 부분이다. 하지만 큰 문제는 없다. 이해가 안 되더라도 주성분 분석이 어떠한 상황에 쓰이고 왜 쓰이는지만 알면 된다. 어차피 실제 구현은 프로그래밍 언어 라이브러리상 함수가 다 해주기 때문이다. - P133
실제 분석 알고리즘에 대해서 공부를 해야 한다. 꽤 많은 분석 알고리즘들이 있기 때문에 빠르게 하나씩 이해하고 넘어가는 게 중요하다. 연관관계 분석, 상관관계 분석, 빈발 패턴 분석, 클래스 분류 분석, 클러스터 분석, 회귀 분석, 아웃라이어 분석 등이 있다. - P133
각 분석들을 세부적으로 살펴보면 수많은 알고리즘이 있다. 예를 들어 클래스 분류 분석은 의사 결정 나무, 서포트 벡터 머신, 베이즈 분류, 랜덤포레스트, 배깅, 부스팅, KNN, 피드 포워드 신경망, 퍼지 세트 등 수많은 알고리즘이 있다. 목적은 다 같은 클래스 분류이지만 각 알고리즘이 지니는 목적과 장단점이 서로 다르기 때문에 알아두어야 한다. 또한 기본적으로 어떻게 동작하는지 그 원리도 이해해야 다음번에 응용할 때 써먹을 수 있다. - P134
실제 빅데이터 상황에서 쓰인 사례들을 하나씩 살펴보는 것도 큰 도움이 된다. 실제 현장 데이터를 접했을 때 어떤 방법론, 알고리즘을 쓸지 판단할 수 있기 때문이다. - P135
보통은 ‘어떤 방법론, 알고리즘이 어떤 실제 빅데이터 사례에서 쓰였는데 지금 내가 분석할 상황과 비슷하니 비슷하게 나도 이 방법론, 알고리즘을 써야지!‘ 라고 판단하는 전문가가 더 많다. 이러한 감을 익히려면 다양한 사례를 먼저 읽어보아야 한다. - P135
논문을 쓰더라도 먼저 선행 연구를 하게 되는데 이전에 비슷한 사례들을 기반으로 내가 쓸 논문이 조금 더 공헌하는 게 있으면 그것이 논문이다. 마찬가지로 데이터 분석을 하더라도 이전에 비슷한 활용 사례를 참조한 후 나만의 방식으로 수정, 변형하면 훌륭한 데이터 분석 프로젝트가 되는 것이다. - P136
차선책으로 논문을 통해서 관련 지식과 이해를 넓혀야 한다. 특정 알고리즘을 고안하거나 제안하는 어려운 논문을 읽을 필요는 없다. 특정 방법론, 알고리즘이 어떤 방식으로, 어떠한 상황에 쓰였는지를 제안하는 논문을 읽으면 된다. 구글 학술검색이나 RISS에서 검색을 해본 다음에 읽어도 좋고 관련 저널을 정한 다음에 해당 저널의 논문들을 주기적으로 찾아보고 읽는 것도 좋다. - P136
국내 저널로는 《지능정보연구》, 《한국경영과학회지》, 《Information Systems Review》를 주로 본다. 해외 저널로는《IEEE Access》, 《IEEE Transactions on Big Data》, 《Information Systems Research》를 보고 있다. - P136
관련 저널을 선택할 때 팁을 주자면 정보시스템학 계열의 저널을 선택하는 게 좋다. 수학, 통계학, 컴퓨터공학, 산업공학 계열은 특정 알고리즘을 고안해서 제안하는 논문이 대부분이다. 하지만 상대적으로 정보시스템학 계열 저널의 논문들은 실제 비즈니스 환경에 효과적으로 적용된 사례를 보여주고 해석하려는 특성이 있다. 따라서 각 분석방법론, 알고리즘들의 활용 사례를 이해하기에는 안성맞춤이다. - P137
자격증 취득을 위해서 공부하는 게 아니라 실력을 높이기 위해서 공부하다가 자격증도 따면 좋다는 마인드를 먼저 가져야 한다 - P138
자격증을 취득함으로써 무언가 이득을 얻는다기보다는 그 취득하는 과정에서의 공부가 꽤 많은 도움이 된다. - P139
‘데이터 분석 자격검정‘의 교재 《데이터 분석 전문가 가이드》(한국데이터베이스진흥원)와 ‘경영 빅데이터 분석사의 교재 《경영 빅데이터 분석사》(한경아카데미)를 보면 빅데이터 분석에 대한 꽤 많은 내용을 두루 익힐 수 있다. 빅데이터에 대한 이해부터 경영학적인 측면에서 어떠한 분야에 어떤 빅데이터 분석이 활용되고 있는지, 데이터의 수집, 전처리 및 저장 기술로는 무엇이 있는지, 각 분석 방법론 및 시각화 방법으로는 무엇이 있는지, R 코드로는 어떻게 구현되는지까지 나온다. 수학적인 내용은 거의 나오지 않으며 나와도 매우 낮은 수준의 범위만 나오기 때문에 이해가 안 될 부분은 하나도 없다. 책 한 권으로 빅데이터에 대한 꽤 광범위한 내용을 빠르게 익힐 수 있다는 것이 최대 장점이다. 다만 아쉬운 점은 두 자격증 시험 모두 코드시험 범위가 R로 제한되어 있다. R도 물론 AI 빅데이터 분석을 위한 좋은 프로그래밍 언어이지만 성능과 최근 추세를 보았을 때 나는 파이썬을 좀 더 추천한다. - P140
《SQL 전문가 가이드》(한국데이터베이스진흥원)도 꽤 좋은 내용들이 많다. DB 모델링과 쿼리, 최적화에 대한 내용을 꽤 많이 담고 있다. 사실 AI 빅데이터 전문가는 DB 구축 및 모델링까지는 잘하지 않는다. 그리고 최근에는 No-SQL을 많이 쓰는데 해당 시험은 RDB 기준으로 쓰였다. 하지만 어느 정도 알아두면 실전에서 쓸 일이 있기도 하고 SQL 쿼리 부분은 처음에 데이터 전처리 부분에서 꽤 많이 필요하기도 하다. 또한 No-SQL이 빅데이터 시대의 대세라고 하지만 아직까지 관공서나 보수적인 기관들은 RDB를 많이 쓰고 있어 RDB도 배워두면 큰 도움이 된다. - P141
(사회조사분석사 시험의)조사방법론 2는 샘플링, 측정, 데이터 속성에 관해서 다룬다. 기초적이지만 빅데이터 공부 입문자들이 짚고 넘어가야 할 부분이다. 사회통계 부분은 기초 통계, 확률, 가설에 대해 다루고 마지막에 통계분석에 대해서 다룬다. 분산 분석, 상관 분석, 회귀 분석 등을 다루는데 데이터 마이닝 기법의 가장 기초적인 부분이라 꼭 알고 넘어가면 좋다. - P142
위에서 말한 자격증 공부만 해두어도 관련 대학원 면접이나 입사 면접 질문에는 거의 다 답할 수 있다. 심지어 빅데이터 분석 컨설팅도 해줄 수 있다. - P142
전문가 1급까지 따려면 R 코딩, SQL 쿼리도 꽤 수준급으로 해야 한다. 그리고 공부하는 시간도 꽤 걸릴 것이다. 하지만 나는 R보다는 파이썬 언어를 더 추천하는 바이고 실전에서는 잘 쓰지도 않는 오라클과 같은 RDB의 SQL 쿼리를 지나치게 상세하게 알 필요는 없다. - P142
공부할 때 한꺼번에 공부하고 동기부여를 위해서 자격증도 몰아서 취득하는 게 좋다. - P143
해당 자격증에 대한 공부는 전체적인 AI 빅데이터 분석의 개론을 경영학적, 방법론 및 알고리즘적, 프로그래밍 언어 측면에서 빠르게 짚고 넘어가는 데에 있다. 따라서 4개월 가까이 시간을 끌 필요가 없다. 각 자격증 시행처가 지정해준 교과서와 기출문제집 한 권씩만 빠르게 보고 넘어가면 된다. - P143
‘사회조사분석사‘ 시험은 좀 더 상세한 수학적인 내용이 나온다. 수학을 싫어하는 이들이라도 여기서 나오는 수학은 데이터 마이닝을 위한 아주 기본적인 내용이고, 학부생들도 필수로 배우는 내용이기에 알면 좋다. 일일이 공식을 외울 필요는 없고, 보고 이해할 정도면 된다. 물론 실제 수학 공식들을 코딩으로 구현할 일은 없을 것이다. 어차피 내장 함수 또는 라이브러리의 함수들이 자동으로 구현해주기 때문이다. - P144
사실 AI 빅데이터 전문가가 실제 DB 설계 및 구축에 전면적으로 뛰어드는 경우는 많지 않다. 하지만 간혹 간단한 것들은 맡는 경우가 있으니 데이터 모델링 부분을 공부해두면 좋다. 또한 SQL 쿼리 부분은 데이터 전처리 부분과도 밀접한 관련이 있으니 반드시 알아두어야 한다. - P144
파이썬과 R은 C, C++, 자바와는 다르게 훨씬 직관적이었고 라이브러리가 더 많이 있어서 직접 코딩할 필요 없이 손쉽게 라이브러리들을 가져다 쓸 수 있다. - P146
일반적으로 다른 프로그래밍 언어들은 변수를 선언할 때 int, char, double과 같은 자료형을 꼭 선언해주어야 한다. 하지만 파이썬이나 R과 같은 AI 빅데이터 분석에 최적화된 언어들은 이런 제약이 없다. 자료형을 선언해주지 않아도 컴퓨터가 알아서 판단해서 정수인지, 실수인지, 문자형인지 할당해준다. 초보자들에게는 상당히 편리한 측면이다. - P147
코드라인도 대폭 줄어든다. 자바로 거의 100줄 가까이 써야 했던 것들을 파이썬, R은 거의 두세 줄이면 끝낼 수 있었다. 가장 큰 장점은 역시 풍부한 라이브러리다. 자주 쓰는 알고리즘은 이미 라이브러리로 다 배포되어 있다. 따라서 내가 쓰고자 하는 알고리즘을 제공해주는 라이브러리를 받아와서 해당 함수 또는 메서드를 호출하기만 하면 쉽게 되는 경우가 많다. 특히 최근에 이슈가 되는 딥러닝 라이브러리는 파이썬에 거의 집중되고 있어서 파이썬을 쓰면 더 유리하다. - P147
학부 때 프로그래밍 언어를 배우면서 가장 어려워했던 부분이자 다른 학생들도 같이 어려워했던 부분이 바로 객체지향 부분이었다. 캡슐화, 상속, 다형성에 대해서 배워도 며칠 있으면 또 기억이 안 났다. 그리고 기본 예제로는 어느 정도 이해가 가도 실전 프로젝트로 들어가니 내가 직접 구현하기도 전에 겁을 먹게 되었다. 특히 객체지향 언어에 거의 필수적인 디자인 패턴들이 너무 많아서 외워도 또 기억이 안 났다. 외우는 것도 너무 재미가 없었다. - P147
파이썬과 R도 객체지향 언어이기는 하다. 하지만 객체지향에 대한 개념이 거의 없어도 AI 빅데이터 분석을 위한 코딩을하는데 큰 문제가 없다. 왜냐하면 C, C++, 자바 등의 언어로 개발할 때에는 여러 객체코드들의 모임으로 하나의 프로젝트가 실행되지만 데이터 분석은 그게 아니기 때문이다. - P148
데이터 분석 코드는 순차적인 방식으로 코드를 짜면 된다. 그동안의 개발을 위한 코딩은 1+1+1+1+1=5였다면 AI 빅데이터 분석을 위한 코딩은 1→ 2 → 3→4→5와 같은 것이다. 가령 관련 라이브러 임포트→ 데이터 임포트→ 데이터 전처리 → 모델 구성→ 결과 도출 및 시각화와 같은 방식으로 순차적으로 진행되는 것이다. - P148
파이썬과 R은 알고리즘에 대한 라이브러리뿐만 아니라 결과 도출을 위한 시각화 라이브러리들도 잘 되어 있어서 분석 결과를 손쉽게 바로바로 시각적으로 구현할 수 있다. - P148
SPSS, SAS는 분석을 위한 툴이기 때문에 타자로 코드를 입력하기보다는 마우스 클릭으로 많은 부분이 이루어진다. 또한 이러한 툴은 유료이기도 하다. 하지만 파이썬과 R은 마우스를 클릭하는 부분은 없고 오로지 코드를 타자로 입력해야 한다. 물론 무료로 다운이 가능하다. - P148
AI 빅데이터 분석을 위한 프로그래밍 언어로는 대표적으로 파이썬과 R을 들 수 있다. - P149
최근에는 실시간 분석 처리에 유용한 스파크를 배우는 사람도 있기는 한데 굳이 거기까지 배울 필요는 없을 것 같다. 실시간 처리가 필요할 만큼의 엄청난 빅데이터 (페타, 제타바이트급)를 다룰 일이 많지 않고 파이썬으로도 병렬 처리를 적절히 해주면 충분히 빠른 속도로 구현할 수 있기 때문이다. 또한 자바로 AI 빅데이터 분석을 하는 사람도 보았는데 이도 역시 추천하지 않는다. - P149
최근에 AI 빅데이터 관련한 라이브러리들은 거의 파이썬과 R에 집중되어 있다. 또한 개발 언어에 최적화된 자바는 AI 빅데이터 분석을 위한 전처리, 시각화와 같은 게 매우 불편하다. 당연히 구현하려면 코드라인도 훨씬 길어질 수밖에 없다. - P149
파이썬과 R 둘 중에 어떠한 것을 공부하면 좋을까? 당연히 둘 다 공부하면 좋다. 양쪽 모두 AI 빅데이터 분석을 위한 매우 좋은 프로그래밍 언어다. 나는 R을 먼저 공부한 후 파이썬을 공부했으며 현재 거의 모든 프로젝트는 파이썬으로 진행하고 있다. - P150
파이썬이 상대적으로 R보다 좋은 점을 나열해보겠다. 파이썬이 더 빠르다. 또한 최근 이슈가 되고 있는 딥러닝 라이브러리가 더 풍부하다. 분석뿐만 아니라 솔루션 개발 또는 API로도 제작이 가능하다. nltk, re와 같은 라이브러리가 있어서 텍스트 분석이 더 용이하다. - P151
R은 파이썬보다 배우기가 조금 더 쉽다. ggplot과 같은 라이브러리로 예쁘게 시각화하는 데 더 유리하며, 기본적인 통계분석 라이브러리가 더 많다. 그리고 시중에 데이터 분석용으로 나와 있는 책이 더 많아서 공부하기가 수월하다. - P151
당연히 더 빠르고 딥러닝 라이브러리가 풍부하고 더 나아가 솔루션으로 개발까지 가능한 파이썬을 배워두는 게 더 좋다. R은 예쁜 시각화가 필요한 보고서 작성 분석용이나 비교적 소량의 데이터로 기본 통계 분석을 돌릴 때 사용하면 좋다. 그래도 처음 시작할 때는 상대적으로 코드 배우기가 더 쉬운 R로 시작하는 것도 추천한다. - P151
자격증 공부 내용에 R 코드가 나오기 때문에 자격증을 공부하면서 겸사겸사 공부할 수도 있다. 그러나 진정 AI 빅데이터 전문가로 거듭나려면 결국은 파이썬을 공부해야 한다. 특히 딥러닝이 매우 각광받는 시대에 파이썬을 하지 못하면 딥러닝 라이브러리들을 활용할 수가 없다. - P151
책에 있는 코드들을 일일이 하나하나 타자를 쳐가면서 따라해 볼 필요는 없다. 코드를 그냥 이해하고 넘어가는 수준이면 된다. 좋은 코드 예제가 있으면 표시해두었다가 실제 프로젝트를 할 때에는 책에서 제공해주는 코드를 다운받아 적절히 가져다 쓰면 된다. - P152
최근에는 라이브러리들이 잘 되어 있어서 함수만 외우면 개념을 모르더라도 간단한 결과 도출은 할 수 있다. 예를 들어 파이썬 사이킷런 라이브러리를 이용해 로지스틱 회귀 분석 함수인‘LogisticRegression‘를 입력하면 쉽게 결과를 도출할 수 있다. - P153
|