Import Existing Model
Synopsis
This operator can be used to import existing models. Models can either be put to use as they come, pre-trained (weights, biases already tuned to a use-case), or can be entirely trained thus leveraging the architecture only. Using these pre-trained networks is a good example for transfer-learning where one gets to apply the solution of a previous problem to a related task.
Description
The shape of the input data ("sample set") should always match the shape required by the model. For example, if a model was trained on 3 x 224 x 224 images (first number means the number of color channels), it should later be used with images of the same dimensions. That includes both scoring/applying the model and fine-tuning.
Shape information is either directly inferred from the "sample set" or can be manually configured. See the "infer input shape" parameter.
Caution: When using pre-trained models keep in mind, that someone else has pre-selected the data set used for training the given model. The underlying data set might contain unwanted biases. Please make sure to understand the underlying data set and its implications for your use-case. Check out the parameter documentation down below to obtain information about the provided models.
Input
sample set
ExampleSet or TensorIOObject holding data that has the same shape/properties as the data which the model will be applied upon. If "infer input shape" is on, the shape will be directly inferred from this data.
Output
model
Loaded model wrapped into a RapidMiner acceptable format, so that one can further tune or use the model directly for scoring.
throughput
Input ExampleSet passed through.
Parameters
Pre-trained model
List of available neural network models/architectures that can be used for fine-tuning/scoring. The chosen model will always be downloaded before first use (could take some time due to the sheer size of it, i.e. hundreds of mega-bytes in many cases).
- AlexNet: Shape: 3 x 224 x 224 | DL4J's AlexNet model interpretation based on the original paper ImageNet Classification with Deep Convolutional Neural Networks and the ImageNet example code referenced. Reference: http://papers.nips.cc/paper/4824-imagenet-classification-with-deep-convolutional-neural-networks.pdf
- DarkNet19-224: Shape: 3 x 224 x 224 | DarkNet-19 is a convolutional neural network that is 19 layers deep. The pre-trained network can classify images into 1000 object categories, such as keyboard, mouse, pencil, and many animals. As a result, the network has learned rich feature representations for a wide range of images. Reference: https://arxiv.org/pdf/1612.08242.pdf
- DarkNet19-448: Shape: 3 x 448 x 448 | DarkNet-19 is a convolutional neural network that is 19 layers deep. The pre-trained network can classify images into 1000 object categories, such as keyboard, mouse, pencil, and many animals. As a result, the network has learned rich feature representations for a wide range of images. Reference: https://arxiv.org/pdf/1612.08242.pdf
- FaceNetNN4Small2: Shape: 3 x 96 x 96 | A variant of the original FaceNet model that relies on embeddings and triplet loss. Reference: https://arxiv.org/abs/1503.03832
- InceptionResNetV1: Shape: 3 x 160 x 160 | Hybrid model inspired by both inception and the performance of resnet. Reference: https://arxiv.org/abs/1503.03832 and http://reports-archive.adm.cs.cmu.edu/anon/2016/CMU-CS-16-118.pdf
- LeNet: Shape: 1 x 28 x 28 | LeNet is a simple convolutional neural network structure. Reference: http://yann.lecun.com/exdb/publis/pdf/lecun-98.pdf
- NASNet: Shape: 3 x 224 x 224 | Training data: ImageNet | Neural Architecture Search Network, a family of models that were designed automatically by learning the model architectures directly on the dataset of interest. Reference: https://arxiv.org/abs/1707.07012
- NASNet-Large: Shape: 3 x 224 x 224 | Training data: ImageNet-Large | Neural Architecture Search Network, a family of models that were designed automatically by learning the model architectures directly on the dataset of interest. Reference: https://arxiv.org/abs/1707.07012
- ResNet50: Shape: 3 x 224 x 224 | Residual networks for deep learning. Reference: https://arxiv.org/abs/1512.03385
- SimpleCNN: Shape: 3 x 48 x 48 | A simple convolutional network for generic image classification. Reference: https://github.com/oarriaga/face_classification/
- SqueezeNet: Shape: 3 x 227 x 227 | An implementation of SqueezeNet. Touts similar accuracy to AlexNet with a fraction of the parameters. Reference: https://arxiv.org/abs/1602.07360
- VGG16-ImageNet: Shape: 3 x 224 x 224 | Training data: ImageNet | Very Deep Convolutional Networks for Large-Scale Image Recognition. Reference: https://arxiv.org/abs/1409.1556
- VGG16-CIFAR10: Shape: 3 x 224 x 224 | Training data: CIFAR10 | Very Deep Convolutional Networks for Large-Scale Image Recognition. Reference: https://arxiv.org/abs/1409.1556
- VGG16-VGGFace: Shape: 3 x 224 x 224 | Training data: VGGFace | Very Deep Convolutional Networks for Large-Scale Image Recognition. Reference: https://arxiv.org/abs/1409.1556
- VGG19-ImageNet: Shape: 3 x 224 x 224 | Training data: ImageNet | Very Deep Convolutional Networks for Large-Scale Image Recognition. Reference: https://arxiv.org/abs/1409.1556
- Xception: Shape: 3 x 299 x 299 | An implementation of Xception, a novel deep convolutional neural network architecture inspired by Inception, where Inception modules have been replaced with depth-wise separable convolutions. Reference: https://arxiv.org/abs/1610.02357
Architecture only
Switch to use the pre-trained model or just its architecture only (can then be trained from scratch by activating the architecture only option).
Infer input shape
Guess and log to console the input shape of the given training data.