Sanaz Khalili
Sanaz Khalili
خواندن ۱ دقیقه·۳ سال پیش

نمایش گرافیکی مدل شبکه های عصبی در keras

به نام خدا

گاهی اوقات نیاز داریم یک تصویر کلی از ساختار شبکه ی عصبی ای که ساخته ایم، مشاهده کنیم. به طور معمولی اگر فقط بخواهیم تعداد پارامترها و نوع لایه ها را ببینیم می توانیم با استفاده از تابع summary آن را مشاهد کنیم اما اگر بخواهیم اتصال لایه ها به شکل گرافیکی مشاهده کنیم با دستور فوق امکان پذیر نیست. در کتابخانه ی keras این کار با نوشتن دستور زیر امکان پذیر است.

from keras.utils.vis_utils import plot_model plot_model(model, to_file='model_plot.png', show_shapes=True, show_layer_names=True)

این دستور برای این که اجرا شود به دو پیش نیاز احتیاج دارد.

1- نصب نرم افزار graphviz روی سیستم

می توانید آن را از لینک زیر دانلود کنید.

https://gitlab.com/api/v4/projects/4207231/packages/generic/graphviz-releases/3.0.0/windows_10_cmake_Release_graphviz-install-3.0.0-win64.exe

2- نصب کتابخانه pydot در پایتون

!pip install pydot

این جا مثالی از یک لایه از شبکه آمده است.

from tensorflow import keras from tensorflow.keras import layers from tensorflow.keras.layers import LeakyReLU input_image = layers.Input(shape=(None, None, 3)) x = layers.Conv2D(filters=32, kernel_size=(3, 3))(input_image) x = LeakyReLU(alpha=0.1)(x) x = layers.BatchNormalization()(x) model = keras.Model(input_image, x)

بعد از ساخت آن می توانیم با استفاده از دستور summary آن را به طور خلاصه مشاهده کنیم.

حال به شکل گرافیکی آن را نمایش می دهیم:

تصویر این شبکه با نام model_plot.png در کنار کدها ذخیره می شود.


منابع:

https://keras.io/api/utils/model_plotting_utils/

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


plot_modelkerasneural network
https://github.com/sanazkhalili - https://www.kaggle.com/skhalili
شاید از این پست‌ها خوشتان بیاید