Bao Jiarong



I am a Machine Learning Programmer & Data Analyst.
This page is my professional portfolio in which I summarize and publish my work in the field of ML.

About Me

I've been learning about AI and its applications for around one year. I've got an internship at an AI startup based on Tokyo where I've been sharping my skills in machine learning. I've been implementing several states-of-the-art AI models and publishing them in my Github account.

What I like the most in Machine Learning is what we call Computer Vision. I love to make much use of AEs, VAEs and GANs for dealing with pictures like Denoising, Super-resolution, Anomaly Detection, Colorization and Segmentation.

I am keeping myself refreshed with up-to-date AI models in Computer Vision. I am looking forward to understand and master Detection Models and GANs. I would like to make use of Detection Models like Yolo, SSD and Mask-RCNN for Autonomous Driving and Tumors Detection in MedTech.

Latest Projects


segmentation

Segmentation

I implemented the honorable U-NET and successfully ran it on Cityscapes Dataset. I was surprised that the model worked out well although it was trained in few epochs. I hope I can find the time to implement other models and apply them on MedTech tasks like detecting tumors in CT images.


Denoise_1 Denoise_2

Denoising

This project is a simple denoising AE & VAE written in tensorflow 2. For the moment, I am experiencing the efficiency of AEs and VAEs models to remove the noise from MNIST and Flowers datasets. To find out more, please refer to the following repositories in my Github account.

Denoising AE
Vanilla VAE
Stacked VAE
Conv VAE


Colorization Colorization Super-resolution

Colorization & Super-resolution

Japanese Anime is just wonderful, I started experiencing to see how far the robustness of Machine Learning can go on coloring anime sketches. I am experiencing several models for it: AutoEncoders, U-NET, Plain Convolutional Network... These models may work on other tasks as well:

GrayScale ----> Color
Season <---> Season
Day <---> Night
Images Super-resolution
For the moment, I tried a very basic model to see how the things will work out, the result of this model is shown in the following picture. You can check my updated Github account for seeing detailed information. anime colorization

toturials

ML Tutorials

Machine Learning is expanding rapidly nowadays, I have been making some tutorials as personal notes and for whoever wanna know more about AI. The tutorials include simple-to-hard examples on the following libraries:

OpenCV is a magnificient library for anyone who is interested in Computer Vision.
NumPy is a library for supporting large, multi-dimensional arrays and matrices.
Pandas is a Python Data Analysis library. I can say it is the SQL for Data Analysts
Matplotlib Matplotlib is a plotting library for the Python and its numerical mathematics extension NumPy.
Tensorflow 2.0 My favorite ML library. I also wrote some simple tutorials for it, please find out Simple Classifiers & Simple Regressors

Other AI Projects

Note: All the following algorithms were implemented from scratch in Python 3


Metaheuristics


toturials toturials toturials

I've implemented some popular Metaheuristics algorithms for finding the minimum of a given mathematical function.
The following algorithms were all implemented:

For more info, please check them out in my Github account

Metaheuristics 2D       Metaheuristics 3D


Evolutionary Algorithms

toturials

This category of algorithms is actually a subset of Metaheuristics. I've successfully implemented 3 Evolutionary Algorithms that can find the minimum of a given 2D or 3D mathematical function:

For more info, please check them out in my Github account

Genetics 2D       Genetics 3D


Numerical Analysis

toturials

Nummerical Analysis is a vast and huge branch in Mathematics. During my journey in learning about ML, I came across some Numerical Analysis based algorithms (e.g. Gradient Descent) which were in fact used in developing the core of some well-known ML Libraries like Tensorflow and PyTorch. I could implement some NA algorithms in Python for finding the root of a given 2D funtion:

For more info, please check them out in my Github account

Numerical Analysis


SVM, Perceptron and Backpropagation


toturials toturials

In the journey of understanding ML algorithms, I could not grasp how the stuff really works until I started trying to implement some core algorithms. The hard one is Backpropagation and Perceptron. SVM seems hard, but thanks to Pegasos Algorithms, it turns out that it is easy to implement.
I implemented some algorithms for solving only the linear classification problem:

In my Github account, you can find more information about:
SVM, SDCA and SGD here

Perceptron and Backpropagation here

My GitHub

You can check my GitHub contribution graph calendar using my GitHub Calendar widget.

You can also review my repositories using my GitHub Repositories widget.