목록전체 글 (68)
My Data Story

◈ '시계열 데이터 분석 절차' 목차 ◈ 1. 시계열 데이터 분석 절차(1/6) - 시계열 데이터 패턴 추출 2. 시계열 데이터 분석 절차(2/6) - 시계열 데이터 분리 3. 시계열 데이터 분석 절차(3/6) - 시계열 데이터 전처리(1) 시계열 데이터 내 X요인들간의 관계를 파악하고 X요인에 대한 데이터 전처리 방법을 살펴보자 4. 시계열 데이터 분석 절차(4/6) - 시계열 데이터 전처리(2) 5. 시계열 데이터 분석 절차(5/6) - 시계열 레퍼런스 모델 구현 및 성능 확인 6. 시계열 데이터 분석 절차(6/6) - 분석 종료 위한 잔차 진단 시계열 예측 정확성을 높일 수 있도록 현실적인 데이터 패턴을 반영하여 X요인과 Y요인에 대해 데이터 전처리를 진행해야 한다. X요인에 필요한 데이터 전처리는..

◈ '시계열 데이터 분석 절차' 목차 ◈ 1. 시계열 데이터 분석 절차(1/6) - 시계열 데이터 패턴 추출 2. 시계열 데이터 분석 절차(2/6) - 시계열 데이터 분리 시계열 데이터 분석 시 시점을 고려해 훈련셋, 검증셋, 테스트셋을 분리하는 방법에 대해 살펴보자. 3. 시계열 데이터 분석 절차(3/6) - 시계열 데이터 전처리(1) 4. 시계열 데이터 분석 절차(4/6) - 시계열 데이터 전처리(2) 5. 시계열 데이터 분석 절차(5/6) - 시계열 레퍼런스 모델 구현 및 성능 확인 6. 시계열 데이터 분석 절차(6/6) - 분석 종료 위한 잔차 진단 1. 시계열 데이터 분리 (Time Series Validation) 시계열 데이터를 준비할 때 랜덤성(set.seed)를 부여하면 안되고 시간축 유..

◈ '시계열 데이터 분석 절차' 목차 ◈ 1. 시계열 데이터 분석 절차(1/6) - 시계열 데이터 패턴 추출 시계열 데이터에 대한 정의를 살펴보고, 시계열 분석을 위해 어떤 시계열 변수를 추출해야 하는 지 살펴보자. 2. 시계열 데이터 분석 절차(2/6) - 시계열 데이터 분리 3. 시계열 데이터 분석 절차(3/6) - 시계열 데이터 전처리(1) 4. 시계열 데이터 분석 절차(4/6) - 시계열 데이터 전처리(2) 5. 시계열 데이터 분석 절차(5/6) - 시계열 레퍼런스 모델 구현 및 성능 확인 6. 시계열 데이터 분석 절차(6/6) - 분석 종료 위한 잔차 진단5. 시계열 데이터 분석 절차(5/5) - 분석 종료 위한 잔차 진단 1. 시계열 데이터 (Time Series Data) 시계열 데이터는 일..

