# Custom MovinetClassifier Concept  

![hand_animation_23842](assets/3f668b664c84b98ee90c8576.gif)
Above illustrates transforming the hand landmarks (for row 23842 phrase 2 in train) in tensorflow preprocessing layers into a "clip" to be used for inference with a custom classifier fine tuned for the 59 prediction characters.
MoViNet models for video classification have small streaming models that can be trained and inferred on CPU and converted to TF Lite.
[MoViNet model from TensorFlow Models](https://github.com/tensorflow/models/tree/master/official/projects/movinet)
custom classifier MovinetClassifier fine tune with pretrained weights e.g., movinet_a0_stream   (trained on Kinetics 600)
input shape 1 x 1 x 172 x 172
checkpoint ~15 MB  trained model ~30 MB  TF Lite ~10 MB
Convert to TF SavedModel. Then the SavedModel can be converted to TF Lite using the TFLiteConverter
converter = tf.lite.TFLiteConverter.from_saved_model(saved_model_dir)
tflite_model = converter.convert()
[MoViNets: Mobile Video Networks for Efficient Video Recognition](https://arxiv.org/abs/2103.11511)
In the paper, multiple-class labels per video were used for Charades.
Or per frame or selected frame inference was a possibility then post process with tensorflow unique_with_counts
and considerations for double numbers or letters.
This was not finished for the competition, but adding here for interest and awareness of these models.
And a bit of fun.
It could be a next gen Sign Language uses video content with mediapipe markers and this would fit nicely.