3

如问题所述。我的目标是训练一个权重为复数的神经网络。使用默认的scikit学习网络并在此基础上编辑(编辑源代码),我遇到的主要问题是从scipy中获取的scikit学习中使用的优化函数仅支持输入实数的函数的数值优化。训练具有复数值权重的神经网络(初始化复数值权重实数值输入)

Scikit学习比较差的神经网络似乎特别是如果你希望叉子和编辑的结构是相当不易伸缩。

正如我已经注意到,并在这里一纸我需要改变的东西阅读,如错误的功能,以确保在顶层的误差保持在实数域或问题变得不明确。

我的问题在这里是否有任何标准库可能已经这样做?或者任何简单的调整,我可以做烤宽面条或张量来拯救我的生命?

P.S. : 对不起,没有发布任何工作代码。这是一个困难的问题,格式化到stackoverflow标准,我承认它可能超出了主题,在这种情况下,我很抱歉,如果这样。

+0

你在SciPy,BTW中使用了哪些NN? –

+0

scipy.optimize.fmin_l_bfgs_b –

+0

全部转换为真正的optmizing变量约束optmizers的:/ –

回答

3

最简单的方法是将你的特征分成实部和虚部。我已经完成了与来自闰盘运动的矢量输入类似的工作,并且如果将矢量分解为它们的组件轴,它将大大简化这些工作。

1

Tensorflow具有初级复数支持。

如果你必须建立自己的神经网络节点,你可以在这个blog采取一目了然。

对于全纯功能,复BP相当直截了当。

对于非全纯功能,他们需要认真对待。