본문 바로가기

데이터과학

(정리) 머신러닝 입문 강좌 Chapter 2 - Warm Up Section : An understanding of data

TEAMLAB X Inflearn | 파이썬 머신러닝 입문 강좌 | MOOC

출처 : https://www.youtube.com/playlist?list=PLBHVuYlKEkUKnfbWvRCrwSuSeYh_QUlRl



Chapter 2 - Warm Up Section : An understanding of data

----------------------------------------------------------------------------

2-1 The concepts of a feature

■ 모델 학습 시 영향을 주는 것들

- X : 독립변수

- Y : 종속변수

- parameter : 알고리즘을 통해 최적값을 찾음


■ Toy example : Boston House Price Dataset

13개의 독립 변수(feature)로 구성

Feature : 머신러닝에서 데이터의 특징을 나타내는 변수, 하나의 data instance는 feature vector로 표현


■ Curse of dimensionality (차원의 저주) : 4차원이 넘어가면 표현이 불가능해짐

- 데이터의 차원(feature의 수)이 증가할수록 데이터를 표현하는 공간이 증가하기 때문에

1) 희박한 벡터(sparse vector)가 증가함 (값이 없는 feature가 늘어남)  --> 벡터를 구현하는 값에 0 이 많아서 오히려 정확도 저하

2) 샘플데이터가 급속도록 늘어남

- 데이터 분포나 모델 추정의 어려움이 생김 --> 성능에 문제가 발생할 수 있음


----------------------------------------------------------------------------

2-2 Data Types

■ Feature 별로 data의 유형이 다르다. (DB에 관해 알면 도움이 됨)

- 연속형 값(continuous) vs 이산형 값(discrete)


■ Numeric Types

- 정량적으로 측정 가능한 데이터 타입

- 정수, 실수

- 단위(scale)이 있는 Interval-scaled type

- 비율이 있는 Ratio-scaled type


■ Nominal Types

- 범주(category)로 분류가 가능한 데이터 타입

- 명목 척도

- scale 로써의 의미가 없음


■ Ordinal Types

- 범주로 분류가 가능하나 범주간의 순서가 있음

- 측정되는 Scale 또는 unit이 사람마다 다를 수 있음

- 배수로 증가하는 개념이 아님


■ 데이터 타입에 따라 생길 수 있는 문제점들

- 데이터의 최대/최소가 다름 --> scale에 따른  y값에 영향 (Normalize)

- Ordinary 또는 Nominal한 값들의 표현은 어떻게? (처리 방법이 달라야한다)

- 잘못 기입된 값 / 없는 값은 ? (전처리)

- 극단적으로 큰/작은 값은 그대로 놔둬야 하는가? (전처리)


----------------------------------------------------------------------------

2-3 Loading data with pandas

■ 용어 정리

- Data table = sample

- attribute = field = feature = column

- data instance = tuple = row

- data value


■ 데이터의 형식

- 일반적으로 데이터 분석시 사용되는 raw data는 binary가 아닌 text형태

- 주로 사용되는 포멧은 csv, json

- pandas를 사용하여 데이터를 호출함


■ Pandas

- 구조화된 데이터 처리를 지원하는 파이썬 라이브러리

- Numpy와 함께 엑셀의 스프레드시트처럼 처리 기능을 제공

- 인덱싱, 연산용 함수, 전처리 함수 등을 제공


(실습부터 다시 해보기)

----------------------------------------------------------------------------

2-4 Representing a model with numpy


(실습 해보기)