除了虚拟筛选的应用(其中的一些已经完成了,我现在正在撰写论文,同时准备发布工具包),我同时正在参与蛋白质——配体相互作用等一般概念的研究,我们最近发现了一个蛋白质——配体相互作用的有趣现象,我们正在寻找数据点以确认它不是一个特例。今年夏天刚刚结束的一个项目则有关计算蛋白质——配体结合袋的局部刚性,用以预测近天然蛋白质——配体的结合模式。 我觉得这是一个有趣的想法,因为近天然捆绑模式通常需要通过不同的能量项求和来进行预测。使用刚性理论,计算结构中的自由度更多是关于相互作用的协同性,而不是它们的相加和。换句话说,如果特定的非共价相互作用不从复合体中去除额外的自由度(如果复合体已经是刚性的),则其不被「计数」到相互作用分数。在实践中,使用局部刚性蛋白质——配体符合体似乎比其他方式或基于知识的评分方式一样好。而且,除了除了作为「独立」评分函数之外,atv直播,我认为它是一个有趣的新的「信号」或「特征」,可以用于整体评分。 15. 使用 Octave 作为机器学习语言到底有多高效? 我认为 Octave 是一种原型设计的高效环境,同时它也是(和 MATLAB 一起)计算机科学(学术领域)中的流行语言。我在很多地方必须使用它,而且我得说它确实是在机器学习上的好选择。但是,看起来现实世界中不趋向于使用 Octave/MATLAB,我得说像 Python 这样的语言也很容易学习——而且功能更多一点(但请注意这是我的个人喜好)。简而言之:如果你的研究需要大量使用,或者你的实验室/团队已经再用了,Octave 是一个不错的选择,否则我会考虑 Python 和 R 语言。 如果你有兴趣,可以看我去年写的一篇关于「语言战争」的文章: 16. 对于有一些机器学习知识的程序员来说,学习计算生物学有什么好的方法? 这是一个好问题!计算生物学是一个广阔的领域,有很多不同的子领域和方向可以研究:蛋白质折叠,同源性蛋白质建模,蛋白质配体对接和评分、分子动力学模拟、序列比对、基因组装配、微生物组研究、进化生物学和系统发育等等。 生物学的入门可以从分子生物学和基因开始,首先了解「大局」,然后再开始进入你所感兴趣的分区。关于生物计算方面的学习,我主要通过阅读论文——这一领域的变化很快,一本十年前的教科书可能已经过时了。我听说 Edx 和 Coursera 这样的网站已经在提供计算生物学和生物信息学的专门课程了,我没有接触过这些课程,但我觉得这也是不错的入门方式。有一个内容我想要特别分享一下,Greg Caporaso 的「应用生物信息学概论(Introduction to Applied Bioinformatics:)」,一本免费的在线图书。 17. 你对数据科学的初学者有什么好建议? 我的建议是选择你个人感兴趣的问题或项目,而不是从复制一个问题的解决方案入手。如果你对一个问题感兴趣,自然会急于去解决它,并在此过程中开发新的工具和技术。首先,你需要以你能够熟练使用的技术和工具入手,看看能做到什么程度。如果使用现有的工具包不能够解决问题,我会尝试在线搜索类似问题的解决方案,或者问问别人。举个例子,如果你对某种预测感兴趣,在一开始你会将键值对储存在 Python 字典中。随着你的数据集不断增长,你可能会开始需要其他的存储方式,如 SQLite,然后你会开始学习 SQLite。同样的,假如你会使用 NumPy 数组处理很多问题,在收集异构数据时,你可能会转而寻求 Pandas 来处理;如果你的系统内存有限,你会尝试使用其他工具,例如 Blaze。 我建议的方法是你需要学习使用你认为可以解决问题的工具,假如合适就使用它们。第二步是看看你目前工具的潜在替代者,看看它们有什么额外的功能。 我发现为了学习工具而学习工具很快就会变得无聊,所以我的方式是在实践中学习工具。如果方向正确,你自然会花时间来学习新的工具。 18. 您怎么找到时间来掌握机器学习,获得另一个博士学位,并且还对这个学科出了本书的? (责任编辑:本港台直播) |