강의 링크 : https://www.udemy.com/course/statsml_x/

문제시 삭제합니다.

Median(중앙값)

Formula :
$$ x_i, \space i=\frac{n+1}{2} $$

  • 단순히 x의 중앙값을 구하는것

Suitable for:
단봉분포

Suitable data types:
구간, 비율

Example
x = [0,4,1,-2,7]
med(x) = [-2,0,1,4,7]

x =[10,0,4,1,-2,7]
med(x) = [-2,0,1,4,7,10]
med(x) = 2.5

실패 시나리오

  • 단봉푼포에서는 중앙값이 중심경향치를 의미한다.
  • 쌍봉분포에서는 중앙값이 중심경향치를 의미하지 않음.

성공 시나리오

  • mean을 이용한 중심경향치 계산은 비대칭된 분포에서는 부적절함
  • 하지만 중앙값(median)을 이용한 중심경향치 계산은 적절하다.

Mode(최빈값)

Formula:
가장 많이 나온 값

Suitable for:
모든 분포도

Suitable data types:
모든 타입(수치형 데이터는 이산형 데이터로 변환되어야함) -> 주로 명목 데이터에 사용

Example
x=[0,0,1,1,1,2,3,4]
mode(x) = 1

x=[0,0,1,1,1,0,2,3,4]
mode(x) = 0,1

분포도

  • 단봉형, 쌍봉형 데이터 모두 적합

  • 범주형 데이터에 적합

  • 이산형 데이터에도 적합

요약

Mean: 평균값, 이상치에 민감하다. 중심경향치를 구할 때 가장 많이 사용되는 방법. - 정규분포일 때 사용

Median:. 중앙값(상위50%,하위50%)

  • 정규분포 일. 때 빼고는 단봉분포일때 사용

Mode: 가장 많은 값

  • 명목형 데이터일 때 사용

강의 링크 : https://www.udemy.com/course/statsml_x/

문제시 삭제합니다.

 

중심경향치 : 데이터 분포의 중심을 보여주는 값

중심 경향치

중심 경향치는 기댓값과 일부 상황이나 가정에서는 동일 할 수 있지만 반드시 그런것은 아님

평균

$$Fomula: \overline{x} =n^{-1}\sum_{i=1}^nx_i$$
$$Notation: \overline{x} = 𝛍 =𝛍_x$$
$\overline{X} = x의 평균$
$𝛍 = 모집단평균, 표본평균$

  • 대략적인 가우시안 분포 데이터에 적합
  • 구간, 비율 데이터 타입에 적합
  • 예:
    $x=[-2,0,4,1,7]$
    $\overline{x} = 2$

실패 시나리오

  • 파란색 분포는 정규분포이므로 평균값을 이용해 중심경향치를 알아 낼 수 있음
  • 녹색 분포는 쌍봉분포이며, 정규분포가 아니므로, 평균값을 구할 수는 있지만, 중심경향치를 알아낼 수 없음.

  • 비대칭된 분포의 경우도 마찬가지로 중심 경향치를 알 수 없음.

강의 링크 : https://www.udemy.com/course/statsml_x/

문제시 삭제합니다.

 

정확도(accuracy) : 실제 사실과 측정의 관계 (편향과 반비례)

정밀도(precision) : 측정의 확실성(분산과 반비례)

해상도(resolution) : 단위측정당 데이터 포인트의 수 (얼마나 미세하게 표현할 수 있는지)

강의 링크 : https://www.udemy.com/course/statsml_x/

문제시 삭제합니다.

Descriptive statistics(기술통계) - 분석

표본 데이터셋 또는 어떤 데이터셋의 특성을 나타내는개별 숫자를 얻는 것

  • 평균, 중앙값, 최빈값
  • 분산
  • 첨도(정규분포보다 얼마나 중앙에 몰려있는지/뾰족한지), 왜도(분포가 얼마나 한쪽으로 치우쳐져 있는지(중앙에 몰릴수록 낮은 값))
  • 분포 형태
  • 스펙트럼

모집단과 관계 없으며, 다른 데이터셋이나 그룹으로의 일반화도 없음

Inferential sttistics(추론통계) - 검증

데이터셋의 특징을 사용하여 모집단에 대한 주장을 함

  • p-value
  • T/F/카이제곱 value
  • 신뢰구간
  • 가설검정

