Categories
즐거운 Data Science

Kaggle 대회의 뜨거운 감자, Data Leak 알아보기

안녕하세요, LA오남매아빠, LA오빠 입니다.

LA오빠는 즐거운 Data Science, 슬기로운 직장생활, 행복한 가정생활, 이 세 가지 주제에 대해서 영상을 올리고 있습니다.

오늘은 즐거운 Data Science 편으로 Kaggle 대회 뜨거운 감자, Data Leak에 대해서 살펴보도록 하겠습니다.

지난 번 Kaggle 대회 시작하기 1편에서 제가 1달 정도 남은 대회만 참석하는 이유 중 하나로 Data Leak을 피하기 위해서라고 말씀드렸는데요.

그런데 그것이 실제로 일어났습니다.

지난 번 소개해드린 Ashrae 대회는 빌딩의 전력 사용양을 예측하는 대회입니다. 이 대회에서는 외부 데이터를 사용하는 것이 허용되어있는데요. 이 대회의 테스트 데이터셋인 2018년 2019년 중 일부 데이터를 인터넷에서 검색이 가능하다는 것이 밝혀졌습니다.

그래서 디스커션 그랜드 마스터인 CPMP가 포럼에 “이 대회는 웹 크롤링 대회인가”라는 글을 올렸고, 운영진은 뒤늦게 외부에서 다운로드 가능한 데이터는 테스트 데이터에서 제외하겠다고 발표를 한 상황입니다.

이러한 Data Leak은 많은 참가자들을 김빠지게 만듭니다. 고생 고생해서 Feature Engineering과 Machine Learning Model Optimization을 해서 솔루션을 제출했는데, 갑자기 데이터 릭이 알려지면서 수백등 밖으로 한 번에 떨어지기 때문이지요. 실제로 Ashrae 대회에서도 모델링 없이 단순히 외부 데이터만 이용해서 리더보드에서 2위까지 오를 수 있었다고 합니다.

그리고 Data Leak이 밝혀진 이후의 대회는 많은 경우 누가 더 많은 Leak을 밝혀내느냐에 따라 랭킹이 결정되는 경우가 많기 때문에 Machine Learning 대회를 기대한 많은 참가자들은 이 시점에서 대회를 포기하고 맙니다.

또한 Data Leak은 대회 스폰서와 운영진에게도 치명적이지요. 스폰서가 대회를 후원하는 이유는 실무에 적용이 가능한 좋은 퀄러티의 ML 솔루션을 얻기 위해서인데, Data Leak이 있는 경우, 그러한 솔루션을 얻기 힘들게 돼죠. 

하지만 Data Leak이 전혀 쓸모 없기만 한 것은 아닙니다.

캐글 그랜드마스터 Giba, Mario, Abhishek과 KDD Cup 수상자들이 참여한 작년 KDD Cup 2018 Panel Discussion에서 패널들은 입을 모아 Data Leak을 발견하는 것 자체가 Data Scientist에게 굉장히 중요한 능력 중 하나라고 이야기 했습니다. 

KDD Cup 2018 Panel Discussion

현업에서 데이터를 수집하고 모델을 만드는 과정에서 의도치않게 Data Leak이 발생하는 일이 적지 않기 때문이지요. 이 경우 이런 Leak을 조기에 발견하고 수정하는 것이 현업에서 큰 도움이 됩니다.

또한 Data Leak을 가지고 대회에서 좋은 성적을 거두는 것도 ML 모델링과는 또 다른 재미를 선사합니다. 마치 형사가 되어 범죄현장에서 증거를 수집하듯이 여러 가지 가능성을 가지고 다른 각도에서 데이터를 살펴보아야하기 때문이지요.

이렇게 Machine Learning 대회의 뜨거운 감자인 Data Leak. 과연 어떤 Data Leak들이 있을까요?

Data Leak은 크게 다섯 종류가 있습니다.

첫 번째는 미래에서 온 Leak. 시계열데이터를 사용한 대회에서 자주 보이는 Leak입니다.

Training Data의 Feature가 미래의 정보를 담고있는 경우이죠. 

