使用通用操作感知器实现各种算法的python包
pygop的Python项目详细描述
pygop:基于广义操作感知器(gop)算法的python库
这个包使用Generalized Operational Perceptron实现渐进式学习算法。pygop支持使用cpu或gpu的单机和集群环境。此实现包括以下算法:
什么是广义操作感知器?
Generalized Operational Perceptron是一种人工神经元模型,旨在取代传统的mcculloch-pitts神经元模型。标准感知器模型只进行线性变换,然后进行非线性阈值化,gop模型封装了线性和非线性操作的多样性(以传统感知器为特例)。每个gop的特征是可学习的突触权重和一个由3种操作组成的操作集:节点操作、池操作和激活操作。gop执行的三种操作大致类似于哺乳动物生物学习系统中的神经元活动,其中每个神经元通过三种不同的操作传导电信号:
- 树突突触连接输入信号的改变。
- SOMA中修改的输入信号的池操作。
- 当轴突丘的电位超过极限时发出脉冲。
通过定义一组节点算子、池算子和激活算子,每个gop可以根据手头的问题选择合适的算子。因此,学习一个基于gop的网络需要找到合适的算子以及更新突触权重。gop的作者提出了渐进式操作感知器(pop)算法来逐步学习基于gop的网络。随后,提出了Heterogeneous Multilayer Generalized Operational Perceptron (HeMLGOP)算法及其变体(homlgop、hemlrn、homlrn),利用高效的算子集搜索过程来学习gops的异构体系结构。此外,还提出了pop的快速版本,即POPfast和内存扩展POPmemO,POPmemH,它们通过合并内存路径来增强pop fast。
安装
PYPI安装
在安装pygop之前需要tensorflow。 通过pip安装tensorflow cpu版本:
pip install tensorflow
或GPU版本:
pip install tensorflow-gpu
要安装具有所需依赖项的pygop::
pip install pygop
目前,pygop只支持同时支持python 2和python 3的linux(在python2.7和python3.4、3.5、3.6、3.7上测试,cpu为tensorflow)
从源安装
要从github安装最新版本,请从项目存储库克隆源并使用setup.py::
git clone https://github.com/viebboy/PyGOP
cd PyGOP
python setup.py install --user
文档
完整的文档可以找到here
参考
如果您使用其中一种算法,请引用相应的文章:
- S.Kiranyaz,T.Ince,A.Iosifidis和M.Gabbouj,“渐进式操作感知器”,神经计算,第224卷,第142-154页,2017年。
- D.T.Tran、S.Kiranyaz、M.Gabbouj和A.Iosifidis,“异质多层广义操作感知器”,ARXIV预印本ARXIV:1804.0509320018。
- D.T.Tran、S.Kiranyaz、M.Gabbouj和A.Iosifidis,“带记忆的渐进式操作感知器”,ARXIV预印本ARXIV:1808.063772018年。