用人工神经网络编码集体变量

anncolvar的Python项目详细描述


| pypi anaconda buildstatus codecov lgtm lgtmpy


阅读
d.trapl,i.horva奇anin,v.mare_ka,f._z_elik,g.unal和v.spiwok中的更多内容:`anncolvar:用人工神经网络对复杂集体变量的近似,用于分析和分子模拟的偏差<;https://www.frontiersin.org/articles/10.3389/fmolb.2019.00025/>;``前台。分子生物学。*2019,**6**,25(doi:10.3389/fmolb.2019.00025)


*****
*****



人工神经网络的集合变量::


用法:anncolvar[-h][-i infile][-p intop][-c colvar][-col col]
[-boxx][-boxy-boxy-boxy][-boxz boxz][-nofit nofit]
[-testset testset][-shuffle shuffle][-layers]
[-layer1 layer1][-layer2 layer2][-layer3 layer3]
[-actfun1 actfun1][-actfun2 actfun2][-actfun3 actfun3]
[-optim optim][-损失损失][-时期时期][-批处理]
[-o文件][-modelfile模型文件][-plumed plumedfile]


分子系统集合变量的人工神经网络学习,需要numpy、keras和mdtraj

-帮助显示此帮助消息并退出
-i在pdb、xtc、trr、dcd、netcdf或mdcrd中填充输入轨迹,
警告:轨迹必须为1。必须只包含要分析的
原子,2。不得包含任何周期边界
条件问题!
-p进入PDB中的输入拓扑,警告:结构必须是1。
位于PBC框和2的中心。必须只包含要分析的
原子!
-c colvar以文本格式输入集合变量文件,必须
包含与
轨迹中的帧相同的行数
-col col包含集合变量的列的索引
在输入的集合变量文件中,PBC框的X坐标大小(从0到
nm中的设定值)
-PBC框的Y坐标大小(从0到
nm中的设定值)
-boxZ框PBC框的Z坐标大小(从0到
nm中的设定值)
-不适合不适合拟合,轨迹必须正确拟合
(默认为假)
-测试集测试集测试集大小(轨迹的分数,默认值=
0.1)
-随机洗牌-随机洗牌轨迹帧以获得训练和测试
设置(默认值为true)
-层隐藏层数(允许值1-3,默认值=
1)
-层r1第1层第一个编码层的神经元数量(默认值=
256)
-第2层第2个编码层的神经元数量(默认值
=256)
-第3层第3个编码层的神经元数量(默认值=
256)
-actfun1 actfun1第一层激活函数(默认值=
sigmoid,选项见keras文档)
-actfun2 actfun2第二层激活函数(默认值=
线性,有关选项,请参阅keras文档)
-第三层的actfun3 actfun3激活函数(默认值=
线性,有关选项,请参阅keras文档)
-optim optimizer(默认值=adam,有关选项,请参阅keras
文件)
-损失损失函数n(默认值=均方误差,有关选项
请参阅Keras文档)
-各时期的时期数量(默认值=100,>;对于实际应用程序,可能需要1000个时期)
-批次批次批量大小(0=无批次,default=256)
-o具有原始和近似集合的文件输出文件
变量(txt,默认值=无输出)
-输出模型文件的模型文件前缀(实验,默认值=
无输出)
-plumed pplumed的lumedfile输出文件(默认值=plumed.dat)


Introduction
==



偏置模拟(如元动力学)使用预定义的参数集
作为集合变量。在集合变量
上施加人工偏压以增强采样。参数作为集合变量应用有两个条件。首先,可以仅从原子坐标计算集合变量的值。其次,作用在集体变量上的力可以转化为作用在单个原子上的力。换言之,用原子坐标计算集体变量的一阶导数是可能的。这两种计算都必须足够快,因为在模拟的每一步中都必须对它们进行评估。


有许多潜在的集体变量不容易计算。
有可能计算成百上千个
结构的集体变量。t不适用于数百万个结构(这对于纳秒长的模拟是必要的)。*anncolvar*可以使用
神经网络来近似这些集合变量。

为此,请遵循以下链接之一:

-tensorflow
-theano
-cntk

-c spiwokv anncolvar

usage
=



一系列具有代表性的结构(数百个或更多)使用预先计算的集合变量值
来训练神经网络。用户可以在pdb、xtc、
trr、dcd、netcdf或mdcrd中以轨迹的形式指定引用结构的输入集(*-i*)。轨迹必须仅包含要分析的原子
(例如,仅包含非氢原子)。轨迹不能包含任何周期性的边界条件问题。这两种转换都可以通过分子动力学模拟软件包实现,例如*gmx trjconv*。无需将
框架与参考结构匹配。可以通过
*-nofit true*


来关闭配件,必须在PDB中提供输入拓扑。这是一个用作拟合模板的结构。它还用于定义一个框。这个盒子必须大到足以把分子放入轨道的所有框架中。它不应该太大,因为这会抑制神经网络的非线性。当用户决定使用3x3x3nm盒时,有必要将要居中的分子置于坐标(1.5,1.5,1.5)nm处。在gromacs中,可以使用::
gmx editconf-f mol.pdb-o reference.pdb-c-box 3 3
它还必须只包含要分析的原子。框的大小可以通过参数*-boxx*、*-boxy*和*-boxz*(以nm为单位)指定。它是一个空格分隔的文本
文件,其行数与输入轨迹中的帧数相同。
列的索引可以由*-col*指定(例如,*-col 2*用于文件的第二列


选项*-test set*可以控制用作
测试集的轨迹部分。例如*-test set 0.1*表示10%的输入数据用作测试集
,90%用作训练集。选项*-shuffle true*使
前90%用作训练集,其余10%用作测试集。
否则,在将帧分离到训练集和测试集之前,将对帧进行shuffle。

层包含3n个神经元(其中n是原子数)。隐藏层的数量由*-layers*控制。这可以是1、2或3。对于较高的
层数,请联系作者。第一层、第二层和第三层的神经元数量由*-layer1*、*-layer2*和*-layer3*控制。使用等于2(32、64、128等)幂的层数是有用的。大量的神经元会导致程序运行缓慢或内存不足。神经元的激活
功能可以由*-actfun1*、*-actfun2*和*-actfun3*控制
任何由keras支持的激活功能都可以使用。

训练过程中使用的优化器可以由*-optim*控制。
默认的adam优化器(*-optim adam*)工作良好。损耗函数可以由*损耗*控制。默认的*-损失平均值_平方_error*工作良好。
可以由*epochs*控制epochs的数量。默认值(100)是
非常小,通常>;1000对于实际应用程序是必需的。批
大小可以由*-batch*控制(没有批的*-batch 0*默认为256)。

它包含集合变量的近似值和初始值。模型可以存储在文本文件的
集中(try*-model*)。输入文件被打印到由*-plumed*(默认为plumed.dat)控制的文件中。该文件可直接用于计算由*plumed driver*或由*plumed patched*分子动力学引擎产生的集合变量的演化。要在增强采样中使用集合变量
(例如metadynamics),需要添加适当的关键字(例如
metad)。

。| pypi image::https://img.shields.io/pypi/v/anncolvar.svg
:target:https://pypi.org/project/anncolvar/
:alt:pypi上发布的最新版本

。| anaconda图片::https://anaconda.org/spiwokv/anncolvar/badges/version.svg
:目标:https://anaconda.org/spiwokv/anncolvar
:alt:在anaconda云上发布的最新版本

。|构建状态图像::https://travis-ci.org/spiwokv/anncolvar.svg?branch=master
:目标:http://travis ci.org/spiwokv/anncolvar/
:alt:travis ci

Mac/Linux上主分支的生成状态。| codecov图像::https://codecov.io/gh/spiwokv/anncolvar/branch/master/graph/badge.svg
:目标:https://codecov.io/gh/spiwokv/anncolvar/
:alt:code coverage

。| lgtm图像::https://img.shields.io/lgtm/alerts/g/spiwokv/anncolvar.svg?logo=lgtm&logowdth=18
:目标:https://lgtm.com/projects/g/spiwokv/anncolvar/alerts/
:alt:lgtm代码警报

| lgtmpy图像::https://img.shields.io/lgtm/grade/python/g/spiwokv/anncolvar.svg?logo=lgtm&logowdth=18
:目标:https://lgtm.com/projects/g/spiwokv/anncolvar/context:python
:alt:lgtm python质量

_ TensorFlow:https://www.tensorflow.org/install/

…_ theano:http://deeplearning.net/software/theano/install.html

…_ CNTK:https://docs.microsoft.com/en-us/cognitive-toolkit/setup-cntk-on-your-machine

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java播放流媒体音乐   LWJGL中的java纹理未显示   java从父集合中删除时删除子对象   mysql希望在我的代码中添加验证,如果表不存在,它应该用java创建新表   java我可以关闭客户端的socket而不引起服务器端的EOFEException吗?   java Primefaces对话框框架咆哮和showMessageInDialog不工作   hadoop配置单元无法初始化类java。网网络接口   关键字中缺少oracle11g Java iBatis   java在RESTAPI中创建PUT和POST端点,而不创建GET端点?   java Math abs和ceil输出编译错误   java Tomcat 8.017代md5及其摘要。球棒   java SpringBean配置xml文件在IteliJ Idea中加载   java为什么在使用Powershell指定Xms和Xmx时,它们什么都不做,但通过Netbeans IDE可以正常工作?   java Drools项目构建失败,kjar打包从7.7版开始