두 번째는 메타데이터에 Leak이 있는 경우입니다. Truly Native 대회에서는 웹 페이지가 스폰서드 페이지인지 아닌지를 예측하는 대회였는데, 각각의 웹사이트를 압축한 Zip파일이 언제 생성되었는지를 가지고 타겟변수를 정확하게 예측할 수 있었습니다.

세 번째는 ID에 Leak이 있는 경우입니다. Caterpilla Tube Pricing 대회에서는 ID가 랜덤 값이 아니고 타겟변수와 관련된 정보를 담고 있었습니다. 

네 번째는 데이터 순서가 Leak을 담고 있는 경우입니다. Telstra 대회같이 단순히 Test Data의 행번호가 타겟 변수와 관련이 있는 경우도 있었구요, 좀 더 복잡하게 TalkingData 대회같이 비슷한 위치에 있는 데이터의 타겟값이 같은 경우도 있었습니다.

마지막으로 이번 Ashrae대회에서와 같이 외부데이터가 Leak을 제공하는 경우가 있습니다. 최근 외부 데이터 사용이 허용된 대회의 경우, 외부에서 테스트 데이터의 타켓 값을 직접 찾을 수 있거나, 추가 Training 데이터를 얻을 수 있는 경우가 있었습니다.

이 경우, 규정상 외부 데이터를 사용하는 팀은 그 데이터를 데드라인 전에 공개를 해야하지만, 여전히 데드라인 직전에 공개를 하거나 공개를 하더라도 웹사이트 주소만 공개를 하고 최종적으로 추출한 데이터를 공개하지 않는 방식으로 다른 팀들이 해당 Leak을 사용하기 어렵게 만드는 경우가 있습니다.

정리하자면 Data Leak에는 미래에서 온 Leak, 메타데이터 Leak, ID Leak, 행순서 Leak, 그리고 외부데이터 Leak이 있습니다.

자, 어떻게 도움이 되셨나요?

대회에 참여하시는 분들은 릭이 있는 대회를 일찌감치 피하시거나, 계속 참여하신다면 릭 찾아내는 보물찾기의 또 다른 재미를 즐기시기 바랍니다. 

현업에 계시는 데이터사이언티스트 분들이나 머신러닝 대회 운영자 분들은 자신이 사용하는 데이터에 이러한 릭이 있는지 꼭 확인하셔서 원치 않는 결과를 얻는 불상사를 피하시길 바랍니다.

그럼 화이팅~!

Categories
즐거운 Data Science

Kaggle 대회 시작하기 #2

LA오남매아빠 #LA오빠 – #즐거운DataScience

오늘은 지난 시간에 이어 #Kaggle 대회 시작하기 #2 편입니다.

이번 편에서는 Github에 Repo를 셋업하고, Kaggle API로 데이터를 다운 받은 후, Jupyter Notebook 상에서 데이터를 살펴보았습니다.

다음 편에서는 기본 피처를 가지고 모델을 만들어 첫 번째 답안을 제출해보도록 하겠습니다.

여러분 모두 저와 함께 Kaggle 대회 참석하시면서 즐거운 Data Science 하시기 바랍니다.

도움이 되셨다면 구독과 좋아요 부탁드립니다.

감사합니다.

모두 즐거운 Data Science, Happy Kaggling 하세요~! 🙂

Categories
슬기로운 직장생활

내 인생을 바꾼 한 권의 책

안녕하세요, LA오남매아빠, LA오빠입니다. 

LA오빠는 즐거운 데이터사이언스, 슬기로운 직장생활, 행복한 가정생활. 이 세 가지 주제로 영상을 올리고 있습니다. 

오늘은 이 세 가지 주제에 모두 적용이 되는 교양과목으로, 내 인생을 바꾼 한 권의 책이라는 주제로 나눠보겠습니다. 

Categories
슬기로운 직장생활

호구로 성공하기

안녕하세요 LA오남매아빠, LA오빠 입니다.

LA오빠는 슬기로운 직장생활, 즐거운 Data Science, 행복한 가정생활, 이 세 가지 주제에 대해 영상을 올리고 있습니다.

