All

NLP

Probability

Algorithm

Data Structure

Full Stack

OOP

NLP Project  -- Drug2Vec – Leveraging PubMedBERT for Drug Pair Co-mention

This project showcases my expertise in natural language processing (NLP) with PubMedBERT and my ability to integrate biological knowledge from sources like DrugBank to provide innovative solutions in the healthcare domain.

  1. Utilized PubMedBERT to identify co-mentions of drug pairs, enhancing the understanding of potential drug interactions and synergies.
  2. Leveraged DrugBank to obtain information on the target genes that drugs specifically act on.
  3. Mapped drug relationships by correlating target genes, providing an alternative solution for doctors and patients.
  4. This approach enables a comprehensive understanding of drug interactions and their mechanisms, offering valuable insights for healthcare professionals.

NLP Project  -- CUDA on Colab GPU

This project showcases my expertise in optimizing deep learning models, specifically leveraging CUDA for improved performance on GPU, with a focus on implementing SapBERT on the Colab platform.

  1. Implemented SapBERT pretrain model on Colab GPU.
  2. Enhanced performance using CUDA optimization through the cuda() function.

Probability Project  -- Travel Time Analysis

This project demonstrates my proficiency in experimental design, statistical analysis, and data visualization, showcasing an in-depth exploration of protocol performance across a range of travel scenarios.

  1. Conducted 10,000 experiments involving random travel speeds and times to evaluate different protocols.
  2. Calculated each protocol's average and standard deviation based on the experimental results.
  3. Employed statistical analysis to interpret the performance variations among protocols.
  4. Visualized the results through graphs to provide a comprehensive understanding of protocol efficiency under diverse travel conditions.

Probability Project  -- Markov's Chain

In this project, we aim to model the interaction between a butterfly and a spider using a Markov Chain. The butterfly can move forward, backward, or stay in place, while the spider consistently approaches the butterfly. The project involves designing a Markov Chain to represent the probabilities of the butterfly and spider's movements and analyzing the likelihood of the butterfly being caught by the spider.

  1. Illustrate movement routes and annotate probabilities on a diagram.
  2. Develop a probability matrix for the Markov Chain.
  3. Analyze long-term behavior using matrix multiplication, focusing on the likelihood of the butterfly being caught by the spider.

Algorithm Project  -- Dynamic Programming – 0/1 Knapsack

This project showcases my proficiency in dynamic programming and problem-solving, contributing to efficient solutions for optimization challenges.

  1. Employed dynamic programming to solve the 0/1 Knapsack problem efficiently.
  2. Designed a table with a width equal to the target weight, systematically adding each item individually.
  3. Conducted comparisons between excluding and including each item to determine optimal outcomes.
  4. Implemented a table to store optimal solutions for subproblems, ensuring efficiency in the overall process.
  5. Developed a trace-back mechanism to identify selected items and their inclusion status.

Algorithm Project  -- Greedy Algorithm – Maximum Subarray

This project demonstrates my adeptness in implementing efficient greedy algorithms to solve complex problems, emphasizing my skills in algorithmic design and optimization.

  1. Applied a greedy algorithm to solve the Maximum Subarray problem efficiently.
  2. Utilized an array to continuously evaluate and update the subarray by considering consecutive elements.
  3. Employed a linear approach to identify the largest subarray sum within the given array.

Data Structure Project  -- Binary Search Tree Implementation

This project showcases my proficiency in Binary Search Tree design, emphasizing versatile node management and deletion strategies.

  1. Developed a Binary Search Tree using a 'Node' class for parent-child relationships.
  2. Implemented dynamic node insertion based on key values.
  3. Executed efficient node deletion and introduced successor and predecessor functions.

Data Structure Project  -- Priority Queue Implementation

