Study159 로지스틱회귀의 비용함수 이해 Logistic 회귀의 cost function 지금까지 해온 것 처럼 로지스틱회귀의 비용함수 역시 어설프나마 문돌이식 수학으로 이해해 보려고 했다. 그래서 일주일이 넘는 시간을 투자했으나 이번 시도는 앞선 시도들 보다 더 이해하기가 어려운 내용이었다. 때문에 이번 포스팅에서는 로지스틱회귀의 비용함수 이해에 필요한 몇가지 개념에 대한 설명과 지난 일주일간의 검색 과정에서 발견한 몇가지 팁을 설명하는 것 정도로 마무리 해야 할 것 같다. 몇 가지 개념 이미 많은 사람들이 알고 있다시피 기존 선형회귀에서 사용하던 비용함수를 로지스틱회귀에서 그대로 사용할 경우 그래프의 형태가 아래와 같이 표현된다고 한다(함수를 통해 아래 형태의 그래프를 그려보려고 무진 애를 썼으나 결국 실패했다). 선형회귀분석에서 이미 언급.. 2017. 5. 7. 다항로지스틱회귀 살펴보기 다항 로지스틱 회귀의 이해 처음 텐서플로우 공부를 시작하면서 단순선형회귀에서 다중선형회귀로 넘어가는 과정에서 상당히 혼란스러웠었다. 단순한 1차 방정식의 형태에서 독립 변수가 늘어난 것만으로도 엄청나게 골머리를 싸매야 했다. 그리고 이제 이항 로지스틱회귀에서 다항로지스틱회귀로 넘어가려고 한다. 이번에도 역시 기대를 저버리지 않고 뇌이랑이 메워질만큼 알 듯 모를 듯한 수식들을 붙들고 씨름을 하게 만들었다. 설명은 단순한데 그 단순한 것을 제대로 이해하기 위해서는 상당한 공을 들여야 하는 것이 이 바닥인가보다…ㅠ.ㅠ 준비운동 - sigmoid 복습 먼저 이전 포스팅인 이항로지스틱회귀에서 언급되었던 식 몇개를 되살려보자. 거기에는 두 가지 개념이 등장했는데 바로 오즈 비(ODDS Ratio)와 이 오즈 비에 .. 2017. 4. 22. React 살펴보기 #7 Handling Events React elements에서의 이벤트 처리는 DOM elements에서의 이벤트 처리와 비슷하다. 다만 약간의 문법적인 차이가 있을 뿐이다.React 이벤트는 소문자보다는 카멜 케이스를 이용하여 명명한다.JSX를 이용하여 문자열보다는 함수형의 이벤트 핸들러를 전달한다. HTML의 예는 다음과 같다. Activate Lasers React는 이와 조금 다르다. Activate Lasers 또다른 차이점이라면 React에서는 기본적인 동작을 막기 위해 false를 리턴할 수 없다는 것이다. 대신에 명시적으로 preventDefault를 호출해야 한다. 예를들어 일반적인 HTML에서는 새로운 페이지가 열리는 기본적인 링크 동작을 막기 위해 아래와 같은 코드를 사용한다. Click.. 2017. 4. 20. Android Things 살펴보기 ~ #3 Android Things SDK 개요 이 글은 Android things의 공식 홈페이지에 있는 Overview를 번역한 것이다. 크게 보자면 Android Things가 embedded 기기에 대한 core Android의 확장이며 그에 따른 Android Things의 이점과 제약을 설명하고 있다. 개인적으로는 다른 어떤 이점보다도 단일 app 기반이라는 점과 UI의 부재라는 제약이 더 크게 보인다. 사실 라즈베리파이는 아두이노나 다른 embedded 기기에 비한다면 상당히 고사양의 기기이다. multi tasking이 가능한 CPU와 HDMI라는 고사양의 display 인터페이스를 가지고 있음에도 불구하고 그 것을 활용하지 못한다는 것은 하드웨어 리소스의 낭비로 보여진다. 이런 측면으로 보자면 아.. 2017. 4. 10. Android Things 살펴보기 ~ #2 Android Things 이미지 설치하기 지난 시간에 간단하게 Android Things의 개요를 살펴보았다. 뭐니뭐니해도 가장 중요한 내용은 바로 광범위한 안드로이드의 생태계를 거의 그대로 사용 가능하다는 것이었다. 편리한 배포와 업데이트, 안드로이드 수준의 보안, 수많은 리소스들의 활용, 거기에 상용제품에 준하는 하드웨어를 이용한 신속한 개발 등 상당히 매력적인 플랫폼인 것은 분명하다. 공식 홈페이지에는 하드웨어에 대한 기본적인 설명을 먼저 하고 있지만 나는 라즈베리파이에 대해서만 알면 되기에 바로 라즈베리파이에 이미지를 설치하는 내용으로 건너 뛰었다. 라즈베리파이에 Android Things 이미지 설치하기 공식적으로 Android Things가 지원하는 기종은 라즈베리파이 3다. 2도 설치는 되.. 2017. 4. 1. 라즈베리파이 - Alexa 테스트 결국 라즈베리파이…ㅠ.ㅠ 몇 주 전부터 아두이노로 스마트미러를 만들겠다고 용트림을 하고 있는데…그게 잘 안된다…아마도 무지의 소치라고 해야 할 듯…아두이노가 내가 원하는대로 쑥쑥 결과를 뽑아줄 것이라 생각한 것이 잘못이었다…ㅠ.ㅠ 이미 이전 글들에서 LCD를 다루는데 있어서의 어려움들은 충분히 토로하였지만 다시 말하자면 다른 것은 다 제쳐두고라도 한글 표현의 문제와 가독성 높은 UI를 구성하는 부분에서의 장벽으로 거의 포기의 지경이 이를 수 밖에 없었다. 때마침 페이스북을 통해 Android Things에 대한 소식을 접하고는 핑계삼아 결국은 라즈베리파이를 구입하고 말았다. 2대를 구입하여 한 대는 Android Things를 테스트하기로 하고 다른 한 대는 스마트미러에 사용하기로 했다. 신세계~ 사실 .. 2017. 4. 1. TensorFlow(텐서플로우) 살펴보기 - 5 텐서플로우를 이용한 로지스틱(Logistic) 회귀로지스틱 회귀에 들어오면서 시그모이드 함수에 난데없이 등장한 자연상수 e에 대한 정체를 밝히느라 무려 2주를 보냈다. 물론 그 과정이 쓸모없는 일은 아니었지만 꽤나 고민스럽고 답답한 시간들이었다. 이제 어느정도 그 정체를 밝혔으니 본격적으로 로지스틱 회귀 실습을 진행해보도록 하자. 샘플 데이터는 http://www.dodomira.com/2016/02/12/logistic-regression-in-r/ 블로그를 참조하였고 자료 원본 경로는 http://www.ats.ucla.edu/stat/data/binary.csv 이다. 자료 불러오기 주제에서 조금 벗어나는 이야기지만 현재 나는 Docker for MAC에서 TensorFlow 이미지를 설치한 상태이.. 2017. 4. 1. React 살펴보기 #6 State and Lifecycle 이전 섹션 중 하나였던 시계 예제를 되돌아보자. 지금까지 우리는 UI를 업데이트 시키는 단지 한가지 방법만을 배웠다. 렌더링된 출력물을 바꾸기 위해 우리는 ReactDOM.render()를 호출했다. function tick() { const element = ( Hello, world! It is {new Date().toLocaleTimeString()}. ); ReactDOM.render( element, document.getElementById('root') ); } setInterval(tick, 1000); CodePen에서 확인하기 이번 섹션에서는 Clock 컴포넌트를 진짜로 재활용 가능하고 캡슐화된 상태로 만드는 방법을 배울 것이다. 이 새로운 컴포넌트.. 2017. 3. 27. 자연로그와 자연상수 e 심화학습 자연로그! 너 죽고 나 죽자! - 고등 수학을 초등학생처럼 배워보기~ 지난 글에서 내가 문돌이라는 것을 무기 삼아 겨우 자연상수 설명 조금하고 자연로그는 그저 그런게 있는갑다 하고 그냥 넘어가버렸다. 하지만 역시…뒤처리가 안된 것 마냥 여전히 찜찜하기 그지없다. 그래서 한 번 더 자연로그를 이해하는데 도전해보기로 하였다. 과연 잘 설명이 될 지는 모르겠으나 이미 언급한 바와 같이 이러한 과정 하나하나가 분명 앞으로 나아가는 길이라 믿는다. 문돌이 혹은 수포자의 한계 어떤 수학 공식을 풀이 한다는 것, 왜 그런 공식이 도출 되었나 하는 것은 곧 수학의 입장에서는 검증을 하는 것, 다시 말해 ‘증명’을 하는 것이다. 그런데 아이러니컬 하게도 증명을 하게 되면 처음의 단순했던 식이 매우 복잡해진다. 이것은 문.. 2017. 3. 25. 이전 1 ··· 6 7 8 9 10 11 12 ··· 18 다음 반응형