오늘은 슬기로운 직장생활 편으로 “호구로 성공하기”에 대해 나눠보도록 하겠습니다.

며칠 전, 이영표 전 국가대표 축구선수의 인터뷰를 읽었습니다. 이영표님은 선수 생활 때에도 팀을 위해 헌신하기로 유명했고, 일상 생활에서도 자선단체, 사회적 기업에 적극 참여하는 등 선행과 성실의 대명사로 알려져있습니다. 

그런데 김지수기자가 뽑은 기사 제목은 “축구도 삶도 나는 이기적으로 헌신을 선택했다.”였습니다. 남을 위해 헌신하면 호구로 여겨지기 쉬운 요즘 같은 때에, 그것도 경쟁이 가장 심한 스포츠 분야에서, 자신의 성공을 위해 이기적으로 내린 결론이 헌신이었다니… 과연 무슨 말일까요? 

오늘은 Adam Grant의 저서 Give and Take에서 그 답을 찾아보고 어떻게 하면 우리도 직장생활에서 남을 위한 헌신으로 성공할 수 있을지에 대해 살펴보겠습니다.

Categories
즐거운 Data Science

코딩효율 2x 늘리기 팁 1탄 – Debugging

안녕하세요, LA오남매아빠, LA오빠입니다.

LA오빠는 즐거운 Data Science, 슬기로운 직장생활, 행복한 가정생활, 이 세 가지 주제에 대해 영상을 올리고 있는데요.

오늘은 즐거운 Data Science 편으로 여러분의 코딩 효율을 2배! 늘려주는 꿀팁을 알려드리겠습니다.

Categories
슬기로운 직장생활

성공적인 직장생활을 위한 팁 – Collaboration

안녕하세요, LA오남매아빠, LA오빠입니다.

LA오빠는 즐거운 Data Science, 슬기로운 직장생활, 행복한 가정생활, 이 세 가지 주제에 대해 영상을 올리고 있는데요.

오늘은 슬기로운 직장생활 편으로 직장생활을 성공적으로 하기 위해 가장 기본이 되는 이것!에 대해서 나눠보겠습니다.

성공적인 직장생활에서 가장 기본이 되는 이것, 다시 말하면 직장생활의 A/B/C는 바로

A, Always, B, Be , C, Collaborating, Always Be Collaborating. 바로 Collaboration입니다.

Categories
Uncategorized

무엇이든 써보자

어제 저녁 초대 받아 정훈이네 갔다가 김중혁의 “무엇이든 쓰게된다”를 보게 되었다.

쉽게 읽히는 글과 무심하게 그린 듯한 그림체가 딱 내 스타일인데다가 늘 해보고 싶은 창작이라는 주제의 책이라 단숨에 읽었다.

마지막 장을 덮은 후 처음 든 생각은

New iPad 9.7″과 Apple Pencil을 사야겠다! 🤩

하지만 가격 조사 후 이내 제 정신을 차렸다.

아직 신에게는 공책과 볼펜이 있사옵니다… 😭

스스로에게 이렇게 다짐했다.

자, 글 한 편에 오백원, 아니 오불씩, 백 편을 쓰면 New iPad와 Apple Pencil을 하사하겠노라.

자, 오늘 오불입니다. 💰

Categories
Uncategorized

Q4 2017 Review

Better late than never. Here is the review on my personal goals in Q4 2017.

