1장 - 딥 러닝을 시작하기 전에
- 머신 러닝 워크플로우
- 수집(Acquisition): 자연어 데이터 corpus를 수집
- 점검 및 탐색(Inspection and exploration): 변수를 점검하며 데이터의 특징 및 관계 알아냄. EDA라고도 함
- 전처리 및 정제: 토큰화, 정제, 정규화, 불용어 제거 등을 함
- 모델링 및 훈련: 데이터를 훈련용, 검증용, 테스트용으로 나눠서 훈련용 데이터를 훈련시킴.
- 평가
- 배포
1. 판다스, 넘파이
- Pandas: 데이터 처리용
import pandas as pd
1. Series: 1차원 배열의 values에 index 부여 가능 (파이썬 dictionary key-value처럼)
sr = pd.Series([17000, 18000, 1000, 5000],index=["피자", "치킨", "콜라", "맥주"])
print('시리즈의 값 : {}'.format(sr.values))
print('시리즈의 인덱스 : {}'.format(sr.index))
->
시리즈의 값 : [17000 18000 1000 5000]
시리즈의 인덱스 : Index(['피자', '치킨', '콜라', '맥주'], dtype='object')
2. DataFrame: 2차원 리스트를 매개변수로 전달. Series에 columns까지 추가된 느낌
values = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
index = ['one', 'two', 'three']
columns = ['A', 'B', 'C']
df = pd.DataFrame(values, index=index, columns=columns)
ㄴ DataFrame를 이중리스트로 구현하면: df를 만들고 열을 따로 지정해서 만들 수 있음
dictionary로 하면 그냥 열마다 값을 줘서 만들기
ㄴ df 조회용 함수:
- df.head(n) - 앞 부분을 n개만 보기
- df.tail(n) - 뒷 부분을 n개만 보기
- df['열이름'] - 해당되는 열을 확인
ㄴ df = pd.read_csv('파일명') 으로 외부 파일 읽어와서 자동으로 인덱스 부여됨.
- Numpy: 수치데이터 다루는용
import numpy as np
1. np.array(): 리스트, 튜플, 배열로부터 ndarray 생성
mat = np.array([[10, 20, 30], [ 60, 70, 80]])
->
[[10 20 30]
[60 70 80]]
ㄴ mat.ndim로 몇 차원인지, mat.shape로 전체 크기 출력함.
ㄴ np.zeros(), np.ones(), np.full(), np.eye(), np.random.random()으로 배열 초기화 가능.
ㄴ 이외에도 np.arange(n), np.reshape(), np.add(), np.subtract(), np.multiply(), np.divide() 등이 있음
2. 데이터의 분리
- 지도학습: 정답이 미리 주어짐 > 바탕으로 훈련 (전체 데이터를 훈련/테스트로 나눠서 함)
- x와 y 분리: zip()함수나 df, Numpy의 slicing으로 분리 가능
- 테스트 데이터 분리
- sklearn을 이용
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size= 0.2, random_state=1234)
test_size : 테스트 데이터수를 지정. 1보다 작은 실수면, 비율 나타냄. (위에선 테스트 20 훈련 80임)
train_size : 학습 데이터수를 지정. 1보다 작은 실수면, 비율 나타냄.
random_state : 난수 seed (숫자에 따라 다른걸 뽑음) - 수동 분리
num_of_train = int(len(X) * 0.8) # 데이터의 전체 길이의 80%
num_of_test = int(len(X) - num_of_train) # 전체- 80%
X_test = X[num_of_train:] # 뒤에서 20%만큼
y_test = y[num_of_train:] # 뒤에서 20%만큼
# train도 똑같이
2장 - PyTorch 기초
1. 파이토치 패키지의 기본 구성
- torch.autograd: 자동 미분을 위한 함수 포함
- torch.nn: 활성화 함수, 손실함수 등 신경망 구축위한 것들 정의
- torch.optim: SGD를 중심으로 한 파라미터 최적화 알고리즘 구현
- torch.utils.data: SGD 반복연산 할때 사용하는 미니배치용 함수포함
3장 - 머신러닝 입문하기
1. 선형 회귀와 자동 미분
- 선형회귀 식: y=Wx+b
- 비용함수: 임의로 선형회귀식에 따라 그린 그래프중에 주어진 데이터와의 오차값을 계산해서

이 식에 넣어서 오차 제곱합을 구하고 n으로 나누면 MSE가됨.
-> MSE를 최소로 만드는 W와 b를 찾아내는 것이 가장 데이터를 잘 반영한 것이 됨.
- 경사하강법: 최적화 알고리즘중 하나.
읽는중...
'공부 > 책' 카테고리의 다른 글
| C# 프로그래밍 입문 (0) | 2026.07.07 |
|---|
