가장 쉬운 딥러닝 모델 그림 그리기 [Visualization of deep learning neural network model in keras ] by 바죠

가장 쉬운 딥러닝 모델 그림 그리기 [Visualization of deep learning neural network model in keras]

https://machinelearningmastery.com/visualize-deep-learning-neural-network-model-keras/


---------------------------------------------------------------------------------------------------------------------

from keras.models import Sequential
from keras.layers import Dense
from keras.utils.vis_utils import plot_model

model = Sequential()
model.add(Dense(2, input_dim=1, activation='relu'))
model.add(Dense(1, activation='sigmoid'))

plot_model(model, to_file='model_plot.png', show_shapes=True, show_layer_names=True)

---------------------------------------------------------------------------------------------------------------------

from keras.utils import plot_model
plot_model(model, to_file='model.png')

---------------------------------------------------------------------------------------------------------------------

from keras.models import Sequential
from keras.layers import Dense
model = Sequential()
model.add(Dense(2, input_dim=1, activation='relu'))
model.add(Dense(1, activation='sigmoid'))

print(model.summary())

---------------------------------------------------------------------------------------------------------------------
인공신경망에서 훈련되어 질 수 있는 파라메터 갯수를 직접 알아내는 방법:

from keras import backend as K
trainable_count = int( np.sum([K.count_params(p) for p in set(model.trainable_weights)]))
non_trainable_count = int( np.sum([K.count_params(p) for p in set(model.non_trainable_weights)]))
print('Total params: {:,}'.format(trainable_count + non_trainable_count))
print('Trainable params: {:,}'.format(trainable_count))
print('Non-trainable params: {:,}'.format(non_trainable_count))

---------------------------------------------------------------------------------------------------------------------


2012년이 딥러닝의 원년이다. → 왜 그런가? 여기에는 다양한 이유가 있다. 
2011년 Relu 함수의 출현 : vanishing gradient problem 해결, 표현력이 높은 딥러닝이 시작됨.
2012년 Dropout 방법의 출현 : overfitting problem 해결, 정규화된 훈련이 가능함.
2012년 CNN 출현 : 방대한 이미지 데이터 처리 문제 해결, 비대칭 데이터에 대한 처리가 가능함.
2013년 VAE 출현: 생성모델로서 다양한 가능성을 제안함.
2014년 GAN 출현: 생성모델로서 많은 응용 가능성을 제안함.
2015년 TensorFlow 구현의 출현과 보급 : 실질적인 딥러닝의 민주화가 단행됨.
2016년 알파고 출현 : 바둑 정복
2017년 알파고 제로 출현 : tabula rasa, first-principles 방법을 이용하여 바둑 정복, 진정한 바둑의 정복이 가능함. 기보없이 바둑 정복함. 프로기사에게 절대로 지지 않는 사실상 바둑의 신이 탄생함. 바둑의 역사 5000년
2017년 cycleGAN 출현
2018년 알파폴드 출현
2020년 알파폴드 2 출현
2021년 플로어플랜닝 (반도체 칩 설계) A graph placement methodology for fast chip design | Nature
2021년 나우캐스팅 (단기 일기예보) https://www.nature.com/articles/s41586-021-03854-z





덧글

댓글 입력 영역

최근 포토로그