Yearly Goals

  • Running 200 miles (61%) – I added 16 more miles in Q4, and ran 121 miles total in 2017.
  • Reading 24 books (125%) ✅ – I read 7 books in Q4, and 27 books in 2017.
    • The God Delusion by Richard Dawkins –  Perspectives from an atheist. It’s hard to believe that this book is written by a prominent academic.
    • The Dangers of a Shallow Faith by A. W. Tozer
    • Hillbilly Elergy by J. D. Vance – A frank personal memoir that gives an insight into the culture and life of working class white Americans.
    • Shoe Dog by Phil Knight – A candid story about Nike narrated by the founder and chairman, Phil Knight.
    • Brain Storms by Jon Palfreman – About the journey to find cure for Parkinson’s Disease from an award-winning journalist with first hand experience of the disease.
    • The Millionaire Fastlane by M. J. DeMarco – Garbage.
    • 지렁이의 기도 by 김요한 – 새물결플러스의 대표 김요한 목사의 기도에 대한 간증을 담은 책. 새물결플러스에서 출판된 양서들과 김요한 목사의 글들과는 전혀 다르게 대중적이고 체험 위주의 책이다. 지성과 말씀이 기반이 된 영성과 성령이 주는 진실함과 깊이가 남달랐다. 새해에는 기도에 힘써야겠다.
    • 과학시대의 도전과 기독교의 응답 by 우종학 – 무크따 (무신론 기자, 크리스천 과학자에게 따지다)의 저자, 우종학 교수의 새 책. 과학시대를 사는 무신론자와 기독교인에게 기독교 신앙이 가지는 의미는 무엇인가. 과학의 발전이 기독교 신앙에 미치는 영향은 무엇인가. Francis Collins의 The Language of God 이 생물학자의 견해가 반영된 책이라면, 이 책은 천문학자의 견해가 반영된 책이다. 강추.
  • Winning 1 competition ✅ – In Q4, I worked mainly on 4 competitions as follows:
    • KKTV Data Game 17.11 (4/40) – I teamed up with Herman, a colleague at Microsoft Taiwan, and won 4th prize. It was a small competition only with 40 teams, and still I couldn’t finish top 3. What a humbling experience.
    • WSDM Cup 2018 Track 2 – KKBox’s Churn Prediction Challenge (7/575) – I teamed up with Vietnamese Kagglers (Tam, Henry, Laam), Hang, and Song. My team finished 10th out of 575 teams. #2, #4, and #5 teams on the private leaderboard were disqualified for the prize, so our team’s real rank would have been at least 7th. The team, who finished 6th on the private leaderboard and won the 3rd prize, consisted of undergraduate students from Peking University. Very impressive! Anyway, Hang presented our solution at WSDM Cup 2018 Workshop in Marina Del Ray.
    •  Caesars Customer Gaming Valuation Prediction (13/108) – For this master only competition, I teamed up with Hang and Song. We finished 13th out of 108 teams. It’s always fun to watch and participate in “Star” wars. A grandmaster, Michael’s team took the 1st place on the public leaderboard for a long time till the end, but ended up missing the prize last minute by finishing 4th on the private leaderboard. The Kaggle version of Avangers with 5 grandmasters that finished 7th on the public leaderboard slid to 58th on the private leaderboard. Such a dramatic turnout. 🙂
    • Zillow Prize 1st Round (88/3,779) – I entered the competition too late to team up with others, and spent just enough time to qualify for the 2nd round, where top 100 teams from the 1st round can compete for $1.15MM prize. 😅
  • Writing a book on Kaggle ❌ – No progress. I need more motivation and planning for this…
  • Reading the Bible ✅

Weekly Goals

  • Reading 1 paper ❌- No progress
  • Writing 1 blog post – 17% completion in Q4 with 2 articles
  • Writing 5 pages of the Kaggle book ❌- No progress

Daily Goals

  • 20 pull-ups (68%) – The average of 13.6 / day
  • 100 push-ups (24%) – The average of 24.3 / day
  • 2 prayers ❌- 1% success
  • QT – 33% success
  • Writing 1 article of any kinds ❌- No progress

In December, I was down with flu for 2 weeks, and couldn’t achieve many goals as I planned. The lesson is that to meet the goals, I need to work extra harder while I’m not sick. “Never walk when you can run”.

Now it’s a new beginning in 2018. Looking forward to a more fruitful year!

Categories
Family Korean Work

Lean In

2018년의 두 번 째 책으로 Sheryl Sandberg의 “Lean In”을 마쳤다.

책이 출간되어 한창 이슈일 때는 “여성을 위한 책”이라는 생각에 지나쳤는데, 얼마 전 아내가 육아를 위해 직장을 그만 둔 것을 계기로 찾아 읽게 되었다.

