0% found this document useful (0 votes)
50 views

Keras Cheat Sheet Python For Data Science: Model Architecture Inspect Model

This document provides a summary of Keras model architecture, compilation, training and evaluation. It outlines how to: 1. Define and inspect sequential models with Keras layers like Dense, Conv2D and Dropout. 2. Compile models for classification, regression and recurrent tasks by specifying loss functions, optimizers and metrics. 3. Train models on data by calling fit and specifying batch size, epochs and validation data.

Uploaded by

Minh Nguyễn
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
50 views

Keras Cheat Sheet Python For Data Science: Model Architecture Inspect Model

This document provides a summary of Keras model architecture, compilation, training and evaluation. It outlines how to: 1. Define and inspect sequential models with Keras layers like Dense, Conv2D and Dropout. 2. Compile models for classification, regression and recurrent tasks by specifying loss functions, optimizers and metrics. 3. Train models on data by calling fit and specifying batch size, epochs and validation data.

Uploaded by

Minh Nguyễn
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 1

> Model Architecture > Inspect Model

Sequential Model
Python For Data Science

>>> model.output_shape #Model output shape

>>> model.summary() #Model summary representation

>>> model.get_config() #Model configuration

>>> from keras.models import Sequential


>>> model.get_weights() #List all weight tensors in the model

Keras Cheat Sheet


>>> model = Sequential()

>>> model2 = Sequential()

>>> model3 = Sequential()

Multilayer Perceptron (MLP)


> Compile Model
Learn Keras online at www.DataCamp.com
MLP: Binary Classification
Binary Classification
>>> model.compile(optimizer='adam',

>>> from keras.layers import Dense


loss='binary_crossentropy',

>>> model.add(Dense(12,
metrics=['accuracy'])
input_dim=8,

MLP: Multi-Class Classification


kernel_initializer='uniform',

Keras activation='relu'))

>>> model.add(Dense(8,kernel_initializer='uniform',activation='relu'))

>>> model.compile(optimizer='rmsprop',

loss='categorical_crossentropy',

>>> model.add(Dense(1,kernel_initializer='uniform',activation='sigmoid')) metrics=['accuracy'])


Keras is a powerful and easy-to-use deep learning library forTheano and Multi-Class Classification MLP: Regression
TensorFlow that provides a high-level neural networks API to develop and >>> from keras.layers import Dropout
>>> model.compile(optimizer='rmsprop',

>>> model.add(Dense(512,activation='relu',input_shape=(784,)))
loss='mse',

evaluate deep learning models. >>> model.add(Dropout(0.2))


metrics=['mae'])
>>> model.add(Dense(512,activation='relu'))

A Basic Example >>> model.add(Dropout(0.2))

Recurrent Neural Network


>>> import numpy as np
>>> model.add(Dense(10,activation='softmax')) >>> model3.compile(loss='binary_crossentropy',

>>> from keras.models import Sequential


optimizer='adam',

>>> from keras.layers import Dense


Regression metrics=['accuracy'])
>>> data = np.random.random((1000,100))
>>> model.add(Dense(64,activation='relu',input_dim=train_data.shape[1]))

>>> labels = np.random.randint(2,size=(1000,1))


>>> model.add(Dense(1))
>>> model = Sequential()

>>> model.add(Dense(32,

activation='relu',
Convolutional Neural Network (CNN) > Model Training
input_dim=100))

>>> model.add(Dense(1, activation='sigmoid'))


>>> from keras.layers import Activation,Conv2D,MaxPooling2D,Flatten
>>> model3.fit(x_train4,

>>> model.compile(optimizer='rmsprop',
>>> model2.add(Conv2D(32,(3,3),padding='same',input_shape=x_train.shape[1:]))
y_train4,

loss='binary_crossentropy',
>>> model2.add(Activation('relu'))
batch_size=32,

metrics=['accuracy'])
>>> model2.add(Conv2D(32,(3,3)))
epochs=15,

>>> model.fit(data,labels,epochs=10,batch_size=32)
>>> model2.add(Activation('relu'))
verbose=1,

>>> predictions = model.predict(data) >>> model2.add(MaxPooling2D(pool_size=(2,2)))


validation_data=(x_test4,y_test4))
>>> model2.add(Dropout(0.25))

