机器/深度学习TensorLayer、FATE、RL Coach、MedicalNet介绍

以下为你介绍的机器学习/深度学习软件都可用在Linux系统上:TensorLayer(基于TensorFlow的新型深度学习和强化学习库)、FATE(联邦机器学习框架)、RL Coach(Python 强化学习框架)、MedicalNet(3D 医疗影像预训练模型)。

1、TensorLayer(基于TensorFlow的新型深度学习和强化学习库)

TensorLayer是一个基于TensorFlow的新型深度学习和强化学习库,专为研究人员和工程师而设计。它提供了大量可自定义的神经层/功能,这些是构建真实AI应用程序的关键。TensorLayer被ACM多媒体协会授予2017年最佳开源软件。

作为深度学习从业者,我们一直在寻找可以满足各种开发目的的库。通过提供各种示例,教程和预先训练的模型,可以轻松采用该库。此外,它允许用户轻松微调TensorFlow,同时适合生产部署。TensorLayer旨在满足所有这些目的。它有三个主要特点:

1]、简单性:TensorLayer将TensorFlow的低级数据流接口提升到高级层/模型。 通过广泛社区提供的丰富示例代码,您可以轻松学习。

2]、灵活性:TensorLayer API是透明的:它不会屏蔽用户的TensorFlow,但留下大量的钩子,有助于低级调整和深度定制。

3]、零成本抽象:TensorLayer可以实现TensorFlow的全部功能。下表显示了使用TensorLayer和TITAN Xp上的原生TensorFlow的VGG16的训练速度。

机器/深度学习TensorLayer、FATE、RL Coach、MedicalNet介绍

TensorLayer 是作为一个开发库来使用的。其他包装库如Keras和TFLearn也提供高级抽象。然而,它们经常隐藏用户的底层引擎,这使得它们难以定制和微调。相反,TensorLayer API通常是轻量级,灵活且透明的。用户经常会发现从示例和教程开始很容易,然后无缝地深入了解TensorFlow。此外,TensorLayer不会通过本机支持创建库锁定,以便从Keras导入组件。

TensorLayer在北京大学,伦敦帝国理工学院,加州大学伯克利分校,卡内基梅隆大学,斯坦福大学,康涅狄格大学(UTC)以及谷歌,微软,阿里巴巴等公司等顶尖研究人员和工程师中的使用增长迅速。

模型定义:

静态模型:

import tensorflow as tf

from tensorlayer.layers import Input, Dropout, Dense

from tensorlayer.models import Model

def get_model(inputs_shape):

ni = Input(inputs_shape)

nn = Dropout(keep=0.8)(ni)

nn = Dense(n_units=800, act=tf.nn.relu, name="dense1")(nn)

nn = Dropout(keep=0.8)(nn)

nn = Dense(n_units=800, act=tf.nn.relu)(nn)

nn = Dropout(keep=0.8)(nn)

nn = Dense(n_units=10, act=tf.nn.relu)(nn)

M = Model(inputs=ni, outputs=nn, name="mlp")

return M

MLP = get_model([None, 784])

MLP.eval()

outputs = MLP(data)

动态模型:

class CustomModel(Model):

def __init__(self):

super(CustomModel, self).__init__()

self.dropout1 = Dropout(keep=0.8)

self.dense1 = Dense(n_units=800, act=tf.nn.relu, in_channels=784)

self.dropout2 = Dropout(keep=0.8)#(self.dense1)

self.dense2 = Dense(n_units=800, act=tf.nn.relu, in_channels=800)

self.dropout3 = Dropout(keep=0.8)#(self.dense2)

self.dense3 = Dense(n_units=10, act=tf.nn.relu, in_channels=800)

def forward(self, x, foo=False):

z = self.dropout1(x)

z = self.dense1(z)

z = self.dropout2(z)

z = self.dense2(z)

z = self.dropout3(z)

out = self.dense3(z)

if foo:

out = tf.nn.relu(out)

return out

MLP = CustomModel()

MLP.eval()

outputs = MLP(data, foo=True) # controls the forward here

outputs = MLP(data, foo=False)

安装:

有关TensorLayer 2.0的最新代码,请从源代码构建,TensorLayer 2.0具有先决条件,包括TensorFlow 2、numpy等,为了支持GPU,需要CUDA和cuDNN。

安装TensorFlow:

pip3 install tensorflow-gpu==2.0.0-beta1 # specific version  (YOU SHOULD INSTALL THIS ONE NOW)

pip3 install tensorflow-gpu # GPU version

pip3 install tensorflow # CPU version

安装TensorLayer的稳定版本:

pip3 install tensorlayer

安装最新版本的TensorLayer:

pip3 install git+https://github.com/tensorlayer/tensorlayer.git

or:

