반응형
1. 인간 뇌의 특징
인간의 뇌는 100억개의 뉴런과 각 뉴런을 연결하는 6조 개의 시냅스의 결합체라고 한다.
인간의 뇌는 매우 복잡하며, 비선형적이고, 병렬적으로 정보를 처리한다.
2. 인공신경망의 특징
인공신경망은 입력신호, 가중치, 출력신호로 이루어진다.
뉴런은 입력신호에 가중치를 부여함으로써 출력신호를 만들어낸다.
3. neural_network를 활용해보기
손실, 계수, 바이어스, 반복, 출력, 손실, 층수도 나타내보자!
4. Teachable Machine에서 조절 가능한 인자
5. 인자 살펴보기
hidden_layer_sizes = (j,j),
max_iter = k,
learning_rate_init = i,
random_state = 0,
tol = 0.01
6. 수학 점수로 총점 예상하기
import matplotlib.pyplot as plot
import numpy as np
import math
import pandas as pd
import seaborn as sns
import openpyxl
plot.rcParams["font.family"] = 'Malgun gothic'
data = pd.read_excel('student.xlsx', header = 0)
newData = data[['kor', 'eng', 'math', 'social', 'science', 'total']]
#속성(변수)선택
x = newData[['math']]
y = newData[['total']]
from sklearn.neural_network import MLPRegressor
for i in (0.1, 0.01, 0.001, 0.0001):
for j in range(10, 100, 20):
for k in range(10, 40, 10):
model = MLPRegressor(hidden_layer_sizes=(j, j),
max_iter=k,
learning_rate_init=i,
random_state=0,
tol=0.01)
model.fit(x, y)
relation_square = model.score(x, y)
print('결정계수 R : ', relation_square)
y_p = model.predict(x)
ax1 = sns.distplot(y, hist = False, label = 'y_실제')
ax2 = sns.distplot(y_p, hist = False, label = 'y_예측')
plot.show()
print('손실', model.loss_)
print('계수', model.coefs_)
print('바이어스', model.intercepts_)
print('반복', model.n_iter_)
print('출력', model.n_outputs_)
print('손실', model.out_activation_)
print('층수', model.n_layers_)
7. 국, 영, 수, 사회 점수로 총점 예측하기
import matplotlib.pyplot as plot
import numpy as np
import math
import pandas as pd
import seaborn as sns
import openpyxl
plot.rcParams["font.family"] = 'Malgun gothic'
data = pd.read_excel('student.xlsx', header = 0)
newData = data[['kor', 'eng', 'math', 'social', 'science', 'total']]
#속성(변수)선택
x = newData[['kor', 'eng', 'math', 'social']]
y = newData[['total']]
from sklearn.neural_network import MLPRegressor
for i in (0.1, 0.01, 0.001, 0.0001):
for j in range(10, 100, 20):
for k in range(10, 40, 10):
model = MLPRegressor(hidden_layer_sizes=(j, j),
max_iter=k,
learning_rate_init=i,
random_state=0,
tol=0.01)
model.fit(x, y)
relation_square = model.score(x, y)
print('결정계수 R : ', relation_square)
y_p = model.predict(x)
ax1 = sns.distplot(y, hist = False, label = 'y_실제')
ax2 = sns.distplot(y_p, hist = False, label = 'y_예측')
plot.show()
print('손실', model.loss_)
print('계수', model.coefs_)
print('바이어스', model.intercepts_)
print('반복', model.n_iter_)
print('출력', model.n_outputs_)
print('손실', model.out_activation_)
print('층수', model.n_layers_)
반응형
'프로그래밍 > 머신러닝' 카테고리의 다른 글
비지도학습(K-mean)_파이썬으로 머신러닝 배우기 (0) | 2021.05.20 |
---|---|
iris 분류하기(K-NN모델)_파이썬으로 머신러닝 배우기 (0) | 2021.05.10 |
결정 트리(Decision Tree)_파이썬으로 머신러닝 배우기 (0) | 2021.05.03 |
k-근접 모델(KNeighborsRegressor)_파이썬으로 머신러닝 배우기 (0) | 2021.04.29 |
그레이디언트 부스팅(GradientBoostingRegressor)_파이썬으로 머신러닝 배우기 (0) | 2021.04.26 |