데이터과학 기초-(1)데이터 과학이란?

Coding_Holic·2021년 6월 23일
0

데이터 과학 기초

목록 보기
1/13

본 게시글은 데이터 과학 기초 수업을 듣고 정리한 글로, 참고 용도 정도로만 이용하시면 좋을 것 같습니다.

첫글은 현재 수강하고 있는 데이터 과학 기초 수업에 대해 정리해 보겠다.
머신러닝이나 딥러닝을 다루기 전에 이러한 데이터 관련 기본 지식을 쌓고 가는 것이 좋을 것이라 개인적으로 생각한다ㅎㅎ

데이터 과학이 뭐길래~~~?

데이터 과학이란?

데이터(data)는 어떤 변수에 대해 관측을 통해 수집한 실체적 정보이다.
ex) 데이터 과학을 수강하는 학생들의 키,나이, 성별, 혈액형
과학(science)는 보편적 진리나 법칙의 발견을 위한 지식의 체계이다.
ex) 어떤 학생들이 여름학기에 데이터 과학을 수강하는가?

그렇다면 데이터 과학(data+science)는 과학적 방법으로 데이터를 분석하여 보편적 진리나 법칙을 발견하고 데이터로부터 유의미한 지식과 통찰을 얻어 미래를 예측하는 학문입니다.
ex) 새봄 학생은 내년 여름에 데이터 과학을 수강할까?

데이터 과학을 위한 과학적 방법은?(scientific method)

문제 정의:Ask a question
배경 연구:Do background research
가설 수립:Construct a hypothesis
실험 및 가설 검정:Test your hypothesis by doing experiments
분석 및 결론 도출:Analyze your data and draw a conclusion
결과 전달:Communicate your results

빅데이터 시대의 과학적 방법론: 연역법에서 귀납법으로 (why? 빅데이터!)

연역법? 일반적으로 알려진 이론을 어떠한 현상에 대입시켜 이에 대한 결론을 도출해내는 방법
귀납법? 개별적인 특수한 사실이나 현상에서 그러한 사례들이 포함되는 일반적인 결론을 이끌어내는 추론 형식의 추리 방법

우선 데이터의 종류에는 어떤 것이 있을까?

구조적(정형)데이터:Structured Data
-숫자형,논리형,범주형 등의 일정한 형식으로 표현할 수 있는 데이터
(정해진 형식을 의미하니까 구조적으로 기본적인 틀이 있다고 생각하면 될 것 같다.)
ex)키,나이,성별,혈액형

비구조적(비정형)데이터:Unstructured Data
-숫자형,논리형,범주형 등 구조적으로 표현할 수 없는 데이터
(비정형 즉 정해진 틀이 없다!)
ex)텍스트,이미지,사운드,동영상 등등

반구조적(반정형)데이터:Semi-structured Data
-일정한 형식으로 표현할 수 없지만, 구조적으로 표현할 수 있는 데이터
(반,,!)
ex)HTML,XML,JSON,기타 등등

그렇다면 빅데이터란?:Big Data

기존의 데이터 처리 도구로는 수집, 저장, 관리,분석하기 어려운 데이터이다.

빅데이터의 세가지 속성(3V):
-크기(Volume):TB,PB 등등
-다양성(Variety):정형,반정형,비정형 데이터
-속도(Velocity):Facebook posts,Youtube videos 등등

더 중요한 한가지 +1V(4V):
-가치(Value): 빅데이터로부터 얻어낼 수 있는 유의미한 통찰(insight)

Data science is an interdisciplinary(융합적) field of study.

-수학과 통계학
-컴퓨터 프로그래밍
-분야별 전문성

데이터 과학 프로세스란? Data Science Process

데이터 분석에 관련된 모든 활동들:
-데이터 수집:Data Collection
-데이터 처리:Data Processing
-데이터 정제:Data Preprocessing(Clean Data)
-탐색적 데이터 분석:EDA, Exploratory Data Analysis
-데이터 모델링:Statistical Models and Machine Learning Alogorithms
-데이터 시각화:Data Visualization

데이터 과학의 시작은 문제를 명확히 정의하는 것으로부터 시작한다.

문제 정의: Problem Definition
ex)부모의 키가 크면 자식의 키도 클까?,어떤 종료의 이메일이 스팸 메일일까? 등등

Datafication(데이터화) is a proccess of taking all aspects of life and turning them into data.

데이터 수집:Data Collection
데이터 화의 사례:
-구글의 증강현실 안경: 시선의 데이터화
-트위터:생각의 조각을 데이터화
-LinkedIn:직업적 전문가 네트워크의 데이터화

Once we datafy things, we can transform their purpose and turn the information into new forms of value.

통계학과 데이터 과학:

