Git Product home page Git Product logo

recommendation-system-phobert's Introduction

Recommender System for Sentiment Analysis of Vietnamese Texts

Project Overview

This project is focused on developing a recommendation system that enhances the quality of product recommendations by analyzing the sentiment of texts in Vietnamese. The primary objective is to increase sales volume for stores in Vietnam by leveraging the emotional tone of user-generated content to provide personalized recommendations.

Table of Contents

Introduction

The rise of e-commerce in Vietnam presents a unique opportunity to improve customer engagement and sales through personalized recommendations. This project aims to utilize advanced natural language processing (NLP) techniques, particularly BERT (Bidirectional Encoder Representations from Transformers), to analyze the sentiment of Vietnamese texts. By understanding the emotional context, the recommendation system can suggest products that are more aligned with the user's preferences and emotional state.

Features

  • Sentiment Analysis: Analyze the sentiment of Vietnamese texts using PhoBERT, a pre-trained BERT specialized in Vietnamese.
  • Personalized Recommendations: Provide product recommendations based on the analyzed sentiment.
  • User-Friendly Interface: Chrome browser extension for seamless user interaction.
  • Backend Integration: Django-based backend server for handling recommendation logic and data processing.

Installation

Prerequisites

  • Python 3.7+
  • Django 3.2+
  • Chrome browser

Setup

  1. Clone the repository:

    git clone https://github.com/nmtan2001/recommendation-system-phobert
    cd recommendation-system-phobert
  2. Create a virtual environment and activate it:

    python -m venv venv
    source venv/bin/activate
  3. Install the required packages:

    pip install -r requirements.txt
  4. Set up the Django backend:

    cd mysite
    python manage.py migrate
    python manage.py runserver
  5. Load the Chrome extension:

    • Open Chrome and navigate to chrome://extensions/.
    • Enable "Developer mode".
    • Click "Load unpacked" and select the chrome_extension directory.

Usage

  1. Start the Django server:

    cd mysite
    python manage.py runserver
  2. Open the Chrome browser and activate the extension.

  3. Browse the web, and the extension will analyze the sentiment of Vietnamese texts and provide product recommendations based on the analysis.

Project Structure

recommendation-system-phobert/
├── mysite/
│   ├── manage.py
│   ├── VNCoreNLP/
│   ├── analysis/
│   └── ...
├── grabText_ext/
│   ├── manifest.json
│   ├── background.js
│   └── ...
├── Dockerfile
├── requirements.txt
└── README.md

Methodology

  1. Data Collection: Gather datasets from the internet, including production practice and scientific research materials.
  2. Data Preprocessing: Standardize and tokenize Vietnamese texts, handle punctuation and emojis, and perform text segmentation.
  3. Model Training: Use PhoBERT and other machine learning models like SVM and Naive Bayes for sentiment analysis.
  4. Recommendation Algorithm: Develop algorithms to provide personalized recommendations based on sentiment analysis results.
  5. System Development: Implement the recommendation system using a Django backend and a Chrome browser extension.

Contributing

We welcome contributions from the community. To contribute:

  1. Fork the repository.
  2. Create a new branch:
    git checkout -b feature/your-feature-name
  3. Make your changes and commit them:
    git commit -m "Add your message"
  4. Push to the branch:
    git push origin feature/your-feature-name
  5. Create a pull request.

License

This project is licensed under the MIT License. See the LICENSE file for details.


Developed by Ngo Minh Tan, supervised by Associate Professor V.V. Stuchilin.

For more information, refer to the detailed project report included in this repository.

recommendation-system-phobert's People

Contributors

nmtan2001 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.