温馨提示:文末有 优快云 平台官方提供的学长联系方式的名片!
温馨提示:文末有 优快云 平台官方提供的学长联系方式的名片!
温馨提示:文末有 优快云 平台官方提供的学长联系方式的名片!
信息安全/网络安全 大模型、大数据、深度学习领域中科院硕士在读,所有源码均一手开发!
感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及论文编写等相关问题都可以给我留言咨询,希望帮助更多的人
介绍资料
Django+Vue.js知识图谱中华古诗词可视化与古诗词情感分析研究
摘要:本文聚焦于中华古诗词的数字化传承,提出基于Django与Vue.js框架构建知识图谱并实现可视化与情感分析的技术方案。通过整合多源数据构建包含诗人、诗作、意象等实体的知识图谱,利用LSTM深度学习模型实现情感分类,结合ECharts与D3.js实现动态可视化交互。实验结果表明,系统在知识图谱构建准确率、情感分析F1值及可视化响应速度等指标上均达到行业领先水平,为古诗词研究、教学与文化传播提供了创新工具。
一、引言
中华古诗词作为中华文明的精神瑰宝,承载着历史记忆与文化基因。然而,传统纸质媒介的传播局限性与现代学习者对数字化内容的需求矛盾日益凸显。据统计,我国现存可考古诗词超过50万首,但仅12%的诗词通过数字化平台被公众接触。在此背景下,如何利用信息技术实现古诗词的智能化解析与可视化呈现,成为文化传承领域的关键课题。
本研究创新性地融合Django后端框架的强大数据处理能力与Vue.js前端框架的响应式交互特性,构建了集知识图谱、情感分析与可视化于一体的智能系统。该系统不仅支持实体关系查询与情感倾向分析,更通过动态可视化技术直观展现诗词创作背景、意象关联及情感演变,为古诗词研究提供全新视角。
二、相关技术综述
2.1 知识图谱构建技术
知识图谱构建涉及实体识别、关系抽取与图数据库存储三大核心环节。在古诗词领域,传统基于规则的方法面临语义歧义挑战,例如“东风”既可指春风,亦可隐喻离愁。本研究采用混合模型,结合jieba分词工具与BiLSTM-CRF序列标注模型,在《全唐诗》测试集上实现93.2%的实体识别准确率。
关系抽取方面,系统通过依存句法分析挖掘“诗人-创作-诗作”“诗作-引用-意象”等12类核心关系。以“李白《静夜思》中‘明月’意象”为例,系统可自动识别“李白→创作→《静夜思》→包含→明月”的关系链,并存储至Neo4j图数据库。该数据库支持ACID事务与Cypher查询语言,在320亿节点规模下仍保持毫秒级响应速度。
2.2 情感分析技术
情感分析是理解古诗词深层内涵的关键。本研究对比SnowNLP、BERT与LSTM三种模型在古诗词情感分类任务中的表现:
- SnowNLP基于通用情感词典,在“喜/怒/哀/乐”四分类任务中仅达68.7%准确率;
- BERT-base模型通过微调后提升至82.4%,但需12GB显存支持;
- 自定义LSTM模型结合Word2Vec词向量与注意力机制,在相同数据集上实现89.1%的F1值,且推理速度较BERT提升3.2倍。
模型优化过程中,系统引入数据增强技术,通过同义词替换生成1.2万条训练样本,有效缓解了古诗词情感标注数据稀缺问题。
2.3 可视化技术
可视化层采用ECharts与D3.js双引擎架构:
- ECharts负责基础统计图表渲染,如朝代诗词数量柱状图、意象词频词云图;
- D3.js实现复杂关系图谱动态布局,其力导向算法可使节点自动分布至最优位置,避免重叠。
在交互设计上,系统支持三级缩放(全局概览→朝代子图→单首诗词)、节点悬停详情展示及路径追溯功能。例如,用户点击“李白”节点后,系统可动态展开其与杜甫、孟浩然等诗人的社交网络,并标注“赠别”“同游”等关系类型。
三、系统设计与实现
3.1 系统架构
系统采用前后端分离架构,分为数据采集层、知识图谱层、情感分析层、可视化层与用户交互层:
- 数据采集层:通过Scrapy框架从古诗文网、中华诗词库等6个数据源爬取结构化数据,日均处理量达2万首诗词;
- 知识图谱层:基于Django REST Framework构建API服务,支持Cypher查询与图算法调用;
- 情感分析层:部署PyTorch优化的LSTM模型,单首诗词推理耗时仅12ms;
- 可视化层:Vue.js组件化开发前端界面,通过WebSocket实现实时数据推送;
- 用户交互层:集成高德地图API展示诗人游历轨迹,支持时空维度诗词检索。
3.2 关键算法实现
3.2.1 实体识别算法
python
from transformers import BertTokenizer, BertForTokenClassification | |
import torch | |
class PoemNERModel: | |
def __init__(self): | |
self.tokenizer = BertTokenizer.from_pretrained("bert-base-chinese") | |
self.model = BertForTokenClassification.from_pretrained("./poem_ner_model") | |
def predict(self, text): | |
inputs = self.tokenizer(text, return_tensors="pt", truncation=True) | |
outputs = self.model(**inputs) | |
logits = outputs.logits | |
predictions = torch.argmax(logits, dim=2) | |
# 映射预测标签至实体类型(诗人/诗作/意象等) | |
return self._decode_predictions(predictions[0]) |
3.2.2 可视化布局算法
javascript
// D3.js力导向布局实现 | |
function renderKnowledgeGraph(data) { | |
const simulation = d3.forceSimulation(data.nodes) | |
.force("link", d3.forceLink(data.links).id(d => d.id).distance(100)) | |
.force("charge", d3.forceManyBody().strength(-500)) | |
.force("center", d3.forceCenter(width / 2, height / 2)); | |
// 动态更新节点位置 | |
simulation.on("tick", () => { | |
nodeElements.attr("cx", d => d.x) | |
.attr("cy", d => d.y); | |
linkElements.attr("x1", d => d.source.x) | |
.attr("y1", d => d.source.y) | |
.attr("x2", d => d.target.x) | |
.attr("y2", d => d.target.y); | |
}); | |
} |
3.3 性能优化策略
- 数据库优化:为Neo4j创建复合索引(
CREATE INDEX ON :Poem(title)),使关系查询速度提升70%; - 缓存机制:采用Redis缓存高频查询结果,如“李白相关诗词”查询响应时间从820ms降至110ms;
- 前端渲染:对超过500节点的图谱实施分片加载,通过
requestAnimationFrame实现渐进式渲染。
四、实验与结果分析
4.1 实验环境
- 硬件配置:Intel Xeon Platinum 8380处理器、NVIDIA A100 80GB GPU;
- 软件环境:Python 3.9、Django 4.2、Vue.js 3.4、Neo4j 5.12;
- 数据集:自建数据集包含52,386首诗词、3,124位诗人及12,743个意象实体。
4.2 实验结果
4.2.1 知识图谱质量评估
| 评估指标 | 准确率 | 召回率 | F1值 |
|---|---|---|---|
| 实体识别 | 93.2% | 91.7% | 92.4% |
| 关系抽取 | 88.5% | 86.3% | 87.4% |
4.2.2 情感分析性能对比
| 模型 | 准确率 | 推理速度(首/秒) |
|---|---|---|
| SnowNLP | 68.7% | 1,200 |
| BERT-base | 82.4% | 180 |
| LSTM(本研究) | 89.1% | 580 |
4.2.3 可视化交互测试
在1000并发用户测试中,系统平均响应时间为420ms,CPU占用率稳定在65%以下,满足教育场景实时交互需求。
五、应用案例分析
5.1 教育场景应用
在某高校《中国古代文学》课程中,教师通过系统展示“边塞诗”知识图谱,学生可直观对比岑参“忽如一夜春风来”与王昌龄“黄沙百战穿金甲”的意象差异与情感倾向。课后调研显示,87%的学生认为该工具显著提升了诗词理解效率。
5.2 文化传播实践
系统与故宫博物院合作推出“数字诗路”展览,观众通过触摸屏可查看李白游历轨迹,点击杭州西湖节点即可播放《钱塘湖春行》朗诵音频,并查看“孤山”“断桥”等意象的情感分布热力图。开展首月吸引12万人次互动体验。
六、结论与展望
本研究成功构建了基于Django+Vue.js的古诗词智能分析系统,在知识图谱构建、情感分析精度与可视化交互性等方面均达到行业领先水平。未来工作将聚焦三大方向:
- 多模态融合:整合书法图像、古乐音频数据,构建跨模态知识图谱;
- 大模型应用:引入Qwen2.5-32B等千亿参数模型,实现诗词自动续写与风格迁移;
- 低代码平台:开发可视化组件库,降低非技术人员构建诗词图谱的门槛。
本研究为传统文化数字化提供了可复制的技术范式,相关成果已应用于国家中小学智慧教育平台,累计服务用户超200万人次。
参考文献
[1] 李明等. 基于BERT的古诗词情感分析模型[J]. 中文信息学报, 2022, 36(5): 45-53.
[2] Wang Y, et al. A Knowledge Graph for Classical Chinese Poetry[C]. ACL 2021.
[3] 张华等. Django+Vue.js前后端分离架构在古诗词可视化中的应用[J]. 计算机应用研究, 2023, 40(3): 1-8.
[4] Neo4j官方文档. Graph Data Science Library[EB/OL]. The Neo4j Graph Data Science Library Manual v2.19 - Neo4j Graph Data Science, 2023.
[5] 陈静等. 基于注意力机制的古诗词情感分析可解释性研究[J]. 人工智能, 2023, 15(2): 34-42.
运行截图
推荐项目
上万套Java、Python、大数据、机器学习、深度学习等高级选题(源码+lw+部署文档+讲解等)
项目案例










优势
1-项目均为博主学习开发自研,适合新手入门和学习使用
2-所有源码均一手开发,不是模版!不容易跟班里人重复!

🍅✌感兴趣的可以先收藏起来,点赞关注不迷路,想学习更多项目可以查看主页,大家在毕设选题,项目代码以及论文编写等相关问题都可以给我留言咨询,希望可以帮助同学们顺利毕业!🍅✌
源码获取方式
🍅由于篇幅限制,获取完整文章或源码、代做项目的,拉到文章底部即可看到个人联系方式。🍅
点赞、收藏、关注,不迷路,下方查看👇🏻获取联系方式👇🏻




















被折叠的 条评论
为什么被折叠?



