케라스
-
● 머신러닝에서 앙상블(ensemble)이란?앙상블 기법은 동일한 학습 알고리즘을 사용해 여러 모델을 학습하는 기법입니다.괜찮은 Single Learner(단일 학습기)보다 Weak Learner를 결합하면 더 좋은 성능을 얻을 수 있다는 아이디에서 출발한 방법이기도 합니다. 즉, 성능이 좋지 않은 모델을 모아 성능이 좋은 모델 하나를 만드는 것입니다.Weak Learner : Learner는 특정한 데이터를 이용해 인스턴스화 한 모델을 뜻하며, Weak Learner는 최종적인 결과물보다 상대적으로 정확하지 않은 결과를 보이는 learner를 말합니다. 예전에는 Kaggle(국제적인 머신러닝 문제풀이 사이트)에서 평타이상을 치는 모델로 랜덤포레스트를 사용하였는데 요즘에는 XGBoost를 많이 사용한다고..
[Keras] 튜토리얼10 - 앙상블(ensemble)● 머신러닝에서 앙상블(ensemble)이란?앙상블 기법은 동일한 학습 알고리즘을 사용해 여러 모델을 학습하는 기법입니다.괜찮은 Single Learner(단일 학습기)보다 Weak Learner를 결합하면 더 좋은 성능을 얻을 수 있다는 아이디에서 출발한 방법이기도 합니다. 즉, 성능이 좋지 않은 모델을 모아 성능이 좋은 모델 하나를 만드는 것입니다.Weak Learner : Learner는 특정한 데이터를 이용해 인스턴스화 한 모델을 뜻하며, Weak Learner는 최종적인 결과물보다 상대적으로 정확하지 않은 결과를 보이는 learner를 말합니다. 예전에는 Kaggle(국제적인 머신러닝 문제풀이 사이트)에서 평타이상을 치는 모델로 랜덤포레스트를 사용하였는데 요즘에는 XGBoost를 많이 사용한다고..
2019.12.31 -
● 신경망(Neural Network)의 발전단층 신경망 : 입력층 + 출력층다층 신경망 : 입력층 + 히든층 + 출력층심층 신경망 : 입력층 + 2개이상의 히든층 + 출력층 ● MLP(MultiLayer Perceptron) 다층 퍼셉트론 이란? 퍼셉트론으로 이루어진 층(layer) 여러 개를 순차적으로 붙여놓은 형태입니다. 입력에 가까운 층을 아래에 있다고 하고, 출력에 가까운 층을 위에 있다고 합니다. 신호는 아래에서 위로 계속 움직이며, MLP에서는 인접한 층의 퍼셉트론간의 연결은 있어도 같은 층의 퍼셉트론끼리의 연결은 없습니다. 또, 한번 지나간 층으로 다시 연결되는 피드백(feedback)도 없습니다. 각 층은 그래프 구조에서 하나의 노드처럼 동작합니다. 즉, 입력이 들어오면 연산을 한 ..
[Keras] 튜토리얼9 - MLP(MultiLayer Perceptron) 구현하기● 신경망(Neural Network)의 발전단층 신경망 : 입력층 + 출력층다층 신경망 : 입력층 + 히든층 + 출력층심층 신경망 : 입력층 + 2개이상의 히든층 + 출력층 ● MLP(MultiLayer Perceptron) 다층 퍼셉트론 이란? 퍼셉트론으로 이루어진 층(layer) 여러 개를 순차적으로 붙여놓은 형태입니다. 입력에 가까운 층을 아래에 있다고 하고, 출력에 가까운 층을 위에 있다고 합니다. 신호는 아래에서 위로 계속 움직이며, MLP에서는 인접한 층의 퍼셉트론간의 연결은 있어도 같은 층의 퍼셉트론끼리의 연결은 없습니다. 또, 한번 지나간 층으로 다시 연결되는 피드백(feedback)도 없습니다. 각 층은 그래프 구조에서 하나의 노드처럼 동작합니다. 즉, 입력이 들어오면 연산을 한 ..
2019.12.30 -
지금까지 예제에 사용했던 모델을 설계하는 방식은 sequential API를 사용한 것 입니다.하지만 sequential API는 여러층을 공유하거나, 다양한 종류의 입출력을 사용하는 등의 복잡한 모델을 만드는 일을 하기에는 한계가 있습니다. 이번 포스팅에서는 복잡한 모델을 생성할 수 있는 방식은 functioanl API(함수형 API)에 대해서 알아봅시다. ● Sequential API1234from tensorflow.keras.models import Sequentialfrom tensorflow.keras.layers import Densemodel=Sequential()model.add(Dense(3, input_dim=4, activation='softmax'))cs sequential a..
[Keras] 튜토리얼8 - 함수형으로 모델 구축(functional API)지금까지 예제에 사용했던 모델을 설계하는 방식은 sequential API를 사용한 것 입니다.하지만 sequential API는 여러층을 공유하거나, 다양한 종류의 입출력을 사용하는 등의 복잡한 모델을 만드는 일을 하기에는 한계가 있습니다. 이번 포스팅에서는 복잡한 모델을 생성할 수 있는 방식은 functioanl API(함수형 API)에 대해서 알아봅시다. ● Sequential API1234from tensorflow.keras.models import Sequentialfrom tensorflow.keras.layers import Densemodel=Sequential()model.add(Dense(3, input_dim=4, activation='softmax'))cs sequential a..
2019.12.21 -
지난 포스팅에서 데이터를 train, test, validation으로 나누는 것이 성능에 좋다는 내용을 포스팅 하였습니다. 2019/12/19 - [SW개발/Python Keras] - [케라스] 무작정 튜토리얼6 - train, test, validation DATA [케라스] 무작정 튜토리얼6 - train, test, validation DATA● train, test, validation DATA train, test, validation data에 대한 설명 이전 포스팅 참고 2019/12/17 - [SW개발/Python Keras] - [케라스] 무작정 튜토리얼4 - RMSE, R2 (feat.회귀모델) [케라스] 무작정 튜..ebbnflow.tistory.com 오늘은 데이터를 tra..
[Keras] 튜토리얼7 - 데이터 자르기(train_test_split)지난 포스팅에서 데이터를 train, test, validation으로 나누는 것이 성능에 좋다는 내용을 포스팅 하였습니다. 2019/12/19 - [SW개발/Python Keras] - [케라스] 무작정 튜토리얼6 - train, test, validation DATA [케라스] 무작정 튜토리얼6 - train, test, validation DATA● train, test, validation DATA train, test, validation data에 대한 설명 이전 포스팅 참고 2019/12/17 - [SW개발/Python Keras] - [케라스] 무작정 튜토리얼4 - RMSE, R2 (feat.회귀모델) [케라스] 무작정 튜..ebbnflow.tistory.com 오늘은 데이터를 tra..
2019.12.20 -
● train, test, validation DATAtrain, test, validation data에 대한 설명 이전 포스팅 참고2019/12/17 - [SW개발/Python Keras] - [케라스] 무작정 튜토리얼4 - RMSE, R2 (feat.회귀모델) [케라스] 무작정 튜토리얼4 - RMSE, R2 (feat.회귀모델)● 데이터셋 나누기 회귀모델에서 성능을 평가하는 RMSE와 R2에 대해 알아보기 전에 먼저 train data와 test data를 분류해 보도록 하겠습니다. train데이터와 test데이터를 나누지 않는다면 머신은 정해진 답만..ebbnflow.tistory.com ● Test set과 Validation set 차이점validation data set은 하이퍼 파라..
[Keras] 튜토리얼6 - train, test, validation DATA● train, test, validation DATAtrain, test, validation data에 대한 설명 이전 포스팅 참고2019/12/17 - [SW개발/Python Keras] - [케라스] 무작정 튜토리얼4 - RMSE, R2 (feat.회귀모델) [케라스] 무작정 튜토리얼4 - RMSE, R2 (feat.회귀모델)● 데이터셋 나누기 회귀모델에서 성능을 평가하는 RMSE와 R2에 대해 알아보기 전에 먼저 train data와 test data를 분류해 보도록 하겠습니다. train데이터와 test데이터를 나누지 않는다면 머신은 정해진 답만..ebbnflow.tistory.com ● Test set과 Validation set 차이점validation data set은 하이퍼 파라..
2019.12.19 -
● Sequential Model Sequential 모델은 레이어들이 일렬로 쭉 나열된 형태이며 쉽게 레이어 구성할 수 있습니다. 그래서 Sequential모델의 summery를 보고 모델 구조를 파악하는 연습을 해보도록 하겠습니다. input_dim(혹은 input_shape)에서 받은 노드 갯수를 그대로 입력으로, Dense(5)와 Dense레이어 모델의 파라미터 값으로 준 값을 그대로 아웃풋의 갯수로 받습니다. 예제 코드1234567891011121314from keras.models import Sequentialfrom keras.layers import Denseimport numpy as np x = np.array([1,2,3,4,5])y = np.array([1,2,3,4,5])x2..
[Keras] 튜토리얼5 - summery()로 모델 구조 확인● Sequential Model Sequential 모델은 레이어들이 일렬로 쭉 나열된 형태이며 쉽게 레이어 구성할 수 있습니다. 그래서 Sequential모델의 summery를 보고 모델 구조를 파악하는 연습을 해보도록 하겠습니다. input_dim(혹은 input_shape)에서 받은 노드 갯수를 그대로 입력으로, Dense(5)와 Dense레이어 모델의 파라미터 값으로 준 값을 그대로 아웃풋의 갯수로 받습니다. 예제 코드1234567891011121314from keras.models import Sequentialfrom keras.layers import Denseimport numpy as np x = np.array([1,2,3,4,5])y = np.array([1,2,3,4,5])x2..
2019.12.18 -
● 데이터셋 나누기회귀모델에서 성능을 평가하는 RMSE와 R2에 대해 알아보기 전에 먼저 train data와 test data를 분류해 보도록 하겠습니다. train데이터와 test데이터를 나누지 않는다면 머신은 정해진 답만 외우는 형식으로 훈련을 하게 될 것이고 새로운 데이터가 들어왔을때 전혀 예측을 하지 못하게 됩니다. Train Data = 모델의 훈련을 위한 훈련용 데이터. Test Data = 모델을 평가하기 위해 정답(결과)을 이미 알고있는 테스트용 데이터.Validation Data = 여러 분석 모델 중 어떤 모델이 적합한지 선택하기 위한 검증용 데이터. 대체로 훈련데이터 : 테스트데이터의 비율은 7:3 정도를 사용한다고 하고, validation data도 사용하였을 때는 6:2:2를 ..
[Keras] 튜토리얼4 - RMSE, R2 (feat.회귀모델)● 데이터셋 나누기회귀모델에서 성능을 평가하는 RMSE와 R2에 대해 알아보기 전에 먼저 train data와 test data를 분류해 보도록 하겠습니다. train데이터와 test데이터를 나누지 않는다면 머신은 정해진 답만 외우는 형식으로 훈련을 하게 될 것이고 새로운 데이터가 들어왔을때 전혀 예측을 하지 못하게 됩니다. Train Data = 모델의 훈련을 위한 훈련용 데이터. Test Data = 모델을 평가하기 위해 정답(결과)을 이미 알고있는 테스트용 데이터.Validation Data = 여러 분석 모델 중 어떤 모델이 적합한지 선택하기 위한 검증용 데이터. 대체로 훈련데이터 : 테스트데이터의 비율은 7:3 정도를 사용한다고 하고, validation data도 사용하였을 때는 6:2:2를 ..
2019.12.17 -
● 예제 코드123456789101112131415161718192021222324from keras.models import Sequentialfrom keras.layers import Denseimport numpy as np x = np.array([1,2,3,4,5,6,7,8,9,10])y = np.array([1,2,3,4,5,6,7,8,9,10])x2 = np.array([11,12,13,14,15]) model = Sequential()model.add(Dense(10, input_dim=1, activation='relu'))model.add(Dense(8))model.add(Dense(7))model.add(Dense(6))model.add(Dense(1)) model.compile(l..
[Keras] 튜토리얼3 - 검증손실 값(acc, loss)● 예제 코드123456789101112131415161718192021222324from keras.models import Sequentialfrom keras.layers import Denseimport numpy as np x = np.array([1,2,3,4,5,6,7,8,9,10])y = np.array([1,2,3,4,5,6,7,8,9,10])x2 = np.array([11,12,13,14,15]) model = Sequential()model.add(Dense(10, input_dim=1, activation='relu'))model.add(Dense(8))model.add(Dense(7))model.add(Dense(6))model.add(Dense(1)) model.compile(l..
2019.12.16