This project showcases my proficiency in priority queue design, emphasizing efficient heap management for optimal enqueue and dequeue functionality.

  1. Designed and implemented a Priority Queue with an optimized heap structure using 'heapify'.
  2. Efficiently constructed the queue using 'build_queue' by applying 'heapify' from the last parent to the root.
  3. Executed enqueue and dequeue operations for streamlined element addition and removal while preserving the heap property.

Full Stack Project  -- LikeCode

"LikeCode" is a dynamic website helping students prepare for interviews
by offering a platform to practice LeetCode problems.
Project description:
The membership-based LikeCode website offers user-friendly functionalities.
User data validation relies on SQLAlchemy, while Python Flask connects
the database and HTML elements. JSON data stores specific details of
LeetCode queries, facilitating interaction between Python and HTML.
The "Study" button triggers automatic question retrieval and presentation.
The integrated development environment (IDE) generates Java, Python, C, and C++ files,
compiling and running them to assess accuracy.

Full Stack Project  -- Portfolio WebSite

This project demonstrates my proficiency in web development, combining server-side scripting with Python Flask and client-side enhancements using Javascript and CSS to create a personalized portfolio website hosted on a custom domain.

  1. Integrated Python Flask to handle dynamic content generation and server-side operations.
  2. Utilized Javascript and CSS on HTML to design an interactive and visually appealing user interface.
  3. Published the website on a personal domain for public access.

OOP Project  -- Coffee Shop Management System

  1. Abstract Class - Beverage: This class can have concrete getter method getName(), getSize(), and getPrice(), and an abstract method getDetail(). Each beverage recorded a unique selling detail.
  2. Concrete Classes :
    • CoffeeClass: Inherits from the Beverage and implements the getDetail() method.
      It could also have its own attributes like coffeineContent and origin.
    • Tea Class: Inherits from the Beverage and implements the getDetail()method.
      It could also have its own attributes like steepingTime and flavor.
    • Order Class: A concrete class create the order object. It could have its own
      attributes orderID, beverage, and quantity, and own method like getOrderTotal().
  3. Driver/Main Class - CoffeeShopManageSystem: Inside this class, create objects for
    Coffee, Tea, and Order. Use these objects to describe the various methods that each class offers.

All

NLP

Probability

Algorithm

Data Structure

Full Stack

OOP

NLP  -- Drug2Vec

This project showcases my expertise in natural language processing (NLP) with PubMedBERT and my ability to integrate biological knowledge from sources like DrugBank to provide innovative solutions in the healthcare domain.

  1. Utilized PubMedBERT to identify co-mentions of drug pairs, enhancing the understanding of potential drug interactions and synergies.
  2. Leveraged DrugBank to obtain information on the target genes that drugs specifically act on.
  3. Mapped drug relationships by correlating target genes, providing an alternative solution for doctors and patients.
  4. This approach enables a comprehensive understanding of drug interactions and their mechanisms, offering valuable insights for healthcare professionals.

NLP  -- CUDA

This project showcases my expertise in optimizing deep learning models, specifically leveraging CUDA for improved performance on GPU, with a focus on implementing SapBERT on the Colab platform.

  1. Implemented SapBERT pretrain model on Colab GPU.
  2. Enhanced performance using CUDA optimization through the cuda() function.

Probability  -- Travel Time

This project demonstrates my proficiency in experimental design, statistical analysis, and data visualization, showcasing an in-depth exploration of protocol performance across a range of travel scenarios.

  1. Conducted 10,000 experiments involving random travel speeds and times to evaluate different protocols.
  2. Calculated each protocol's average and standard deviation based on the experimental results.
  3. Employed statistical analysis to interpret the performance variations among protocols.
  4. Visualized the results through graphs to provide a comprehensive understanding of protocol efficiency under diverse travel conditions.

Probability  -- Markov's Chain

