Nikhil created MADLIB-1348:
------------------------------
Summary: Weight initialization/transfer learning madlib_keras_fit()
Key: MADLIB-1348
URL: https://issues.apache.org/jira/browse/MADLIB-1348
Project: Apache MADlib
Issue Type: Improvement
Components: Deep Learning
Reporter: Nikhil
Fix For: v1.16
Context
Many deep neural nets are not trained from scratch, but rather initialized from
weights generated by training related data sets using the same model
architecture (particularly true for CNN).
Story
As a data scientist,
I want to start training a model based on weights that I have,
so that I don't have to start from scratch.
* e.g, use weights from one dataset (e.g., VGG-16 on Imagenet) as starting
point to training VGG-16 model on my data.
Details
1. add support for optional param to load weights
2. add “name” , “description” to model arch table
Interface
{code}
load_keras_model(
keras_model_arch_table,
model_arch,
model_weights, -- OPTIONAL
name, -- OPTIONAL
description -- OPTIONAL
)
{code}
Acceptance
1. Take a trained model with a known accuracy and load into the model arch
table (can be simple).
2. Use it as input to training with fit() on the same data set it was trained
on. Since it has already converged, it should show the same accuracy on the
1st or 2nd iteration as before.
3. Test load from keras library [2]. Pick any model, get the weights and test
load into model arch table. Test for 1 or 2 iterations on any dataset to check
that it runs.
Reference
[1] VGG16 and other pre-trained weights for Imagenet are built into Keras
https://keras.io/getting-started/faq/#how-can-i-use-pre-trained-models-in-keras
[2] http://cs231n.github.io/transfer-learning/
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)