본문 바로가기

데이터 사이언스34

순수학문 전공자가 데이터 사이언티스트로 전향 하는 이유 순수학문에 대한 열정은 생활고로 이어지기 쉬움 나는 한 때 순수학문인 동물행동학을 연구했었다. 누군가가 농담으로 말하길, 순수학문과 응용학문이 무엇인지 혼란스러울 때에는 이렇게 질문하면 바로 구분하기 쉽다고 한다. 그 질문은 이 학문을 전공해서 먹고살 수 있지 여부이다. 이 이야기를 듣고 내 머리는 망치로 한 대 얻어맞은 것처럼 멍했다. 그게 바로 내가 하던 걱정이었기 때문이다. 야생동물의 행동과 생태에 대해 연구하는 것이 과연 인간의 삶을 윤택하게 하는 것에 대해 어떠한 이점이 있을까에 대해 생각해 보면 와닿는 것이 없다. 그저 내 목표는 순수학문 분야에서의 교수가 되어 죽을 때까지 연구를 하고 후학을 양성하는 삶을 사는 것이었다. 하지만 현실은 그렇게 쉽지 않았다. 내가 교수가 되기 위해서는 박사를 .. 2023. 9. 17.
SK 디스커버리 데이터사이언티스트 포지션 면접 후기 서류접수부터 인성면접까지의 여정 5월 말에 어떤 헤드헌터로부터 SK 디스커버리 데이터사이언티스트 포지션에 지원해볼 것을 제안 받았다. JD를 보니 내가 이제껏 했던 업무와 잘 맞고 내 전공의 일부가 업무 영역의 일부와 일치해서 지원을 결정하게 되었다. 그 때부터 이력서, 자기소개서, 포트폴리오 작성 시작해서 인성검사 (심층역량) 통과하고 1차 면접을 7월 초에 본 후, 탈락 최종 통보를 받기 까지 약 1달이 넘는 오랜 시간이 걸렸다. (이력서, 자기소개서, 포트폴리오는 서류 접수 단계에서 냈는데 나중에 알고보니 헤드헌터가 잘못 알고 포트폴리오도 내야 한다고 했다고 한다;; 그래도 포트폴리오 brush-up 한 건 나중에 또 사용 가능하니 괜찮다.) 기간도 기간이지만 이렇게 준비하는 것이 빡센 면접은 이번.. 2023. 7. 11.
임상 통계에서 샘플 수 산출 하는 법 샘플 수 산출의 목적 통계적 가설을 검증하기 위해 실험을 하게 되면 반드시 필요한 것이 샘플이다. 샘플은 기본적으로 많을 수록 두 집단간의 유의성을 증명하기에 좋으며 샘플 수가 적으면 통계적 결과에 대한 신뢰도가 떨어지게 된다. 하지만 샘플 수가 너무 많으면 현실적으로 샘플을 구하기 어려울 뿐 만 아니라 높은 비용, 시간 투자 등의 면에서 실험의 효율성이 떨어지게 된다. 따라서 두 집단간의 유의성이 있다면 그것을 증명할 만큼의 최소한의 샘플이 몇개인지를 구하는 것이 중요하다. 샘플 수 산출을 위해 알아야 할 기초 개념 - 가설 검증 가설에는 크게 귀무가설, 대립가설이 있다. 귀무 가설은 두 집단 (예를 들어 대조군과 신약 후보물질)간의 효과성에 차이가 없다는 가설이고, 대립가설은 귀무가설을 기각할 정도로.. 2022. 12. 27.
PowerBI 에서 한국지도명 인식이 잘 되지 않을 때 해결 방법 마이크로소프트에서 제공하는 PowerBI를 이용하여 한국 지도를 불러왔더니 서울, 인천 등의 지역명은 지도상에서 잘 인식이 되는 반면, 충청남도 등의 지역은 "남도" 라는 남해의 어느 작은 섬에 라벨이 붙어있었다. PowerBI는 Bing 지도에서 정보를 가져온다는 점에 착안하여 Bing에서는 우리나라 지역명이 어떻게 저장되어 있는지 살펴보았는데 영어명이 내가 생각했던 상식적인 영어명칭과 많이 달라서 의외였다. ~~ 남도, 북도 등으로 끝나는 지명의 경우, 지명 자체가 고유의 영어명이 되는 것이 아니라 South, North 로 표기 된다. (전라남/북도는 South/North Jeolla 등). 하지만 이를 Bing에 나온 그대로의 영어명으로 적용하고 나니, 지역 인식이 지도상에서 문제 없이 잘 된 것.. 2022. 9. 16.
for loop과 fig, ax 사용하여 그림 그리기 import pandas as pd import matplotlib.pyplot as plt df={'channel': ['a', 'a', 'a', 'a','b','b','b','b'], 'x': [1, 2, 3, 4,5,6,7,8], 'y1':[10,20,30,40,50,60,70,80], 'y2':[20,40,60,80, 100, 120, 140, 160], 'y3':[30,60,90,120, 160, 180, 190, 200] } df=pd.DataFrame(df) channel_list = df.channel.unique() nrow=len(df.channel.unique()) ncol=2 fig, ax = plt.subplots(nrow,ncol,figsize=(10,15)) for a,chan.. 2022. 7. 23.
머신러닝 Feature engineering 이 중요한 이유 Feature engineering을 해야 하는 이유 Salary prediction portfolio를 작성하면서 다양한 feature engineering과 hyperparameter tuning을 시도해 보면서 느끼는 점은, 물론 hyperparameter tuning도 중요하지만 feature engineering 만큼 강력하게 예측 정확도에 영향을 주는 것은 없다는 것이다. 특히, feature engineering을 적절하게 하지 못하면 아무리 hyperparameter tuning을 정성 들여하거나 다른 범위로 시도를 해 봐도 예측 정확도가 현저히 떨어지는 사태가 발생한다. 그리고 random forest 나 XGBoost 등의 머신러닝 모델에서의 hyperparamter 중 number o.. 2022. 5. 20.
Hyperparameter 를 manual하게 tuning하는 것이 어려운 이유 Hyperparameter tuning 이 실패한 경우 number of estimator 를 200부터 1000까지의 범위로 설정하고, maximum feature의 개수 (하나의 tree model에서 사용될 최대의 feature 수)는 전체 feature의 개수의 square root 가 되도록, 설정했다. 그리고 maximum depth는 2부터 100까지 일정 간격으로 띄워서 자동으로 10개의 숫자가 나오도록 했다. minimum sample split은 무작위로 2, 5, 10 중의 하나가 되도록 하고, min samples leaf 는 1,2,4 중 하나의 숫자를 할당했다. 그리고 boot strap 여부도 무작위로 할것인지, 아니면 하지 않을 것인지를 정하도록 했다. 그리고 5-fold c.. 2022. 5. 17.
머신러닝 모델 적합을 할 때 cross-validation 을 적용한 사례 training dataset을 나누어 validation dataset 만들기 2022년 5월 14일에 포스팅한 월급 예측 포트폴리오 작성 글에서는 포트폴리오를 작성하게 된 배경 및 전처리, 시각화 결과에 대해 설명했다. 이 포스팅은 그에 이어서 분석했는지를 다루고 있다. 내가 다운로드한 데이터에는 feature에 대한 training, test dataset, target에 대한 training data test은 있지만 target에 대한 test dataset은 존재하지 않는다. 즉, 하려고 하는 분석이 비지도 학습이 아닌 지도 학습임에도 불구하고 정답을 예측하더라도 그것이 얼마나 실제로 맞는지 알 수 없다는 것이다. 이런 경우에는 training dataset을 나누어 validation 할 수.. 2022. 5. 15.
반응형