MLE (maximum likelihood estimate)로 단순선형회귀분석에서의 parameter를 추정하는 내용에 대한 증명입니다. MLE방법에서 가장 중요한건, error값에 대해 정규분포를 따른다는건데요. 이 분포를 이용해 likelihood function을 가지고 각 parameter ( \beta_0, \beta_1, \sigma^2) 값을 추정할 수 있습니다.
그런데, 회귀모델에서 최소자승법과 MLE 방법에 대한 차이를 모르시겠다면 아래 영상을 꼭 확인해주세요~
어떤 모델이든 모델을 성립하기 위한 조건(Assumptions)이 어떤것들이 있는지 파악하는게 정말 중요한데요. 단순선형외귀분석, Linear regression model에서 가정조건이 뭐가 있는지, 왜 있는지 생각해보신적이 있나요? 조건이 있었나? 왜 있어야하는지 생각해보신적이 없다면 이 영상을 꼭!! 꼭!!! 확인해보시기 바랍니다. 정말 중요하거든요.
데이터를 얻고 나서, reponse variable Y에 대해, Y가 갖는 값은 fixed value일까요? 아니면 random value일까요? 여기에 대한 대답에 자신이 없으신다면 아직 개념이 정확하게 세워지지 않은거기때문에 영상을 꼭 보시기 바랄게요.
그리고 시간이 더 남는다면, 회귀분석모델에서 계수를 추정할때, 추정방법이 크게 두가지가 있는데요. Least Squares Estimate와, MLE가 있는데 이 두 가지 방법의 차이가 어떻게 다른지 모르겠다면 이 영상을 참고하세요.
회귀분석, 최소자승법에서 회귀 계수를 구하는 증명 뿐 아니라 최소자승법의 속성에 대한 증명도 있는데요. 증명 과정중에 centering 에 대한 개념이 필요해서, 따로 centering에 대한 개념설명 영상도 만들었습니다.
식 1번 :
식 2번 및 3번:
Centering 중심화라고 하는데, 개념은 변수 데이터마다 특정 상수를 빼주는걸 말합니다. 이때 평균값을 빼주게 되면 mean centering이라고 하는데요. 평균중심화를 통해 증명을 더 간단하게 할 수 있었어요. 그렇다면 그냥 식을 사용하는게 아니라 평균중심화를 통해 식을 증명해도 되는지 그 내용을 설명한 영상은 아래 참고하세요~
바로 제 명함입니다. 팀원 중 몇명이 주문해서 받길래 그제서야 회사에서 명함을 주는구나 알게 되었어요. 사실 여기서 쓸 일이 없어서 주문할까 말까 하다가 뭐 이것도 기념이 되겠다 싶어서 주문했습니다. Data Scientist로 2년째 일하고 있는데 그래도 명함 있으면 나쁠건 없죠. 컨퍼런스에 갔을때 부스에 명함을 넣기도 하지만 사실 명함과 얼굴 매치하는게 힘들잖아요. 그냥 그 자리에서 Linked In 아이디를 주고 받습니다. 그럼 서로의 경력과 얼굴을 알 수 있으니 그게 더 기억하기도 쉽고 편하죠.
캐나다에서 취업하고자 한다면, 적어도 링트인(Linked In)을 잘 관리하셔야 해요. 전 방치한지 1년이 되어가고 있지만, 프로젝트도 올리고 얼굴사진도 올리길 권장합니다. 돌이켜보면 제가 Data Scientist 타이틀을 얻게 된 첫 시작도 링트인에 올린 제 영어 블로그를 보고 감명(?) 받아서 절 뽑아줬거든요. 만약 분석쪽으로 갔다면 그 일도 재밌겠지만, 예측하는 모델링을 만든다는것도 너무 재밌어요.
작년 처음맡은 프로젝트가, 벤쿠버 다운타운의 화재가 어디에 날지 예측하는 모델을 세워주는거였는데요. 클라이언트는 소방청(?) 이었는데 화재 확률이 높은 건물을 점수를 매기는 모델을 만들어주었습니다. 그리고 몇 달 전, 저희가 만든 모델이 너무 잘 맞는다며, 감사의 이메일을 받았어요. 이밖에도 비슷한 일을 많이 하고 있는데 모델링이나, 어떻게 구현하는지에 대해 자세히 적을 순 없지만, 제가 만든 모델이 누군가를 도와줄 수 있다면, 나쁜일이 생길걸 방지할 수 있다면 그것도 참 보람된 일이란 생각이 드네요.
네... 지난달에 제가 10밀리언의 이미지를 다운받았거든요. 왜 했는지, 구체적으로 어떤 이미지를 다운받았는지는 적을 수 없어요. 생각해봅시다. 10밀리언. 그렇다면 숫자로 제대로 적어보자면~ 10,000,000입니다. 이게 얼마나 큰 숫자인지 감이 안올꺼예요. 왜냐하면 저 역시 이걸 다운받는데 얼마나 오래 걸리는지 예상을 잘 못했거든요.
그럼 이 이미지를 다운받는데 며칠이 걸릴지 수학계산을 해봅시다.
수퍼 컴퓨터로 휘리리리리리릭 다운받으면 되지 않아?!! 라고 할 수 있지만 안됩니다. 사용에 제한이 있어요. 요 아래 글 올린 사람도, 아주 오래전에 올린 글이긴 하지만, API 사용하는데 제한이 있냐고 물어보네요.
대략... 최고로 빨리 다운받으면 1초에 20개의 이미지를 받을 수 있는데요. 안전하게 가기 위해서 1초에 10개정도 이미지를 다운받을 수 있습니다. 1초 = 10개라... 하루는 몇초일까요? 86400초 입니다. 1초마다 10개씩이니까.. 1밀리언을 86400으로 나눠보면~ 11.57이 나와요.
문제는 한개의 컴퓨터가 이미지를 다운받는데 1초에 몇개 다운받을 수 있을까요?!!! 오래걸립니다. 한 컴퓨터가 1초에 10개를 다운받는건 힘들어요. (다른 이슈때문에..) 그래서 컴퓨터를 여러개 돌려야합니다. 그래야 1초에 10개를 받을 수 있어요. 낮과 밤을 지새우면서, 모든 컴퓨터들이 잘 돌아가고 있나...확인해야합니다.
그럼 총 들어갔던 비용은 얼마였을까요?!!
얼마냐고 구글에 검색해보니 바로 나오네요. 자자 계산해봅시다. 1000개 이미지에 11.20 미국달러니까요~ 10밀리언을 1000개로 나눠서 그 값을 11.20로 곱하면 되겠지요. 물론 500k 이상 많이 다운받게 되면 뭐 할인이 있나보죠? 그냥 일반가격으로 알아볼게요.
1,000개 = $11.20
10,000,000 = $11.20 * 10,000 = $112,000
미국달러이니까 한화로 바꿔봅시다.
1억 3천!!!!!! 회사 돈 쓰기 참 쉽습니다. 1억 3천을 열흘동안 썼어요.
하지만 이건 뭐 시작에 불과했으니.. 구글 API쓴게 뭐 저 뿐만이겠어요? 여러 팀에서 쓰고있고요. 다른분들은 얼마나 썼는지는 모르겠어요. 그랬다보니 캐나다에서 가장 많이 API를 쓴 회사로 뽑혔지 않나 싶습니다. 그래도 제일 큰 공을 세운건 저라는거... -__-
회사에 이렇게 많은 데이터가 있다보니 사실 데이터 사이언티스트들이 일하기엔 최적의 환경입니다. 데이터 구하는게 제일 힘든 작업이거든요.
이 일을 하면서 parallel로 작업을 어떻게 할지, 그러니까 컴퓨터 여러대를 어떻게 돌릴지, AWS는 어떻게 이용하면 좋을지..많이 고민했었습니다. 이런 내용도 공유하고 싶은데 사실 회사일이 관련되다보면 블로그에 글을 올린다는게 굉장히 조심스러워져요. 당연히 데이터를 공유할 수 없고요. 회사 소유물이니까요. 어떻게 한건지도 올리면 절대 안됩니다. 그저 남편에게 이렇게 이렇게 했다라고 얘기할뿐이죠. 하핫 -_-;;