https://github.com/engincanv/sentimentanalysisdemo
Explore sentiment analysis within an ABP-based application and delve into machine learning in .NET.
https://github.com/engincanv/sentimentanalysisdemo
abp-framework dotnet dotnet-core machine-learning mlnet sentiment-analysis
Last synced: 8 months ago
JSON representation
Explore sentiment analysis within an ABP-based application and delve into machine learning in .NET.
- Host: GitHub
- URL: https://github.com/engincanv/sentimentanalysisdemo
- Owner: EngincanV
- Created: 2024-05-01T12:06:41.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2024-11-24T07:58:36.000Z (over 1 year ago)
- Last Synced: 2025-02-02T06:31:40.588Z (over 1 year ago)
- Topics: abp-framework, dotnet, dotnet-core, machine-learning, mlnet, sentiment-analysis
- Language: C#
- Homepage:
- Size: 1.57 MB
- Stars: 4
- Watchers: 1
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# SentimentAnalysisDemo
Welcome to the `SentimentAnalysisDemo` repository, a demonstration of sentiment analysis integration within an ABP-based application, presented at the [ABP Dotnet CONF 2024](https://abp.io/conference/2024) & [Hello Talks 2024](https://kommunity.com/devnot/events/hello-talks-2024-84b69837).
> Love the `SentimentAnalysisDemo` project? Then, please give a star(⭐)! Thanks in advance!
## About the project
This project serves as a comprehensive guide to implementing sentiment analysis in .NET applications using the ABP framework. By leveraging machine learning techniques, this demo showcases how sentiment analysis can be seamlessly integrated into your .NET projects.
In this demo application, I created an [ABP-based application](https://docs.abp.io/en/abp/8.1/Startup-Templates/Application) and integrated the [ABP's CMS Kit Module's Comment Feature](https://docs.abp.io/en/abp/latest/Modules/Cms-Kit/Comments), which provides a comment system to add a comment to any kind of resource, such as blog posts or products. By default, CMS Kit's Comment Feature does not provide spam detection and in this sample application, I simply added [spam detection](https://github.com/EngincanV/SentimentAnalysisDemo/blob/master/src/SentimentAnalysisDemo.Application/ML/SpamDetector.cs) while creating or updating a comment. Thus, whenever a comment is being added or updated, the spam detection service will validate the comment and reject it if it contains spam content otherwise it will make the other validations and save the comment.

> **Note**: The dataset used in this sample project is not ready for use in production and also it is not suitable for development purposes. It's used for spam detection in emails normally, since this is a demo application, the important thing is to build a model and applying the sentiment analysis, I did not create the dataset on my own and instead, I found the dataset from Kaggle and directly used it!
## Resources
* [Dataset](https://www.kaggle.com/datasets/ue153011/spam-mail-detection-dataset)
* [Slides](https://github.com/EngincanV/presentations/tree/main/ABP/Dotnet-Conf-2024) used in the [ABP Dotnet CONF 2024](https://abp.io/conference/2024)