pip3 install https://github.com/tensorlayer/tensorlayer/archive/master.zip

对于开发人员,您应该将文件夹克隆到本地计算机,并将其与项目脚本一起放置:

git clone https://github.com/tensorlayer/tensorlayer.git

如果要安装TensorLayer 1.X,最简单的安装TensorLayer 1.X的方法是使用Python软件包索引(PyPI):

1]、用于TensorLayer 1.X的最新稳定版本

pip3 install --upgrade tensorlayer==1.X

2]、适用于TensorLayer 1.X的最新版本候选

pip3 install --upgrade --pre tensorlayer

3]、如果要安装其他依赖项,还可以运行

pip3 install --upgrade tensorlayer[all] # 所有其他依赖项

pip3 install --upgrade tensorlayer[extra] # 仅`extra`依赖项

pip3 install --upgrade tensorlayer[contrib_loggers] # 只有`contrib_loggers`依赖项

下载地址:https://gitee.com/TensorLayer/tensorlayer

2、FATE(联邦机器学习框架)

机器/深度学习TensorLayer、FATE、RL Coach、MedicalNet介绍

FATE(Federated AI Technology Enabler)是基于联邦机器学习技术的一个框架,其旨在提供安全的计算框架来支持联邦 AI 生态。FATE 实现了基于同态加密和多方计算(MPC)的安全计算协议,它支持联邦学习架构和各种机器学习算法的安全计算,包括逻辑回归、基于树的算法、深度学习和转移学习。

联邦机器学习又名联邦学习、联合学习与联盟学习,它能有效帮助多个机构在满足用户隐私保护、数据安全和政府法规的要求下,进行数据使用和机器学习建模,消除由于行业竞争、隐私安全与行政手续等问题带来的数据孤岛,让以数据为基础的机器学习顺利进行。

下载地址:https://gitee.com/WeBank/FATE

3、RL Coach(Python 强化学习框架)

RL Coach 是一个Python 强化学习框架,由英特尔 2017 年推出,包含许多最先进算法的实现。RL Coach 只是英特尔真正的人工智能生态系统中的几个工具之一。

它以模块化的方式对代理和环境之间的交互进行建模。有了 Coach,就可以通过组合各种构建块并在多个环境中对代理进行培训来对代理建模。可用的环境允许在不同的领域测试代理,如机器人、自主驾驶、游戏等等。

它公开了一组易于使用的 API,用于试验新的 RL 算法,并允许简单地集成新环境来解决问题。基本 RL 组件(算法、环境、神经网络体系结构及勘探策略等等)是很好的解耦,所以扩展和重用现有的组件是相当方便的。

Coach 从培训过程中收集统计数据,并支持高级可视化技术来调试正在培训的代理。

机器/深度学习TensorLayer、FATE、RL Coach、MedicalNet介绍

支持算法:

机器/深度学习TensorLayer、FATE、RL Coach、MedicalNet介绍

机器/深度学习TensorLayer、FATE、RL Coach、MedicalNet介绍

注意:RL Coach 只在 Ubuntu 16.04 LTS 和 Python 3.5 上进行过测试。

下载地址:https://github.com/NervanaSystems/coach/

4、MedicalNet(3D 医疗影像预训练模型)

MedicalNet 是一个 3D 医疗影像预训练模型,其将多个 3D 医疗数据集集合成大数据集,基于此数据集提供了完整的 3D-ResNet 系列预训练模型与相应的迁移学习训练代码。

适用场景:

MedicalNet 提供的预训练网络可迁移到任何 3D 医疗影像的 AI 应用中,包括但不限于分割、检测与分类等任务。

尤其适用小数据医疗影像 AI 场景,能加快网络收敛,提升网络性能。

特性:

支持单卡与多卡训练。

支持任何 3D 医疗影像的迁移学习任务。

支持 3D-ResNet 全系列模型的迁移学习任务。

支持多种感受野的迁移学习。

环境依赖:

Python 3.7.0、PyTorch-0.4.1、CUDA Version 9.0、CUDNN 7.0.5。

性能:

机器/深度学习TensorLayer、FATE、RL Coach、MedicalNet介绍

机器/深度学习TensorLayer、FATE、RL Coach、MedicalNet介绍

TODO:

3D-ResNet系列预训练模型。

转移学习培训代码。

多GPU训练。

3D有效的预训练模型(例如3D-MobileNet,3D-ShuffleNet)。

2D医学预训练模型。

基于更多医学数据集的预训练MedicalNet模型。

下载地址:https://github.com/Tencent/MedicalNet

注明

以上就是机器/深度学习TensorLayer、FATE、RL Coach、MedicalNet的介绍内容,这些机器学习/深度学习软件都能使用在Linux操作系统中。

栏目相关文章