통계학:Statistics
-데이터를 관찰하고 정리하고 분석하는 방법을 연구하는 수학의 한 분야
-통계적 가설 검정: 특정 가설의 검정을 위한 A/B 테스트
-통계적 추론: 미지의 확률 변수에 대해 사전 확률로 사후 확률을 추론

모집단표본: Population and Sampling

빅데이터의 시대에도 여전히 모집단과 표본이라는 방식이 필요한가?

ex) 2016년 미국 대선: 전통적 여론 조사 vs SNS 빅데이터 분석
대부분 알고있겠지만, 도널드 트럼프와 힐러리 클린턴에 대한 전통적 여론 조사의 결과는 힐러리 클린턴이 당선된다고 발표했었습니다. 하지만 실제 대선결과는 트럼프가 당선되어 전통적 여론조사에 대한 신뢰성과 정확성이 떨어진다는 의견이 나오게 되었죵

####데이터 모델링:Data Modeling
수학적 함수를 통해 데이터의 형태와 구조를 표현하는 것

모형 적합:Fitting a model
-관찰된 데이터를 사용하여 모형의 모수를 추정하는 작업
-경사하강법:Gradient Descent
-최대우도추정법:MLE, Maximum Likelihood Estimation

과(대)적합과 과소 적합:overfitting and underfitting
-과적합:학습 데이터에 과도하게 편향된 모형 적합
-과소 적합:학습 데이터를 제대로 설명하지 못하는 모형 적합

(이해하기 좋아보여서 가져온 사진!)

기계학습 알고리즘: Machine Learning Algorithm

데이터를 가장 잘 설명하는 모형을 경험을 통해 스스로 학습하는 알고리즘.

지도 학습:Superevised Learning
-예측하려는 변수의 정답을 확일할 수 있는 경우
-예측형 모델(predictive model):회귀(regression),분류(classfication)

비지도 학습:Unsupervised Learning
-해결하려는 문제가 따로 정답이 정해져 있지 않은 경우
-설명형 모델(descriptive model):군집화(clustering),연관(association)

강화학습: Reinforcement Learning
-행동(action)에 대한 보상(reward)을 통해 학습
-딥 러닝:Deep Reinforcement Learning

여기서는 어떤 알고리즘이 있는지만 살펴보고 이후 포스팅에서 각 알고리즘에 대해 설명하겠다
기계학습 알고리즘의 종류:
예측:Prediction
-선형 회귀
분류:Classification
-로지스틱 회귀, k-최근접이웃,SVM
군집화:Clustering
-계층적 군집화, K-평균
추론:Inference
-나이브 베이지안, 인공신경망

데이터 시각화:Data Visualization

데이터의 분석 결과를 시각적으로 표현하고 전달하는 것(다음 그림과 같이)

빅데이터의 시대
다음 링크를 들어가면 전세계의 internet map을 볼 수 있다 당연하게도 google이 1등이다 ㅎㅎ
The map of the internet

데이터 과학을 위한 프로그램이 언어와 도구에는 어떤 것이 있을까?

1.R
-통계학과에서 많이 쓰는 언어로 라이브러리,플랫폼,커뮤니티가 풍부하다~,
functional 함수형 프로그래밍 언어의 특징을 많이 가지고 있다.
ctrl+enter로 한라인씩 코드를 실행가능하다! (주피터도 마찬가지이당)
수업 중에 R관련해서 실습을 많이 진행해주셨지만,, R에는 관심이 없어서 pass하겠다!
2.Python
-Jupyter Notebook, Pandas, Scikit-Learn, TensorFlow, PyTorch 등등 사실 수업 중에 Python을 다뤄주셨으면 했지만 그러기에는 너무 장벽이 많으므로,, 나중에 튜토리얼 공부를 하고 여유가 날때 포스팅 하겠다!! 머신러닝 공부 화이팅
3.Orange
-코딩이 없이 비주얼 프로그래밍을 통해 데이터 분석할수 있어서 편리한 데이터 마이닝 도구라고 한다,, 쉽다! 그래서 수업 중에 쓴다!사실 데이터 과학 기초 수업이기에 이정도 분석을 해서 데이터에 대한 이해를 목적으로 공부하는데 쓰면 될 것이다. Orange는 초등학생이 수업 중에 쓸 수 있을 정도로 쉽다. 사실 공부하는 입장에서는 편하다.
4.Power BI
-Microsoft가 제공하는 도구라고 한다,, 사실 잘 모른다.

오늘 포스팅은 여기 까지 하겠다. 사실 어려운 개념들을 간략하게 살펴본 부분도 많아서 앞으로 적을 포스팅이 아주 많을 것 같다:) 열심히 하겠습니당!!

profile
안녕하세용 개발에 미치고 싶은 초보 개발자입니다:)

0개의 댓글