In this project, we aim to model the interaction between a butterfly and a spider using a Markov Chain. The butterfly can move forward, backward, or stay in place, while the spider consistently approaches the butterfly. The project involves designing a Markov Chain to represent the probabilities of the butterfly and spider's movements and analyzing the likelihood of the butterfly being caught by the spider.

  1. Illustrate movement routes and annotate probabilities on a diagram.
  2. Develop a probability matrix for the Markov Chain.
  3. Analyze long-term behavior using matrix multiplication, focusing on the likelihood of the butterfly being caught by the spider.

Algorithm  -- 0/1 Knapsack

This project showcases my proficiency in dynamic programming and problem-solving, contributing to efficient solutions for optimization challenges.

  1. Employed dynamic programming to solve the 0/1 Knapsack problem efficiently.
  2. Designed a table with a width equal to the target weight, systematically adding each item individually.
  3. Conducted comparisons between excluding and including each item to determine optimal outcomes.
  4. Implemented a table to store optimal solutions for subproblems, ensuring efficiency in the overall process.
  5. Developed a trace-back mechanism to identify selected items and their inclusion status.

Algorithm  -- Max Subarray

This project demonstrates my adeptness in implementing efficient greedy algorithms to solve complex problems, emphasizing my skills in algorithmic design and optimization.

  1. Applied a greedy algorithm to solve the Maximum Subarray problem efficiently.
  2. Utilized an array to continuously evaluate and update the subarray by considering consecutive elements.
  3. Employed a linear approach to identify the largest subarray sum within the given array.

Data Structure  -- BST

This project showcases my proficiency in Binary Search Tree design, emphasizing versatile node management and deletion strategies.

  1. Developed a Binary Search Tree using a 'Node' class for parent-child relationships.
  2. Implemented dynamic node insertion based on key values.
  3. Executed efficient node deletion and introduced successor and predecessor functions.

Data Structure  -- PQ

This project showcases my proficiency in priority queue design, emphasizing efficient heap management for optimal enqueue and dequeue functionality.

  1. Designed and implemented a Priority Queue with an optimized heap structure using 'heapify'.
  2. Efficiently constructed the queue using 'build_queue' by applying 'heapify' from the last parent to the root.
  3. Executed enqueue and dequeue operations for streamlined element addition and removal while preserving the heap property.

Full Stack  -- LikeCode

"LikeCode" is a dynamic website helping students prepare for interviews
by offering a platform to practice LeetCode problems.
Project description:
The membership-based LikeCode website offers user-friendly functionalities.
User data validation relies on SQLAlchemy, while Python Flask connects
the database and HTML elements. JSON data stores specific details of
LeetCode queries, facilitating interaction between Python and HTML.
The "Study" button triggers automatic question retrieval and presentation.
The integrated development environment (IDE) generates Java, Python, C, and C++ files,
compiling and running them to assess accuracy.

Full Stack  -- Portfolio

This project demonstrates my proficiency in web development, combining server-side scripting with Python Flask and client-side enhancements using Javascript and CSS to create a personalized portfolio website hosted on a custom domain.

  1. Integrated Python Flask to handle dynamic content generation and server-side operations.
  2. Utilized Javascript and CSS on HTML to design an interactive and visually appealing user interface.
  3. Published the website on a personal domain for public access.

OOP  -- Coffee Shop

  1. Abstract Class - Beverage: This class can have concrete getter method getName(), getSize(), and getPrice(), and an abstract method getDetail(). Each beverage recorded a unique selling detail.
  2. Concrete Classes :
    • CoffeeClass: Inherits from the Beverage and implements the getDetail() method.
      It could also have its own attributes like coffeineContent and origin.
    • Tea Class: Inherits from the Beverage and implements the getDetail()method.
      It could also have its own attributes like steepingTime and flavor.
    • Order Class: A concrete class create the order object. It could have its own
      attributes orderID, beverage, and quantity, and own method like getOrderTotal().
  3. Driver/Main Class - CoffeeShopManageSystem: Inside this class, create objects for
    Coffee, Tea, and Order. Use these objects to describe the various methods that each class offers.