Portfolio

Welcome to my Portfolio Page

In this page, you can find my recent projects that I have done, in the following categories:

Multi-agent Reinforcement Learning Project

This is my personal research project, utilizes the PyMARL framework to setup environment Matrix Game and Predator Prey, allows multi-agent play games in these environments, to demonstrate the patholog. The project’s technological stack comprises of Python and PyTorch.
I show the influence of the relative overgeneralization pathology for the VDN and QMIX algorithms, a phenomenon where an agent’s behavior becomes overly influenced by the actions of its teammates, leading to suboptimal decision-making. Then I modified these algorithm to relief the pathology.

Deep Learning Project

This is a deep reinforcement learning project that I worked with a group of 5 people. We implemented Openai Gym’s Lunar Lander-v2, which aims to teach the agent to land a spacecraft on the moon using techniques. The project utilizes Python as the primary programming language and several libraries such as TensorFlow and NumPy.
My role was collaborate with another to designed a deep neural network using TensorFlow, with multiple layers of convolutional and dense layers to enable the agent to learn features and patterns from the environment. This project offers a great opportunity to gain hands-on experience in deep learning, reinforcement learning and develop an understanding of how machine learning algorithms can solve complex real-world problems.

Data Science - Perceptron

It is my individual project. The perceptron is a simple neural network algorithm used for binary classification, which receives one or more inputs and produces a single output based on a weighted sum of the inputs. It has applications in various fields, such as image recognition and natural language processing. The project utilizes Python and several libraries such as pandas and NumPy.

Data Science - K-Means and K-Medians

This project was done by myself. In this project, I implemented two popular clustering algorithms, K-Means and K-Medians, for clustering words belonging to four different files. I vary the value of k, add l2 normalization before cluster, and evaluate the quality of the clustering using B-CUBED precision, recall, and F-score. The results are then visualized through plots. The implementation is developed using Python, NumPy, and Matplotlib.

Data Extraction - Douban FIlm Ranking

It is a Web scraper program that I have developed independently. It can extract annual top 250 movie rankings from A Chinese movie review site. With just a single click, the program can extract data at runtime and save it in both Excel and SQLite formats, making it easy for users to analyze and manipulate the data according to their needs.
The program utilizes Python,and SQLite database management system to automate the data extraction process.

Data Extraction - Get Policy

I developed this data extraction Web scraper program that is designed to extract valuable information from a policy announcement website. This program is capable of navigating each sub-item and saving the extracted data. In just one complete run, it can save up to 7,000 pieces of data, and it takes only about 85 minutes to complete (based on early 2021 statistics). The program utilizes Python,and SQLite database management system to automate the data extraction process.

RESTful API

The project was created with the purpose of providing a better understanding of RESTful API development. Initially, a simple todo list project was built using the SpringBoot framework. This project included a Controller class that implemented all CRUD operations (Create, Read, Update, and Delete). The next step in the project involved transforming the Controller class to adhere to RESTful architecture principles. This involved designing RESTful endpoints that allowed for efficient handling of server requests and responses, improving the user experience. Java was the primary language utilized throughout the project, with additional knowledge of Spring MVC and Ajax.In addition, the use of software Postman to test the Requests.
In addition, I have designed a syllabus for this knowledge, which can be viewed by clicking on the details