2주차 강의: 데이터 사이언스의 핵심 개념과 기술

2021. 4. 26. 19:002021/JOB DA STUDY

  • 데이터 사이언스가 무엇인지 설명할 수 있다.
  • 데이터 사이언스가 통계 및 컴퓨터 과학을 비록한 다른 분야와 다른 이유를 설명할 수있다.
  • 관련된 데이터 사이언스 프로세스 및 단계를 요약할 수 있다.
  • 데이터 사이언스로 간주되는 것을 받영할 수 있다.
  • 다양한 소스에서 유래된 데이터 유형을 분류 가능하다.
  • 데이터 사이언스를 수행하는데 필요한 광범위한 기술 역량을 요약할 수 있다.

데이터 사이언스 개요

빅데이터와 데이터사이언스의 차이

빅데이터는 IT와 매우 큰 관련이 있거나 컴퓨터 과학 및 엔지니어링에 중점을 둔다.

또한 특허를 식별하고, 조직에 새로운 유용한 것을 발견하기 위해 다양한 출처의 많은 데이터를 수집하고 사용한다.

즉, 빅데이터에 의해 생기는 기회에 중점을 둔다.

  1. Volume(양)
  2. Variety(다양성)
  3. Velocity(속도)
  4. Veracity(진실성)

데이터 사이언스는 다양한 분야의 방법과 관점의 혼합으로부터 나온다.

데이터를 수집하는 방법, 수집할 데이터 포인트, 수행할 관찰 또는 모집단에서 샘플을 추출하는 방법이 다량의 데이터 보다 더 중요하다.

즉, 데이터를 유용하게 만드는 것이다.

 

데이터 사이언스 프로세스의 개요

1. 데이터 수집

샘플링 & 크롤링 & 외부 소스와 자신의 데이터의 결합

2. 데이터 정제 및 분석

1. 누락되거나 불완전한 정보가 있는 경우를 대비해 데이터 관리 & 탐색 데이터 분석

탐색 데이터 분석 -> 몇 가지 표준 테스트를 실행하고, 데이터에 대한 표준 시각화를 그려 일반적 패턴이나, 데이터 품질 문제를 볼 수 있다.

3. 통계 분석이나 기계 학습 기술을 활용

3. 데이터 분석 해석 및 보고

1. 어떤 스토리를 만들 것인지 생각해본다.

-> 청중은 누가 될것인지, 어떤 결과가 청중들에게 중요한지 결정한 이후에

어떤 결과가 잠재 고객에게 가장 흥미로울지 확인

2. 결과의 형태와 순서 정리 

 

데이터 사이언티스트의 역할

" 데이터를 분석한다. " = 데이터를 더욱 간결한 형식으로 표현하는 모델을 설계한다.

  • Formulating Questions: 질문 계획
  • Discovering data necessary to answer them: 질문에 대한 답을 하는데 필요한 데이터 찾기
  • Planning analysis to extract insights: 인사이트 추출을 위한 분석 계획 ( 이해 방식, 알고리즘 유형)
  • Creating models to carry out analysis: 분석 수행할 모델 만들기
  • Producing  visualisation to report insight: 보고하기 위한 시각화 생성

 

데이터 사이언스 도구 키트

데이터 사이언티스트로서 요구되는 도구 및 기술과 관련하여 추상적인 아이디어와 원칙 및 개념

클러스터링 알고리즘 구현 방법

 

  • Programming Languages: R, Python, Java, JavaScript
  • Bigdata Processing: Hadoop, HDFS, MapReduce, Spark, Storm, Hive, Pig
  • Data Management: SQL, NoSQL, Mongo DB, Cassandra
  • Visualisation: D3.js, Gephi, Tableau, Shiny, Excel, Gapminder
  • Data Analysis: R, Excel, Weka, RapidMiner, OpenRefine, SAS, SPSS, Warson Analytics, Open Calais, Matlab
  • jVisyalising(시각화) -> Bokeh(Python)
  • Analysing(분석) -> Numpy / Scipy
  • Managing(관리) -> MongoDB
  • Programming(프로그래밍) -> Python

데이터 사이언스의 '데이터'

데이터에는 다양한 의미가 있으므로, 데이터 속성의 복잡성과 다양성을 이해하는 것이 가장 중요하다.

 

차원은 데이터 사이언스 파이프라인에서 사용할 수 있는 툴과 기술 유형에 영향을 미친다. 또한 다양한 분석 방법이 필요하다.

 

데이터는 모두 같을 순 없다.

  • 정량적 데이터/정성적 데이터
  • 연속 데이터/이산 데이터
  • 구조화 데이터/비구조화 데이터/반구조화 데이터
  • 공개 데이터 /비공개 데이터
정성적(Qualitative) 데이터: 숫자가 아닌 데이터(프리텍스트), 순서 데이터(카테고리), 자연어로 표현된 데이터, 명사 & 서수(ex: 요일) & 이항(둘이상의 명사로 이어진 명사: 2개의 상호 배타적 범주를 가지는 명사 (ex: Yes or No)) 데이터

정량적(Quantitative) 데이터: 수치 데이터, 이산(구체적인 수) 또는 연속(실수) 데이터, 순서 데이터

 

*** 데이터는 알고리즘이나 컴퓨터로 처리되기 때문에 구조가 중요하다. ***

  - 알고리즘은 예측 가능한 데이터를 분석하는 것을 선호하며, 구조는 예측 가능성의 일부이다.

  - 데이터를 보다 효율적으로 관리하는데 도움이 된다.

  - 관계형 데이터베이스(RDB)는 구조화된 데이터를 관리하는 표준적인 방법

Structured Data: 알고리즘은 예측 가능한 데이터를 분석하는 것을 선호하며, 구조는 예측 가능성의 일부
-> 데이터를 효율적으로 관리하는데 도움
(관계형 데이터베이스(RDB) 는 구조화된 데이터를 관리하는 표준적인 방법)

Semi- Structured Data: 구조화된 데이터의 형식으로 반드시 관계형 스키마 형식을 필요로 하지는 않는다.
-> 미리 정의 되어있으며, 자주 변경되지 않을 것으로 예상되는 형식
-> 비정형 데이터의 경우, 새로운 유형의 저장소가 필요하므로 더이상 관계형 DB를 사용할 수 없다.
    WHY? 데이터 구조가 알려지지 않았거나, 언제든지 변경 될 수 있기 때문이다.

EX) tag: 구조를 추가하거나 데이터와 문서를 구성(데이터 일부분이 속하는 그룹 또는 구조를 형성)

Unstructured Data: 프리텍스트, 텍스트 스트림, 그림, 비디오 등의 형태로 나타낼 수 있음
-> 데이터 저장을 돕고 해당 데이터의 쿼리에 대한 응답을 돕는 미리 정의된 데이터 모델이 없음