조회수 높은 글
-
Machine Learning
[ML] XGBoost 이해하고 사용하자
순서 개념 기본 구조 파라미터 GridSearchCV 1. 개념 'XGBoost (Extreme Gradient Boosting)' 는 앙상블의 부스팅 기법의 한 종류입니다. 이전 모델의 오류를 순차적으로 보완해나가는 방식으로 모델을 형성하는데, 더 자세히 알아보자면, 이전 모델에서의 실제값과 예측값의 오차(loss)를 훈련데이터 투입하고 gradient를 이용하여 오류를 보완하는 방식을 사용합니다. 수식으로 설명하자면, 1번 모델 : Y = w1 * H(x) + error1 1번 모델 오차(loss)의 보완 : error1 = w2 * G(x) + error2 2번 모델 : Y = w1 * H(x) + w2 * G(x) + error2 2번 모델 오차의 보완 : error2 = w3 * M(x) + e..
-
Machine Learning
[ML] 앙상블(Ensemble)이 뭐야?
머신러닝을 공부하다보면 '앙상블' 이라는 단어가 종종 나옵니다. 처음 앙상블을 접한 곳은 캐글이었는데, 무슨 뜻인지 짐작할 수도 없어서 거부감이 들었습니다. 개념도 복잡하고 어려울 것 같아서 최대한 그 단어를 피해다니다가 '파이썬 라이브러리를 활용한 머신러닝' 도서를 정독하면서 개념을 정리할 수 있었습니다. 그리고 이해한 내용을 이렇게 글로 정리하면서 한번 더 공부하고자 합니다! 그럼 앙상블이 뭔지 한번 볼까요? 순서 앙상블이란? 앙상블의 종류 1. 앙상블이란? 앙상블을 검색해보면 물리학, 통계학, 뮤지컬, 연주 등 다양한 영역의 연관검색을 확인할 수 있습니다. 아하! 앙상블이라는 단어가 코딩의 전문용어가 아니였습니다. '앙상블(Ensemble)'은 프랑스어로써 '전체적인 어울림이나 통일' 이라고 위키백..
-
Data Preprocessing
언더 샘플링(Undersampling)과 오버 샘플링(Oversampling)
* 해당 포스팅은 파이썬 머신러닝 완벽 가이드(권철민, 2019) 교재를 참고하여 공부하며 작성한 글입니다. 순서 언더 샘플링과 오버 샘플링의 개념 SMOTE 개념 SMOTE 코드 1. 언더 샘플링과 오버 샘플링의 개념 데이터가 불균형한 분포를 가지는 경우, 모델의 학습이 제대로 이루어지지 않을 확률이 높습니다. 이 문제를 해결하기 위해 나온 개념이 언더 섬플링(Undersampling)과 오버 샘플링(Oversampling)입니다. 언더 샘플링은 불균형한 데이터 셋에서 높은 비율을 차지하던 클래스의 데이터 수를 줄임으로써 데이터 불균형을 해소하는 아이디어 입니다. 하지만 이 방법은 학습에 사용되는 전체 데이터 수를 급격하게 감소시켜 오히려 성능이 떨어질 수 있습니다. 오버 샘플링은 낮은 비율 클래스의 ..
-
Machine Learning
[ML] 스태킹(Stacking) 완벽 정리
이 포스팅만 읽으면 스태킹을 쉽게 이해할 수 있도록 정리해봤습니다 :) 천천히 읽어볼까요? 순서 스태킹의 핵심 개념 스태킹의 원리 목표 기본모델 최종모델 코드 1. 스태킹의 핵심 개념 스태킹은 여러 가지 모델들의 예측값을 최종 모델의 학습 데이터로 사용하는 예측하는 방법 입니다. 아직 잘 와닿지가 않나요? 간단한 예시를 아래 그림과 함께 들어보겠습니다. 저는 knn, logistic regression, randomforest, xgboost 모델을 이용해서 4종류의 예측값을 구했습니다. 그리고 이 예측값을 하나의 데이터 프레임으로 만들어 최종모델인 lightgbm의 학습데이터로 사용했습니다. 지금은 기본 모델로부터 예측된 값들이 최종모델의 학습데이터로 사용된다는 것만 이해하면 됩니다. 자세한 내용은 다..
-
Data Preprocessing
IQR 방식을 이용한 이상치 데이터(Outlier) 제거
* 해당 포스팅은 파이썬 머신러닝 완벽 가이드(권철민, 2019) 교재를 참고하여 공부하며 작성한 글입니다. 이상치 데이터(Outlier)는 모델의 성능을 떨어뜨리는 불필요한 요소이기 때문에 꼭 제거해주어야 합니다. 그렇다면 어떻게 이상치 데이터를 찾을 수 있을까요? 1차적으로 EDA 과정에서 그래프를 통해 발견할 수 있습니다. 하지만 이 방법은 소수의 데이터가 평균으로부터 눈에 띄게 떨어진 경우에만 가능하다는 한계가 있습니다. 따라서 "어디까지가 이상치 데이터다" 라고 판단하는 기준이 필요하게 되는데요, 여러가지 방법들 중 오늘은 IQR(Inter Quantile Range) 방식에 대해서 정리해보겠습니다. IQR 방식은 사분위(Quantile) 개념으로부터 출발합니다. 전체 데이터들을 오름차순으로 정..
-
Machine Learning
[ML] LightGBM 이해하고 사용하자
순서 개념 기본 구조 파라미터 1. 개념 * 이 글을 읽기 전에 앙상블 포스팅과 XGBoost 포스팅을 읽고 오시는 것을 추천드립니다. XGBoost와 LightGBM은 결정트리(Decision Tree) 알고리즘 기반의 대표적 부스팅 앙상블 기법입니다. 간단하게 설명드리자면 트리의 오차(loss)를 점점 수정해나가는 방법으로 성능을 향상시키는 아이디어 인데요, 최근 캐글과 데이콘의 상위권 커널들에서 주로 사용되어 유명세를 타고 있습니다!! 그렇다면 지난번에 공부한 XGBoost와 LightGBM은 어떤 차이가 있을까요? 우선 LightGBM은 XGBoost의 시간적 한계를 보완한 알고리즘이라고 기억하시면 될 것 같습니다. 어떻게 시간적 한계를 보완했을까요? 바로 노드의 분할 방법에 차이를 두었습니다. ..
-
한이음 ICT 멘토링 (KT 연계)
한이음 공모전 입선, 한국정보처리학회 추계학술대회 은상 수상 후기
2020년 7월부터 12월까지 약 6개월간의 장기 프로젝트를 마쳤습니다~~ 해당 프로젝트는 타 대학교 4명의 학생들과 KT 직원 한 분까지 총 6명으로 구성하여 진행되었고, 주제는 '머신러닝/ 딥러닝을 이용한 통신서비스 이용고객 분석 및 이탈예측' 이었습니다. 프로젝트의 타임라인은 아래와 같이 크게 4부분으로 나뉠 수 있는데요, 한 번 살펴봅시다. 1. 캐글의 통신사 고객 데이터를 이용하여 이탈 예측 모델링 연습 2. 실제 KT 고객 데이터를 이용하여 데이터 전처리 및 모델링 3. 태블로(Tableau)를 이용한 대쉬보드 시각화 4. 장고(Django)를 이용한 웹 구현 그리고 대망의 결과는.. 한이음 공모전 입선!!! 한국정보처리학회 추계학술대회 은상!!! 그럼 그 수상작을 가볍게 보여드리겠습니다 ㅎㅎ..
-
Data Visualizing
matplotlib 완벽 정리
데이터 분야 공부를 시작할때 가장 먼저 만나는 세 가지 라이브러리를 꼽자면 numpy, pandas, matplotlib 입니다. 오늘은 그 중 matplotlib 에 대해서 정리해볼텐데요, 개인적으로 처음 이 라이브러리를 접했을때 정말 헷갈렸습니다. 어떤 커널에서는 plt.plot으로 표현하고, 또 다른 커널에서는 ax.plot 혹은 axes[0,0].plot으로 표현되어있기 때문입니다. 그리고 가령 히스토그램을 그린다면 누구는 plt.hist로 구현했는데, 또 다른 누구는 plt.plot(kind='hist)로 구현했기 때문에 일목요연하게 정리되지 않았습니다. 그래서 오늘 포스팅을 기획하게 되었는데요, 해당 포스팅의 목적은 두 가지 입니다. 첫 번째, 왜 이렇게 표현방식이 다양하고, 어떻게 정리할 수..
-
Machine Learning
[ML] Linear Regression
Linear regression : 데이터를 가장 잘 대변하는 직선을 구하는 것 Q : '데이터를 잘 대변한다' 는게 뭔데? A : 예측값과 실제값의 차이가 크지 않은 것!! Q : 그런 직선을 어떻게 구하는데? A : 일단 지금 말한 것들을 식으로 만들어보자!! 파란 점선 : Hypothesis (H(x)) = w*x + b 빨간 직선 : Cost (loss, error) = H(x) - y = 예측값 - 실제값 Q : 데이터를 잘 대변하는 직선을 만들기 위해서는 cost가 가장 작아야 하는구나!! 그럼 cost가 가장 작은 직선을 어떻게 찾아? A : 고등학교때 2차함수의 최솟값을 구할때 f(x)를 미분하고 어쩌구 했던거 기억나? 마찬가지로 f(x)를 정의하고 그걸 미분한걸로 cost가 가장 작은 직..
-
Kaggle
[Kaggle] 통신사 고객 이탈 예측 - 코드 및 결과 분석
2. 코드 분석 및 결과 분석 2-1. 코드분석 전체 코드는 아래 깃허브를 참고해 주세요. https://github.com/sanghwi-git/predict_churn/blob/master/Final%20handling.ipynb sanghwi-git/predict_churn Contribute to sanghwi-git/predict_churn development by creating an account on GitHub. github.com 과정 데이터 전처리 데이터 로드 결측치 처리 타입 변경하기 이탈 =1/ 이탈하지 않음=0 : 이탈율 확인을 위함 탐색적 자료 분석(EDA) 특성별 빈도수 파악 특성별 이탈율 파악 카테고리형 연속형 상관관계 행렬 EDA 결과 분석 특성 공학(Feature En..
-
Career
2021년 제일기획 데이터기획직 대학생 인턴 후기
소중했던 6주 간의 제일기획 인턴 생활을 마치고 이제 후기를 써보려고 합니다! 이 글이 먼 훗날 저 스스로에게도, 그리고 취업 준비를 하는 사람들에게도 도움이 되었으면 좋겠네요 :) 글은 인턴 생활 중에 인상 깊었던 에피소드 형식으로 작성해보려 합니다. 그럼 바로 시작해볼게요! - Ep1. 전국에서 한 명 뽑았다. 그게 바로 나? - Ep2. 내 인생 첫 사회생활, 풀정장으로 시선 집중 - Ep3. 유튜브에서 뵙던 분이 눈 앞에! - Ep4. 서프라이즈 생일파티 - Ep5. 면접을 그렇게 잘봤다고 하던데~ - Ep6. 직접 느껴본 제일기획 장점 - Ep7. 과제 준비 과정과 최종 발표, 그리고 느낀 점 Ep1. 전국에서 한 명 뽑았다. 그게 바로 나? 인턴 선발 최종 발표가 나고 며칠 후, 제일기획 인턴..
-
Career
2021년 제일기획 데이터기획직 대학생 인턴 최종 합격 후기
채용 프로세스 : 서류 > GSAT > 면접 * 면접 구성 및 질의 내용은 대외비이기 때문에 자세하게 말씀드릴 수 없습니다. 따라서 준비 과정과 그 과정에서 느낀 점들을 중심으로 후기를 작성해보겠습니다 :) 0. 지원 자격 오픽 미리 준비하세요! IH 이상을 따두시면 대부분의 직무에 지원하실 수 있습니다. 1. 서류 자기소개서의 핵심은 읽고 싶은 자기소개서가 되어야 한다는 점입니다. 첫 번째 줄을 읽으면 두 번째 줄이 궁금한 글이 되어야 해요! 블로그에 글을 작성하는 것도 같은 맥락입니다. 서두에서 자기소개서의 핵심을 한 마디로 정의하고, 이후에 뒷받침하는 근거들을 나열해야 읽고 싶은 글이 됩니다. 1-1. 전체적인 순서 1. 합격 자기소개서들을 읽으며 회사의 인재상과 전체적인 글의 구조를 파악 2. 각..
-
Statistics
클러스터링 모델(K-means, Mixture of Gaussian) 평가 지표
K-means 모델 평가 지표 Inertia Sihouette score Mixture of Gaussian 모델 평가 지표 Information Criterion (AIC, BIC) 1. K-means 모델 평가 지표 1-1. Inertia Inertia는 각 인스턴스와 해당 인스턴스와 가장 가까운 클러스터 중심까지의 거리 제곱 평균 값입니다. 따라서, 잘 된 클러스터링이라면 inertia가 작아야 하겠죠! 당연하게도 클러스터 수가 늘어날수록 Inertia 값은 감소할수밖에 없고, 이 개념을 이용하여 최적의 클러스터 수를 예상할 수 있습니다. 좀 더 이해를 해보자면, 저기 Elbow 포인트를 최적의 클러스터 수로 잡은 이유는 더이상 Inertia가 눈에 띄게 작아지지 않기 때문입니다. 즉 클러스터를 더..
-
개인적인 프로젝트
갤럭시 S21 광고에 대한 소비자 반응 분석 (유튜브, 네이버 지식인)
광고를 기획하는 것만큼 중요한 것이 광고 효과를 분석하는 것이라고 생각합니다. 최근 갤럭시 S21 광고가 소비자들에게 어떻게 다가왔는지, 유튜브 댓글과 네이버 지식인 글을 크롤링하여 워드 클라우드를 생성함으로써 분석해보겠습니다. 전체적인 순서는 다음과 같습니다. 1. 크롤링 1-1. 유튜브 크롤링 1-2. 네이버 지식인 크롤링 2. 형태소 분석, 명사 추출, 불용어 제거 2-1. 유튜브 2-2. 네이버 지식인 3. 워드 클라우드 생성 4. 결과 분석 5. 참고 자료 1. 크롤링 1-1. 유튜브 댓글 크롤링 크롤링과 관련한 포스팅은 이전에 다루었기 때문에 새롭게 추가되는 개념만 말씀드리면, 스크롤 다운 명령을 필요로 한다는 점입니다. 유튜브 댓글의 html 특성상 스크롤을 아래로 내려야 댓글들이 보이기 때..
-
Career
너 대학 다닐 때 뭐 했냐?
인생에는 몇 가지 큰 갈림길이 있다. 지금까지는 대학 입시 혹은 취업 정도로 생각된다. 갈림길에 섰을때, 이 글이 나에게 도움이 되길 바란다. 2015 - 대학교 입학, 산업공학 전공 - 학과 소모임 '컨포인트' (기술경영&컨설팅 학술 동아리) 기업 성공 사례 분석 및 주 1회 케이스 스터디 - 교내 농구 동아리 'SMASH' 2016 ~ 2017 - 군대 2018 - 학과 소모임 '컨포인트' (기술경영&컨설팅 학술 동아리) 프리미엄 과일 판매 기업('위버켓') 실제 컨설팅 고객 세분화를 통해 고객 맞춤형 과일컵 전략 제안/ "비타민 B가 부족한 수험생을 위한 과일컵", "철분이 부족한 임산부를 위한 과일컵" 과 같은 형태 - 인액터스 (사회적 기업형 창업 동아리) 주제 : 자활근로자와 함께하는 못난이 ..