전체 목적은 데이터 특징을 모집단이나 다른 그룹으로 일반화 하는것

 

 

p-value : 어떤 사건(관찰된 값)이 우연히 발생할확률/ 귀무가설 혹은 영가설(주로 '차이가 없다', '효과가 없다'라고 주장하는 가설)이 참일 확률 
t-value : 두 표본 집단이 평균적으로 얼마나 차이가 나는가를 표현한 정도(값이 클 수록 두 집단의 특성은 다르다)/ 두 집단의 평균 크기를 나타내는 통계량

f-value : 세 개 이상의 표본집단에서 얼마나 차이가 나는가/ 평균이 통계적으로 같지 않다는 것을 검증할 때 사용

강의 링크 : https://www.udemy.com/course/statsml_x/

문제시 삭제합니다.

라인 vs. 바

  • 범주형 데이터에서 선 그래프는 좋지 않다.
  • 히스토그램 그래프에서는 괜찮다.

바 플롯 대신 라인 플롯이 사용되는 상황

  1. 바가 많을 때

  1. 그래프 비교 시

강의 링크 : https://www.udemy.com/course/statsml_x/

문제시 삭제합니다.

히스토그램 vs. 바 플롯

  • 막대그래프는 x-axis에 카테고리가 있다.
  • 히스토그램의 x-axis는 bin이라는 연속적인 데이터로 되어있다.
  • 막대그래프는 x-axis의 순서를 변경해도 무관
  • 히스토그램은 x-axis의 순서를 변경하면 안됨(데이터 고유의 모양이고, 추세를 봐야하기 때문)

히스토그램 수량 vs. 비율

수량을 히스토그램으로

  • 해석 시 더 의미가 있을 수 있음
  • 데이터셋이나 연구에서 전체비교하기는 어렵다.
  • 총합이 1이 될 필요가 없다.
  • 보통 질적 검토에 적합하다.

*질적 검토 : 숫자로 분석하기 보다는 데이터를 시각적, 서술적, 그리고 해석적인 방식으로 평가하는 과정*

비율을 히스토그램으로

  • 원시 데이터와의 관계를 이해하거나 연결하는데 추가적인 노력이 필요함
  • 다른 데이터셋이나 연구와 비교하기 좋다.
  • 합이 1이 되어야만 한다.
  • 보통 정량적 분석에 적합하다.

수량을 비율로 변환하는 방법

히스토그램의 bins 수량은 어느정도가 적당한가?

  • 빈의 숫자는 데이터의 질, 특성에 따라 다르다.
  • 이들을 측정하기 위한 방정식들이 존재함.

강의 링크 : https://www.udemy.com/course/statsml_x/

문제시 삭제합니다.

 

 

 

중앙의 라인 : 중앙값

파란색 바가 작다는 것은 그 분포가 더 밀집되어 있다는 것

 

우리는 바 플롯으로 무엇을 표시할수있는가?

  • 범주형(순서형, 명목형)
  • 수치형(오직 이산 데이터만)

수치형 데이터의 bar plot

  • 황제 팽귄은 얼마나 큰가?

히스토그램

bar plot

- 청년과 노인들은 어떤 매체로 뉴스를 듣는가?

Error bars

에러바가 보여주는것은 무엇인가?

- 표준편차

- 표준오차 또는 신뢰구간

Category Type Description Example
Numerical
(수치 데이터)
Interval(구간 데이터)? Numberic scale with meaningful intervals/0도는 얼음이 얼기 시작하는 지점일 뿐, 온도가 없음을 의미하지 않는다./0 -> 없음을 의미하지 않음/0!=null 섭씨
  Ratio(비율 데이터) interval, but also with meaningful zero/0의 의미가 있음/0$==$null 신장 크기의 cm
  Discrete(이산 데이터) No arbitrary precision(integers)/수치적인 의미를 가지나, 소수점의 형태로 표현하지 않는 데이터 인구
Categorical
(labels)/(범주형 데이터)
Ordinal(순서형) Sortable,discrete(정렬가능, 이산적)/계급이 존재 출신학교(고등학교, 대학교 등등), 롤 티어
  Norminal(명목형) None sortable,discrete(정렬불가, 이산적)/계급이 존재하지 않음 영화 장르

