광주인공지능사관학교 pre-course_정리3

손예진·2022년 7월 17일
0

ai 이론에 대해서 마저 작성하겠다.

  1. 통계학
    : 기술 통계학 vs 추론 통계학
    - 기술 통계학: 연속형 데이터 e.g. 키, 나이, 가격 의 평균, 표준편차 분석
    범주형 데이터 e.g. 이름, 종족, 성별 의 빈도, 백분율 분석
    - 추론 통계학: 작은 단서, 가설 설립 & 검정, 문제 해결
    가설 검정, 수치로 되어 있는 특징들을 계산, 각 데이터 간의 상관관계를 분석

  2. 통계 모델링
    : 데이터에 통계학을 적용하여 변수의 유의성을 분석합으로써 방대한 양의 데이터에 숨겨진 특징을 찾아내는 것을 의미
    : 통계모델은 수학적 모델이라고도 함, 수학식을 이용하여 실제값을 추정

통계모델은 여러 가정을 가지고 있는데, 이 가정들은 확률 분포를 따름
확률분포는 어렵게 생각할 필요 없이 가운데가 볼록한 형태의 대칭형 종모양 그래프로 생각
이러한 그래프를 정규분포라고 하는데 영어로 직역하면 평균의 분포라는 뜻
이는 전체 데이터의 평균, 즉 가운데를 중심으로 데이터가 몰려있는 구조
가운데에서 멀어질수록 데이터의 빈도수가 적어지는 구조를 가지고 있음
모든 변수 즉 데이터가 이러한 가정에 만족해야 하는 '기본 가정'으로 시작하여,
이 조건이 만족할 때만 모델의 성능이 통계학적으로 의미를 갖게됨
이러한 통계량 수치를 바탕으로 데이터의 분포 형태를 대략 유추할 수 있다.

import numpy as np
from scipy import stats

#무작위 난수를 출력하더라도 같은 무작위 값을 얻어낼 수 가 있음
np.random.seed(0) #가로 안에 들어가는것은 숫자의 의미보다는 실험을 위한 "통제 가능 제한적 공간"이라고 알고 있음 됨

#분포를 이룰 무작위 데이터 생성
data_A=np.random.randint(0,100,10000) # 0부터 100까지 10000개 추출

#각 평균, 중앙값, 최빈값 계산
mean=np.mean(data_A)
median=np.median(data_A)
mode=stats.mode(data_A)

print("평균값:",mean.round(2)) #numpy에 속해있는 mean & median 활용
print("중앙값:",median) 
print("최빈값: {} ({})".format(mode[0][0],mode[1][0]))  #scipy 패키지의 stats모듈에 속해있는 mode활용
# 최빈값은 해당 수 , 빈도 수 출력

이러한 값들은 정규 분포와는 조금 거리가 있어 보임

np.random.normal(size=100)이라고 대체해주면 정규분포나옴

확실히 이전 분포보다는 평균, 중앙, 최빈값이 거의 동일한 정규분포 형태를 띄고 있음을 알 수 있다.

  1. 변량의 측정
    :변량은 그냥 단순하게 수치 즉, "변수"라고 생각하면 됨 (변량=수치=변수)

4.산포
:산포는 데이터의 변량을 의미하며, 데이터가 얼마나 중심으로 모이지 않고 흩어져 있는지, 산포를 측정하는 수치 중 하나가 분산이며, 분산은 평균과의 거리를 제곱한 값의 평균이다.

⭐왜 제곱을 하는가?
단순 거리의 평균만 구한다면 분명 음수라는 결과가 나타날 경우가 있음
이러한 경우 평균을 구한다면 우리가 원하는 방향과는 조금 다른 결과가 출력
그래서 이러한 거리를 제곱하여 항상 양의 값만이 나오도록 하고 이 값들을 가지고 평균을 구하면 우리가 추구하는 분산 값을 얻을 수 있다.

#numpy의 var,std를 활용하여 분산, 표준편차 출력
data_A_var=np.var(data_A)
data_A_std=np.std(data_A)

print("분산:",data_A_var.round(2))
print("표준편차:",data_A_std.round(2))
  1. 표준편차
    : 분산과 표준편차가 구분되어야 하는 이유는 분산은 매우 큰 값으로 나올 수 도 있기 때문에 비교하기가 쉽지 않다. 이러한 단점을 보완하고자 원래의 단위로 보정한 것.
  1. 사분위수
    : 데이터 구성을 전체적으로 살펴보고자 할 때 사용
    : 데이터의 이상치 탐색과 중심위치 및 분포를 빠르게 파악할 수 있다는 강점
    : 데이터를 크기순으로 가장 작은 값부터 가장 큰값까지 정렬


    :quantile()를 활용해 사분위수값 출력

⭐박스 플롯에서 박스를 감싸고 있는 이 선은 어떠한 의미를 가지고 있는지?

이 선은 이상치를 제외한 최댓값, 이상치를 제외한 최솟값을 나타내고 있음
이 선을 제외한 데이터는 이상치로 간주할 수 있으며 자세하게 살펴볼 필요가 없음

⭐ 이상치의 기준은? IQR (InterQuartile Range)

  1. IQR
    : 사분범위의 1.5배를 기준으로 산정
    : 사분 범위란 중앙에서 50%의 범위를 뽑아서 본다. 즉 양쪽의 25%를 자르고 가운데 50%만 본다는 거.

    : 이걸(IQR) 구하는 식은 간단하게 3사분위 수에서 1사분위 수를 빼주면 됨
    : 이상치 탐색, 데이터의 분포 등을 확인할 때 유용. 다수의 객체들과 비교하고자 할떄도 유용하게 사용
profile
딥러닝 공부중 🦴

0개의 댓글