栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

项目实训-智能生物序列分析平台-项目工作总结3

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

项目实训-智能生物序列分析平台-项目工作总结3

文章目录
  • 前端模块工作情况
    • 项目核心文件
      • index.js
      • 路由路径 + 组件结构
      • 请求模块
  • 后端工作情况
    • SpringBoot 配置Filter过滤器实现身份认证
    • springboot解决第三方依赖jar包的问题
    • 使用swagger自动生成接口文档
  • python端工作情况
    • 曲线部分代码
      • learning curve曲线
      • 长度分布图

前端模块工作情况
  1. 前端完成请求模块的编写任务——蒋一
  2. 前端UI设计完成——蒋一
  3. 前端UI开始实现,已实现主页、导航栏、页脚栏等简单组件,初步实现信息的展示与可视化——林弘毅
项目核心文件 index.js

文件位于src文件夹下,是nodejs编译的源文件,其中引入了create-react-app创建的默认组件App.js,并将其渲染到上文提到的index.html文件中id=root的html节点。我们可以也应该将index.js中包含的渲染关系、组件等内容改写。
index.js文件的修改涉及到整个项目的核心架构,需要将整体架构大致明确后进行修改。

路由路径 + 组件结构

经过小组内多次讨论,项目的前端暂定有如下几个模块,并以ECMAScript Module的形式表示出来

  • 主页 HomePage
  • 功能选择 ServerSelect
  • 训练模型 ServerTrainHome
    • DNA模型训练 DNAServerForm
    • RNA模型训练 RNAServerForm
    • 蛋白质模型训练 ProteinServerForm
  • 序列分析 ServerPridictHome
    • DNA序列分析 DNAPredictForm
    • RNA序列分析 RNAPredictForm
    • 蛋白质/多肽链序列分析 ProteinPredictForm
  • 任务列表 JobHome
  • 结果展示 ResultHome
  • 关于 About
  • 参考文献 Reference
请求模块

前端对接口请求部分使用的是async与await异步的操作。我们为了使得前端界面能够进行异步相应,不出现同步加载数据不出现的问题,我们在接口请求方面也使用了async与await来控制异步操作的进行​​​​​​​。

后端工作情况 SpringBoot 配置Filter过滤器实现身份认证
  1. 通过 @WebFilter 注解来配置
  2. 通过 @Bean 注解来配置
springboot解决第三方依赖jar包的问题

maven有一种方式可以将本地的Jar包依赖到项目中而不需要先deploy到maven库上。

使用swagger自动生成接口文档
  1. 依赖
    添加依赖和 spring-boot-starter-parent 的版本有关,自动引入的 spring-plugin-core 包版本不一
    致会导致项目跑不起来,这里是个大坑。
  2. 配置
    启动类、swagger配置
  3. 常用注解
    类、方法上、方法入参、实体、header参数、file入参
  4. 拦截器放行
  5. 文档访问地址
    http://ip:port/context-path/swagger-ui/
    http://ip:port/context-path/swagger-ui/index.html
  6. 统一返回值问题
    若项目中使用了统一返回值的包装类例如 BaseResponse ,方法返回时加上泛型
python端工作情况 曲线部分代码 learning curve曲线

主要目的是记录根据每个epoch训练完成之后,Accuary和Loss的变化过程,这样能更好的反映模型的训练和调整,更加清楚的看到梯度下降的一步步更新迭代。

  1. 首先从函数的接口中获取到我们绘图要用的epochdata,注意这部分数据是我们在训练的时候对每一步的train和test进行测试的时候保存了记录下来的代码。所以我们直接将每个参数分别赋值给对应的变量即可
  2. 对画图的操作进行一些基本的设定,如设置画布figure的大小,两张图wspace和hspace之间的差距和间隔,还有将整个框子的右上部分全部去除,这样回复到R语言画图的风格中
  3. 先根据模型的个数选取我们绘图的配色部分
  4. 最后就是一些基本的设置x轴,y轴,还有标题,legend的标注,以及保存图片的功能
长度分布图

这部分主要代码是用来分析输入数据长度分布的一张图。
主要是用来使用非等长序列情况下使用的。

  1. 首先定义函数以及存放的记录值的数组keyvalueP 和 keyvalueF。
  2. 分别定义每一种氨基酸的存放位置。
  3. 先将sequence和label从输入函数的初始数组中取出,准备对每一个样本进行统计和分析信息中的位置和作用。
  4. 对句子进行for循环的操作,一方面能够判断正例和负例之间的区别,然后再对这两种类别进行统计每一种氨基酸的个数,映射到之前的表格中的数组或者对象中。
  5. 最后一步就是开始画图操作,首先将得到的数据转化成相应的list:Px, Py, Nx, Ny。
    接着根据列表的长度ind分别进行bar的绘制操作,再加上legend将相应的标识显现,最后保存图片即可完成整幅图的绘制.
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/960715.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号