참여하게 된 계기

si 퇴직후 몇개월 동안 공부만 하며 취준하다 지쳐있을 때 쯤 여자친구가 lg aimers 교육을 추천했다.

파이썬, 머신러닝을 언젠간 공부해야지 공부해야지 하면서 망설이던 차에 java 공부도 지치고 개인 프로젝트도 마침 끝나서 신청하게되었다. 

 

결론적으로 온라인 해커톤 740팀 중 156위로 마무리됬다. 

교육은 다음과 같이 구성된다.

1. 온라인 교육(1달)

2. 온라인 해커톤(1달)

3. 오프라인 해커톤/상위 100명 대상 (1박2일)

 

1. 온라인 교육

머신러닝, 딥러닝 이론에 대해서 배우고, 추가적인 수학이나 제조 데이터 분석에 대한 것도 배운다.

인강처럼 코딩을 하거나 실제로 진행하면서 하는 강의들은 아니여서 강의에서는 어떻게 분석하고 전처리하는지는 알 수 없었지만

lg aimers 측에서 지난 기수들의 해커톤 코드들을 제공해줘서 따로 공부할 수는 있었다.

 

기본적으로 수학적 지식은 다 가지고 있다고 가정하고 교육을 진행하기때문에 수학을 알면 더 좋다. 그렇지만 모른다고 못할정도는 아니다.

2. 온라인 해커톤

2.1 과제

자동차 디스플레이의 불량 여부를 판단하는것이 목표였다.

등수는 public/private 부분으로 나뉜다.

하루 5번의 제출 제한이 있었고, 마지막으로 제출한 파일이 내 최종 점수가 되었다.

팀은 최대 5명까지 꾸릴 수 있었다.

2.2 어떻게 결과를 냈는가

데이터 전처리 후 catboost,lightgbm 모델을 soft voting 앙상블하는 방식을 사용했다.

 

2.3 아쉬운점

- 지금와서 생각해보면 파라미터 튜닝에 시간을 너무 쏟은것이 아쉽다. 한순간이지만 덕분에 public은 9등까지 도달했었는데 그로인해 파라미터 튜닝에만 집착하게 되었고, 이후 뒤늦게 private 점수를 챙기려 하니 점수가 많이 떨어졌다.

 

- 추가적인 전처리를 하면 할수록 등수가 내려가는것을 보고 진작에 포기한것

다시한다면 튜닝은 최대한 건드리지 않고 데이터 분석과 전처리방식에 많은 시간을 투자하고 어떻게 과적합을 더 줄일지 고민하겠다.

 

- public 점수가 가장 높았던 결과를 제출하는게 좋았을까? 하는 아쉬움

가장 public이 높은 결과물, 과적합이 가작 적을것으로 예상한 모델중 가장 public 점수가 높았던 결과물 사이에서 고민하다가 결국 후자를 택했는데, 100등이 떨어진다고해도 현재 등수보다는 높았다고 생각하게 되니 많이 아쉽다. 물론 너무 과적합되어 100등 이상으로 떨어졌을 확률도 크다.

 

2.4 무엇이 부족했나

- 어떤 지표로 모델을 설정해야하는지 몰랐다. 과적합이 뭔지는 알았지만, 현재 내 모델이 과적합인지 판단할 능력이 부족했다.

- 막바지에서는 k-fold f1평균 점수와 전체 훈련데이터를 이용한 f-1스코어 의 차이를 비교하여 과적합 여부를 추정했다.

개인적으로는 두 점수의 차이를 0.1이하로 맞추려 노력했다. ( 그럼에도 130등/156등 으로 큰 차이가 났다.)

 

무엇을 배웠나

과적합여부에 따라서 private 등수가 올라갈지 내려갈지가 결정된다.

과적합 여부를 알기위해 교차검증이 필요하다.

현재 수준에서 단순 전처리와 모델  선정만으로는 벽이 존재한다.  돌파구가 필요하다.

 

처음 시작할때 예상한 결과에 비하면 156등은 준수한 결과이지만 순간이지만 좋은 등수를 받아보니 아쉬움과 욕심이 생긴다.

데이콘과 Keggle 에서 두자릿수 등수를 목표로 공부하고싶다는 욕심이 생겼다.

+ Recent posts