Latest

Data

[데이터조직]데이터과학자에게도 엔지니어링은 필요하다.

서론 최근에 데이터과학자와 백앤드엔지니어까지 포함해서 데이터프로덕트 팀을 구성해서 일을 해보니 드는 생각이다. 데이터과학자 중에서 최근에 일하기 시작한 분들은 컴퓨터공학도 전공인 분도 있지만 그렇지 않은 분들도 꽤 많다. 그래서인지 종종 엔지니어링 측면을 잘 모르는 분들이 있는데, 개인적으로 전공이 컴퓨터공학이어서 그럴 수도 있지만, 엔지니어링은 데이터과학자에게 점차 중요해질 것이라고 생각한다. 데이터가 더 중요하다.

Deep Learning

Custom Loss Function in Keras

Summary * Business Impact에 기반해서 Loss Function을 수정해야할 필요가 있다. * 예를 들어 비대칭 구조(예: 지수분포)에서는 Loss값에 Weight를 줘야하는 상황이 그렇다. * Keras에서는 Model에 필요한 제반 환경을 Complie이라는 단계에서 설정하는데 이 때 Loss Function을 Keras 라이브러리에서 불러올 수도 있지만 앞서 언급한 바와 같이 Custom Loss Function을 설정할 수 있다. Example * 여기서

Book

[책]원칙과 철학이 있을 때 흔들리지 않는 것은 개발자도 매한가지, 개발자 원칙

어쩌다보니 이 책을 읽게 되었다. 이제는 개발자인가? 라는 생각이 들 정도로 코딩을 할 일이 거의 없어졌지만, 개발이 주는 놀라운 매력이 있기 때문에 이 책을 다시 한 번 집어들게 된 같다. 이 책의 부제를 보면, "테크 리더 9인이 말하는 더 나은 개발자로 살아가는 원칙과 철학"이다. 원칙은 "많은

Team

[데이터조직]커뮤니케이션에서 반드시 들어가야할 것 - Why

사이먼 시넥의 "Start with Why"이라는 책이 있다. 국문으로는 "난 왜 이 일을 하는가"로 번역이 되기도 하였고 Youtube에서도 상당히 인기가 많았던 영상 컨텐츠로 다뤄진 바 있다. 내용은 매우 심플하다. 제목이 의미하는 바가 핵심이다. 조지프 캠벨이라는 종교학자가 있다. "천의 얼굴을 가진 영웅"이라는 유명한

Team

[데이터조직] 팀을 맡고 먼저 해야 하는 것, 면담

팀을 맡아서 운용한지도 1년을 훌쩍 넘었다. 처음 팀장을 맡았을 때를 생각해 보면 시간이 정말 빠르게 지난 것같다. 새로운 팀을 맡아서 운영도 열심히 해보고 있다. 그나마 다행인 것은 좋은 사람을 계속 만날 수 있다는 것이다. 이 자체가 쉽지 않은 행운임을 알고 가는 입장이기에 그저 감사함이 가득할 뿐이다. 처음 팀을 맡았을 때를

Book

[책]의사결정에서 확률적 사고가 갖는 힘과 경험적 근거에 대해서, “최고의 결정“

제목이 꽤 매력적이지 않은가? “최고의 결정”이라니… 거기에 호황과 불황을 모두 포함해서 50년을 경험한 사람이라니, 연달아 두 팀을 리딩해본 리더의 입장에서는 꽤나 솔깃했던 제목이었다. 물론 “최고”를 결정하는 기준이 나와 같을지는 고민해보면서 말이다. 경제 전문가라고 적혀있는 만큼 도메인 경험으로 인한 차이에 대한 불신이 있었기 때문이었다. 결론부터 이야기하면 정말 많은 사건과

Business

[리뷰] Real-Time Delivery Time Forecasting and Promising in Online Retailing

Summary * Delivery Time Prediction은 Regression 문제이기도 하지만 Result가 분단위 정도로 나눠진다고 하면 Classification 문제로 간주할 수도 있다. * 비즈니스 관련 Cost Sensitive Rule을 고려하기 위해서 Regression Tree를 사용하되, 성능을 끌어올리기 위해 Random Forest를 고려했고, 예측값이 정규분포가 아닐 가능성을 고려하여 Quantile로 나눠서 예측, 최종 모델은 Quantile Random Forest (for Regression)을 하였다.

Team

[데이터 조직]팀의 목표는 회사의 비전으로부터 시작해야 한다.

