From 3311b788e6632f61eaf1f81a10b91bb74f1b8784 Mon Sep 17 00:00:00 2001
From: mx-iao <33701412+mx-iao@users.noreply.github.com>
Date: Tue, 21 Nov 2017 10:53:00 -0800
Subject: [PATCH 1/4] Added CntkOnnxExport.ipynb tutorial
---
tutorials/CntkOnnxExport.ipynb | 100 +++++++++++++++++++++++++++++++++
1 file changed, 100 insertions(+)
create mode 100644 tutorials/CntkOnnxExport.ipynb
diff --git a/tutorials/CntkOnnxExport.ipynb b/tutorials/CntkOnnxExport.ipynb
new file mode 100644
index 0000000..e5068cf
--- /dev/null
+++ b/tutorials/CntkOnnxExport.ipynb
@@ -0,0 +1,100 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Exporting models from CNTK to ONNX"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "In this tutorial, we will demonstrate how to export a CNTK model to the ONNX format."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Installation"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "To export to ONNX, simply make sure you have CNTK 2.3 or higher installed.
\n",
+ "Follow CNTK installation instructions __[here](https://docs.microsoft.com/en-us/cognitive-toolkit/Setup-CNTK-on-your-machine)__."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Exporting in Python"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "To save a CNTK model to the ONNX format, specify the ONNX format in the format parameter of the save function."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "```python\n",
+ "import cntk as C\n",
+ "\n",
+ "x = C.input_variable()\n",
+ "z = create_model(x)\n",
+ "z.save(, format=C.ModelFormat.ONNX)\n",
+ "```"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Exporting in C# #"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "```csharp\n",
+ "var x = CNTKLib.InputVariable();\n",
+ "Function z = CreateModel(x);\n",
+ "z.Save(, ModelFormat.ONNX);\n",
+ "```\n"
+ ]
+ }
+ ],
+ "metadata": {
+ "anaconda-cloud": {},
+ "kernelspec": {
+ "display_name": "Python [Root]",
+ "language": "python",
+ "name": "Python [Root]"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.5.2"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}
From 59b864eabceee57a2eda286ed462fb5b98406ebf Mon Sep 17 00:00:00 2001
From: mx-iao <33701412+mx-iao@users.noreply.github.com>
Date: Tue, 21 Nov 2017 10:53:23 -0800
Subject: [PATCH 2/4] Added OnnxCntkImport.ipynb tutorial
---
tutorials/OnnxCntkImport.ipynb | 95 ++++++++++++++++++++++++++++++++++
1 file changed, 95 insertions(+)
create mode 100644 tutorials/OnnxCntkImport.ipynb
diff --git a/tutorials/OnnxCntkImport.ipynb b/tutorials/OnnxCntkImport.ipynb
new file mode 100644
index 0000000..7969c65
--- /dev/null
+++ b/tutorials/OnnxCntkImport.ipynb
@@ -0,0 +1,95 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Importing models from ONNX to CNTK"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "In this tutorial, we will demonstrate how to import ONNX models into CNTK."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Installation"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "To export to ONNX, simply make sure you have CNTK 2.3 or higher installed.
\n",
+ "Follow CNTK installation instructions __[here](https://docs.microsoft.com/en-us/cognitive-toolkit/Setup-CNTK-on-your-machine)__."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Importing in Python"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "To load an ONNX model, specify the ONNX format for the format parameter of the load function."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "```python\n",
+ "import cntk as C\n",
+ "\n",
+ "z = C.Function.load(, format=C.ModelFormat.ONNX)\n",
+ "```"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Importing in C# #"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "```csharp\n",
+ "Function modelFunc = Function.load(, ModelFormat.ONNX);\n",
+ "```"
+ ]
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python [Root]",
+ "language": "python",
+ "name": "Python [Root]"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.5.2"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}
From 803a9db66d2d17649c15a499cbd9d2936764608e Mon Sep 17 00:00:00 2001
From: mx-iao <33701412+mx-iao@users.noreply.github.com>
Date: Tue, 21 Nov 2017 10:55:49 -0800
Subject: [PATCH 3/4] Added readme links to CNTK export, import tutorials
---
README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/README.md b/README.md
index e73b844..131948e 100644
--- a/README.md
+++ b/README.md
@@ -6,7 +6,7 @@
| --- | --- | --- | --- |
| [Caffe2](http://caffe2.ai) | [onnx/onnx-caffe2](https://github.com/onnx/onnx-caffe2) | [Exporting](tutorials/Caffe2OnnxExport.ipynb) | [Importing](tutorials/OnnxCaffe2Import.ipynb) |
| [PyTorch](http://pytorch.org/) | [part of pytorch package](http://pytorch.org/docs/master/onnx.html) | [Exporting](tutorials/PytorchOnnxExport.ipynb), [Extending support](tutorials/PytorchAddExportSupport.md) | coming soon |
-| [CNTK](https://github.com/Microsoft/CNTK) | coming soon | coming soon | coming soon |
+| [CNTK](https://github.com/Microsoft/CNTK) | coming soon | [Exporting](tutorials/CntkOnnxExport.ipynb) | [Importing](tutorials/OnnxCntkImport.ipynb) |
| [Apache MXNet](http://mxnet.incubator.apache.org/) | [onnx/onnx-mxnet](https://github.com/onnx/onnx-mxnet) | coming soon | [Importing](tutorials/OnnxMxnetImport.ipynb) [experimental] |
| [TensorFlow](https://www.tensorflow.org/) | [onnx/onnx-tensorflow](https://github.com/onnx/onnx-tensorflow) | coming soon | [Importing](tutorials/OnnxTensorflowImport.ipynb) [experimental] |
| [Apple CoreML](https://developer.apple.com/documentation/coreml) | [onnx/onnx-coreml](https://github.com/onnx/onnx-coreml) | - | [Importing](tutorials/OnnxCoremlImport.ipynb) |
From 268671ba62a8376479fa3d67d378c396ecb9778a Mon Sep 17 00:00:00 2001
From: mx-iao <33701412+mx-iao@users.noreply.github.com>
Date: Tue, 21 Nov 2017 14:02:28 -0800
Subject: [PATCH 4/4] Updating CNTK installation link in readme
---
README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/README.md b/README.md
index 131948e..dec397e 100644
--- a/README.md
+++ b/README.md
@@ -6,7 +6,7 @@
| --- | --- | --- | --- |
| [Caffe2](http://caffe2.ai) | [onnx/onnx-caffe2](https://github.com/onnx/onnx-caffe2) | [Exporting](tutorials/Caffe2OnnxExport.ipynb) | [Importing](tutorials/OnnxCaffe2Import.ipynb) |
| [PyTorch](http://pytorch.org/) | [part of pytorch package](http://pytorch.org/docs/master/onnx.html) | [Exporting](tutorials/PytorchOnnxExport.ipynb), [Extending support](tutorials/PytorchAddExportSupport.md) | coming soon |
-| [CNTK](https://github.com/Microsoft/CNTK) | coming soon | [Exporting](tutorials/CntkOnnxExport.ipynb) | [Importing](tutorials/OnnxCntkImport.ipynb) |
+| [CNTK](https://github.com/Microsoft/CNTK) | [part of CNTK](https://docs.microsoft.com/en-us/cognitive-toolkit/setup-cntk-on-your-machine) | [Exporting](tutorials/CntkOnnxExport.ipynb) | [Importing](tutorials/OnnxCntkImport.ipynb) |
| [Apache MXNet](http://mxnet.incubator.apache.org/) | [onnx/onnx-mxnet](https://github.com/onnx/onnx-mxnet) | coming soon | [Importing](tutorials/OnnxMxnetImport.ipynb) [experimental] |
| [TensorFlow](https://www.tensorflow.org/) | [onnx/onnx-tensorflow](https://github.com/onnx/onnx-tensorflow) | coming soon | [Importing](tutorials/OnnxTensorflowImport.ipynb) [experimental] |
| [Apple CoreML](https://developer.apple.com/documentation/coreml) | [onnx/onnx-coreml](https://github.com/onnx/onnx-coreml) | - | [Importing](tutorials/OnnxCoremlImport.ipynb) |