Proto commits in microsoft/CNTK

These 25 commits are when the Protocol Buffers files have changed:

Commit:c589619
Author:liqfu

update to ONNX1.2.2

The documentation is generated from this commit.

Commit:e673067
Author:Guoli Ye
Committer:Vadim Mazalov

EMBR

Commit:bc71c7e
Author:liqfu

updatre onnx 1.2.1

Commit:cdb9afb
Author:liqun fu

Add ONNX 1.2 support

Commit:cce690e
Author:Jaliya Ekanayake

Adding int16 support for model saving in CNTK

Commit:cf03d9a
Author:Jaliya Ekanayake

Making the int8 data serialized in to byte array at the protobuf layer

Commit:c0d5386
Author:Jaliya Ekanayake

Adding int8 support for NDArrayView

Commit:3a1b8e1
Author:liqfu

update with ONNXIR

Commit:3cf3af5
Author:KeDengMS

CNTK support for CUDA 9 CNTK now supports CUDA 9/cuDNN 7. This requires an update to build environment to Ubuntu 16/GCC 5 for Linux, and Visual Studio 2017/VCTools 14.11 for Windows. With CUDA 9, CNTK also added a preview for 16-bit floating point (a.k.a FP16) computation. Please check out the example of FP16 in ResNet50 at /Examples/Image/Classification/ResNet/Python/TrainResNet_ImageNet_Distributed.py Notes on FP16 preview: * FP16 implementation on CPU is not optimized, and it's not supposed to be used in CPU inference directly. User needs to convert the model to 32-bit floating point before running on CPU. * Loss/Criterion for FP16 training needs to be 32bit for accumulation without overflow, using cast function. Please check the example above. * Readers do not have FP16 output unless using numpy to feed data, cast from FP32 to FP16 is needed. Please check the example above. * FP16 gradient aggregation is currently only implemented on GPU using NCCL2. Distributed training with FP16 with MPI is not supported. * FP16 math is a subset of current FP32 implementation. Some model may get Feature Not Implemented exception using FP16. * FP16 is currently not supported in BrainScript. Please use Python for FP16. To setup build and runtime environment on Windows: * Install [Visual Studio 2017](https://www.visualstudio.com/downloads/) with following workloads and components. From command line (use Community version installer as example): vs_community.exe --add Microsoft.VisualStudio.Workload.NativeDesktop --add Microsoft.VisualStudio.Workload.ManagedDesktop --add Microsoft.VisualStudio.Workload.Universal --add Microsoft.Component.PythonTools --add Microsoft.VisualStudio.Component.VC.Tools.14.11 * Install [NVidia CUDA 9](https://developer.nvidia.com/cuda-90-download-archive?target_os=Windows&target_arch=x86_64) * From PowerShell, run: /Tools/devInstall/Windows/DevInstall.ps1 * Start VCTools 14.11 command line, run: cmd /k "%VS2017INSTALLDIR%\VC\Auxiliary\Build\vcvarsall.bat" x64 --vcvars_ver=14.11 * Open /CNTK.sln from the VCTools 14.11 command line. Note that starting CNTK.sln other than VCTools 14.11 command line, would causes CUDA 9 [build error](https://developercommunity.visualstudio.com/content/problem/163758/vs-2017-155-doesnt-support-cuda-9.html). To setup build and runtime environment on Linux using docker, please build Unbuntu 16.04 docker image using Dockerfiles /Tools/docker. For other Linux systems, please refer to the Dockerfiles to setup dependent libraries for CNTK.

Commit:1fa8c4f
Author:Guoli Ye

master_debug

Commit:a337cae
Author:Guoli Ye

master_debug

Commit:bdb28b6
Author:Guoli Ye

EMBR_v1_notabs

Commit:744871f
Author:liqfu

integrate with LotusRT

Commit:578c189
Author:liqfu

Integrating LotusIR and a few CNTK-ONNX fixes

Commit:d57ad1d
Author:Emad Barsoum

Adding ONNX format support to CNTK.

Commit:2e5125f
Author:Alexey Reznichenko
Committer:Alexey Reznichenko

Restore/reload constant values When restoring from a checkpoint, not only parameter but also constant values should be reloaded. Closes #2175.

Commit:45e429d
Author:NORTHAMERICA\vistepan
Committer:NORTHAMERICA\vistepan

Initial support for writing TensorBoard event files.

Commit:d941627
Author:Friedel van Megen

updating client app

Commit:a602f4e
Author:Friedel van Megen

interim checkin

Commit:6132e08
Author:Friedel van Megen
Committer:Friedel van Megen

initial testing app

Commit:bb31cef
Author:Friedel van Megen

remove old stuff

Commit:fb1dacc
Author:Alexey Reznichenko
Committer:Alexey Reznichenko

Improve v2 serialization, add UTs Add arenas for allocating protobuf messages. Add Save/Load methods to Dictionary/DictionaryValue. Add error checking to GetFStream (barf on non-existent files). Add unit tests to verify backward/forward compat.

Commit:510ba15
Author:Friedel van Megen

graph testing

Commit:3efcff5
Author:Frank Seide

merged from master

Commit:e986d27
Author:Alexey Reznichenko
Committer:Alexey Reznichenko

Add protobuf-based serialization