Skip to content

Repository files navigation

💰 货币金融学知识图谱系统

📋 项目概述

这是一个知识图谱系统,能够自动解析PPT课件,提取概念和关系,构建交互式知识图谱,为学习者提供智能化的知识探索工具。

✨ 系统特性

  • 🔄 自动化处理: 一键解析PPT文件,自动提取知识
  • 🧠 智能抽取: 基于NLP的实体识别和关系抽取
  • 🕸️ 图谱构建: 构建结构化的金融知识网络
  • 🎯 交互查询: 支持概念搜索和关系探索
  • 📊 可视化分析: 多维度统计和图表展示
  • 🌐 Web界面: 基于Streamlit的友好用户界面

📁 项目结构

货币金融学知识图谱/
├── README.md                    # 项目说明
├── requirements.txt             # 依赖包列表
├── TODO.md                     # 任务跟踪文件
├── src/                        # 源代码目录
│   ├── document_parser/        # 文档解析模块
│   │   └── ppt_parser.py      # PPT解析器
│   ├── knowledge_extraction/   # 知识抽取模块
│   │   └── knowledge_extractor.py  # 知识抽取器
│   ├── graph_database/         # 图数据库模块
│   │   └── graph_builder.py   # 图构建器
│   ├── vectorization/          # 向量化模块
│   └── visualization/          # 可视化模块
├── data/                       # 数据目录
│   ├── processed/             # 处理后的数据
│   └── graph/                 # 图数据
├── scripts/                    # 脚本目录
│   ├── simple_parse.py        # PPT解析脚本
│   ├── extract_knowledge.py   # 知识抽取脚本
│   ├── build_graph.py         # 图构建脚本
│   └── test_system.py         # 系统测试脚本
└── app/                        # 应用目录
    └── streamlit_app.py       # Streamlit可视化应用

🚀 快速开始

1. 环境准备

# 克隆项目(如果适用)
cd "知识图谱"

# 创建虚拟环境
python -m venv venv

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

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

2. 数据准备

确保PPT文件位于 ../目标文件夹/ 目录下,包含以下文件:

  • 第2章 货币与货币制度.pptx
  • 第3章 金融体系概览.pptx
  • 第4章 利率与利率计算.pptx
  • 第5章 利率决定理论.pptx

3. 系统验证

# 运行完整系统测试
python scripts/simple_final_test.py

# 预期结果:通过率 ≥ 85%

4. 启动系统

方式一:一键启动(推荐)

# 运行完整流程并启动可视化
python scripts/test_system.py && streamlit run app/streamlit_app.py

方式二:分步运行

# 1. PPT解析
python scripts/simple_parse.py

# 2. 知识抽取
python scripts/extract_knowledge.py

# 3. 图构建
python scripts/build_graph.py

# 4. 启动可视化
streamlit run app/streamlit_app.py

5. 访问应用

启动后在浏览器中访问:http://localhost:8501

6. 故障排除

如果遇到问题,请查看:

  • 系统测试报告:python scripts/simple_final_test.py
  • 优化详情:OPTIMIZATION_REPORT.md
  • 配置文件:config.json

📊 系统功能

📈 数据概览

  • 显示处理的文件数量
  • 实体、关系、层次关系统计
  • 实体类别分布图表
  • 详细的统计信息展示

🕸️ 知识图谱

  • 交互式网络图可视化
  • 节点按类别着色
  • 支持拖拽和缩放
  • 可调节显示参数
  • 基于PyVis的高性能渲染

🔍 概念查询

  • 实时概念搜索
  • 相关概念推荐
  • 关系路径查找
  • 概念详情展示
  • 热门概念排行

📊 统计分析

  • 节点度分布分析
  • 关系类型统计
  • 图连通性分析
  • 重要节点识别

📋 技术栈

后端技术

  • Python 3.8+: 主要开发语言
  • python-pptx: PPT文件解析
  • jieba: 中文分词和词性标注
  • NetworkX: 图结构构建和分析
  • pandas: 数据处理和分析

前端技术

  • Streamlit: Web应用框架
  • Plotly: 交互式图表
  • PyVis: 网络图可视化
  • HTML/CSS: 界面样式

数据处理

  • JSON: 数据交换格式
  • CSV: 数据导出格式
  • UTF-8: 中文编码支持

系统成功提取了货币金融学的核心概念:

货币基础

  • 货币、货币制度、货币职能
  • 价值尺度、流通手段、支付手段
  • 贮藏手段、世界货币

利率体系

  • 利率、利息、收益率
  • 名义利率、实际利率
  • 利率决定理论、利率计算

金融机构

  • 商业银行、中央银行
  • 投资银行、保险公司
  • 证券公司、基金公司

金融市场

  • 货币市场、资本市场
  • 金融工具、金融监管

🔧 系统配置

图谱可视化参数

  • 最大显示节点数: 10-100个(可调)
  • 节点标签: 支持显示/隐藏
  • 类别筛选: 按概念类别过滤
  • 物理引擎: ForceAtlas2算法

🚀 使用指南

基础操作

  1. 数据概览: 查看系统处理的基本统计信息
  2. 知识图谱: 在网络图中探索概念关系
  3. 概念搜索: 输入关键词查找相关概念
  4. 统计分析: 查看详细的图表分析

高级功能

  • 路径查找: 查找概念之间的连接路径
  • 关系探索: 探索概念的直接和间接关系
  • 类别筛选: 按概念类别过滤显示
  • 参数调节: 调整可视化参数

🔄 更新维护

添加新的PPT文件

  1. 将新的PPT文件放入 ../目标文件夹/ 目录
  2. 运行 python scripts/simple_parse.py 重新解析
  3. 运行 python scripts/extract_knowledge.py 重新抽取
  4. 运行 python scripts/build_graph.py 重新建图

扩展专业词典

编辑 src/knowledge_extraction/knowledge_extractor.py 中的专业词典部分

🐛 常见问题

Q: PPT解析失败怎么办?

A: 检查PPT文件是否损坏,确保文件名不包含特殊字符

Q: 可视化界面打不开?

A: 确保端口8501未被占用,检查是否正确安装Streamlit

Q: 中文显示异常?

A: 确保系统支持UTF-8编码,检查字体设置

Q: 图谱加载很慢?

A: 调节最大显示节点数,关闭不必要的可视化效果

依赖安装问题

# 如果遇到依赖冲突,尝试升级pip
pip install --upgrade pip

# 单独安装核心依赖
pip install streamlit networkx plotly pyvis

系统兼容性

  • 操作系统: Windows 10+, macOS 10.14+, Linux
  • Python版本: 3.8+
  • 内存要求: 建议4GB以上
  • 浏览器: Chrome, Firefox, Safari, Edge

📄 许可证

本项目仅供学习研究使用。

🤝 贡献指南

欢迎提交问题和改进建议!


系统测试: ✅ 通过率 87.5%

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages