확장메뉴
주요메뉴


소득공제
미리보기 공유하기

알고리즘 구현으로 배우는 선형대수 with 파이썬

: 행렬의 기초부터 텐서를 활용한 머신러닝과 딥러닝 적용까지

리뷰 총점9.8 리뷰 7건 | 판매지수 2,064
베스트
IT 모바일 top100 1주
정가
34,000
판매가
30,600 (10% 할인)
YES포인트
소중한 당신에게 5월의 선물 - 산리오 3단 우산/디즈니 우산 파우치/간식 접시 머그/하트 이중 머그컵
월간 개발자 2022년 5월호
내일은 개발자! 코딩테스트 대비 도서전
5월 전사
5월 쇼핑혜택
1 2 3 4 5

품목정보

품목정보
출간일 2021년 12월 24일
쪽수, 무게, 크기 592쪽 | 188*245*35mm
ISBN13 9791165921125
ISBN10 116592112X

이 상품의 태그

책소개 책소개 보이기/감추기

행렬의 기초부터 텐서를 활용한 머신러닝과 딥러닝 적용까지
선형대수, 직접 구현하여 내 것으로 만들자!


『선형대수와 통계학으로 배우는 머신러닝 with 파이썬』의 장철원 저자가 선형대수 기초를 다잡고 싶은 독자를 위해 집필한 선형대수 책이다. 기초적인 행렬부터 고차원 텐서까지 선형대수를 구성하는 개념 및 이론을 소개하고 독자 스스로 자신의 분야에 응용할 수 있도록 도와준다. 또한, 선형대수 이론이 의미하는 바를 자세히 설명하고 선형대수 이론을 파이썬 코드로 직접 구현함으로써 내 손으로 선형대수 라이브러리를 직접 만드는 즐거움을 선사한다.

실습은 두 파트로 나뉜다. 파이썬 실습 파트에서는 라이브러리를 사용하지 않고 순수 파이썬 코드로 선형대수 이론을 직접 구현해 봄으로써 선형대수 기본기를 탄탄하게 다진다. 넘파이 실습 파트에서는 파이썬에서 제공하는 넘파이 라이브러리를 활용해 선형대수 이론을 활용하는 방법을 다룬다.

목차 목차 보이기/감추기

CHAPTER 01. 개발 환경 구축하기

1.1 윈도우 개발 환경 구축하기
1.2 맥 개발 환경 구축하기
1.3 리눅스 개발 환경 구축하기

CHAPTER 02. 파이썬 기초

2.1 기초 자료형
___ 2.1.1 숫자
___ 2.1.2 문자
___ 2.1.3 리스트(list)
___ 2.1.4 불(bool)
2.2 조건문
___ 2.2.1 비교 연산자
___ 2.2.2 조건 판단 연산자
___ 2.2.3 if문
2.3 반복문
___ 2.3.1 for문
___ 2.3.2 while문
2.4 함수
___ 2.4.1 사용자 정의 함수
___ 2.4.2 재귀 함수
2.5 깊은 복사
___ 2.5.1 mutableㆍimmutable
___ 2.5.2 얕은 복사
___ 2.5.3 깊은 복사
___ 2.5.4 깊은 복사 구현하기
2.6 라이브러리
___ 2.6.1 라이브러리의 개념
___ 2.6.2 나만의 라이브러리 만들기

CHAPTER 03. 행렬

3.1 스칼라
___ 3.1.1 스칼라의 정의
___ 3.1.2 스칼라의 기본 연산
___ 3.1.3 파이썬 실습
3.2 벡터
___ 3.2.1 벡터의 정의
___ 3.2.2 벡터의 덧셈과 뺄셈
___ 3.2.3 벡터의 스칼라 곱
___ 3.2.4 벡터 기본 연산의 성질
___ 3.2.5 파이썬 실습
___ 3.2.6 넘파이 실습
3.3 행렬
___ 3.3.1 행렬의 정의
___ 3.3.2 행렬의 덧셈과 뺄셈
___ 3.3.3 행렬의 스칼라 곱
___ 3.3.4 행렬의 원소 곱
___ 3.3.5 행렬 곱
___ 3.3.6 행렬의 대각합
___ 3.3.7 행렬 연산의 성질
___ 3.3.8 파이썬 실습
___ 3.3.9 넘파이 실습

CHAPTER 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 파이썬 실습
___ 4.2.4 넘파이 실습
4.3 대각 행렬
___ 4.3.1 대각 행렬의 개념
___ 4.3.2 대각 행렬의 성질
___ 4.3.3 파이썬 실습
___ 4.3.4 넘파이 실습
4.4 단위 행렬
___ 4.4.1 단위 행렬의 개념
___ 4.4.2 단위 행렬의 성질
___ 4.4.3 파이썬 실습
___ 4.4.4 넘파이 실습
4.5 영 행렬
___ 4.5.1 영 행렬의 개념
___ 4.5.2 영 행렬의 성질
___ 4.5.3 파이썬 실습
___ 4.5.4 넘파이 실습
4.6 삼각 행렬
___ 4.6.1 삼각 행렬의 개념
___ 4.6.2 삼각 행렬의 성질
___ 4.6.3 파이썬 실습
___ 4.6.4 넘파이 실습
4.7 토플리츠 행렬
___ 4.7.1 토플리츠 행렬의 개
___ 4.7.2 파이썬 실습
___ 4.7.3 scipy 실습
4.8 이중 대각 행렬
___ 4.8.1 이중 대각 행렬의 개념
___ 4.8.2 파이썬 실습
___ 4.8.3 넘파이 실습
4.9 하우스홀더 행렬
___ 4.9.1 하우스홀더 행렬의 개념
___ 4.9.2 파이썬 실습
___ 4.9.3 넘파이 실습

CHAPTER 05. 선형 시스템

5.1 선형 방정식
___ 5.1.1 선형 방정식의 정의
___ 5.1.2 선형 방정식의 예
___ 5.1.3 선형 방정식이 아닌 경우
5.2 선형 시스템
___ 5.2.1 선형 시스템의 정의
___ 5.2.2 기본 행 연산
___ 5.2.3 가우스 조르단 소거법
___ 5.2.4 가우스 소거법
5.3 동차 선형 시스템
5.4 파이썬 실습
___ 5.4.1 단계적으로 계산하기
___ 5.4.2 함수 생성 테스트
___ 5.4.3 최종 함수
5.5 넘파이 실습

CHAPTER 06. 행렬식

6.1 행렬식의 개념
6.2 행렬식 계산
___ 6.2.1 2×2 행렬의 행렬식
___ 6.2.2 3×3 행렬의 행렬식
6.3 행렬식의 성질
___ 6.3.1 삼각 행렬의 행렬식
___ 6.3.2 대각 행렬의 행렬식
___ 6.3.3 전치 행렬의 행렬식
___ 6.3.4 특정 행과 열의 원소가 모두 0일 때 행렬식
___ 6.3.5 행렬의 기본 행 연산과 행렬식
___ 6.3.6 비례하는 행과 열에 대한 행렬식
___ 6.3.7 행렬 곱과 행렬식
6.4 파이썬 실습
___ 6.4.1 단계적으로 계산하기
___ 6.4.2 재귀 함수로 구현하기
___ 6.4.3 삼각행렬 변환으로 구현하기
6.5 넘파이 실습

CHAPTER 07. 역행렬

7.1 역행렬의 개념
7.2 역행렬 계산
___ 7.2.1 2×2 행렬의 역행렬 구하기
___ 7.2.2 ??×?? 행렬의 역행렬 구하기
7.3 정사각 행렬의 거듭 제곱
7.4 역행렬의 성질
___ 7.4.1 역행렬의 거듭 제곱
___ 7.4.2 역행렬과 전치 행렬
___ 7.4.3 거듭 제곱 행렬의 역행렬
___ 7.4.4 역행렬과 행렬식
7.5 파이썬 실습
___ 7.5.1 단계적으로 계산하기
___ 7.5.2 함수로 구현하기

CHAPTER 08. 기저와 차원

8.1 벡터 공간
___ 8.1.1 벡터 공간의 개념
___ 8.1.2 부분 공간
8.2 선형 변환
8.3 선형 독립
8.4 기저
___ 8.4.1 기저의 정의
___ 8.4.2 기저와 벡터 공간
8.5 차원
8.6 행 공간ㆍ열 공간ㆍ영 공간
___ 8.6.1 행 공간ㆍ열 공간ㆍ영 공간의 개념
___ 8.6.2 행 공간ㆍ열 공간ㆍ영 공간의 성질
8.7 랭크와 널리티
___ 8.7.1 랭크와 널리티 개념
___ 8.7.2 랭크와 널리티의 성질

CHAPTER 09. 내적

9.1 내적의 개념
___ 9.1.1 내적 공간
___ 9.1.2 내적의 정의
___ 9.1.3 내적의 성질
___ 9.1.4 정사영
9.2 직교 공간과 정규 직교 공간
___ 9.2.1 직교 공간
___ 9.2.2 정규 직교 공간
___ 9.2.3 정규 직교 벡터를 활용한 좌표 표현
___ 9.2.4 직교 벡터를 활용한 좌표 표현
9.3 그램 슈미트 과정
___ 9.3.1 정사영 정리
___ 9.3.2 직교 정사영
9.4 QR분해
___ 9.4.1 기본적인 QR분해 방법
___ 9.4.2 그램 슈미트 과정을 이용한 QR분해
___ 9.4.3 하우스홀더 방법을 이용한 QR분해
9.5 파이썬 실습
___ 9.5.1 기본 내적 실습
___ 9.5.2 그램 슈미트 과정을 이용한 QR분해
___ 9.5.3 하우스홀더 방법을 이용한 QR분해
9.6 넘파이 실습
___ 9.6.1 기본 내적 실습
___ 9.6.2 QR분해 실습

