SAS深度学习接口
sas-dlp的Python项目详细描述
概述
dlpy是用于sas深度学习特性的高级python库 SAS Viya提供。DLPY旨在提供 对图像、文本和音频数据应用深度学习方法。DLPY API 在Kerasapi之后创建 具有PyTorch风味。
最近添加了什么
- 除图像外,还支持文本、音频和时间序列
- 新的API用于:
- 基于RNN的任务:文本分类、文本生成和序列标记
- 目标检测
- 图像分割
- 时间序列处理和建模
- 处理音频文件并创建语音识别模型
- 其他预定义的网络架构,如densenet、darknet、inception、yolo, fasterrcnn、u-net、mobilenet和shufflenet
- 增强的数据可视化和元数据处理
先决条件
- python版本3或更高版本是必需的
- 使用
pip install swat
或conda install -c sas-institute swat
为python安装sasScripting Wrapper for Analytics Transfer (SWAT) - 需要使用Visual Data Mining and Machine Learning(vdmml)访问SAS Viya 3.4环境
- 需要用户登录到您的sas viya后端。如果您没有SAS VIYA帐户,请与系统管理员联系以获取详细信息。
- 建议您安装名为Graphviz的开源图形可视化软件,以实现dlpy深度学习模型的图形可视化
- 使用
pip install sas-dlpy
或conda install -c sas-institute sas-dlpy
安装dlpy
SAS VIYA和VDMML版本与DLPY版本的比较
dlpy版本与sas viya和vdmml版本一致。 下面是版本矩阵。
DLPy | SAS Viya | VDMML |
---|---|---|
1.1 | 3.4 | 8.4 |
1.0 | 3.4 | 8.3 |
上表的内容如下:1.0(含)之间的dlpy版本 to 1.1(独占)设计用于SAS VIYA 3.4和VDMML 8.3。
外部库
支持以下版本的外部库:
- onnx:versions>;=1.5.0
- keras:versions>;=2.1.3
开始
要连接到SAS Viya服务器,请导入swat并使用swat.cas类 创建连接:
注意:默认的cas端口是5570。
>>> import swat
>>> sess = swat.CAS('mycloud.example.com', 5570)
接下来,导入dlpy包,然后构建一个简单的卷积 神经网络(CNN)模型。
导入dlpy模型函数:
>>> from dlpy import Model, Sequential
>>> from dlpy.layers import *
使用dlpy创建序列模型并将其命名为Simple_CNN
:
>>> model1 = Sequential(sess, model_table = 'Simple_CNN')
定义要添加到model1
:
# The input shape contains RGB images (3 channels)
# The model images are 224 px in height and 224 px in width
>>> model1.add(InputLayer(3,224,224))
NOTE: Input layer added.
添加二维卷积层和池层:
# Add 2-Dimensional Convolution Layer to model1
# that has 8 filters and a kernel size of 7.
>>> model1.add(Conv2d(8,7))
NOTE: Convolutional layer added.
# Add Pooling Layer of size 2
>>> model1.add(Pooling(2))
NOTE: Pooling layer added.
添加一对额外的二维卷积和池层:
# Add another 2D convolution Layer that has 8 filters and a kernel size of 7
>>> model1.add(Conv2d(8,7))
NOTE: Convolutional layer added.
# Add a pooling layer of size 2 to # complete the second pair of layers.
>>> model1.add(Pooling(2))
NOTE: Pooling layer added.
添加完全连接的层:
# Add Fully-Connected Layer with 16 units
>>> model1.add(Dense(16))
NOTE: Fully-connected layer added.
最后,添加输出层:
# Add an output layer that has 2 nodes and uses
# the Softmax activation function
>>> model1.add(OutputLayer(act='softmax',n=2))
NOTE: Output layer added.
NOTE: Model compiled successfully
其他资源
- dlpy示例:https://github.com/sassoftware/python-dlpy/tree/master/examples
- dlpy api文档sassoftware.github.io/python-dlpy。
- SAS SWAT for Python
- SAS ESPPy
- 观看:dlpy简介和示例(youtube):
- SAS Deep Learning with Python made easy using DLPy
贡献
有什么好分享的吗?SAS欣然接受GitHub上的拉取请求!有关详细信息,请参见Contributor Agreement。
许可
根据apache许可证2.0版(以下简称“许可证”)授权;除非符合许可证,否则您不能使用此文件。 您可以在LICENSE.txt
除非适用法律要求或书面同意,否则根据许可证分发的软件按“原样”分发, 无任何明示或默示的保证或条件。请参阅许可证,以了解控制许可证下权限和限制的特定语言。