大家都知道微软在Connect();17大会上发布了VS Tools for AI,旨在提升Visual Studio和VSCode对日益增长的深度学习需求的体验。看了一圈,网上似乎没有一个完整的中文教程来教你怎么完整配置深度学习方案。

与此同时我也接了一个活,是俱乐部与MSRA的项目,项目的目的之一是向VS Tools for AI的samples库里增加新的算法,所以这篇技术文章就应运而生了。

本文将分为以下几个部分来进行阐述:

1,什么是VS Tools for AI

2,怎么在本地配置好VS Tools for AI的前端

3,怎么配置Azure云上的后端环境

4,怎么连接前后端,以及怎么运行TensorFlow实例

============================================================

1,什么是VS Tools for AI?

VS Tools for AI(下称AI组件)的官网地址:https://www.visualstudio.com/downloads/ai-tools-vs/

GitHub地址:https://github.com/Microsoft/vs-tools-for-ai

简而言之,AI组件的用处,是让你快速构建、训练一个深度学习Project。

AI组件的主要功能有:

-开发,调试和部署深度学习和人工智能解决方案:AI组件是支持CNTK,Google TensorFlow,Theano,Keras,Caffe2等深度学习框架的扩展。 您可以通过开放式架构使用其他深度学习框架。 AI组件利用对Python,C / C ++ / C#的现有代码支持,并为Cognitive Toolkit BrainScript提供额外的支持。

-使用“样本库”(就是上文提到的样例)快速构建代码:AI组件与Azure机器学习集成在一起,可以轻松浏览使用CNTK,TensorFlow,MMLSpark等的样本实验库。 这使得开始深入学习AI项目很容易。

-在Azure中扩展深度学习训练并运行AI模型:用于AI的Visual Studio工具与Azure批处理AI和Azure机器学习服务集成,以便向Azure GPU虚拟机,Spark群集等提交深度学习作业。 您可以监视最近的实验的性能,然后生成一个Web服务来为新的智能应用程序供电。

-高效的AI开发人员工具,可以训练模型并将AI注入到您的应用程序中:AI组件可为开发人员和数据科学家提供最强大的一整套集成工具,用于创建,调试和部署其自定义深度学习模型。 使用Visual Studio的强大功能,您可以使用刚刚培训的模型无缝地构建应用程序,而无需切换IDE。

-用TensorBoard等集成开放工具可视化您的模型处理:AI组件还集成了使用TensorBoard进行模型训练和实验的监控和可视化。 在TensorBoard中打开您的作业,以在本地和远程虚拟机上运行。


2,怎么在本地配置好你的AI组件前端

通过阅读上文的overview,我们知道,AI组件可以说是弥补了VS的一个短板,那么要怎么安装AI组件呢?

首先你得安装好Visual Studio 2017。其Community版本依然是免费的,我因为是MSP,拥有VS Enterprise的订阅,感谢微软爸爸给我饭吃。在安装过程中,选择好Python组件,安装Anaconda 4.4以及Python3.

在这里安装,当然你也可以选择独立地安装Anaconda和Python3,并且将其加入到系统变量中,以便于在shell中调用。

之后,在上文提到的网址里下载AI组件,作为一个插件安装。

安装完毕之后,你已经做好了初步准备。

接下来,请在本机安装好TensorFlow(CPU与GPU均可),版本1.4最佳(最新版本)。CPU版本只需要

pip install tensorflow

即可,而安装GPU版本则需要安装对应版本的CUDA和CuDNN。因为本学期我换了一台笔记本,轻薄本没有独立显卡,所以我安装的是CPU版本。


调试你的TensorFlow代码

在Visual Studio中创建一个新的TensorFlow项目:

如果一切顺利的话,你将可以看见图中的选择框。

之后熟悉的工作区回来了。

当然,我觉得TensorFlow的基础知识不需要我来逐一讲解,看这篇博文的人应该都具有一定的TensorFlow编程技巧。

编写完之后按下F5,自动启动shell,运行程序,console中输出结果。

【微软大法好】VS Tools for AI全攻略的更多相关文章

  1. 【微软大法好】VS Tools for AI全攻略(3)

    接着上文,现在我们需要一种穷人的方法来搭建好Azure虚拟机. 思路很简单,因为AI组件的原理其实是传送了script文件和命令上去,那么我们这个虚拟机只要做好了所有的配置,那么我们就可以将它当作深度 ...

  2. 【微软大法好】VS Tools for AI全攻略(2)

    接着上文,我们来讨论如何使用Azure资源来训练我们的tensorflow项目.Azure云我个人用得很多,主要是因为微软爸爸批了150刀每月的额度,我可以愉快地玩耍. 那么针对Azure,有成套的两 ...

  3. 【微软大法好】VS Tools for AI全攻略(4)——选择适合自己的虚拟机

    当我们选择好了自己的虚拟机后,也许效果不尽如人意.就比如我,发现代码在训练一段时间之后,CPU的使用率会下降. 这个时候我们就要开始考虑,是不是我们选择的虚拟机不是适合自己的型号. Azure的虚拟机 ...

  4. 【微软大法好】VS Tools for AI全攻略(3):低配置虚拟机也能玩转深度学习,无需NC/NV系列

    接着上文,现在我们需要一种穷人的方法来搭建好Azure虚拟机. 思路很简单,因为AI组件的原理其实是传送了script文件和命令上去,那么我们这个虚拟机只要做好了所有的配置,那么我们就可以将它当作深度 ...

  5. VSCode插件开发全攻略(十)打包、发布、升级

    更多文章请戳VSCode插件开发全攻略系列目录导航. 发布方式 插件开发完了,如何发布出去分享给他人呢?主要有3种方法: 方法一:直接把文件夹发给别人,让别人找到vscode的插件存放目录并放进去,然 ...

  6. Moon.Orm3.8技术全攻略

    Moon.ORM技术全攻略  一.绪论 本文主要是针对Moon.ORM的技术的讨论及其使用使用指导.如有其它疑问,请留言.本文主要针对Moon.ORM3.9版本,同时将会对4.0做一个技术预览.本文从 ...

  7. 用友U8客户端连接不上服务器全攻略

    用友U8客户端连接不上服务器全攻略 http://www.enet.com.cn2009年09月23日09:26 来自论坛 [导读]:如果网络不通,就让用户查找网络原因 检查步骤: 1.网络是否通? ...

  8. Android使用XML全攻略(1)

    Android使用XML全攻略(1)    Android 是针对移动设备的一种新兴的开源操作系统和 SDK.借助它,您可以创建功能强大的移动应用程序.当您的应用程序可以访问 Web 服务时,其吸引力 ...

  9. VS2013全攻略(安装,技巧,快捷键,插件)!

    工欲善其事,必先利其器.VS2013全攻略(安装,技巧,快捷键,插件)! 之前一篇<c++的性能, c#的产能?!鱼和熊掌可以兼得,.NET NATIVE初窥>承蒙大家喜爱和编辑推荐,在此 ...

随机推荐

  1. [POI2000]病毒

    题面 传送门 Sol 建出AC自动机后DFS能走的点,如果能走回来就可行 # include <bits/stdc++.h> # define IL inline # define RG ...

  2. Java单例模式的5种实现方式

    1.饿汉式.不支持并发: package com.ou; //饿汉式 public class Singleton1 { private Singleton1() { } private static ...

  3. python模板:自动化执行测试函数

    #!/bin/python #example 1.1 #applay def function(a,b): print(a,b) def example1(): apply(function, (&q ...

  4. ubuntu系统备份与恢复(也适用于其他linux系统)

    在windows环境下面,有很多的备份恢复软件,系统也自带了备份恢复功能,比较知名的软件比如ghost等,为什么要备份系统,我之前一直都是系统出现问题就全新安装原版的windows,然后各种设置,各种 ...

  5. selenium webdriver 使用Chrome 浏览器

    首先需要有ChromeDriver驱动来协助.ChromeDriver是实现WebDriver有线协议的一个单独的服务.ChromeDriver通过chrome的自动代理框架控制浏览器,ChromeD ...

  6. elfinder中通过DirectoryStream.Filter实现筛选隐藏目录(二)

    今天还是没事看了看elfinder源码,发现之前说的两个版本实现都是基于不同的jdkelfinder源码浏览-Volume文件系统操作类(1), 带前端页面的是基于1.6中File实现,另一个是基于1 ...

  7. Tomcat 开启Gzip压缩

    原理简介         HTTP 压缩可以大大提高浏览网站的速度,它的原理是,在客户端请求服务器对应资源后,从服务器端将资源文件压缩,再输出到客户端,由客户端的浏览器负责解压缩并浏览.相对于普通的浏 ...

  8. MyEclipse安装Eclipse Memory Analyzer插件以及使用例子

    一 :安装 1.Memory Analyzer 插件下载地址:http://www.eclipse.org/mat/downloads.php 2.将下载的文件解压到MyEclipse的  dropi ...

  9. mysql新手入门随笔2

    17.创建表 CREATE TABLE tbname(columnname1 类型 约束条件, columnname2 类型 约束条件,-); 三大类型:数值型,时间日期型,字符串类型 六大约束条件: ...

  10. java排序算法(五):快速排序

    java排序算法(五):快速排序 快速排序是一个速度非常快的交换排序算法,它的基本思路很简单,从待排的数据序列中任取一个数据(如第一个数据)作为分界值,所有比它小的元素放到左边.所有比它大的元素放到右 ...