소개의 글¶
이 책의 특징¶
입문자와 비전공자를 위해 기초부터 시작¶
이 책은 대학에서 수학을 전공하지 않은 인공지능 개발 입문자와 현업 전문가에게 핵심 수학을 알려줍니다. 수식에 많이 사용되는 그리스 알파벳과 고등학교 과정의 수학 기호부터 설명해 누구나 차근차근 수학을 익힐 수 있습니다. 기초부터 출발하지만 데이터 분석과 머신러닝에 필요한 모든 필수 수학을 다루며, 모든 수식은 파이썬 패키지를 활용해 코드로 제시합니다.
머신러닝의 이해에 필요한 핵심 내용만 선별¶
이 책에서는 선형대수, 함수론, 미적분, 최적화 등 다양한 수학 분야를 다루지만 데이터 분석과 머신러닝에 꼭 필요한 내용만을 최소한으로 선별했습니다. 핵심 내용만 있으므로 이 책에 실린 내용을 충실히 익히면 데이터 분석과 머신러닝 이론을 효과적이고 깊이 있게 공부하는 데 도움이 됩니다. 이해가 되지 않는 부분은 반복해서 공부하시기 바랍니다.
파이썬 구현을 통한 이해와 응용¶
데이터 분석과 머신러닝은 코드로 알고리즘을 구현하므로 수학 수식만으로 이해해서는 부족합니다. 따라서 이 책의 모든 수식과 알고리즘은 파이썬 코드로 구현합니다. 수학을 코드로 이용하려는 개발자 입장을 고려해 알고리즘 자체를 구현하기보다는 알고리즘이 구현된 넘파이(NumPy), 심파이(SymPy), 사이파이(SciP), 피쥐엠파이(pgmpy) 등의 패키지 기능을 잘 이해하고 자유롭게 사용할 수 있도록 하는 것을 목표로 합니다.
연습 문제¶
책에서 설명하는 내용을 제대로 이해하고 있는지 확인하기 위해 곳곳에 연습 문제가 있습니다. 모든 연습 문제는 머신러닝의 이론을 설명할 때 나오는 수식의 일부를 미리 풀어보는 문제입니다. 연습 문제를 풀 수 있다면 나중에 나올 복잡한 수식을 쉽게 이해할 수 있습니다
이 책의 구성¶
1장 수학 기호¶
수식에 많이 쓰이는 그리스 알파벳을 읽고 쓰는 법을 배웁니다.
머신러닝 교과서나 논문에 자주 사용되는 수학 기호들의 의미를 알아봅니다.
2장 NumPy로 공부하는 선형대수¶
스칼라, 벡터, 행렬, 텐서의 의미와 기호, NumPy 패키지를 사용하는 방법을 배웁니다.
행렬의 연산과 성질, 그리고 연립방정식을 다룹니다.
3장 고급 선형대수¶
기하학에서 선형대수가 어떻게 쓰이는지 알아봅니다.
고윳값 분해, 특잇값 분해에 대해 공부하고 어떤 문제에 응용할 수 있는지 공부합니다.
4장 SymPy로 공부하는 미적분¶
머신러닝에서 자주 사용되는 함수와 그 특징을 알아봅니다.
미분과 적분 공식을 배우고 심볼연산이 가능한 SymPy 패키지를 사용하여 미적분을 하는 법을 익힙니다.
머신러닝에서 자주 사용되는 행렬의 미적분 공식을 공부합니다.
변분법의 개념에 대해 소개합니다.
5장 SciPy로 공부하는 최적화¶
최적화 문제와 최급강하법을 사용하여 최적화 문제를 푸는 방법에 대해 다룹니다.
SciPy 패키지를 사용하여 실제로 최적화 문제를 푸는 법을 익힙니다.
등식 제한조건이나 부등식 제한조건이 있는 최적화 문제를 풀기위한 라그랑주 승수법을 공부합니다.
머신러닝 이외에도 여러 분야에 널리 쓰이는 LP 문제와 QP 문제를 소개합니다.
6장 pgmpy로 공부하는 확률론¶
확률의 수학적 정의와 빈도주의 및 베이지안 관점에서 확률이 가지는 의미를 공부합니다.
확률분포함수가 어떤 과정을 통해 정의되었는지를 소개합니다.
머신러닝에서 가장 중요한 개념인 조건부 확률과 베이즈 정리에 대해 배웁니다.
pgmpy 패키지를 사용하여 확률분포를 구현하고 베이즈 추론을 실행하는 법을 익힙니다.
7장 SciPy로 공부하는 확률분포¶
확률변수를 사용한 데이터 모형의 개념을 배웁니다.
표본 데이터의 기댓값, 분산의 의미와 분산의 기댓값이 가지는 특성에 대해 공부합니다.
베르누이 분포, 이항 분포, 카테고리 분포, 다항 분포 등의 이산 분포와 가우시안 정규분포, 스튜던트-t 분포 카이제곱 분포, F 분포 등의 연속 분포의 정의와 특성, 그리고 이 분포들이 어떻게 데이터 분석에 쓰이는지에 대해 알아봅니다.
확률모수 모형에 사용되는 베타 분포, 디리클레 분포, 감마 분포를 소개합니다.
8장 상관관계¶
여러 개의 확률변수가 가지는 상관관계를 어떻게 정의하는지 소개합니다.
가장 널리 쓰이는 상관관계 모형인 다변수 가우시안 정규분포 모형에 대해 알아봅니다.
조건부 기댓값의 개념을 소개하고 머신러닝의 가장 큰 응용분야인 예측에 어떻게 사용되는지 공부합니다.
9장 검정과 추정¶
데이터가 주어졌을 때 데이터에 기반해 판단하는 방법을 공부합니다.
가장 기본적인 데이터 기반 의사결정인 검정의 개념과 SciPy를 사용한 검정 방법을 익힙니다.
가능도의 개념과 최대 가능도 추정법을 사용하여 확률분포의 모수를 추정하는 방법을 알아봅니다.
모수 추정의 불확실성에 대해 공부하고 베이즈 정리에 기반한 베이지안 모수 추정법을 소개합니다.
10장 엔트로피와 정보이론¶
엔트로피의 개념을 소개하고 엔트로피가 확률변수가 가진 정보량과 어떤 관계가 있는지 알아봅니다.
크로스 엔트로피와 쿨백 라이블러 발산을 사용하여 확률분포의 유사성을 비교하는 방법에 대해 공부합니다.