当前位置: 首页 > article >正文

基于GIKT深度知识追踪模型的习题推荐系统源代码+数据库+使用说明,后端采用flask,前端采用vue

基于GIKT深度知识追踪模型的习题推荐系统

目录结构

  • Flask-BackEnd flask后端
    • app 后端主体文件
      • alg 深度学习模块
        • data 数据集
        • data_process.py 数据预处理
        • gikt.py GIKT模型
        • pebg.py PEBG模型
        • params.py 一些参数
        • train.py 仅模型训练
        • train_test.py 模型训练和测试-五折交叉验证
        • train_test2.py 模型训练和测试-4:1训练测试
        • utils.py 工具函数
      • view flask蓝图
      • _init_.py 初始化
      • create_data.py 创建初始数据
      • entity.py 实体类
      • setup.py 启动
    • migrate 数据库迁移文件
  • Vue-FrontEnd vue前端
    • public 共用文件
    • src 源代码
      • api 全局请求设置
      • assets 静态组件
      • components 自定义vue组件
      • layout 页面布局
      • router 路由
      • store 信息储存
      • views 页面
      • App.vue 开始文件
      • main.js js包引入
    • 其他的是一些配置

启动

上面未提及的一些目录都在.gitignore,请手动添加后再启动

前端

进入目录Vue-FrontEnd

cd Vue-FrontEnd

安装需要的包

cnpm install

启动

npm run serve

后端

  1. 用pycharm打开目录Flask-BackEnd

  2. 修改mysql数据库配置项

  3. 执行er_gikt.sql文件, 生成数据库结构

  4. 运行data_process.py,生成预训练数据

  5. 运行pre_train.py,生成预训练问题向量

  6. 运行train.py,训练并保存一次模型(以便后端调用)

  7. 用pycharm或者终端启动setup.py,根据报错安装需要的包,其中:

    • pytorch==1.10.1
    • flask==2.2.5
  8. 解决报错后,运行一次create_data.py(或者在__init__.py的app_context中调用一次create_data函数),在数据库中添加初始数据

  9. 重新启动,访问本机5001端口,测试系统

项目存在的一些问题

算法

  • PEBG模型未按论文实现,实际上忽略了pnn网络(实现中出现了问题,故将其忽略)
  • 参数仍可调优,最终结果可以继续优化

前端

  • 前端使用的是vue2+vue-cli,最好可以用vue3+vite重构一遍

  • 重复组件较多,Table,Chart等图都直接写在页面中,而未在assests中单独实现

  • 习题、知识的CRUD没有实现(个人感觉没有必要)

后端

  • 包引用(尤其是对算法包alg的引用)存在问题,使用了粗暴的解决方式 sys.path.append() ,且无法使用相对路径导入
  • flask数据库迁移会报错,只能自己手动通过DBMS修改

项目界面展示

在这里插入图片描述完整代码下载地址:基于GIKT深度知识追踪模型的习题推荐系统


http://www.kler.cn/news/316533.html

相关文章:

  • 快速下载Imagenet数据集
  • Python模块和包:标准库模块(os, sys, datetime, math等)②
  • CVE-2024-2389 未经身份验证的命令注入
  • LeetCode --- 139双周赛
  • STM32篇:开发环境安装
  • 基于微信小程序的科创微应用平台设计与实现+ssm(lw+演示+源码+运行)
  • MongoDB 双活集群在运营商的实践
  • 利用mybatis拦截器完成入库加密出库解密
  • 算法之搜索--最长公共子序列LCS
  • leetcode746. 使用最小花费爬楼梯,动态规划
  • Uniapp低版本的安卓不能用解决办法
  • Qt_窗口界面QMainWindow的介绍
  • Deep Guided Learning for Fast Multi-ExposureImage Fusion
  • 对接空号检测平台可以降低成本吗
  • 动手学深度学习(pytorch)学习记录32-稠密连接网络(DenseNet)[学习记录]
  • Vue | watch监听
  • IDEA Project不显示/缺失文件
  • 手机在网状态查询接口如何用PHP进行调用?
  • AWS 管理控制台
  • Apache APISIX学习(1):介绍、docker启动
  • Java是怎么处理死锁的
  • 006——队列
  • 带线无人机现身俄罗斯抗干扰技术详解
  • HTML5 Video标签的属性、方法和事件汇总,以及常用视频插件推荐
  • 深蓝学院-- 量产自动驾驶中的规划控制算法 小鹏
  • G - Merchant Takahashi / F - Useless for LIS
  • mysql学习教程,从入门到精通,TOP 和MySQL LIMIT 子句(15)
  • 本地连线上Redis访问不通
  • SpringBoot权限认证-Sa-Token的使用与详解
  • C++第十二节课 模板初阶和string引入