Google-Summer-of-Code-2021-Tensorflow

📌Final submission for Google Summer of Code at @Tensorflow ❤️

Stars
13

Google Summer of Code 2021 @Tensorflow: Designing and Recreating Tensorflow Lite example NLP apps

This serves as my final submission for Google Summer of Code 2021 project.

Mentor:

Project Overview

Designing and Recreating new NLP TensorFlow Lite examples. This includes BERT Question and Answering, Text classification using the TensorFlow Lite Task Library which will be showcased in TensorFlow Lite examples. As a GSoC student, my task was to update the existing Natural Language Processing examples for these 2 tasks to use the TensorFlow Lite Task Library instead of custom code.

Project Link: https://summerofcode.withgoogle.com/archive/2021/projects/4701689461866496

Check out youtube video on My GSoC Experience

BERT QA Android Example Application

PR Link - #327

  • Designed & recreated the App to use the latest TFLite Task Library.
  • Developed separate Android library modules of Task API and Interpreter for BERT Question Android App & redesigned the app to switch between both APIs using Android product flavors(PR).
  • Added documentation, tests, and code-walkthrough to help onboard new users.
  • Added gitignore to the directory for better Contribution workflow.

BERT QA IOS Example Application

UIKit version screen cast SwiftUI version screen cast

PR Link - #340

  • Designed & recreated the App to use the latest TFLite Task Library both in SwiftUI & UIKit.
  • Updated the shellscript to download the recommended latest model with metadata.
  • Eliminated the redundant code and UI-components.
  • Added & Updated documentation, tests, and code-walkthrough to help onboard new users.

Text Classification Android Example Application

PR Link - #336

  • Recreated the App to use the latest TFLite Task Library
  • Designed the App to switch between both NLClassifier and BertNLClassifier API.
  • Added & Updated documentation, tests, and code-walkthrough to help onboard new users.

Next Steps

The TFLite model for BertNLClassifier API is not available yet (TFLite team is working on it), when it becomes available it will be integrated into the Text Classification Android Example, and we may also redesign the app to have separate Android library modules of Task API and Interpreter to show both of the implementations.

Community Contributions

These are the contributions I made, which are not related to my project:

No. Description PR Link
0 Resized the super resolution android screenshot #328
1 App screenshot added to Image classification android example #329
2 Changed readme title of text classification IOS sample #334
3 Added App Screenshot to Object Detection Android example #335
4 Updated Text Classification Android readme with latest links #337

Acknowledgements

My Google Summer of Code Experience was awesome and a large part of this great experience was the good mentoring of Meghna Natraj, George Soloupis, Margaret Maynard-Reid, Lu Wang, Le Viet Gia Khanh, Tian Tian and TensorFlow Team.

I thank them for their constant guidance, code reviews, timely feedback, help and most importantly, for their dedicated advice and encouragement throughout GSoC. I would definitely love to contribute more in the future to the TensorFlow.

Medium Blog

Connect with me