>>> model2.add(Conv2D(64,(3,3), padding='same'))

> Data
>>> model2.add(Activation('relu'))

>>>
>>>
model2.add(Conv2D(64,(3, 3)))

model2.add(Activation('relu'))
> Evaluate Your Model's Performance
>>> model2.add(MaxPooling2D(pool_size=(2,2)))

Your data needs to be stored as NumPy arrays or as a list of NumPy arrays. Ideally, you split the data in training and >>> model2.add(Dropout(0.25))
>>> score = model3.evaluate(x_test,

test sets, for which you can also resort to the train_test_split module of sklearn.cross_validation. >>> model2.add(Flatten())
y_test,

>>> model2.add(Dense(512))
batch_size=32)
>>> model2.add(Activation('relu'))

Keras Data Sets >>> model2.add(Dropout(0.5))

>>> model2.add(Dense(num_classes))

>>>
>>>
from keras.datasets import boston_housing, mnist, cifar10, imdb

(x_train,y_train),(x_test,y_test) = mnist.load_data()

>>> model2.add(Activation('softmax'))
> Save/ Reload Models
>>>
>>>
(x_train2,y_train2),(x_test2,y_test2) = boston_housing.load_data()

(x_train3,y_train3),(x_test3,y_test3) = cifar10.load_data()

Recurrent Neural Network (RNN) >>> from keras.models import load_model

>>> (x_train4,y_train4),(x_test4,y_test4) = imdb.load_data(num_words=20000)


>>> model3.save('model_file.h5')

>>> num_classes = 10 >>> from keras.klayers import Embedding,LSTM


>>> my_model = load_model('my_model.h5')
>>> model3.add(Embedding(20000,128))

>>> model3.add(LSTM(128,dropout=0.2,recurrent_dropout=0.2))

Other >>> model3.add(Dense(1,activation='sigmoid'))

>>> from urllib.request import urlopen


> Model Fine-tuning
> Prediction
>>> data =
np.loadtxt(urlopen("http://archive.ics.uci.edu/ml/machine-learning-databases/pima-indians-di
abetes/pima-indians-diabetes.data"),delimiter=",")
Optimization Parameters
>>> X = data[:,0:8]

>>> y = data [:,8] >>> model3.predict(x_test4, batch_size=32)


>>> from keras.optimizers import RMSprop

>>> model3.predict_classes(x_test4,batch_size=32) >>> opt = RMSprop(lr=0.0001, decay=1e-6)

>>> model2.compile(loss='categorical_crossentropy',

optimizer=opt,

> Preprocessing Also see NumPy & Scikit-Learn metrics=['accuracy'])

Early Stopping
Sequence Padding Train and Test Sets
>>> from keras.callbacks import EarlyStopping

>>> from keras.preprocessing import sequence


>>> from sklearn.model_selection import train_test_split
>>> early_stopping_monitor = EarlyStopping(patience=2)

>>> x_train4 = sequence.pad_sequences(x_train4,maxlen=80)


>>> X_train5,X_test5,y_train5,y_test5 = train_test_split(X, y,
>>> model3.fit(x_train4,

>>> x_test4 = sequence.pad_sequences(x_test4,maxlen=80) test_size=0.33,


y_train4,

random_state=42) batch_size=32,

epochs=15,

One-Hot Encoding validation_data=(x_test4,y_test4),

Standardization/Normalization callbacks=[early_stopping_monitor])
>>> from keras.utils import to_categorical

>>> Y_train = to_categorical(y_train, num_classes)


>>> from sklearn.preprocessing import StandardScaler

>>> Y_test = to_categorical(y_test, num_classes)


>>> scaler = StandardScaler().fit(x_train2)

>>> Y_train3 = to_categorical(y_train3, num_classes)


>>> standardized_X = scaler.transform(x_train2)

>>> Y_test3 = to_categorical(y_test3, num_classes) >>> standardized_X_test = scaler.transform(x_test2) Learn Data Skills Online at www.DataCamp.com

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy