Skip to content

outerform/ReX-demowebsite

Repository files navigation

LIME Text Explainer 🔥

一个炫酷的交互式网页应用,使用LIME (Local Interpretable Model-agnostic Explanations) 来解释文本分类模型的预测结果,并通过热力图可视化展示。

✨ 功能特性

  • 🎯 简单易用: 只需输入文本,点击按钮即可获得解释
  • 🔥 炫酷界面: 现代化设计,流畅动画效果
  • 📊 热力图可视化: 直观展示每个词对预测结果的影响程度
  • 🤖 机器学习驱动: 基于scikit-learn的文本分类模型
  • 📱 响应式设计: 支持移动端和桌面端

🚀 快速开始

方法1: 使用启动脚本 (推荐)

# 给启动脚本添加执行权限
chmod +x start.sh

# 运行启动脚本
./start.sh

方法2: 手动启动

# 1. 创建虚拟环境
python3 -m venv venv

# 2. 激活虚拟环境
source venv/bin/activate  # Linux/Mac
# 或者 venv\Scripts\activate  # Windows

# 3. 安装依赖
pip install -r requirements.txt

# 4. 启动应用
python app.py

🌐 访问应用

应用启动后,在浏览器中访问: http://localhost:5000

💡 使用说明

  1. 输入文本: 在输入框中输入要分析的英文文本
  2. 点击分析: 点击"开始分析"按钮
  3. 查看结果:
    • 上方显示模型的预测结果和置信度
    • 下方的热力图显示每个词对预测的影响:
      • 🟢 绿色: 对预测结果有正面影响
      • 🔴 红色: 对预测结果有负面影响
      • ⚪ 灰色: 中性,影响很小

🎨 界面特色

  • 渐变背景: 美丽的紫色渐变背景
  • 玻璃态效果: 毛玻璃风格的卡片设计
  • 流畅动画: 页面加载和交互动画
  • 响应式布局: 自适应不同屏幕尺寸
  • 现代化图标: Font Awesome 图标

🔧 技术栈

后端

  • Flask: Web框架
  • LIME: 模型解释库
  • scikit-learn: 机器学习库
  • NumPy: 数值计算

前端

  • HTML5: 结构标记
  • CSS3: 样式和动画
  • JavaScript: 交互逻辑
  • Font Awesome: 图标库

📊 模型信息

  • 模型类型: 逻辑回归 (Logistic Regression)
  • 特征提取: TF-IDF 向量化
  • 分类类别:
    • Positive (正面情感)
    • Negative (负面情感)
    • Neutral (中性)

📝 示例文本

你可以尝试以下示例文本:

正面情感:

  • "I love this amazing movie!"
  • "This is the best experience ever!"
  • "Fantastic and wonderful performance!"

负面情感:

  • "This movie is terrible and boring"
  • "Worst film I have ever watched"
  • "Complete waste of time"

中性:

  • "The meeting is scheduled for tomorrow"
  • "Please send me the report"
  • "Coffee shop opens at 8 AM"

🔍 工作原理

  1. 文本预处理: 使用TF-IDF向量化将文本转换为数值特征
  2. 模型预测: 逻辑回归模型生成预测结果和置信度
  3. LIME解释: LIME算法通过局部扰动生成解释
  4. 可视化: 将解释结果转换为颜色编码的热力图

🛠️ 自定义扩展

你可以轻松扩展这个应用:

  • 更换模型: 替换为其他分类模型(BERT、RoBERTa等)
  • 添加语言: 支持中文或其他语言的文本分析
  • 增加功能: 添加更多的可视化选项
  • 数据集: 使用自己的训练数据

📁 项目结构

rexdemo/
├── app.py              # Flask应用主文件
├── requirements.txt    # Python依赖包
├── start.sh           # 启动脚本
├── templates/
│   └── index.html     # 主页模板
└── static/
    └── style.css      # 额外样式文件

🤝 贡献

欢迎贡献代码和建议!请通过以下方式参与:

  1. Fork 项目
  2. 创建特性分支
  3. 提交更改
  4. 发送 Pull Request

📄 许可证

MIT License - 自由使用和修改

🆘 故障排除

常见问题:

  1. 端口冲突: 如果5000端口被占用,修改app.py中的端口号
  2. 依赖安装失败: 确保使用Python 3.7+和最新的pip
  3. 模型加载错误: 检查所有依赖是否正确安装

联系支持: 如遇问题,请查看错误日志或提交issue


🎉 享受使用 LIME Text Explainer 来探索机器学习模型的决策过程!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages