短序列分类模型

分工:k阶马尔科夫模型由裴嘉政实现,深度学习模型由余谷风实现。

k阶马尔可夫模型

所有代码均在kmm文件目录下。

编译

由于代码由C++11标准写成,因此编译命令为g++ -o kmm.exe kmm.cpp -std=c++11

注意!:代码中使用了"io.h"头文件来实现获取目录下所有文件的功能,而该头文件不能实现跨平台兼容,因此本代码只能在Windows下编译,不能在linux下编译!

运行

根据实际需求,运行时参数可以设定为3或4个。对于普通分类任务来说,需要的参数分别为$k$,参考基因组所在文件夹,以及待预测短序列的Fasta文件。如果需要对分类结果判断准确率, 则需要再加上标签文件。如果已有编译后的可执行文件,则这一步可以在linux上运行,运行指令不变。

输入./kmm.exe -h可以得到帮助信息,运行命令为:./kmm.exe -k k -r reference_fold -g short_genomes [-t label]

深度学习模型

所有代码均在deep_learning文件目录下。

除数据文件外,总共包含4个python文件(train.py model.py test.py和util.py)和一个已有模型文件。代码最好在有cuda算子的GPU(英伟达显卡)上运行,且需要安装torch等依赖包。

训练命令:python train.py

测试命令:python test.py

训练文件中的参数可以进入文件进行调整,测试命令则可以直接在命令行中对参数进行调整。

源代码目录中均不含数据文件,需要按照实际需求准备输入文件