CHAPTER 10. 다양한 곱 연산

10.1 외적과 크로네커 곱
___ 10.1.1 벡터의 외적
___ 10.1.2 크로네커 곱
10.2 벡터 곱
___ 10.2.1 벡터 곱의 정의
___ 10.2.2 벡터 곱의 기하학적 의미
10.3 삼중 곱
___ 10.3.1 스칼라 삼중 곱
___ 10.3.2 벡터 삼중 곱
10.4 파이썬 실습
10.5 넘파이 실습

CHAPTER 11. 고윳값과 고유 벡터

11.1 고윳값과 고유 벡터의 개념
11.2 고윳값과 고유 벡터 계산
___ 11.2.1 2×2 행렬의 고윳값과 고유 벡터 구하기
___ 11.2.2 3×3 행렬의 고윳값과 고유 벡터 구하기
___ 11.2.3 QR분해를 이용한 방법
11.3 고윳값과 고유 벡터의 성질
11.4 파이썬 실습
11.5 넘파이 실습

CHAPTER 12. 직교 행렬

12.1 직교 행렬의 개념
12.2 닮음
___ 12.2.1 닮음의 개념
___ 12.2.2 닮음의 성질
12.3 파이썬 실습
12.4 넘파이 실습

CHAPTER 13. 대각화

13.1 대각화의 개념
13.2 직교 대각화의 개념
13.3 고윳값 분해
13.4 특이값 분해
13.5 파이썬 실습
___ 13.5.1 고윳값 분해 실습
___ 13.5.2 특이값 분해 실습
13.6 넘파이 실습
___ 13.6.1 고윳값 분해 실습
___ 13.6.2 특이값 분해 실습

CHAPTER 14. LU분해

14.1 기본 행렬
___ 14.1.1 기본 행렬의 개념
___ 14.1.2 기본 행렬의 역행렬
14.2 LU분해
___ 14.2.1 LU분해의 개념
___ 14.2.2 LU분해 방법
___ 14.2.3 LU분해 쉽게 하기
___ 14.2.4 LU분해와 선형 시스템의 해
14.3 파이썬 실습
___ 14.3.1 LU분해 과정 살펴보기
___ 14.3.2 LU분해 함수 만들기
14.4 scipy 실습

CHAPTER 15. 행렬의 이차식

15.1 이차식 개념
15.2 양정치 행렬
15.3 벡터의 미분

CHAPTER 16. 텐서

16.1 텐서의 기초
___ 16.1.1 텐서의 개념
___ 16.1.2 텐서의 구성 원소
16.2 텐서의 기본 연산
___ 16.2.1 텐서의 노름
___ 16.2.2 텐서의 내적
___ 16.2.3 Rank One 텐서
___ 16.2.4 텐서의 대칭성
___ 16.2.5 대각 텐서
___ 16.2.6 텐서의 행렬화
___ 16.2.7 텐서 곱
16.3 파이썬 실습
16.4. 넘파이 실습

CHAPTER 17. 머신러닝과 선형대수

17.1 파이썬을 활용한 분석
___ 17.1.1 데이터 불러오기
___ 17.1.2 문자형 자료를 숫자형 자료로 변환
___ 17.1.3 데이터 열 추출
___ 17.1.4 데이터 열 연산
___ 17.1.5 전치 행렬 구하기
___ 17.1.6 피처ㆍ타깃 데이터 분할
___ 17.1.7 피처별 평균
___ 17.1.8 공분산 행렬
___ 17.1.9 특이값 분해
___ 17.1.10 머신러닝 적용하기
17.2 넘파이ㆍ판다스 라이브러리를 활용한 분석
___ 17.2.1 데이터 불러오기
___ 17.2.2 데이터 열 추출
___ 17.2.3 데이터 열 연산
___ 17.2.4 전치 행렬 구하기
___ 17.2.5 피처ㆍ타깃 데이터 분할
___ 17.2.6 공분산 행렬
___ 17.2.7 특이값 분해
___ 17.2.8 머신러닝 적용하기

CHAPTER 18. 딥러닝과 선형대수

18.1 파이썬을 활용한 분석
___ 18.1.1 데이터 불러오기
___ 18.1.2 피처ㆍ타깃 데이터 분할
___ 18.1.3 데이터 전처리
___ 18.1.4 이미지 데이터 확인
___ 18.1.5 원-핫 인코딩
___ 18.1.6 딥러닝 적용하기
18.2 넘파이ㆍ판다스 라이브러리를 활용한 분석
___ 18.2.1 데이터 불러오기
___ 18.2.2 피처ㆍ타깃 데이터 분할
___ 18.2.3 데이터 전처리
___ 18.2.4 이미지 데이터 확인
___ 18.2.5 원-핫 인코딩
___ 18.2.6 딥러닝 적용하기

저자 소개 (1명)

출판사 리뷰 출판사 리뷰 보이기/감추기

추상적이고 어렵게만 느껴지는 선형대수,
더는 피하지 말고 이 책과 함께 정면 돌파하라!


선형대수는 머신러닝과 딥러닝 분야뿐만 아니라 숫자를 다루는 거의 모든 분야에서 사용됨에도 불구하고, 그 중요성에 비해 쉽게 접하기 어려운 학문이다. 하지만 이 책과 함께라면 선형대수 이론을 파이썬으로 밑바닥부터 직접 구현해 보며 선형대수의 개념을 확실하게 잡을 수 있다. 이 책은 선형대수 이론을 수식으로 설명하고 파이썬을 이용해 단계별로 구현한 후 Numpy 코드로 검증하는 과정을 거친다. 이를 통해 선형대수의 수학적 개념을 자연스럽게 이해하고 문제 해결을 위한 라이브러리 활용 방법을 학습하도록 돕는다. 이 책을 통해 선형대수를 심도 있게 이해하길 바란다.

이 책의 특징

· 선형대수 내부 알고리즘을 집중 공략하고 실전에 적용해 본다.
· 행렬, 텐서, 기저, 차원 등 선형대수 필수 이론을 자세히 다룬다.
· 추상적인 선형대수 개념을 그림으로 알기 쉽게 설명한다.

이 책의 대상 독자

· 선형대수를 공부한 경험이 있지만, 실제 사용에 어려움을 느끼는 분
· 선형대수 알고리즘을 직접 구현하고 싶은 분

회원리뷰 (7건) 리뷰 총점9.8

혜택 및 유의사항?
알고리즘 구현으로 배우는 선형대수 with 파이썬 내용 평점4점   편집/디자인 평점4점 t**1 | 2022.02.07 | 추천0 | 댓글0 리뷰제목
 최근에 Machine Learning 기술이 많이 나오면서, Machine Learning과 관련된 책들이 많이 나오고 있다. Machine Learning을 공부하다보면, 확률, 분포를 이루는 통계학을 공부하고, 이런 통계학을 보다가 좀 더 기초적인 공부를 요구하면, 선형대수까지 찾아보게 된다.    y=wx+b라고 표시되는 중학생 수준의 1차 방정식이지만, 이를 기반으로 점점 더 많은 내용을 공;
리뷰제목

 최근에 Machine Learning 기술이 많이 나오면서, Machine Learning과 관련된 책들이 많이 나오고 있다. Machine Learning을 공부하다보면, 확률, 분포를 이루는 통계학을 공부하고, 이런 통계학을 보다가 좀 더 기초적인 공부를 요구하면, 선형대수까지 찾아보게 된다.

 

 y=wx+b라고 표시되는 중학생 수준의 1차 방정식이지만, 이를 기반으로 점점 더 많은 내용을 공부하면서 오랫동안 손을 놓았던 수학을 다시 공부하게 된다.

 

 내용은 간단한 개념에 대한 설명을 적고서, 추가적으로 파이썬으로 어떻게 구현하는지에 대한 코드가 표시되어 있는데, 정직한(?) 파이썬 코드를 이용해서 작성되어 있다. 파이썬 코드를 작성하다 보면, keyword나 lamda function 같은 것을 사용해서, 좀 더 간결한 코드를 작성하도록 다듬는데, 이 책의 코드는 for문과 list만을 이용해서 구현함으로써 코드가 simple하게 사용할 수 있도록 한 것이 장점일수도 있고, 단점일수도 있는 것 같다.

 

 최근에 출간된 2~3권 정도 책을 사서 공부했었는데, 이 책이 가장 이해하기가 쉽게 되어 있었다. 고등학교를 다닐 때는 수학을 열심히 공부했으나, 대학생 때는 학점을 따기 위해 공업수학을 외워서 대략 시험만 봤던 기억이 난다. 10년이 넘는 세월 끝에 다시 수학을 공부할려고 하다보니 진입 장벽이 높고, 기초적인 개념을 많이 잊어버려서 쉽지가 않은데, 이 책을 통해서 많은 내용을 다시 기억해 낼 수 있었다. 

 

 책에서 아쉬웠던 점은 선형대수와 머신러닝의 관계에 대해서 설명이 조금 부족한 것 같다. 나의 경험으로 봤을 때는 순수 선형대수에 대한 공부를 하는 것보다는 BLAS나 Boost를 이용해서 Python을 사용하거나 수치해석 프로그램을 작성하면서 좀 더 최적화를 할 수 있는 경우에 대해서 살펴보는 경우가 많은데, 이 책의 code는 너무 정직한 code로 구현되어서, 선형대수 그 자체만을 다루고 있다는 점이 아쉽다. 책의 독자가 혼자서 공부를 할 수 있도록 하는 점과 선형대수학 중심의 책을 내면서, 선택과 집중을 하다보니, 이렇게 된 것 같은데, 조금 아쉬운 마음이 든다.

 

 제가 읽어보고 싶어서 리뷰어 신청을 했고, BJ Public에서 도서를 제공해서 읽어보게 되었습니다!!

댓글 0 이 리뷰가 도움이 되었나요? 공감 0
[서평] 알고리즘 구현으로 배우는 선형대수 with 파이썬 내용 평점5점   편집/디자인 평점5점 r******1 | 2022.02.06 | 추천0 | 댓글0 리뷰제목
바야흐로 머신러닝과 딥러닝 전성시대이다 이에 따라 선형대수가 중요하다는 인식이 널리 퍼지고 있고, 이러한 현상은 바람직하다고 생각한다 그러나 중요성을 깨달았다고 하더라도 선형대수는 여전히 처음 접하는 사람들에게는 쉽지 않은 분야이다 물론 머신러닝과 딥러닝을 공부하기도 벅찬데 선형대수까지 공부하는 것은 부담으로 느껴질 수 있다 하지만 머신러닝과 딥러닝 분야뿐;
리뷰제목

바야흐로 머신러닝과 딥러닝 전성시대이다

이에 따라 선형대수가 중요하다는 인식이 널리 퍼지고 있고, 이러한 현상은 바람직하다고 생각한다

그러나 중요성을 깨달았다고 하더라도 선형대수는 여전히 처음 접하는 사람들에게는 쉽지 않은 분야이다

물론 머신러닝과 딥러닝을 공부하기도 벅찬데 선형대수까지 공부하는 것은 부담으로 느껴질 수 있다

하지만 머신러닝과 딥러닝 분야뿐만 아니라, 숫자를 사용하는 거의 모든 분야에서 선형대수 학습은 필수이다

 

선형대수는 분야 특성상 실습이 어렵다

따라서 대부분의 선형대수 책들은 계산에 치중한다

아마 선형대수를 처음 접할 때 계산으로 접하는 사람들은 동기부여가 잘되지 않을 거라 생각한다

또한 선형대수 개념을 이용해 실제로 프로그래밍할 때는 여러 가지 라이브러리의 도움을 받는데

이를 통해 결과를 쉽게 얻을 수 있지만 원리르 모르고 그저 사용하기만 한다면 제대로 응용하기 어려울 것이다

 

이 책은 실습 파트가 두 부분으로 나누어져 있다

첫 번째 실습 파트는 라이브러리의 도움을 받지 않고 파이썬으로 선형대수의 각 개념을 직접 구현하면서 의미를 파악한다

 

그리고 두 번째 실습 파트는 라이브러리를 활용해 선형대수 개념을 활용한다

첫 번째 실습 파트에서 라이브러리의 도움을 받지 않고 구현해 보았으므로 두 번째 실습 파트에서 라이브러리 활용을 할 때

어떤 원리로 계산되는지 이해할 수 있다

 

그리고 독학하는 독자들을 위해 최대한 그림으로 설명하려고 노력했으며, 선형대수 개념뿐만 아니라 소스코드의 흐름 역시 그림으로 표현한다

 

 

저자의 사이트

이메일: stoicheolwon@gmail.com

블로그: https://losskatsu.github.io

네이버카페: https://cafe.naver.com/aifromstat

 

 

책의 구성

Chapter 01 개발 환경 구성하기

파이썬 설치부터 가상환경 설정까지 실습을 위해 필요한 환경을 구축한다

 

Chapter 02 파이썬 기초

선형대수 이론을 구현하기 위해 필요한 자료형, 조건문, 반복문, 깊은 복사 등과 같은 파이썬 기초 개념을 배운다

 

Chapter 03 행렬

선형대수의 밑바탕이 되는 행렬의 기초적인 개념을 배우고 간단한 행렬 연산을 배운다

 

Chapter 04 다양한 행렬

전치 행렬, 대각 행렬, 단위 행렬, 삼각 행렬등 다양한 행렬을 배운다

 

Chapter 05 선형 시스템

행렬을 이용해 선형 시스템의 해를 구하는 방법을 다룬다

이를 위해 필요한 기본 행 연산과 가우스 조르단 소거법의 개념을 배운다

 

Chapter 06 행렬식

선형대수에서 중요한 개념인 행렬식에 대해 다룬다

행렬식이 의미하는 바를 배우고 실제로 계산해 보며 행렬식의 개념을 익힌다

 

Chapter 07 역행렬

행렬식을 이용해 역행렬을 구하는 방법을 배우고 파이썬으로 구현한다

 

Chapter 08 기저와 차원

선형대수의 핵심 개념인 기저와 차원을 익힌다

먼저 벡터 공간, 부분 공간, 선형 독립 등 기초 개념을 다루고 기저와 차원, 랭크의 개념을 배운다

 

Chapter 09 내적

정사영의 의미를 배우고 이를 이용해 내적의 개념과 계산하는 방법을 익힌다

추가적으로 직교의 개념을 배우고 종합적으로 그램 슈미트 과정을 다룬다

 

Chapter 10 다양한 곱 연산

벡터의 외적, 크로네커 곱, 벡터 곱, 삼중 곱과 같은 다양한 곱 연산을 다룬다

 

Chapter 11 고윳값과 고유 벡터

고윳값, 고유 벡터의 개념을 익히고 다양한 방법을 이용해 고윳값과 고유 벡터를 구한다

 

Chapter 12 직교 행렬

직교 행렬의 개념에 대해 배우고 이와 관련된 행렬의 닮음 개념을 다룬다

 

Chapter 13 대각화

대각화의 개념을 배우고 고윳값 분해, 특이값 분해와 같은 행렬 분해 방법을 다룬다

 

Chapter 14 LU분해

LU분해의 개념을 배우고 LU분해를 이용해 선형 방정식의 해를 구하는 방법을 다룬다

 

Chapter 15 행렬의 이차식

행렬의 이차식 개념을 배우고 양정치 행렬과 행렬의 미분법에 대해 배운다

 

Chapter 16 텐서

텐서의 개념을 배우고 텐서의 기본 연산에 대해 다룬다

 

Chapter 17 머신러닝과 선형대수

지금까지 배운 선형대수 개념을 머신러닝에 직접 적용한다

 

Chapter 18 딥러닝과 선형대수

지금까지 배운 선형대수 개념을 딥러닝에 직접 적용한다

 

 

서평

이 책은 이분야에 굉장히 조예가 깊은 저자가 선형대수의 중요성을 전파하고 머신러닝과 딥러닝을 공부하기 위해 필수적으로 이해하고 있어야 하는 선형대수에 대해 집필한 서적이다

 

이 책이 출간되기 전 이미 선형대수와 통계학으로 배우는 머신러닝 with 파이썬 책을 출간한 저자이기도 하다

 

이 책의 저자는 통계학 석사, 박사 과정을 밟았으며 데이터 분석과 머신러닝 업무를 수행해 왔으며

머신러낭 강의를 하고, 책을 쓰며, 개발을 하는 활동력이 굉장한 전문가 이다

관심 분야는 인공지능, 머신러닝, 통계학, 선형대수, 커널, 임베디드, IT 보안, 사물인터넷, 물리학, 철학이다

 

이 책은 파이썬 기본서가 아니고 선형대수의 이해를 돕고자 집필된 서적이므로 파이썬의 기초는 파이썬 기초 입문 서적으로

완벽히 숙지한다음 이 책을 읽어보는 것을 추천한다

 

이 책에서 저자는 많은 머신러닝, 딥러닝을 연구하고 활용하는 개발자들이 선형대수에 대해서 완벽히 이해하지 못하고 기술을 활용하고 있다고 얘기하고 있다

 

굳이 선행대수의 모든 원리를 이해하고 있지 않더라도 그 개념이 들어간 라이브러리들을 활용하면 쉽게 결과를 도출해낼 수 있기 때문이다

 

이 책의 초반부는 파이썬 기초와 선행대수의 기본 개념인 스칼라, 벡터, 행렬의 기초부터 다루고 있다

각 파트 별로 정의와 이론 원리를 수식으로 설명하고 이해하며 이해를 바탕으로 파이썬 실습과, 넘파이 실습을 해보면서 진행한다

이렇게 책을 읽어나가면서 다양한 수학적 정의 및 용어에 익숙해지게 된다

 

또한 선형대수가 텐서 및 머신러닝에 최종적으로 어떻게 적용되는지 설명하는 과정을 통해 선형대수에 대해서 깊은 이해를 할 수 있게 된다

 

저자가 대학시절 선형대수를 매우 어려워했던 경험으로 인해 선형대수를 어떻게 공부해나가야되는지 충분히 잘 이해하고 잘 설명해주고 있으므로 책의 단계별로 따라가다보면 선형대수를 공부해야되는 이유와 선형대수가 어떻게 머신러닝에 사용되는지 이해할 수 있게 되어

보다 더 흥미롭게 선형대수를 공부하고 깨달아 나갈 수 있게 된다

 

또한 저자는 데이터분석가 이자 머신러닝 엔지니어로 일을 했던 경험으로 현업에서 많이 사용하는 Numpy, Pandas, Scipy를 보다 더 잘 활용하는 방법에 대해서도 소개를 하고 있다

 

무엇보다 저자의 공부경험과 강사로서의 활동 경험을 바탕으로 쓰여진 이 책은 선형대수를 흥미롭게 재미있게 이해하기 위해서 선형대수를 처음 접하는 사람도 기초 개념을 잡을 수 있도록 매우 쉽게 설명하기 위해 매우 노력하는 책이다

 

이 책은 아무 생각없이 결과 도출을 위해서만 사용했던 파이썬 라이브러리에 대해 깊은 이해를 바탕으로 사용할 수 있게 도와주고

파이썬 라이브러리가 어떠한 구조로 선형대수 수식을 활용해 결과를 도출해내는지 이해할 수 있게 되므로 모든 과정에 대해서 완벽하게 이해하면서 업무를 진행하고 학습을 진행해나갈 수 있도록 도와준다

 

몇 년만에 이렇게 좋은 서적을 집필해서 출간해준 것 만으로도 감사할만큼 높은 퀄리티의 선형대수 서적을 읽을 수 있게 되어 정말 좋았다

 

아마 이런 높은 퀄리티의 내용으로 인해 당분간 이분이 집필한 선형대수 서적이 국내 베스트셀러가 되지 않을까 예측해본다

 

총평

이 책은 이분야에 오랫동안 몸담았던 저자가 대학생 시절 선형대수를 이해하고 공부했던 방법의 회의를 가지고 필요에 의해서 다시 학습하고 이해하면서 겪었던 고충들과 현업에서 업무를 하면서 쌓인 노하우들을 대방출 하는 서적이다

 

저자가 최근에 집필한 선형대수 서적은 총 두권이며 두권 모두 곧 국내 베스트셀러가 되지 않을까 예측 해본다

 

그만큼 높은 퀄리티를 자랑하고 있는서적이며 선형대수에 흥미를 못느꼈던 또는 공부에 어려움을 겪었던 또는 현업에서 선형대수의 깊은 이해없이 업무를 수행하고 있는 많은 사람들에게 반드시 읽어보라고 권장해주고 싶은 서적이다

 

이 책을 바탕으로 선형대수의 기초와 이론에 대해 이해할 수 있게 되고 파이썬 라이브러리를 사용하면서도 이 라이브러리가 선형대수의 어떠한 수식으로 이런 결과를 도출해내는지 완벽히 이해할 수 있게 되므로 좀 더 정확하게 업무를 진행할 수 있게 되고 문제점을 수정해 내갈 수 있게 된다

 

선형대수의 기초가 부족하다고 생각하는 사람들에게 저자가 집필한 선형대수 서적

 

선형대수와 통계학으로 배우는 머신러닝 with 파이썬,

알고리즘 구현으로 배우는 선형대수 with 파이썬

 

두 권을 읽어 보기를 적극 권장해본다

 

※출판사로부터 책을 무상으로 제공받아 직접 실습해보고 정성껏 작성한 리뷰 입니다

댓글 0 이 리뷰가 도움이 되었나요? 공감 0
알고리즘 구현으로 배우는 선형대수 내용 평점5점   편집/디자인 평점5점 꿈* | 2022.02.01 | 추천0 | 댓글0 리뷰제목
아마 공대를 처음 입학하면 제일 처음 배우는 전공기초 과목들이 있었을텐데, 전자과를 나왔던 나는 그 과목중에 선형대수학, linear algebra가 있었다. 사실 과목에서 다루는 것이 막연하게 행렬이 나오고 어떻게 곱하는지를 가르쳐주는 통에 지루해서 대충 들었었는데, 지금 돌이켜보면 그 때 수업을 안 들었던게 너무 후회가 된다. 행렬을 다루고 실제 생활에서 어떻게 사용되는지를;
리뷰제목

아마 공대를 처음 입학하면 제일 처음 배우는 전공기초 과목들이 있었을텐데, 전자과를 나왔던 나는 그 과목중에 선형대수학, linear algebra가 있었다. 사실 과목에서 다루는 것이 막연하게 행렬이 나오고 어떻게 곱하는지를 가르쳐주는 통에 지루해서 대충 들었었는데, 지금 돌이켜보면 그 때 수업을 안 들었던게 너무 후회가 된다. 행렬을 다루고 실제 생활에서 어떻게 사용되는지를 잘 배워뒀더라면 학과 수업이나 지금 일하는 것들이 조금 수월했을텐데 말이다.

 사실 선형대수학 수업을 들어보면 지루하긴 하다. 차원이 늘어나면서 한 식에 표현되는 숫자도 많아지고, 곱셈하나 잘못하면 전체 계산이 다 어그러지는 경우가 많아, 왠만하면 손으로 푸는 경우 끈기를 갖고 집중해야 한다. 다행히 요새는 이런 행렬 계산을 해주는 라이브러리도 많아 일일이 신경쓸 필요까지는 없지만, 그래도 선형대수에서 다뤄지는 주요 개념은 이해하고 있어야 한다. 나같은 경우는 현업에서 제어관련 논문을 보면 증명 부분이 항상 선형대수가 포함되어 있다. 그래서 이 주제가 참 어려우면서도 통계학과 같이 항상 배워야 할 분야라는 것을 느낀다.

 

알고리즘 구현으로 배우는 선형대수 with 파이썬

 

이번 포스트에서 소개하는 책은 이 선형대수 관련 알고리즘을 직접 파이썬으로 구현하는 것에 대한 내용을 담고 있다. 출판사에서는 나름 "빨간책과 초록책"이라는 의미를 부여해서 인공지능을 공부하는데 필요한 기본 주제인 통계학과 선형대수를 소개하고 있는데, 이 초록책은 선형대수에 대해서 다루고 있다.

앞에서 이야기했던 것처럼 선형대수학은 공대 전공기초 과목 중 하나이기도 하기 때문에, 이 주제를 다루는 대학 교재들이 참 많다. 이 책도 두께만 놓고 보며 여타 대학교재와 맞먹는 정도의 분량을 자랑한다. 여기서 마음에 들었던 것은 그 많은 분량속에 어떤 선형대수 함수를 파이썬으로 직접 구현하면서 예시와 이론 설명이 병행되어 있다는 점이다. 개인적으로는 뭔가를 직접 구현하면서 최종적으로 어떤 결과물이 나오는 것을 통해서 성취감을 느끼고 학습의 효과가 크다고 생각하는 편인데, 이 책은 전형적으로 그런 형태를 취하고 있다. 그래서 마지막 두 장에서는 실제 데이터를 바탕으로 학습했던 이론들을 실제 적용해보는 부분이 포함되어 있다.특히 예시 부분에서는 이해가 쉽도록 도식들도 많이 포함되어 있어 늘어난 내용만큼이나 설명이 자세하게 되어 있었다. 간단하게 책에서 다루고 있는 주제는 다음과 같다.

  • 행렬
  • 기저와 차원
  • 내적
  • 곱 연산
  • 고유값과 고유벡터
  • LU분해
  • 텐서
  • 이론적용

책의 내용이 전반적인 선형대수론에서 다뤄지는 내용들을 커버하기 때문에 선형대수를 처음 접하는 파이썬 개발자나 이미 알고 있는 사람들이 보기에도 좋다. 나는 현업에서 항상 어려움을 겪는 부분이 딥러닝 모델을 만들다가도 각 계층간의 텐서의 shape를 맞추는 부분인데, 책에서도 그림을 통해서 쉽게 설명되어 있는 부분이 괜찮았다.

선형대수 지식이 부족했던 것을 채우려고 나름 강의를 들었던게 Gilbert Strang 교수의 Linear Algebra and learning from data인데, 사실 강의 내용이 좋은줄은 알겠지만, 해당 지식을 어디에도 적용할 수 있을까 그런 막연함이 들었었는데, 그래도 나름 이 책을 통해서 그런 막연함이 조금 해소되는 듯 했다. 아마 비슷한 경험을 했던 사람이라면 관련 지식을 쌓는데 도움을 받지 않을까 생각한다.

(해당 포스트에서 소개하고 있는 "알고리즘 구현으로 배우는 선형대수" 책은 BJ퍼블릭으로부터 제공받았음을 알려드립니다.)

출처: https://talkingaboutme.tistory.com/entry/Book-Learning-linear-algebra-algorithm-with-python [자신에 대한 고찰]

댓글 0 이 리뷰가 도움이 되었나요? 공감 0

한줄평 (1건) 한줄평 총점 10.0

혜택 및 유의사항 ?
구매 평점5점
좋아요
이 한줄평이 도움이 되었나요? 공감 0
YES마니아 : 플래티넘 이*옹 | 2022.01.28
  •  쿠폰은 결제 시 적용해 주세요.
1   30,600
뒤로 앞으로 맨위로 aniAlarm