本项目目的是对基因型进行填充,按照传统方法HMM的设计思路,设计了在线的填充方式,每一段SNP都单独训练神经网络,并且可以保存参数;同时,为了拓展以后的基于深度学习的填充模式,设计了基于全SNP的神经网络模型,并且可以保存模型参数。
cnn1d.py:卷积神经网络提取特征,然后利用特征对数据进行数据预测
fcn2d.py:全卷积网络提取二维数据特征,然后预测数据
inception1d.py:利用inception网络提取一维特征,然后利用全链接对特征进行特征融合,预测数据
resnet1d.py:利用resnet网络提取一维特征,然后利用全链接对特征进行特征融合,预测数据
stack_lstm1d.py:利用lstm网络提取一维特征,然后利用全链接对特征进行特征融合,对数据进行重建,输入和输出都是为无缺失数据
stack_transformer1d.py:利用lstm网络提取一维特征,然后利用全链接对特征进行特征融合,对数据进行重建,输入和输出都是为无缺失数据
unet1d.py:利用FCN网络对原始一维数据编码,然后根据编码向量对其进行解码,得到重建向量(在线预测)
unet2d.py:利用FCN网络对原始二维数据编码,然后根据编码向量对其进行解码,得到重建向量
preprocess.py:对数据进行预处理,比如划分训练集比例和mask对象的构建
utils.py:一些小工具,比如各种自定义评价指标的编写
train2d.py:利用2d数据对所有样本的snp数据进行重建,通过滑窗进行采样训练,同样的方式也可以进行数据预测
train1d.py:利用1d数据对一段snp数据进行重建,通过滑窗形式预测所有snp,每一段为独立任务,保存模型参数,直到预测出所有snp
此部分数据由于太大,无法上传,如果需要可以与本人联系。 gene_chip:基因芯片数据,这里存放需要用到的基因芯片数据
reference_panel:这里是基于基因型填充所需要用到的参考样本数据
processed_phase3:这里存放的是经过预处理以后的参考样本数据和基因芯片芯片。