◈ '앙상블 학습' 목차 ◈ 1. 배깅, 페이스팅 2. 랜덤포레스트 3. 에이다부스트 4. 그레이디언트 부스팅 5. XGBoost 최적화된 그레이디언트 부스팅 구현 패키지 XGBoost 에 대해 살펴보자. 6. 스태킹 1. XGBoost 란? XGBoost는 최적화된 그레이디언트 부스팅 구현으로 유명하다. XGBoost의 목적 함수는 손실 함수에 규제항을 추가하여 과적합을 줄일 수 있도록 한다. 이때 손실 함수는 과제 종류에 따라 달라진다. 회귀 문제 시 Squared Error 를 활용하고, 이진 분류 문제 시 Logisitic 손실 함수를 활용하고, 다중 분류 문제 시 Softmax 손실 함수를 활용한다. 그 밖에도 활용 가능한 손실 함수 종류가 다양하다. XGBoost는 순차적으로 이전 학습기에서 ..
◈ '인공 신경망' 목차 ◈ 1. 퍼셉트론 2. 다층 퍼셉트론 3. 케라스 API 소개 4. 시퀀셜 API 구현 5. 함수형 API 구현 6. 서브클래싱 API 구현 7. 모델 저장과 복원, 콜백, 텐서보드 8. 신경망 하이퍼파라미터 튜닝하기 최적의 신경망 구축하기 위해 적절한 하이퍼파라미터를 선정하는 방법에 대해 살펴보자. 신경망의 유연성은 단점이기도 하다. 조정할 하이퍼파라미터가 많기 때문이다. 아주 복잡한 네트워크 구조에서 뿐만 아니라 간단한 다층 퍼셉트론에서도 층의 개수, 층마다 있는 뉴런의 개수, 각 층에서 사용하는 활성화 함수, 가중치 초기화 전략 등 많은 것을 바꿀 수 있다. 그렇다면 어떻게 어떤 하이퍼파라미터 조합이 주어진 문제에 최적인지 알 수 있을 까요? 1. GridSearchCV/R..
◈ '인공 신경망' 목차 ◈ 1. 퍼셉트론 2. 다층 퍼셉트론 3. 케라스 API 소개 4. 시퀀셜 API 구현 5. 함수형 API 구현 6. 서브클래싱 API 구현 7. 모델 저장과 복원, 콜백, 텐서보드 시퀀셜 API와 함수형 API를 통해 구현한 모델을 저장하고 복원하는 방법에 대해 살펴보고 특정 시점에 원하는 조건의 모델을 저장하도록 설정하는 콜백 구현 방법에 대해 살펴보고 모델 훈련 후 모델에 대한 summary 를 시각화하여 분석할 수 있는 텐서보드 구현 방법에 대해 알아보자. 8. 신경망 하이퍼파라미터 튜닝하기 1. 모델 저장과 복원 시퀀셜 API와 함수형 API를 사용하면 훈련된 케라스 모델을 저장하는 것은 매우 쉽다. 케라스는 HDF5 포맷을 사용하여 모든 층의 하이퍼파라미터와 더불어, ..
◈ '인공 신경망' 목차 ◈ 1. 퍼셉트론 2. 다층 퍼셉트론 3. 케라스 API 소개 4. 시퀀셜 API 구현 5. 함수형 API 구현 6. 서브클래싱 API 구현 모델 구현에 유연성을 더하여 여러 가지 동적인 구조를 필요로 할 때 사용할 수 있는 서브클래싱 API 구현 방법을 살펴보자. 7. 모델 저장과 복원, 콜백, 텐서보드 8. 신경망 하이퍼파라미터 튜닝하기 지금까지 살펴본 시퀀셜 API 와 함수형 API는 선언적이었다. 즉 사용할 층과 연결 방식을 먼저 정의한 후, 모델에 데이터를 주입하여 훈련이나 추론을 시작할 수 있다. 이 방식에는 장점이 많다. 모델을 저장하거나 복사, 공유하기 쉽다. 또 한 모델의 구조를 출력하거나 분석하기 좋다. 프레임워크가 크기를 짐작하고 타입을 확인하여 데이터가 주입..

◈ '인공 신경망' 목차 ◈ 1. 퍼셉트론 2. 다층 퍼셉트론 3. 케라스 API 소개 4. 시퀀셜 API 구현 5. 함수형 API 구현 다양한 입력과 출력의 복잡한 구조를 구현할 수 있는 함수형 API 구현 방법에 대해 살펴보자. 6. 서브클래싱 API 구현 7. 모델 저장과 복원, 콜백, 텐서보드 8. 신경망 하이퍼파라미터 튜닝하기 Sequential 모델이 매우 널리 사용되지만, 입력과 출력이 여러 개이거나 더 복잡한 네트워크 토폴로지를 갖는 신경망을 만들어야 할 때가 있다. 이를 위해 케라스는 함수형 API를 제공한다. 1. 와이드 & 딥 신경망 와이드 & 딥 신경망은 입력의 일부가 또는 전체가 출력층에 바로 연결된다. 이 구조를 사용하면 신경망이 복잡한 패턴(깊게 쌓은 층을 활용)과 간단한 규칙..

◈ '인공 신경망' 목차 ◈ 1. 퍼셉트론 2. 다층 퍼셉트론 3. 케라스 API 소개 4. 시퀀셜 API 구현 시퀀셜 API를 통해 분류용 MLP와 회귀용 MLP 구현하는 방법에 대해 살펴보자. 5. 함수형 API 구현 6. 서브클래싱 API 구현 7. 모델 저장과 복원, 콜백, 텐서보드 8. 신경망 하이퍼파라미터 튜닝하기 1. 시퀀셜 API를 사용하여 분류기 만들기 1.1 데이터셋 적재하기 fashion_mnist = keras.datasets.fashion_mnist (X_train_full, y_train_full), (X_test, y_test) = fashion_mnist.load_data() X_valid, X_train = X_train_full[:5000]/255, X_train_full..