일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- 변수의 범위 #Scope #scope #Static #static #지역변수 #전연변수 #global #local
- 대화설계 #시나리오 설계 #Flowchart #플로우차트 작성
- SQLD #DDL #DML #DCL #TCL #DB #SQLP #DataBase #자격증 # IT #명령어 #SQL #쿼리
- RPA #실습 #라이브러리 #RPA라이브러리 #task #Process #Task #Assign #변수
- 학습하기 #봇 학습 #테스트 방법 #디버깅
- 스마트인재개발원 #스마트인재캠퍼스 #MLP #이미지분석 #AI #인공지능 #머신러닝 #딥러닝
- RPA #실습 #라이브러리 #RPA라이브러리 #task #Process #Task
- #Brity #BrityRPA #FlowControl
- RPA #실습 #라이브러리 #RPA라이브러리 #task #Process #Task #Script #ExecuteScript
- field #Field #Method #method #필드 #속성 #메소드 #행동 #객체 #Class구성요소
- VDI #DRM #디지털 저작권 관리 #가상 데스크톱 인프라 #용어 #IT용어 #개발자 #신입
- 열거형 #enum #JDK5
- 참조(Reference)타입 #클래스
- this. #this #this키워드 #객체 자신 참조 #필드호출 #메소드호출
- Brity #BrityRPA #FlowControl
- 연산자 #일치연산자 #기본연산자 #불일치연산자
- 스마트인재개발원 #deep learning #MLP #다층 레이어 퍼셉트론 #퍼셉트론 #선형분류 #다중 선형분류 #AI #머신러닝 #뉴런 #신경망
- String Class #String #Class
- Brity Assistant #대화분석 #설계 #ChatBot #변수 #학습 #대화학습 #동의어 #동의어 처리 #단어사전
- Brity #Brity Assistant #ChatBit #챗봇 #자연어 처리 #Brity RPA #삼성SDS #대화분석 #대화설계
- 순전파 #역전파 #MLP
- Class #클래스 #Java #JAVA #자바 #java기초 #java입문 #java #자바 개념 #programming #공부 #개발 공부 #코드 정리 #코딩테스트 #알고리즘
- 스마트인재개발원 #광주인공지능학원 #JavaScript #Web #Java
- 생성자 #메소드랑 햇갈려 #생성자랑 메소드는 다른거지롱 #객체생성 #new 연산자 #인스턴스화 #인스턴스 생성
- 메소드 오버로딩 #Method Overloading #오버로딩 #중복정의 #Overloading
- Java #JAVA #자바 #java기초 #java입문 #java #자바 개념 #programming #공부 #개발 공부 #코드 정리 #코딩테스트 #알고리즘
- Class #class #reference
- 스마트인재개발원 #광주인공지능학원 #JavaScript #JS #형변환 #자바스크립트 #Web #back-end #front-end
- For #Loop #반복문
- #시그모이드 #광주인공지능학원 #스인개
- Today
- Total
코딩몬
[스마트인재개발원] Keras Iris 분류모델 실습(MLP 실습) 본문
Keras 활용 Iris 분류모델 실습
입력 : 4개(꽃잎의 길이, 너비, 꽃받침의 길이, 너비)
출력 : 3개(품종)
<keras 에서 모델 생성 준비>
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense, InputLayer
from tensorflow.keras.optimizers import SGD
- 딥러닝 모델의 기본 뼈대 (Sequential : 순차적인) 뉴런들을 순차적으로 붙임
- 뉴런의 모음(1개의 층을 의미) 많이 붙힐수록 뉴런들의 층이 깊어진다.
- 최적화 도구(SGD : 경사하강법)
<1. 모델 구조 쌓기>
model = Sequential()
model.add(InputLayer(input_shape = 4)) # 입력층
model.add(Dense(8, activation = 'sigmoid'))# 중간층
model.add(Dense(4, activation = 'sigmoid'))# 중간층
model.add(Dense(3, activation = 'softmax')) # 출력층
* 중간층
- 한 층에 몇 개의 퍼셉트론을 연결할 것인가
* 출력층
- activation 은 이진분류일 경우 sigmoid | 다중분류일 경우 : softmax | 회귀모델일 경우 linearRegressor, 생략
- 선형모델이 3개가 달려있는것(0번품종, 1번품종, 2번품종)
<2. 모델 학습 방법 설정>
model.compile(loss = 'categorical_crossentropy', optimizer = 'Adam', metrics = ['accuracy'])
compile(손실함수, 최적화함수, 평가방법)
loss : 손실함수의 종류를 설정
optimizer : w값을 어떻게 변화시켜주어야 할지 정하는 것(Adam은 optimizer계의 라면스프임 엥간한 모델은 살린다)
1. 회귀분석 : mse(mean_squared Error)
2. 이진분류 : binary_crossentropy
3. 다진분류 : categorical_crossentropy(확률을 가지고 계산할 수 있도록 해주는 알고리즘)
<3. 모델 학습하기>
y_train_one_hot = pd.get_dummies(y_train)
y_test_one_hot = pd.get_dummies(y_test)
model.fit(X_train, y_train_one_hot, epochs = 500)
원핫인코딩을 해주는 이유 -> 선형분류 모델이기 때문에 확률로 오차계산을 해 주어야 해서 0, 1, 2 의 정답에 대한 부분을 확률정보로 알려주어야하기 때문에
y_train_one_hot 을 찍어보면 위 사진과 같이 0,1,2에 대해 원 핫 인코딩이 되어 확률 데이터로 나타낼 수 있도록 해준다.
확률정보 1.0 -> 100%
<4. 모델 평가하기>
model.evaluate(X_test, y_test_one_hot)
학습 파라미터 확인
학습 파라미터를 보면 위의 사진과 같이 결과가 나옴을 알 수 있다.
입력층 파라미터 : 40
중간층 파라미터 : 36
출력층 파라미터 : 15
총 파라미터 : 91개
스마트인재개발원
4차산업혁명시대를 선도하는 빅데이터, 인공지능, 사물인터넷 전문 '0원' 취업연계교육기관
www.smhrd.or.kr
'Deep Learning' 카테고리의 다른 글
[광주인공지능학원] CNN (0) | 2021.07.18 |
---|---|
[광주인공지능학원] 오차 역전파 (0) | 2021.07.18 |
[스마트인재개발원] MLP(Multi Layer Perceptron) 다층 퍼셉트론 (0) | 2021.07.07 |
[스마트인재개발원] 딥러닝(Deep Learning) 과정, AND논리 실습 (0) | 2021.07.04 |
[스마트인재개발원] 딥러닝(Deep Learning) 개요 (0) | 2021.07.02 |