我试图在python中使用来自scikit-learn 的多层感知器.我的问题是,导入无效.来自scikit-learn的所有其他模块都运行正常.
from sklearn.neural_network import MLPClassifier
Run Code Online (Sandbox Code Playgroud)
导入错误:无法导入名称MLPClassifier
我在Visual Studio 2015中使用Python环境Python64位3.4.我在控制台上安装了sklearn:conda install scikit-learn
我还安装了numpy和pandas.在我遇到上述错误后,我还安装了scikit-neuralnetwork:pip install scikit-neuralnetwork
已安装的scikit-learn版本为0.17.
我做错了什么?我错过了安装吗?
-----编辑----
除了tttthomasss的答案,我找到了如何为神经元网络安装sknn库的解决方案.我按照本教程.执行以下步骤:
pip install scikit-neuralnetworkconda install mingw libpython您可以在之后使用sknn库.
我需要一些分子库仑矩阵来完成机器学习任务。库仑矩阵?这是一篇描述它的论文
我找到了Python包molml,它有一个方法。但是我不知道如何仅将 API 用于单个分子。在他们提供的所有示例中,该方法都是用两个分子调用的,为什么?
该示例如何提供该方法:
H2 = (['H', 'H'],
[[0.0, 0.0, 0.0],
[1.0, 0.0, 0.0]])
HCN = (['H', 'C', 'N'],
[[-1.0, 0.0, 0.0],
[ 0.0, 0.0, 0.0],
[ 1.0, 0.0, 0.0]])
feat.transform([H2, HCN])
Run Code Online (Sandbox Code Playgroud)
我需要这样的东西:
atomnames = [list of atomsymbols]
atomcoords = [list of [x,y,z] for the atoms]
coulombMatrice = CoulombMatrix((atomnames,atomcoords)
Run Code Online (Sandbox Code Playgroud)
我还找到了另一个库(QML),它承诺生成库仑矩阵的可能性,但是,我无法在 Windows 上安装它,因为它依赖于 Linux gcc-fortran 编译器,我已经为此目的安装了 cygwin 和 gcc-fortran 。
感谢你们
我有一份dictionarys列表.
list_of_dicts = [{ a: 1, b:f, c:3}, {a: y, b:q, c:z, d: 1}, ... ]
Run Code Online (Sandbox Code Playgroud)
现在我想创建一个新的字典,如下所示:
newDict = { a: [1,y], b: [f,q], c: [3,z], d:[1]}
Run Code Online (Sandbox Code Playgroud)
我知道我可以做一个双循环,但是这很慢,因为我在字典中处理大对象(主要是NumPy数组).
newDict = {}
for l in list_of_dicts:
for k, v in l.items():
if k in newDict:
newDict.append(v)
else:
newDict[k] = [v]
Run Code Online (Sandbox Code Playgroud)
怎么做得更快?