我有一个这样的 DNA 序列数据框:
Feature Label
GCTAGATGACAGT 0
TTTTAAAACAG 1
TAGCTATACT 2
TGGGGCAAAAAAAA 0
AATGTCG 3
AATGTCG 0
AATGTCG 1
其中有一列带有 DNA 序列,标签可以是 0、1、2、3(即该 DNA 序列的类别)。我想开发一个神经网络来预测每个序列分类为 1,2 或 3 类别的概率(不是 0,我不关心 0)。每个序列可以在数据框中出现多次,并且每个序列有可能出现在多个(或所有)类别中。所以输出应该是这样的:
GCTAGATGACAGT (0.9,0.1,0.2)
TTTTAAAACAG (0.7,0.6,0.3)
TAGCTATACT (0.3,0.3,0.2)
TGGGGCAAAAAAAA (0.1,0.5,0.6)
其中元组中的数字是序列在类别 1,2 和 3 中找到的概率。
它运行,并按预期打印精度(精度不是很好,62%,但我可以解决这个问题,这是我的第一个 NN,只想运行一个示例)。
我的问题专门针对预测。有人可以向我展示一个从拟合模型(我在上面有)到实际预测的跳跃示例。我认为该算法涉及:
从交叉验证中找到最佳模型(我试图将其与监视器 val 准确性部分结合起来)
预测类别的序列列表在 pred_list 中
拟合从训练到 pred_list 的最佳模型
如问题顶部所述的返回概率。
我从其他问题中知道这存在(例如这里):
prediction = model.predict(np.array(tk.texts_to_sequences(text))) print(prediction)
....但我不知道如何将它与交叉验证结合起来,也不知道如何以一种方式获得我想要的输出(即在训练中每个序列被分配到 1,2 或 3 类的三类概率数据集,其中每个序列可以出现在多个类中)。
回首忆惘然
慕无忌1623718
随时随地看视频慕课网APP
相关分类