【Django系统】Python+Django携程酒店评论情感分析系统

Python + Django携程酒店评论情感分析系统

项目概述

这是一个基于 Django 框架开发的酒店评论情感分析系统。系统使用机器学习技术对酒店评论进行情感分析,帮助酒店管理者了解客户反馈,提升服务质量。

主要功能

  1. 评论数据导入:支持导入酒店评论数据集
  2. 情感分析:自动分析评论的情感倾向(正面/负面/中性)
  3. 方面情感分析:细分服务、环境、价格等维度
  4. 数据可视化:展示评论情感分布、趋势、词云等多种图表
  5. 评论管理:查看、搜索、筛选和删除评论

技术栈

  • 后端框架:Django
  • 数据处理:Pandas
  • 机器学习:Scikit-learn
  • 中文分词:jieba
  • 数据可视化:ECharts(前端)、Matplotlib(后端词云)
  • 数据库:SQLite(可切换为MySQL)

数据集

系统使用 ChnSentiCorp_htl_all.csv 作为训练数据,包含大量酒店评论数据。

算法实现说明

1. 数据预处理

  • 使用 pandas 读取CSV数据,去除空值。
  • 用 jieba 对评论文本进行中文分词,去除特殊字符。
  • 通过 CountVectorizer 将文本转为特征向量。

2. 模型训练与持久化

  • 采用朴素贝叶斯(MultinomialNB)进行情感分类。
  • 训练后模型和向量器用 joblib 持久化保存到 model 目录,后续启动优先加载,无需重复训练。

3. 情感预测逻辑

  • 输入评论后,先分词、向量化。
  • 用模型输出正面/负面概率。
  • 若正面概率>0.6,判为"正面";负面概率>0.6,判为"负面";否则为"中性"。

4. 方面情感分析

  • 设定服务、环境、价格等关键词库,分词后判断评论是否包含相关词。
  • 若命中关键词,则用模型判断该方面情感。
  • 若未命中且整体情感明确,则方面情感跟随整体情感(兜底策略)。
  • 关键词库支持自定义扩充。

5. 数据可视化

  • 前端用 ECharts 实现情感分布饼图、时间趋势折线图、评论长度分布柱状图、词云图等。
  • 词云高频词由后端分词统计,前端动态渲染。
  • 支持按情感类型筛选分析。

安装与使用说明

  1. 安装依赖包:

    bash 复制代码
    pip install -r requirements.txt
  2. 运行数据库迁移:

    bash 复制代码
    python manage.py migrate
  3. 启动开发服务器:

    bash 复制代码
    python manage.py runserver
  4. 访问 http://localhost:8000 进入系统

系统截图

数据集:

项目截图:






代码截图:

代码获取

python 复制代码
print("关注【布鲁的Python之旅】")
print("=======")
相关推荐
952366 小时前
MyBatis
后端·spring·mybatis
X56617 小时前
如何在 Laravel 中正确保存嵌套动态表单数据(主服务与子服务)
jvm·数据库·python
ZhengEnCi8 小时前
03ab-PyTorch安装教程 📚
python
狐狐生风8 小时前
LangChain 向量存储:Chroma、FAISS
人工智能·python·学习·langchain·faiss·agentai
狐狐生风8 小时前
LangChain RAG 基础
人工智能·python·学习·langchain·rag·agentai
uzong9 小时前
9 种 RAG 架构,每位 AI 开发者必学:完整实战指南
后端
老前端的功夫9 小时前
【Java从入门到入土】28:Stream API:告别for循环的新时代
java·开发语言·python
小江的记录本9 小时前
【Kafka核心】架构模型:Producer、Broker、Consumer、Consumer Group、Topic、Partition、Replica
java·数据库·分布式·后端·搜索引擎·架构·kafka
止语Lab9 小时前
从手动到框架:Go DI 演进的三个拐点
开发语言·后端·golang
yaoxin5211239 小时前
397. Java 文件操作基础 - 创建常规文件与临时文件
java·开发语言·python