近日接到领导的任务,研究使用深度学习方法对客户数据进行处理、预测。

  由于公司业务涉及很多隐私数据,为了保障数据安全,数据的所有处理流程都在公司的内部网络进行,与外界互联网络完全隔离,因此无法使用常规的深度学习环境搭建方式。为了解决这个问题,这里使用在互联网环境下配置虚拟机→虚拟机上搭建深度学习环境→虚拟机整体迁移的方式,将带有深度学习环境的虚拟机迁移到公司内网,以提供实验所需的平台。

  这里使用的是VMware workstation 来创建所需的虚拟机。在创建虚拟机的时候,需要相对应的操作系统镜像文件(.iso),选择与公司内部机型相同的操作系统(32位、64位)。我这里只有64位win7的镜像文件,因此在虚拟机上安装了64位win7系统。

  接下来继续虚拟机创建流程,在指定磁盘容量的时候,可以根据自己的要求来设置,这里的磁盘容量指的是虚拟机的C盘容量,即系统盘的容量空间。在后续容量不足时,可以再向虚拟机中添加硬盘,但C盘容量是固定不变的。除了硬盘之外,虚拟机内存、CPU都可以后续再设置,随时进行改变。

  这里需要注意的是,要选择将虚拟磁盘拆分成多个文件(M),以便于我们后续将虚拟机向内网进行迁移。

  新建好虚拟机之后,打开虚拟机,配置深度学习环境。这里我们使用的是python3.5 + TensorFlow + keras的深度学习框架。具体的环境配置方式可参考该教材: https://blog.csdn.net/u013829973/article/details/70555037

 

  提示安装环境中的几个坑。

1. 安装 TensorFlow 时出错,提示:

Cannot remove entries from nonexistent file c:\anaconda3\lib\site-packages\easy-install.pth

原因是setuptools版本太低,需要对其进行更新,可以使用一下语句:

pip install --upgrade --ignore-installed setuptools

 

2. ImportError: No module named '_pywrap_tensorflow_internal

这个错误是在import tensorflow 的时候弹出的。

在网上查询的时候,有人说是因为在 tensorflow 的源码目录里进入了 python 解释器,需要离开该目录重新进入 python 解释器。但这个方法并没有在我的虚拟机上解决问题。后来我将TensorFlow 0.12 版本进行了升级,升级到tensorflow 1.1版本,就能够正常的进行导入了。

最终的运行环境是 python3.5 + pip18.0 + tensorflow1.1.0 + keras2.2.2

 

迁移之前,再向虚拟机上安装一些常用软件,winRAR,word,Excel,ultraedit等。另推荐安装VScode,编写python代码用起来较为顺手。

 

最后,进入VMware的文件夹,查看该虚拟机文件,发现有2个4个G的文件,我们可以分批次刻录光盘,或使用公司保密U盘将其迁移至公司的内网电脑上。