페이스북의 COO인 저자는 여성이 직장과 가정에서 겪는 차별, 편견, 그리고 자책에 대한 경험담과 연구 사례들을 나눈다. 그리고 여성이 직장의 반을 담당하고 남성이 가정의 반을 담당할 수 있는 사회를 위한 실질적인 조언을 한다.

Sheryl은 구글 재직 중 첫 임신 후, 남편 Dave에게 만차인 주차장에서 멀리 차를 데고 사무실까지 걷는게 힘들다고 하소연했다. 그러자 Dave는 자신의 직장 야후에는 임산부를 위한 주차 공간이 있다고 알려주었다. 다음 날 Sheryl이 구글 공동 창업자 Sergey를 찾아가 임산부 주차 공간이 필요하다고 전했고, Sergey는 바로 알았다고 하며 이 문제에 대해 그 때까지 “한 번도 생각해 본 적이 없었다”고 했다.

Sheryl은 이 일화를 통해 자신이 직접 겪기 전까지 자신도 임산부 주차 공간에 대해 생각해 본 적이 없었다는 점이 부끄러웠고, 왜 다른 임산부들은 의견을 개진하지 않았는지 의문을 가지기 시작했다고 한다.

나 역시 아내가 직장과 가정 사이에서 겪는 문제와 고민에 대해 무지했다.

첫째 아이가 생겼을 때 나는 미국에서 첫 직장을 잡았었고, 아내는 이미 6년 경력의 세무 회계사로 딜로이트에서 잘 자리 잡고 있었다. 하지만 아내는 출산 후에 출산 휴가를 쓰고 곧 이어 집 근처 3분 거리에 있는 작은 회사 회계 담당으로 직장을 옮겼다. 그나마도 1년 남짓 후에 그만두고 전업 주부가 되었다. 이후 삼둥이가 태어나고 질풍노도의 육아 전투를 거친 후, 집 근처 혼다에 취직을 하였다가 1년 후 다시 그만두었다.

아내가 이렇게 경력보다 가정을 우선시 하는 결정을 내릴 때마다 나는 아내가 고맙고 아내의 재능이 아깝다고 생각했지만, 한 번도 “왜 내가 아니고 아내가 이런 결정을 내리는가”에 대해 진지하게 고민해보지 않았다.

작년에 마이크로소프트로 옮기고 재택근무를 하면서 처음으로 “내가 가정 일을 더 챙기고 아내가 직장 일을 제대로 할 수 있게 도와주자”고 마음을 먹었다. 하지만 막상 시작해보니 도저히 감당이 안 되어서 불과 몇 달 만에 두 손 들고 말았다. 직장 일을 보통 희생하지 않고는 가정 일을 다 챙길 수가 없었고 나는 그런 희생을 할 준비도 용기도 없었다. 그리고 그 힘든 결정을 다시 한 번 아내가 내리게 되었다.

(“태양의 후예” 중: 그 어려운 걸 자꾸 해냅니다. 내가.)

“Lean In”을 읽으며 참 안타깝고 부끄럽고 미안했다.

지금부터라도 다시 마음을 잡고 시작해야겠다. 내가 가정의 반을 감당하고 아내가 직장의 반을 감당할 수 있는 날이 올 수 있도록, 둘 다 가정과 직장에서 우리의 가능성을 최대한 실현할 수 있도록 아내를 돕고 지원해야겠다.

Categories
Uncategorized

Workout Routine in 2018

In 2018, I will do weight training for the first time in my life. I’m reading Michael Matthews’ Bigger Leaner Stronger and will follow his advice on diet and weight training.

In short, it will be:

  • High protein, slow carb, and low fat diet rather than no carb diet
  • Compound exercises rather than isolation exercises
  • HIIT (high intensity interval training) rather than regular cardio

Since I won’t have time to hit the gym mostly, I will start with bodyweight exercises as follows:

(https://www.muscleforlife.com/the-ultimate-bodyweight-workout-routine/)

I will report how it goes later.

Happy & healthy new year, everyone! 💪