【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("=======")
相关推荐
程序员岳焱1 小时前
Java 与 MySQL 性能优化:Java 实现百万数据分批次插入的最佳实践
后端·mysql·性能优化
麦兜*1 小时前
Spring Boot启动优化7板斧(延迟初始化、组件扫描精准打击、JVM参数调优):砍掉70%启动时间的魔鬼实践
java·jvm·spring boot·后端·spring·spring cloud·系统架构
大只鹅2 小时前
解决 Spring Boot 对 Elasticsearch 字段没有小驼峰映射的问题
spring boot·后端·elasticsearch
ai小鬼头2 小时前
AIStarter如何快速部署Stable Diffusion?**新手也能轻松上手的AI绘图
前端·后端·github
小赖同学啊2 小时前
物联网数据安全区块链服务
开发语言·python·区块链
码荼2 小时前
学习开发之hashmap
java·python·学习·哈希算法·个人开发·小白学开发·不花钱不花时间crud
IT_10242 小时前
Spring Boot项目开发实战销售管理系统——数据库设计!
java·开发语言·数据库·spring boot·后端·oracle
bobz9653 小时前
动态规划
后端
stark张宇3 小时前
VMware 虚拟机装 Linux Centos 7.9 保姆级教程(附资源包)
linux·后端
小陈phd3 小时前
李宏毅机器学习笔记——梯度下降法
人工智能·python·机器学习