我是机器学习的新手,我想知道是否有可能将可用的生物学数据用于聚类。我想找出一组DNA序列是否可以分为有效和无效的两组。
我有五组,每组包含约480个短序列(我们称它们为样本)。每组具有不同强度的效果:
Set1-效果非常好
Set2-效果好
Set3-次要效果
Set4-很小的影响
Set5-无效
每个样本都有一些功能,例如自由能,从特定的核苷酸开始...
现在的问题是,是否可以找出我的样本集中哪种类型的样本对整个样本集产生影响。我唯一的假设是,在set1中,我有比set5中更有效的样本(没有或只有很少)。一个非常简单(不现实)的结果可能是,所有以核苷酸“ A”开头,核苷酸为“ C”末端的样品都在起作用。
是否可以使用机器学习来发现?
谢谢!
最佳答案
这绝对听起来像是机器学习可以产生良好结果的问题。我建议您研究scikit-learn,这是一个功能强大且易于使用的工具包,可用于Python机器学习。有许多介绍性示例和教程。
对于您的用例,我想说的是随机森林可以提供良好的结果,尽管很难在不了解数据结构的情况下很难说。它们在sklearn中的RandomForestClassifier类中可用。同样,可以找到许多教程和示例。
由于您的训练数据没有标签,因此您可能需要研究无监督的学习方法。这种方法的简单类是聚类算法。在sklearn中,例如,您可以找到k-means clustering以及其他此类算法。想法是让算法将您的数据分成不同的集群,并查看集群成员与观察到的效果之间是否存在任何关联。
关于python - 预测核苷酸序列效率,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30004069/