티스토리 뷰
[Day 10] 데이터 시각화 / 통계학
1. 강의 복습 내용
1) 데이터 시각화 도구
시각화 도구
1. matplotlib
- pyplot 객체를 사용하여 데이터를 표시
- pyplot 객체에 그래프들을 쌓은 다음 flush
- Graph는 원래 figure 객체에 생성
- pyplot 객체 사용시, 기본 figure에 그래프가 그려짐
- Matplotlib는 Figure 안에 Axes로 구성
- Figure 위에 여러 개의 Axes를 생성
- 최대 단점 argument를 kwargs로 받음
- 고정된 argument가 없어서 확인 어려움
1) Figure & Axes
- Subplot의 순서를 grid로 작성
2) Matplotlib Graph
1) Scatter
- s: 데이터의 크기를 지정, 데이터의 크기 비교도 가능
2) Bar chart
3) Box plot
2. Seaborn
: matplotlib를 더 쉽게 다루기위해 지원
- 기존 matplotlib에 기본 설정을 추가
- 복잡한 그래프를 간단하게 만들 수 있는 wrapper
- 간단한 코드 + 예쁜 결과
- matplotlib와 같은 기본적인 plot
- 손쉬운 설정으로 데이터 산출
- lineplot, scatterplot, countplot 등
sns.lineplot(x="total_bill", y="tip", data=tips)
scatterplot | regplot | countplot |
두 변수간의 상관성 | scatter + 선형함수를 함께 표시 | 범주형 변수의 발생 횟수 |
barplot | boxplot | catplot |
이변 량 분석, x축에는 범주 형 변수, y축에는 연속 변수 | 최대, 최소, 평균, 1 사분위수, 3사 분위수를 보기위한 그래프 | 범주형 변수에 대한 서브플롯 |
swarmplot | distplot | violinplot (*) |
분포와 함께 scatter를 함께 표현 | 선택된 연속 변수의 히스토그램 | boxplot에 distribution을 함께 표현 |
FacetGrid | |
카테고리 데이터를 결합분포로 볼 때 사용한다. 그래프의 종류도 골라서 사용 가능. |
2) 통계학
통계학
1. 통계적 모델링
- 적절한 가정 위에서 확률분포를 추정(inference)하는 것이 목표이며, 기계학습과 통계학이 공통적으로 추구하는 목표
- 그러나 유한한 개수의 데이터만 관찰해서 모집단의 분포를 정확하게 알아낸다는 것은 불가능하므로, 근사적으로 확률분포를 추정할 수 밖에 없다.
- 데이터가 특정 확률분포를 따른다고 선험적으로 가정한 후 그 분포를 결정하는 모수(parameter)를 추정하는 방법을 모수적 방법론이라 한다.
- 특정 확률분포를 가정하지 않고 데이터에 따라 모델의 구조 및 모수의 개수가 유연하게 바뀌면 비모수(nonparametric) 방법론이라 부른다.
1) 확률분포 가정하기
- 기계적으로 확률분포를 가정하는 것은 안되며, 데이터를 생성하는 원리를 먼저 고려하는 것이 원칙
- 각 분포마다 검정하는 방법들이 있으므로, 모수를 추정한 후에는 반드시 검정을 해야 한다.
2) 데이터로 모수 추정하기
-> 표집분포와 표본분포는 다른 것
-> 표본평균의 확률분포가 정규분포를 따른다.
3) 최대가능도 추정법
*) 로그가능도를 사용하는 이유
- 로그가능도를 최적화하는 모수 θ는 가능도를 최적화하는 MLE가 된다.
- 데이터의 숫자가 적으면 상관없지만, 만일 데이터의 숫자가 수억 단위가 된다면 컴퓨터의 정확도로는 가능도를 계산하는 것은 불가능하다.
- 데이터가 독립일 경우, 로그를 사용하면 가능도의 곱셈을 로그가능도의 덧셈으로 바꿀 수 있기 때문에 컴퓨터로 연산이 가능해진다.
- 경사하강법으로 가능도를 최적화할 때 미분 연산을 사용하게 되는데, 로그 가능도를 사용하면 연산량을 O(N^2)에서 O(N)으로 줄여준다.
- 대게의 손실함수의 경우 경사하강법을 사용하므로 음의 로그가능도를 최적화하게 된다.
4) 확률분포의 거리
1. 쿨백-라이블러 발산
- 결국 우리의 목표는 P,Q의 거리를 최소화하는 것이 목표
2. 피어 세션
1. 강의 내용에 대한 토의
1) 모수
2) 모수적 방법론과 비모수적 방법론 -> 어떤 데이터 유형일 때 확률분포를 가정하지 못할까?
3) 최대가능도 추정법
Further Question
1) 확률 vs 가능도
2) 가능도를 사용하는 이유
3) 이항분포, 최대가능도 함수
3. Conclusion
오늘로 2주차도 끝이 났다.
2주차는 수학 파트가 대부분에다가 내가 평소 수학에 기초가 튼튼한 편이 아니라 낯선 수식과 용어들을 이해하는 것에 어려움이 있었지만, 큰 틀은 놓치지않고 이해했으므로 주말동안 잘 채워야겠다.
또 Numpy, Pandas, 시각화도구 들로 이어지는 데이터분석 틀도 주말동안 계획에 맞춰서 실습해볼 예정이다.
'부스트캠프 AI Tech > 학습정리' 카테고리의 다른 글
[Day 12] 최적화 (0) | 2021.02.02 |
---|---|
[Day 11] 딥러닝 기초 (0) | 2021.02.01 |
[Day 09] Pandas / 통계학 (0) | 2021.01.28 |
[Day 08] Pandas / 딥러닝 학습방법 이해하기 (0) | 2021.01.27 |
[Day 07] 경사하강법 (0) | 2021.01.26 |
- Total
- Today
- Yesterday
- DACON
- 백준
- 알고리즘
- 그리디
- 네트워킹데이
- 프로그래머스
- pandas
- 데이터연습
- 이분탐색
- AI 프로젝트
- DeepLearning
- P-Stage
- Unet 구현
- 다이나믹프로그래밍
- 부스트캠프 AI Tech
- 브루트포스
- NLP 구현
- dfs
- cnn
- 데이터핸들링
- 공공데이터
- C++
- python
- ResNet
- Data Handling
- Vision AI 경진대회
- 동적계획법
- 백트래킹
- Unet
- 코딩테스트
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |