Python School — Numpy & Linear Algebra

Numpy & Linear Algebra

슬로우캠퍼스 — Numpy & Linear Algebra 강좌 소개

Python기반의 다양한 데이터분석 패키지 및 딥러닝 패키지들은 벡터, 행렬연산을 위해 내부적으로 numpy를 이용하고 있습니다. scikit-learn, OpenCV, tensor-flow 등을 잘 활용하시려면 numpy를 잘 아는 것이 필요합니다.

강의목표:

  • numpy의 상세한 구조와 활용법을 익힌다
  • numpy를 이용하여 선형대수(Linear Algebra)를 계산할 수 있다.
  • 머신러닝, 데이터분석에서 numpy를 잘 활용할 수 있다.

신청 및 관심등록:

신청하기

등록하기 (관심등록을 하시면 할인혜택을 드립니다)

  • 토요일(오후2~6시) x 3회 (12시간)
  • 정상가: 396,000원

강사:

문 쌤 — 위의 python관련 ppt의 본 저자가 집적 강의하십니다 :)

  • python 전문 강의 및 저서
  • (전) SK 연구원
  • 숭실대 컴퓨터공학

강의 내용 및 목차:

목차 및 강의 내용 — https://www.slideshare.net/dahlmoon/numpy-20160519

아래는 문쌤이 집필 중인 Numpy 관련 책의 일부 발췌입니다. 이 책을 내용과 슬라이드의 내용이 강의교재로 활용됩니다.

문쌤 집필 중인 책의 일부

교재 목차 상세:

1. 선형대수 기초…. 6

1.1 벡터…. 6

1.1.1. 벡터 이해하기…. 6

1.1.2. 벡터 크기 구하기…. 7

1.1.3. 벡터 산술 연산…. 9

1.1.4. 벡터 내적 구하기…. 12

1.2 행렬…. 15

1.2.1. 행렬 이해하기…. 15

1.2.2. 행렬 연산…. 16

1.2.3. 대각행렬/단위행렬 이해하기…. 24

1.2.4. 전치행렬…. 28

2. Numpy 기초…. 30

2.1 구조이해하기…. 30

2.1.1. ndarray 구조 이해하기…. 30

2.1.2. ndarray 타입 생성…. 34

2.1.3. Ndarray 속성 이해하기…. 36

2.1.4. Ndarray 메소드 이해하기…. 39

2.1.5. 1차원 Ndarray 생성 함수 이해하기…. 41

2.1.6. 다차원 Ndarray 생성 함수 이해하기…. 43

2.2. Numpy axis 이해하기…. 46

2.2.1. 1차원을 2차원으로 확장하기…. 46

2.2.2 2차원 axis 축 이해하기…. 48

2.2.3 3차원 axis 축 이해하기…. 49

2.2.4. 브로드캐스팅 이해하기…. 53

2.2.5. 벡터화 계산 이해하기…. 57

2.3. Numpy 검색/갱신 하기…. 59

2.3.1. __getitem__/__setitem 구조 이해하기…. 59

2.3.2. 행과 열 접근 이해하기…. 60

2.3.3. 행과 열을 슬라이스 접근 이해하기…. 61

2.3.4. 논리식으로 접근 이해하기…. 62

2.4. Numpy Fancy Indexing 이해하기…. 64

2.4.1. 원소만 추출…. 64

2.4.2. 행렬을 축소해서 추출하기…. 66

2.4.3. 표현식…. 69

2.4.4. 메소드 이용하기…. 71

2.5. Matrix class. 73

2.5.1. ndarray와 matrix 클래스 비교…. 73

2.5.2. matrix 클래스 속성/메소드…. 74

3.Numpy dtype 클래스…. 78

3.1 구조이해하기…. 78

3.1.1. 타입 변경…. 78

3.2. 생성이해하기…. 80

3.2.1. dtype 생성…. 80

3.2.2. dtype 속성…. 81

3.2 dtype class 칼럼 이름 부여하기…. 82

4. Numpy 함수…. 83

4.1 논리 주요 함수…. 83

4.1.1. Array contents/ Array type testing.. 83

4.1.2. Logical operations/ Comparison. 84

4.2. 계산 함수…. 86

4.2.1. 순서 및 정렬 함수…. 86

4.2.2. 질의 함수…. 88

4.2.3. 변환함수…. 91

4.2.4. 운영 함수…. 92

4.3 변형 주요 함수…. 95

4.3.1. 변형 함수…. 95

4.3.2. 배열 결합하는 함수…. 97

4.3.3. 배열 분리하는 함수…. 100

4.3.4. 원소를 이용해서 배열을 확장하는 함수…. 103

5. Numpy 심화…. 107

5.1 구조화된 배열 처리…. 107

5.5.1. 구조화된 배열 생성…. 107

5.5.2. 구조화된 배열 접근 및 변경…. 109

5.5.3. 구조화된 배열 : record array. 112

5.2 random 함수 처리…. 114

5.2.1. 통계 함수…. 114

5.2.2. Simple random data. 115

5.2.3. Permutations. 115

5.2.4. Distributions. 115

5.2.5. Random generator 118

5.3 특화 함수나 메소드를 이해하기…. 119

5.3.1. 함수 add 의 메소드 확인하기…. 119

5.3.2. 함수 logical_and 의 메소드 확인하기…. 121

5.3.3. frompyfunc 함수 사용하기…. 122

5.3.4. vectorize 함수 사용하기…. 122

5.3.5. 파일 처리 함수…. 124

6. 선형대수 심화…. 125

6.1 행렬식, 역행렬, 수반행렬…. 125

6.1.1. 행렬식…. 125

6.1.2. 역행렬…. 127

6.1.3. 수반행렬…. 128

6.2 Matrix eigenvalues. 133

6.2.1. 고유값과 고유벡터 정의…. 133

6.2.2. 고유값과 고유벡터…. 134

6.3. 분해…. 135

6.3.1. qr 분해…. 135

6.3.2. svd 분해…. 135

6.3.3. cholesky 분해…. 136

7. Matplotlib 기초…. 137

7.1 Matplotlib plot 그래프 기초…. 137

7.1.1. 선 그래프 그려보기…. 137

7.1.2. 다중곡선 그리기…. 138

7.1.3. 그래프 선 색상 및 칼라…. 139

7.1.4. 그래프 타이틀/레이블/범례 처리…. 145

7.1.5. 좌표에 대한 추가 정리…. 147

7.2. 그래프를 동시에 여러 개 그리기…. 150

7.2.1. 여러 그래프를 그리기…. 150

7.2.2. subplot 으로 그래프 분리하기…. 152

7.3 Matplotlib 주요 그래프…. 156

7.3.1. plot 그래프 그리기…. 156

7.3.2. pie chart 그래프 그리기…. 156

7.3.3. scatter 그래프 그리기…. 157

7.3.4. histgram그래프 그리기…. 163

7.3.5. barchart 그리기…. 164

7.3.6. contour 그래프 그리기…. 165

7.3.7. Vector plots. 167