이미 소장하고 있다면 판매해 보세요.
▣ 01장: 데이터 과학과 머신러닝
1.1 업무상에서 데이터 과학이 하는 역할 1.2 머신러닝 알고리즘 분류 1.2.1 분류: 클래스 판정을 산출하는 알고리즘 1.2.2 회귀분석: 수치를 예측하는 알고리즘 1.2.3 클러스터링: 지도자 없이 그룹화하는 알고리즘 1.2.4 그 밖의 알고리즘 1.3 이 책에서 사용하는 예제 1.3.1 회귀분석에 의한 관측값 추측 1.3.2 선형판별에 의한 신규 데이터 분류 1.3.3 이미지 파일 감색 처리(대표색 추출) 1.3.4 손글씨 문자 인식 1.4 분석 도구 준비 1.4.1 이 책에서 사용할 데이터 분석 도구 1.4.2 실행 환경 설치 순서(CentOS 6) 1.4.3 실행 환경 설치 순서(Mac OS X) 1.4.4 실행 환경 설정 순서(Windows 7/8.1) 1.4.5 IPython 사용법 ▣ 02장: 최소제곱법 - 머신러닝 이론의 첫 걸음 2.1 다항식 근사와 최소제곱법에 의한 추정 2.1.1 트레이닝 세트의 특징 변수와 목적 변수 2.1.2 다항식 근사와 오차함수 설정 2.1.3 오차함수를 최소화할 수 있는 조건 2.1.4 예제 코드로 확인한다 2.1.5 통계모델이라는 관점에서 최소제곱법이란 2.2 오버 피팅 검출 2.2.1 트레이닝 셋과 테스트 셋 2.2.2 테스트 셋으로 검증한 결과 2.2.3 교차 검증을 통해 일반화 능력을 검증한다 2.2.4 데이터 개수에 따른 오버 피팅 변화 2.3 부록 - 헤세행렬의 성질 ▣ 03장: 최우추정법 - 확률을 사용한 추정 이론 3.1 확률 모델을 이용한다 3.1.1 데이터 발생 확률 설정 3.1.2 우도함수로 파라미터를 평가한다 3.1.3 예제 코드로 확인한다 3.2 단순한 예로 설명한다 3.2.1 정규분포의 파라메트릭 모델 3.2.2 예제 코드로 확인한다 3.2.3 추정량을 평가하는 방법(일치성과 불편성) 3.3 부록-표본평균·표본분산의 일치성과 불편성 3.3.1 표본평균·표본분산의 일치성과 불편성 증명 3.3.2 예제 코드로 확인한다 ▣ 04장: 퍼셉트론 - 분류 알고리즘 기초 4.1 확률적 기울기 하강법 알고리즘 4.1.1 평면을 분할하는 직선의 방정식 4.1.2 오차함수를 사용하여 분류 결과를 평가한다 4.1.3 기울기 벡터로 파라미터를 수정한다 4.1.4 예제 코드로 확인한다 4.2 퍼셉트론을 기하학적으로 해석한다 4.2.1 바이어스 항의 임의성과 알고리즘 수렴 속도 4.2.2 퍼셉트론의 기하학적 해석 4.2.3 바이어스 항의 기하학적인 의미 ▣ 05장: 로지스틱 회귀와 ROC 곡선 - 학습 모델을 평가하는 방법 5.1 분류 문제에 최우추정법을 적용한다 5.1.1 데이터 발생 확률 설정 5.1.2 최우추정법으로 파라미터를 결정한다 5.1.3 예제 코드로 확인한다 5.2 ROC 곡선으로 학습 모델을 평가한다 5.2.1 로지스틱 회귀를 현실 문제에 적용한다 5.2.2 ROC 곡선으로 성능 평가 5.2.3 예제 코드로 확인한다 5.3 부록 - IRLS법 도출 ▣ 06장: k-평균법 - 비지도 학습모델 기초 6.1 k-평균법을 통한 클러스터링과 그 응용 6.1.1 비지도 학습모델 클러스터링 6.1.2 k-평균법을 사용한 클러스터링 6.1.3 이미지 데이터에 응용 6.1.4 예제 코드로 확인한다 6.1.5 k-평균법의 수학적 근거 6.2 게으른 학습모델로서의 k-최근접이웃 6.2.1 k-최근접이웃으로 분류 6.2.2 k-최근접이웃의 문제점 ▣ 07장: EM 알고리즘 - 최우추정법에 의한 비지도 학습 7.1 베르누이 분포를 사용한 최우추정법 7.1.1 손글씨 문자 합성 방법 7.1.2 이미지 생성기와 최우추정법 7.2 혼합분포를 사용한 최우추정법 7.2.1 혼합분포로 확률계산 7.2.2 EM 알고리즘 절차 7.2.3 예제 코드로 확인한다 7.2.4 클러스터링으로 데이터를 해석한다 7.3 부록 - 손글씨 문자 데이터를 다운로드한다 ▣ 08장: 베이즈 추정 - 데이터를 기반으로 확신을 더하는 방법 8.1 베이즈 추정 모델과 베이즈 정리 8.1.1 베이즈 추정의 개념 8.1.2 베이즈 정리 입문 8.1.3 베이즈 추정으로 정규분포를 정한다: 파라미터 추정 8.1.4 베이즈 추정으로 정규분포를 결정한다: 관측값의 분포를 추정 8.1.5 예제 코드로 확인한다 8.2 베이즈 추정을 회귀분석에 응용 8.2.1 파라미터의 사후분포 계산 8.2.2 관측값의 분포를 추정 8.2.3 예제 코드로 확인한다 8.3 부록-최우추정법과 베이즈 추정의 관계 |
머신러닝에 관심을 갖는 IT 개발자가 예상 외로 늘고 있는 것 아닌가, 하는 생각을 하게 된 것은 1년 전쯤이었습니다. 데이터 과학이나 딥러닝 급기야 인공지능까지 각 미디어가 선호하는 단어들이 넘쳐나는 상황에서 데이터 분석을 전문으로 하지 않는 일반 IT 개발자도 머신러닝 기술을 활용할 수 있을 것이라고 기대해 볼 수 있는 시대가 다가왔습니다. 이제는 '전문 지식이 없어도 사용할 수 있습니다'라고 광고하는 머신러닝 서비스도 생겨날 정도입니다.
하지만 여기에는 큰 함정이 존재합니다. 다양한 머신러닝 툴이나 라이브러리가 오픈소스로 제공되어 머신러닝 계산 처리를 누구나 실행할 수 있게 됐습니다. 데이터를 입력하고 프로그램을 실행하면 일단 결과는 나올 것입니다. 그렇지만 그 결과가 어떤 '의미'를 갖고 있는지 알 수 있을까요? 머신러닝 툴이 내어주는 결과를 업무에 활용하려면 그 툴이 어떤 알고리즘으로 동작하는지 알아야 툴이 내어준 결과물을 제대로 파악할 수 있겠지요. 이 책에서는 독자들이 머신러닝 기술을 업무에 활용할 것이라는 전제하에 머신러닝 알고리즘을 기본부터 설명합니다. 구체적인 예제를 통해 '어떤 사고 방식으로 무엇을 계산하는가'에 대하여 빠짐없이 설명합니다. 이렇게 차근차근 설명하여 머신러닝에서 데이터 과학에 이르기까지 독자들이 그 밑바탕부터 이해할 수 있게 돕는 것이 이 책의 목표입니다. 머신러닝 분야에는 다양한 알고리즘이 존재하지만 이들 알고리즘의 근본에는 '데이터의 모델화와 파라미터의 최적화'라는 사상이 공통으로 포함돼 있습니다. 이 책에서는 이러한 '사상'에 중점을 두고 각각의 수식이 포함한 의미를 가능한 한 쉽게 설명하려고 합니다. 이 사상을 이해한 후에는 딥러닝이나 신경 네트워크 등 이 책에서 다루지 않은 어려운 알고리즘도 겁낼 필요가 없을 것입니다. 머신러닝을 업무에 사용하기 위한 기획 작업을 지시받아 당황한 사람, 마케팅 분석 프로그램 개발 프로젝트에 갑자기 투입된 독사람 등 IT 업계에 몸담고 있는 필자의 지인들 중 이러한 상황에 처한 분들이 많아진 것을 보고 머신러닝에 관심을 갖는 IT 개발자가 예상 외로 늘고 있는 것 아닌가, 하고 필자가 생각하게 된 것 같습니다. 지금부터 머신러닝 기술을 이해하고 능숙하게 사용한다면 IT 개발자로서 새로운 인생을 개척할 기회를 잡게 될 것이 분명합니다. 그리고 무엇보다 머신러닝 기술은 IT 개발자의 지적 호기심과 탐구심을 채워줄 수 있을 만큼 많은 재미를 포함하고 있습니다. 이 책은 한 명이라도 더 많은 독자분에게 발판이 되어 드릴 것이며, 독자분이 이 책을 발판 삼아 머신러닝의 세계로 한 발 나아갈 수 있기를 기원합니다. __본문 중에서 |
머신러닝의 바탕이 되는 데이터 사이언스의 본질을 이해하자!
현재 화제가 되고 있는 머신러닝(기계학습)의 툴과 라이브러리는 내부에서 어떻게 계산을 하는 걸까? 계산해서 얻은 결과는 어떤 의미를 담고 있을까? 그 결과를 어떻게 비즈니스적으로 활용하면 좋을까? 이런 의문을 가진 엔지니어가 늘고 있습니다. 이 책은 IT 개발자 중에서 머신러닝 알고리즘을 공부하고 싶어하며 그 알고리즘 속에 포함된 이론을 이해하여 업무에 활용하고 싶어하는 독자를 대상으로 쓰여졌습니다. 머신러닝 기술은 여러모로 활용되겠지만 이 책은 '데이터 분석 결과를 업무 판단에 이용한다'라는 개념을 가지고 각종 알고리즘을 설명합니다. 알고리즘의 이해를 위해 이 책에서는 머신러닝 이론을 수학적인 배경부터 하나씩 차근차근 설명합니다. 또 파이썬으로 샘플 프로그램을 실행해 볼 수 있도록 하였으며, 그 결과를 보는 것으로 머신러닝을 지탱하는 이론을 실감할 수 있도록 구성돼 있습니다. |