{ "info": { "author": "SAS", "author_email": "support@sas.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Science/Research", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Scientific/Engineering" ], "description": "
\n

DLPy - SAS Viya Deep Learning API for Python

\n\"SAS\n

An efficient way to apply deep learning methods to image, text, and audio data.

\n \n \n \"SAS\n \n \n \n \"Python\n \n \n \n \"Python\n \n \n
\n\n### Overview\nDLPy is a high-level Python library for the SAS Deep learning features \navailable in SAS Viya. DLPy is designed to provide an efficient way to \napply deep learning methods to image, text, and audio data. DLPy APIs \ncreated following the [Keras](https://keras.io/) APIs with a touch \nof [PyTorch](https://pytorch.org/) flavor.\n\n### What's Recently Added\n* Text, audio, and time series support in addition to image\n* New APIs for:\n * RNN based tasks: text classification, text generation, and sequence labeling\n * Object detection\n * Image segmentation\n * Time series processing and modeling\n* Processing audio files and creating speech recognition models\n* Additional pre-defined network architectures such as DenseNet, DarkNet, Inception, Yolo, \nFasterRCNN, U-Net, MobileNet, and ShuffleNet\n* Enhanced data visualization and metadata handling\n\n### Prerequisites\n- Python version 3 or greater is required\n- Install SAS [Scripting Wrapper for Analytics Transfer (SWAT)](https://github.com/sassoftware/python-swat) for Python using `pip install swat` or `conda install -c sas-institute swat`\n- Access to a SAS Viya 3.4 environment with [Visual Data Mining and Machine Learning](https://www.sas.com/en_us/software/visual-data-mining-machine-learning.html) (VDMML) is required\n- A user login to your SAS Viya back-end is required. See your system administrator for details if you do not have a SAS Viya account.\n- It is recommended that you install the open source graph visualization software called [Graphviz](https://www.graphviz.org/download/) to enable graphic visualizations of the DLPy deep learning models\n- Install DLPy using `pip install sas-dlpy` or `conda install -c sas-institute sas-dlpy`\n\n#### SAS Viya and VDMML versions vs. DLPY versions\nDLPy versions are aligned with the SAS Viya and VDMML versions. \nBelow is the versions matrix.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
DLPySAS ViyaVDMML
1.13.48.4
1.03.48.3
\n\nThe table above can be read as follows: DLPy versions between 1.0 (inclusive)\nto 1.1 (exclusive) are designed to work with the SAS Viya 3.4 and VDMML 8.3.\n\n#### External Libraries ####\nThe following versions of external libraries are supported:\n- ONNX: versions >= 1.5.0\n- Keras: versions >= 2.1.3\n\n\n### Getting Started\n\nTo connect to a SAS Viya server, import SWAT and use the swat.CAS class to\ncreate a connection:\n\nNote: The default CAS port is 5570.\n\n >>> import swat\n >>> sess = swat.CAS('mycloud.example.com', 5570)\n\nNext, import the DLPy package, and then build a simple convolutional \nneural network (CNN) model.\n\nImport DLPy model functions:\n\n >>> from dlpy import Model, Sequential\n >>> from dlpy.layers import *\n\nUse DLPy to create a sequential model and name it `Simple_CNN`:\n\n >>> model1 = Sequential(sess, model_table = 'Simple_CNN')\n\nDefine an input layer to add to `model1`:\n\n # The input shape contains RGB images (3 channels)\n # The model images are 224 px in height and 224 px in width\n\n >>> model1.add(InputLayer(3,224,224))\n\n NOTE: Input layer added.\n\nAdd a 2D convolution layer and a pooling layer:\n\n # Add 2-Dimensional Convolution Layer to model1\n # that has 8 filters and a kernel size of 7. \n\n >>> model1.add(Conv2d(8,7))\n\n NOTE: Convolutional layer added.\n\n # Add Pooling Layer of size 2\n\n >>> model1.add(Pooling(2))\n\n NOTE: Pooling layer added.\n \nAdd an additional pair of 2D convolution and pooling layers:\n\n # Add another 2D convolution Layer that has 8 filters and a kernel size of 7 \n\n >>> model1.add(Conv2d(8,7))\n\n NOTE: Convolutional layer added.\n\n # Add a pooling layer of size 2 to # complete the second pair of layers. \n \n >>> model1.add(Pooling(2))\n\n NOTE: Pooling layer added.\n \nAdd a fully connected layer:\n\n # Add Fully-Connected Layer with 16 units\n \n >>> model1.add(Dense(16))\n\n NOTE: Fully-connected layer added.\n \nFinally, add the output layer:\n\n # Add an output layer that has 2 nodes and uses\n # the Softmax activation function \n \n >>> model1.add(OutputLayer(act='softmax',n=2))\n\n NOTE: Output layer added.\n NOTE: Model compiled successfully \n\n\n### Additional Resources\n- DLPy examples: https://github.com/sassoftware/python-dlpy/tree/master/examples\n- DLPy API documentation [sassoftware.github.io/python-dlpy](https://sassoftware.github.io/python-dlpy/).\n- [SAS SWAT for Python](http://github.com/sassoftware/python-swat/)\n- [SAS ESPPy](https://github.com/sassoftware/python-esppy)\n- Watch: Introduction to DLPy and examples (YouTube):\n * [Introduction Deep Learning with Python (DLPy) and SAS Viya](https://www.youtube.com/watch?v=RJ0gbsB7d_8)\n * [Image classification using CNNs](https://www.youtube.com/watch?v=RJ0gbsB7d_8&start=125)\n * [Object detection using TinyYOLOv2](https://www.youtube.com/watch?v=RJ0gbsB7d_8&start=390)\n * [Import and export deep learning models with ONNX](https://www.youtube.com/watch?v=RJ0gbsB7d_8&start=627)\n * [Text classification and text generation using RNNs](https://www.youtube.com/watch?v=RJ0gbsB7d_8&start=943)\n * [Time series forecasting using RNNs](https://www.youtube.com/watch?v=RJ0gbsB7d_8&start=1185)\n- [SAS Deep Learning with Python made easy using DLPy](https://blogs.sas.com/content/subconsciousmusings/2019/03/13/sas-deep-learning-with-python-made-easy-using-dlpy/)\n\n### Contributing\nHave something cool to share? SAS gladly accepts pull requests on GitHub! See the [Contributor Agreement](https://github.com/sassoftware/python-dlpy/blob/master/ContributorAgreement.txt) for details.\n\n### Licensing \nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use this file except in compliance with the License.\nYou may obtain a copy of the License at [LICENSE.txt](https://github.com/sassoftware/python-dlpy/blob/master/LICENSE.txt)\n\nUnless required by applicable law or agreed to in writing, software distributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/sassoftware/python-dlpy/", "keywords": "", "license": "Apache 2.0", "maintainer": "", "maintainer_email": "", "name": "sas-dlpy", "package_url": "https://pypi.org/project/sas-dlpy/", "platform": "", "project_url": "https://pypi.org/project/sas-dlpy/", "project_urls": { "Homepage": "https://github.com/sassoftware/python-dlpy/" }, "release_url": "https://pypi.org/project/sas-dlpy/1.1.2/", "requires_dist": null, "requires_python": "", "summary": "SAS Deep Learning Interface", "version": "1.1.2" }, "last_serial": 5672253, "releases": { "0.6.1": [ { "comment_text": "", "digests": { "md5": "f30d2da74484aea20bc55c29fc363c30", "sha256": "56799546f2d8b6cee179f42e21fde35f951ed643125784ea43ff78dfd3fc31db" }, "downloads": -1, "filename": "sas-dlpy-0.6.1.tar.gz", "has_sig": false, "md5_digest": "f30d2da74484aea20bc55c29fc363c30", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 65182, "upload_time": "2018-04-04T21:30:15", "url": "https://files.pythonhosted.org/packages/dd/09/4665d53ec50dfad0955a952ead04151874e6e90c10b7ebe4f283efc495ee/sas-dlpy-0.6.1.tar.gz" } ], "0.6.2": [ { "comment_text": "", "digests": { "md5": "c2b791c0b15978d2a299970e6003a00d", "sha256": "ca1ccd04ebb81e49ac492a15921535cb574614deca8a1d72afb3462ae173755a" }, "downloads": -1, "filename": "sas-dlpy-0.6.2.tar.gz", "has_sig": false, "md5_digest": "c2b791c0b15978d2a299970e6003a00d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 65171, "upload_time": "2018-04-05T18:47:58", "url": "https://files.pythonhosted.org/packages/80/ab/9262f5579d6444d55f76f3eb7c4cae8b3ae988db075774946af84f58e393/sas-dlpy-0.6.2.tar.gz" } ], "0.6.3": [ { "comment_text": "", "digests": { "md5": "bb6d331a31c294f4d5573d4ab4651551", "sha256": "78f745afaadbbdd6a7d2f96cdb282a46c262b69ce192a1cb60239b2976106b19" }, "downloads": -1, "filename": "sas-dlpy-0.6.3.tar.gz", "has_sig": false, "md5_digest": "bb6d331a31c294f4d5573d4ab4651551", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11156225, "upload_time": "2018-04-05T19:23:44", "url": "https://files.pythonhosted.org/packages/cb/f8/50282a5b283e2e7a924878b8090cec7a29fb86ec1ea7672c0bc111925070/sas-dlpy-0.6.3.tar.gz" } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "87f19c35d7ec84d78fdf3407f78a6f30", "sha256": "487c90e6c0d34378e2bc4088cae2a8a75f5399aa952437a6f9a36e366918e4a3" }, "downloads": -1, "filename": "sas-dlpy-0.7.0.tar.gz", "has_sig": false, "md5_digest": "87f19c35d7ec84d78fdf3407f78a6f30", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11159096, "upload_time": "2018-08-29T19:26:30", "url": "https://files.pythonhosted.org/packages/f0/d5/f4e409a362de2cfd434e66ad8d26ca2d24137bc79a69e243f7b2acaaba40/sas-dlpy-0.7.0.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "f95a85ee7f98c125ffc033c4cf9be1c7", "sha256": "c5f09f06aeb9b22bf1b04559648660d8dd0b826b359a7b080400adef22a0573b" }, "downloads": -1, "filename": "sas-dlpy-1.0.0.tar.gz", "has_sig": false, "md5_digest": "f95a85ee7f98c125ffc033c4cf9be1c7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11651327, "upload_time": "2018-10-26T15:15:06", "url": "https://files.pythonhosted.org/packages/c6/76/118831fe90b108e2b6b3d855c92402447644d1662d17874300c5707109e7/sas-dlpy-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "1f1a023252ea92ca8a4cc13205a4c16b", "sha256": "2ca19db52ec0c2dbdfdceb513541fc5f71a3446a51992aaad92732b245920aa7" }, "downloads": -1, "filename": "sas-dlpy-1.0.1.tar.gz", "has_sig": false, "md5_digest": "1f1a023252ea92ca8a4cc13205a4c16b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31383905, "upload_time": "2018-12-04T20:58:30", "url": "https://files.pythonhosted.org/packages/f9/dd/bc21d6061834a9399bb891c88bf9fdac954333a0ef49b60aadd535138f09/sas-dlpy-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "f9eeba98695013ea5d7b271cb83f57cc", "sha256": "e74246ede829a110f8568aae823807628ea50b0007673947886d8fc9b87850fd" }, "downloads": -1, "filename": "sas-dlpy-1.0.2.tar.gz", "has_sig": false, "md5_digest": "f9eeba98695013ea5d7b271cb83f57cc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31433266, "upload_time": "2019-03-22T18:32:19", "url": "https://files.pythonhosted.org/packages/4f/9b/4df7a5ded4d4474e417170c09d0c81c6c160a4bba760dc056ce22c36ba4a/sas-dlpy-1.0.2.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "784c0e6197330b93ea3428ae33017b19", "sha256": "9fbdc3ed53c30769425aaff118ef41be32135dff326ea12afd2c7860985d4183" }, "downloads": -1, "filename": "sas-dlpy-1.1.0.tar.gz", "has_sig": false, "md5_digest": "784c0e6197330b93ea3428ae33017b19", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 40896640, "upload_time": "2019-07-16T18:44:48", "url": "https://files.pythonhosted.org/packages/b8/d8/81454107869d0037ed40afbd44dcf006f96b926f381aa657b74b904a3305/sas-dlpy-1.1.0.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "91d7f6965269d140c524280eddd03c32", "sha256": "2eb3d487c39409fc927ad2ffce7d8216d4199979f6cc7f3a920c3f2fee39807e" }, "downloads": -1, "filename": "sas-dlpy-1.1.1.tar.gz", "has_sig": false, "md5_digest": "91d7f6965269d140c524280eddd03c32", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 50056317, "upload_time": "2019-08-05T19:37:10", "url": "https://files.pythonhosted.org/packages/da/34/981ec239ef47e203a54a420bcb701b2561c6b78b06abee0e93dcbe465b53/sas-dlpy-1.1.1.tar.gz" } ], "1.1.2": [ { "comment_text": "", "digests": { "md5": "863603db521881dc3b5f60c573577d54", "sha256": "7cb9d29a6d0275a304255803e74d1fc7f2927a92c7520ee5dcc1a756d2e159b4" }, "downloads": -1, "filename": "sas-dlpy-1.1.2.tar.gz", "has_sig": false, "md5_digest": "863603db521881dc3b5f60c573577d54", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 50056169, "upload_time": "2019-08-13T14:47:48", "url": "https://files.pythonhosted.org/packages/7d/54/51c4536d2c314f7b9c25096f6aa0fb36302cdbf36c170762907296cfc32a/sas-dlpy-1.1.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "863603db521881dc3b5f60c573577d54", "sha256": "7cb9d29a6d0275a304255803e74d1fc7f2927a92c7520ee5dcc1a756d2e159b4" }, "downloads": -1, "filename": "sas-dlpy-1.1.2.tar.gz", "has_sig": false, "md5_digest": "863603db521881dc3b5f60c573577d54", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 50056169, "upload_time": "2019-08-13T14:47:48", "url": "https://files.pythonhosted.org/packages/7d/54/51c4536d2c314f7b9c25096f6aa0fb36302cdbf36c170762907296cfc32a/sas-dlpy-1.1.2.tar.gz" } ] }