JoydeepaB/product-lens
GitHub: JoydeepaB/product-lens
基于 TF-IDF 相似度和规则模式的电商产品推荐与虚假评论检测平台,帮助消费者在海量商品中发现相关产品并识别不可信评论。
Stars: 0 | Forks: 0
# ProductLens — 电商产品智能平台
**在线演示:** https://product-lens-cvvv.onrender.com
面向电商平台的 AI 驱动产品推荐引擎 + 虚假评论检测器。
**技术栈:** Flask · pandas · scikit-learn (TF-IDF + cosine similarity)
## 功能
### 1. **基于内容的产品推荐**
- 对产品名称、类别和描述进行 TF-IDF 向量化
- 利用 cosine similarity 识别语义相似的产品
- 为每条推荐显示匹配百分比
- 涵盖 4 个类别的所有 40 件产品
### 2. **虚假评论检测引擎**
- **基于规则的模式分析**,从 6 个维度标记可疑评论:
- 同日评论爆发(同一天发布多条评论)
- 不同评论者之间存在近乎重复/复用的文本
- 过度夸张的用语("amazing"、"best"、"awesome"、"buy now" 等)
- 没有实质性细节的极短 5 星评论
- 重复的标点符号(多个 "!!!")
- **可疑度评分** ≥ 3 即标记为潜在虚假评论
- 提供危险信号,解释*为什么*每条评论会被标记
- 无需外部标签 — 仅依靠模式检测即可工作
### 3. **情感分析**
- 将每条评论分类为正面/负面/中性
- 计算过滤掉可疑评论后的“真实平均评分”
- 为决策提供更真实的评论指标
### 4. **智能仪表板**
- 按类别和关键字搜索/筛选产品
- 查看评论摘要:总数、平均评分、可疑百分比、情感分布
- 点击任意产品以查看推荐和分析后的评论
- 按类型筛选评论(全部 / 可疑 / 真实)
## 部署
**已上线于:** https://product-lens-cvvv.onrender.com
**数据:** 涵盖 4 个类别(电子产品、时尚、家居、美妆)的 40 个合成产品 + 250 条评论(包含真实评论与植入的垃圾评论模式)
## 工作原理
### 推荐引擎
1. 使用 TF-IDF 对产品描述进行向量化(移除 stopwords)
2. 计算所有产品对之间的 cosine similarity
3. 针对给定产品,按分数返回前 4 个最相似的产品
### 虚假评论检测
每条评论的评分基于以下维度:
- **同日爆发** (+2):在一天内有 3 条及以上其他评论的同日发布
- **文本复用** (+2):相同/近乎相同的文本出现 3 次及以上
- **夸张用语** (+2):包含 2 个及以上的夸张词汇("amazing"、"best"、"awesome" 等)
- **短篇 5 星** (+1):≤3 个单词且为 5 星评分
- **过度标点** (+1):包含 2 个及以上的感叹号
**评分 ≥ 3** = 可疑。危险信号会解释是由哪些模式触发的。
### 情感分析
- 统计正面词汇(good、great、happy、recommend 等)
- 统计负面词汇(disappointed、damaged、stopped、return 等)
- 如果正面 > 负面且评分 ≥4 → 正面
- 如果负面 > 正面或评分 ≤2 → 负面
- 否则 → 中性
## 已知局限性
- **推荐仅基于内容** — 未使用协同过滤(v2 版本可加入用户交互数据)
- **虚假检测基于模式,而非 ML 训练** — 旨在无需标注训练数据的情况下捕捉明显的垃圾信息
- **数据为合成数据** — 40 件产品和 250 条评论均为演示通过程序化生成;真实系统会接入实时的市场数据
- **无用户账号/登录** — 无状态的单会话应用;真实平台会追踪用户行为以实现个性化
## 解决的问题
电商平台面临两个关键挑战:
1. **大规模的产品发现** — 客户在浏览时难以找到相似产品。推荐系统需要在不依赖用户交互历史(对于新产品可能并不存在)的情况下呈现相关的替代产品。
2. **评论真实性危机** — 虚假/垃圾评论会抬高评分并扭曲客户的认知。当卖家通过集中发布低成本的赞美或重复文本来操纵评论时,平台就会失去信誉。
ProductLens 展示了如何通过**基于内容的推荐**和**基于模式的垃圾检测**来解决这些问题,而无需依赖庞大的标注数据集或复杂的 ML 基础设施。
标签:Flask, TF-IDF, 情感分析, 推荐系统, 电子商务, 虚假评论检测, 逆向工具