16、利用机器学习预测人类增强子

利用机器学习预测人类增强子

1. 引入深度学习模型

在之前的尝试中,我们可能得到了与之前相似的分数,这表明仅使用逻辑回归模型从序列中预测增强子是不够的,我们需要一个更深层次的模型。接下来,我们将尝试使用深度学习模型进行预测。

2. 独热编码与简单卷积神经网络(CNN)

独热编码是表示DNA序列最简单的方法之一。它将DNA序列表示为一个L × 4的矩阵,其中L是DNA序列的长度,4是核苷酸的数量。具体来说,对于每个位置的核苷酸,在对应的核苷酸列中置为1,其他列置为0。

以下是将fasta记录转换为独热矩阵的函数实现:

import os
from Bio import SeqIO
import numpy as np
import time
from tqdm import tqdm
import random

# Convert fasta into ML input data
def seq2onehot(in_fa, random_choice=False, rand_n=None):
    print(f'Reading {os.path.basename(in_fa)} into dictionary  and removing N\'s')
    multi_fa = SeqIO.to_dict(SeqIO.parse(in_fa, 'fasta'))
    clean_multi_fa = {}
    for k, v in tqdm(multi_fa.items()):
        if 'N' not in str(v.seq).upper():
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值