부정 본능 : 뉴스에 부정적인 내용 위주로 전달되다보니 사람들이 세상을 부정적으로 인식합니다.
통계 기반 데이터 활용
통계 기반 머신 러닝
통계는 기술 통계와 추론 통계로 나뉩니다.
추론 : 추정과 가설 검정
문제 정의 → 데이터 수집 및 이해 → 데이터 준비 → 데이터 모델링 → 모델링 평가
모델을 학습하고 관리 배포
Metrics : 평가 지표
Miscrosoft Azure ⊃ Subscription ⊃ Resource Group ⊃ Workspace
Microsoft Azure : Azure Cloud
Workspace : Azure ML studio
Pipelines : Azure ML Studio Designer
reasouce 는 앱이라고 이해하면 됩니다.
Workspace : 코딩하기 위한 도구, VS CODE를 웹에서 구현
Compute
Notebooks
Pipelines : 앤트리 스크래치, 블록 기반 코딩, 간단해 보이지만 블록마다 심도 있는 로직입니다.
Data
Experiments : 머신 러닝 한 번 한 번을 실험이라고 표현합니다.
Models
Automated ML : 자동으로 생성되서 효율적이지만, 비용이 많이 나올 수 있습니다.
캔버스 : 소스코드 파일
이름을 의미를 담아 작성해야 구분 가능
파이프라인으로 코딩합니다.
웹에서 VS CODE 역할
작업
박스는 힘스. 프로시저, 입출력 등 다양합니다.
아웃풋 갖고 있고 다른 박스에 입력합니다.
중간중간 과정을 체크할 수 있습니다.
Name 은 영어로 작성
가급적이면 브라우저 언어를 영어로 바꾸는 것을 권장
기계학습 알고리즘 치트 시트
Untrained model 을 train model 로 훈련
Score Model 또는 Test Model 로 보통 표현
평가 결과도 분석 가능
분석 모델, 회귀 모델
"통계는 요약이다"
요약된 값을 얻기 위해 통계를 활용합니다.
불확실성 해소
변동성 해소
모집단과 표본
샘플링 (표본 추출)
표본 (Sample, 데이터 하나를 보통 포현) → 데이터셋
표본의 통계값들 : 통계량 (statistic)
모집단의 통계값들 : 모수 (parameter)
모집단 추정 (Estimation) : 궁극적으로 알고 싶은 것
모집단이 작으면 전수조사가 가능하지만 (예시 : 인구 총조사),
대부분은 표본 조사
표본의 추출
확률적 표본 추출
30명 나올 때마다 1명씩 조사
모집단에서 특정한 규칙으로 표본을 추출하는 방법
자의로 표본을 추출
조사 대상이 자발적으로 표본에 참여하는 방법 (대학병원에서 임상실험 참가자 모집)
장점 : 데이터를 통합하여 하나의 대표값으로 표현
단점 : 이상치(outlier)에 민감하여 극단적인 값에 영향을 받음
연봉의 평균을 구할 때, 대부분 1억을 받지만, 누군가 10억을 받는 경우
아이스크림 5천원짜리 6개, 1만원짜리 2개 산 경우
산포도
범위
분산 (Variance)
표준편차 (Standard Deviation)
사분위수 범위 (Interquartile Range, IQR)
IQR = Q3 - Q1
왜도와 첨도
정규분포
꼬리를 중심으로 표현
꼬리가 오른쪽으로 긴 경우
예 : 급여, 주택 가격 등
평균이 중앙값보다 오른쪽에 위치
꼬리가 왼쪽으로 긴 경우
예 : 시험점수 등
양의 첨도
꼬리가 두꺼운 분포
극단값이 더 자주 발생
음의 첨도
영역 차트 (Area) : 영역이 중요
히스토그램 (Histogram) : 분포의 그래프의 형태, 전체 분포의 현황을 파악할 때 사용
파이 차트, 도넛 차트 : 전체에 대한 비율을 표현
데이터 수가 8개가 넘어가면 쓰지 말라고 합니다.
선처럼 작은 값들은, other 로 처리해야 합니다.
게이지 차트 (Gauge Chart) : 목표의 달성 정도를 나타냄, 한 값을 명확히 표시할 때 용이
버블 차트 (Bubble chart)
트리맵 (Treemap)
규칙
덧셈 법칙 : 합집합
곱셈 법칙 : 독립사건일 때, 교집합
특정 값이 나타날 가능성이 확률적으로 주어지는 변수
확률은 랜덤임을 가정
분포 현황에 따라 이산 확률변수와 연속 확률변수로 구분
주사위를 굴렸을 때 나오는 눈의 수, 동전 던지기의 결과
이산형 확률변수에 의한 확률 분포 : 이항분포, 기하분포, 포아송분포
확률밀도함수 (PDF)
정규분포,균일분포,t-분포,카이제곱분포 등
수식은 참고만 하고
어떤 개념이 있는지 알면 됩니다.
정규 분포, 지수 분포, 카이제곱 분포
어떤 개념이고 어떤 특징이 있고 어떻게 사용된다 수준으로 알면 됩니다.
베르누이 분포 (Bernoulli Distribution)
두 가지 결과가 있는 단일 시행 확률분포
결과값 : 0 또는 1
x가 1이면 확률p
x가 0이면 확률 1-p
동전 던지기 한 번 실행 : 베르누이 분표
일정한 횟수의 독립적인 베르누이 시행에서 성공 횟수를 나타내는 분포
앞면이 몇 번 나왔는지
단위 시간(또는 단위 공간)에서 특정 사건의 발생 빈도를 나타내는 분포
콜센터 : 1시간 동안 걸려오는 전화의 수
특정 도로에서 시간당 발생하는 사고 수
빈도가 적을 때 몇 번 발생하는지가 중요
평균을 중심으로 대칭
1배이면 68%
2배이면 95%
3배이면 99.7%
성인의 키 분포
대규모 시험의 성적 분포
시간 간격이 중요
콜센터 대기 시간 : 다음 전화 걸려올 때까지 시간
분산을 추정
분산과 분포는 밀접한 관계
분산 개념이 머신 러닝에 나오면 분포를 의미한다고 생각하면 됩니다.
산포도, 분산, 분포는 같은 카테고리의 개념들입니다.
실제 데이터가 기대했던 데이터와 일치하는지 검정
국어 시험 분포와 수학 시험 분포가 동질성이 있는지 확인
머신 러닝에서
중복된 데이터가 있어서 제외할 때 카이제곱 분포 많이 사용합니다.
분산 분석
추론 : 표본을 통해서 모집단을 알아내는 것
추론의 방법
1. 모수의 추정
2. 모수에 대한 가설검정
의료계에서 주로 사용
표본조사를 통해 전국 직장인 상여금의 평균을 하나의 값으로 추정
구간 추정
직장인 상여금 평균이 5년 전 평균값과 얼마나 다른지 판단함
점추정 (Point Estimation)
한 값을 추정
구간추정 (Interval Estimation)
범위를 추정
신뢰구간
모수가 신뢰구간 안에 포함될 것으로 예상되는 범위
신뢰구간이 넓다고 좋은 것은 아니다
변동성이 크다
예측하기 어렵다
신뢰 수준
유의수준 α : 모수가 신뢰구간에 포함되지 않을 확률
신뢰 수준 : 95%
5% 확률로 틀릴 수 있음
양 끝 각각 2.5%
가설 검정 :
검정은 test
가설 검정 예시
귀무가설/대립가설 수립
귀무가설 H0
대립가설 H1
유의수준을 0.05로 설정
5%의 확률로 귀무가설이 참인데도 불구하고 기각할 가능성을 허용함
P-value 계산 : 검정 통계량을 바탕으로 P-value를 계산
P-value가 유의수준 0.05보다 작으면 귀무가설 기각 (효과 있다)
그렇지 않으면 귀무가설 채택 (효과 없다)
가설 검정 - 오류
샘플로 처리하기 때문에 오류가 발생할 수 밖에 없습니다.
1종 오류=참을 거짓으로 판단
2종 오류=거짓을 참으로 판단
1종 오류 (Type 1 Error) : 귀무가설이 참인데도 불구하고 이를 기각하는 오류
새로운 진통제와 기존 진통제의 효과에 차이가 없는데,
새로운 진통제가 더 효과적이라고 결론 내리는 경우
잘못된 긍정 (False Positive) 결과 초래
positive 예측을 잘못했다
2종 오류 (Type 2 Error) : 대립가설이 참인데도 불구하고 귀무가설을 기각하는 오류
귀무가설이 거짓인데, 기각하지 않는 오류
잘못된 부정 (False Negative) 결과를 초래
정밀도, 재현율과 유사한 개념
단일 표본 t 검정 : 한 그룹
한 학급의 평균 성적이 70점인지 확인
독립 표본 t 검정 : 두 그룹
남학생과 여학생의 평균 성적 비교
대응 표본 t 검정 : 한 그룹의 두 상황
다이어트 전후의 체중 비교
적합도 검정 : 주사위 굴리기 결과의 기대와 일치 확인
독립성 검정 : 성별과 흡연 여부간의 독립성 확인
동질성 검정 : 여러 지역의 질병 발생률 비교
모집단 population
부-모집단 sub-population
분산을 이용해 평균을 구하는데 보통 사용
한 변수가 변할 때, 다른 변수가 변하는 것
아이스크림 판매량이 늘어나는 것과 익사자의 수가 상관관계가 있다
하지만 인과관계가 아니다
단지 여름철에 아이스크림이 많이 팔리고
여름철에 수영장과 바다에 많이 가기 때문이다
장점 : 해석이 직관적
단점 : 두 변수 간의 관계까 선형관계가 아닌 경우, 제대로 반영하지 못함
켄달계수라고도 표현
변수의 순서 간의 상관성을 측정
Lab : 날씨 데이터를 활용한 로켓 발사 예측 모델 구현 (A)
머신 러닝 (Machine Learning)
명령문 statement
y = 2x
assign 할당하다
r-value
l-value
오른쪽 값을 왼쪽에 넣어준다
입력값을 넣어서 출력값을 준다
산점도
(1,2), (2,4), (3,6)
산점도를 기반으로
(선형) 회귀 선을 그림
입력 변수, 출력 변수
선형 방정식 : 1차 방정식
변수 3개 : 장르, 유형, 색
분류 모델, 2진 분류, 2가지 중 하나
군집화, clustering
분류와 회귀에는 정답이 있지만
군집은 정답이 없음
지도학습 Supervised Learning
정답 데이터가 전체 데이터에 포함
비지도 학습 Unsupervised Learning
정답 데이터 없음
입력 변수, 출력 변수
독립 변수, 종속 변수
label, target
머신러닝
1. 지도학습
2. 비지도학습
지도학습 : 분류 (Classification)
서포트 벡터 머신 (SVM) : 최적의 분할선 탐색
의사 결정 나무 (Decision Tree) : 항상 바이너리 트리
로지스틱회귀
머신러닝 기본 용어
데이터 세트 : 주어진 데이터 전체
데이터 샘플 : 개별 데이터
데이터 서브셋 : 데이터 일부
의미 있는 변수 :
특성 (feature)
정답 (Label)
카테고리 / 범주 / 클래스
기상 조건 : 온도, 전기장, 강수량, 구름, 풍향, 풍속, 가시거리
알고리즘 : 의사 결정 나무 (Decesion Tree)
스무고개
x,y를 가지고 문제를 낼 수 있음
선을 그으면서 구분
나무를 어떻게 그릴까 생각해보기
노드 (node)
리프 (Leaf)
깊이 (Depth)
형제 (sibling)
루트 노드
리프 노드
부모 노드
지식 노드
불순도(impurity) : 데이터를 가장 잘 분류할 수 있는 테스트 조건(=질문)을 찾아내는 방법
결정 경계 : 선 긋기
불순도를 갖고 결정 경계를 찾음
불순도가 높으면, 결과 예측이 어렵다
불순도가 낮으면, 결과 예측이 용이하다
지니 계수, 지니 불순도
불순도가 낮은 방향으로 선을 긋도록 함
가장 영향력 있는 질문을 먼저 시작한다
영향력 높은 독립변수부터 시작한다
선을 긋는 행위 : 노드
상황 변수를 세트로 만들어서 가지고 다님
value = [12, 10]
초록색 12개, 빨간색 10개
x가 3보다 작거나 같을 때, 최종 클래스는 그린
과대적합 (Overfitting)
학습 데이터에 과도하게 맞춰진다면, 테스트 데이터에 안 맞을 수 있음
과대적합하는 경우를 방지하기 위해 최대 깊이 (Max Depth)를 설정할 수 있음
확률에 대한 임계치(threshold)를 설정할 수 있음
임계치 90% 지정 예시
나무 알고리즘은 기본 형태로 보통 사용하지 않음
나무 알고리즘은 위크 모델
약한 모델을 묶어서 사용
앙상블 / 랜덤 포레스트
다수결 투표
데이터 세트의 서브셋 샘플링
중복을 허용하는 샘플링 (복원 추출)
주머니에서 구슬 뽑을 때, 뽑았던 구슬을 다시 넣고 뽑는 방식
페이스팅(Pasting) : 샘플링시 중복을 허용하지 않는 방식 (비복원추출)
모델링할 때 사용자가 직접 조정 및 세팅하는 값
리프 노드에 포함해야 할 최소 샘플 수는?
데이터 수집 - 웨더 언더그라운드
NASA 데이터는 무인, 발사된 데이터만 가지고 있음
발사일 전후 이틀은 발사하지 않은 날로 가정
발사일이 가장 날씨가 좋았다고 가정
데이터 정리, 데이터 전처리
누락값은 채워줌
틀린 데이터는 제거 또는 정제
feature selection : 필요한 열들만 사용, 가장 우선 진행
데이터 전처리
학습 세트, 검증 세트, 테스트 세트
검증세트 : 하이퍼 파라미터 테스트
학습 세트 : 8
테스트 세트 : 2
1종 오류 : 참을 거짓으로 생각
2종 오류 : 거짓을 참으로 생각
정밀도 : 모델이 positive로 예측한 값중 실제로 positive인 비율
정밀도 (Precision) = TP / (TP + FP)
재현율 : 실제 Positive인 데이터 중 모델이 맞춘 비율
재현율 (Recall, Sensitivity) = TP / (TP + FN)
암진단 : 재현율이 낮으면, 암 환자를 놓치게 된다
스팸메일 필터 : 정밀도가 낮으면, 스팸이 아닌 메일을 스팸으로 판단