지금 회사 입사 이후에 깨달은 사실 중 하나였고, 데이터 조직도 예외는 아닌 하나의 사실로 남은 교훈이 있는데, 바로 팀의 목표는 회사의 비전으로부터 시작해야 한다였다. 최근에는 OKR이 나오면서 과거 대비 익숙할지 모르겠지만, 이전에 기술조직은 사업의 마치 하청조직인 것마냥, 사업계획보다는 운영계획의 형태로 비용계획을 수립하고, 백오피스의 역할이 강했다. 하지만 과거와 달리 지금은 모든

Team

함께 데이터 프로덕트를 만들 때 성과는 어떻게 측정할 것인가?

데이터 프로덕트를 만들 때는 보통 두가지 경우가 있다. 하나는 주도적으로 프로덕트를 구성하는 경우, 그리고 다른 하나는 외부 요청에 의해 프로덕트를 구성할 때가 있다. 전자의 대표적인 케이스는 추천시스템이다. 데이터가 가장 중요하고 데이터 없이는 운영이 불가능한 데이터 주도로 시스템을 구축하는 전형적인 케이스다. 이보다 더 오너십이 뚜렷한 데이터 프로덕트는 찾기 어렵다. 하지만 오늘

Devonthink

Devonthink에서 Smart Rule 적용하기

Background * Devonthink를 쓰면서 Bookmark가 계속 늘어나고 있고 있다., 이 Bookmark를 모두 읽었는지 잘 모르기 때문에 Labeling을 하고 있다. 아래는 실제 내 노트북에서 내가 Labeling하는 색을 가지고 온 것이다. 이건 논문을 보면서도 항상 하는 습관 중의 하나인데, Label이 Bookmark를 추가할 때 작은 아이콘으로 보여서 자꾸 놓치고 Add를 한다. 그래서 이번 기회에

Team

실제 상품과 다른 (보기좋고 이쁜) 이미지를 보고 선택을 강요받는 소비자

얼마전 저녁을 위해 피자를 포장하러 밖에 다녀올 일이 있었다. 아내가 고른 피자 2판을 픽업하기 위해 기다리면서 메뉴들을 훑어보는데 메뉴이미지와 실제 메뉴의 모습이 다르다라는 생각이 떠올랐다. 순간적으로 동일한 경우가 어디 있겠나라는 생각이 들었는데, 이게 리더인 내 삶와 정보의 관점에서 다시 생각해보니 좀 생각할 꺼리가 있다는 생각이 들었다. 정보는 생산자와 소비자간의 상호작용을

Book

[책]럭키 드로우, 노력에는 나이가 중요하지 않다.

사실 크게 그렇게 기대하고 읽은 책은 아니었다. 어떠한 컨텐츠로 그가 돈을 벌고 있는지도 모르고 있었고, 지속가능한 것인가에 대해서도 모르는 상황이었기 때문에 그다지 궁금하게 보지는 않았던 까닭이다. 그래서 궁금해서 이 책을 보게 된 것같다. 특히 직전에 읽은 책이 최인아님의 “내가 가진 것을 세상이 원하게 하라”였다보니 더욱 더 “드로앤드류”라는 채널의

Dev

MSA(Micro Service Architecture)

Summary MSA(Micro Service Architecture) * 각각을 마이크로하게 나눈 독립적인 서비스를 연결한 구조 * 시스템 전체의 중단 없이 필요한 부분만 업데이트·배포가 가능 * 유연한 대응이 가능→  실시간으로 요구사항을 반영할 수 있어 급격히 성장한 기업들이 많이 택한 방법 * 각각 독립적인 서비스로 이루어져 있기 때문에 모듈의 인터페이스를 신중하게 처리해야 하고 제약들도 많음 * 분산된 서비스마다

Data

First Step Analysis in Transition Matrix

Summary * First Step Analysis란 Markov Chain을 해결하기 위한 간단한 방법 * Markov Property를  이용해서 변수들의 특성을 빠르게 파악하는 방법 Prerequisite * Absorbtion, Transition  개념 이해 필요함. * Absorbtion  Status에 들어가게 되면 그 이후로는 이제 Status가 변하지 않는다. Example * 다음과 같은 전이행렬이 있따고 가정할 때 Absorbtion Status에 도달하기까지의 시간과 확률, 그리고 평균 기대시간을 구한다고

Data

언제 데이터 과학자를 채용하고 조직을 구성해야할까?

정답은 비즈니스 목적을 달성하기 위해서 기존의 방안에서 답이 없다고 판단할 때이다. 보통 조직들은 팀을 신설하고 데이터과학자나 엔지니어를 채용한다. 그리고 바로 실적이 나오길 기대한다.  이 때 기다려줄 수 있는 관점은 철저히 비즈니스 관점에서 사업계획에 예정된 일자일 경우가 많다. 다시 말해서 기타 비즈니스 요인은 고려되지 않은 경우가 많다. 데이터 조직이 생기고 프로세스가