【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("=======")
相关推荐
我家领养了个白胖胖几秒前
SSE在Spring ai alibaba中同时使用Qwen和DeepSeek模型
java·后端·ai编程
smile_Iris9 分钟前
Day 38 GPU训练及类的call方法
开发语言·python
Java编程爱好者14 分钟前
做了个Java打包工具,可以双击启动了!
后端
嗷嗷哦润橘_17 分钟前
AI Agent学习:MetaGPT项目之RAG
人工智能·python·学习·算法·deepseek
猿与禅20 分钟前
Spring Boot 4.0 完整核心特性及实践指南
java·spring boot·后端·spring·重大升级·springboot4.0
Smart-Space24 分钟前
tkinter绘制组件(47)——导航边栏
python·tkinter·tinui
平凡运维之路30 分钟前
端口转发
后端
运维@小兵34 分钟前
Spring-AI系列——Tool Calling获取当前时间
java·后端·spring
ULTRA??40 分钟前
KD-Tree的查询原理
python·算法
Java水解42 分钟前
前端与 Spring Boot 后端无感 Token 刷新 - 从原理到全栈实践
前端·后端