深度学习数据集 && 第一次了解虚拟环境

  • MNIST:这是最大的手写数字(0~9)数据库。它由 60000 个示例的训练集和 10000 个示例的测试集组成。该数据集存放在 Yann LeCun 的主页(http://yann.lecun.com/exdb/mnist/)中。这个数据集已经包含在tensorflow.examples.tutorials.mnist 的 TensorFlow 库中。
  • CIFAR10:这个数据集包含了 10 个类别的 60000 幅 32×32 彩色图像,每个类别有 6000 幅图像。其中训练集包含 50000 幅图像,测试数据集包含 10000 幅图像。数据集的 10 个类别分别是:飞机、汽车、鸟、猫、鹿、狗、青蛙、马、船和卡车。该数据由多伦多大学计算机科学系维护(https://www.cs.toronto.edu/kriz/cifar.html)。
  • WORDNET:这是一个英文的词汇数据库。它包含名词、动词、副词和形容词,被归为一组认知同义词(Synset),即代表相同概念的词语,例如 shut 和 close,car 和 automobile 被分组为无序集合。它包含 155287 个单词,组织在 117659 个同义词集合中,总共 206941 个单词对。该数据集由普林斯顿大学维护(https://wordnet.princeton.edu/)。
  • ImageNET:这是一个根据 WORDNET 层次组织的图像数据集(目前只有名词)。每个有意义的概念(synset)由多个单词或单词短语来描述。每个子空间平均由 1000 幅图像表示。目前共有 21841 个同义词,共有 14197122 幅图像。自 2010 年以来,每年举办一次 ImageNet 大规模视觉识别挑战赛(ILSVRC),将图像分类到 1000 个对象类别中。这项工作是由美国普林斯顿大学、斯坦福大学、A9 和谷歌赞助(http://www.image-net.org/)。
  • YouTube-8M:这是一个由数百万 YouTube 视频组成的大型标签视频数据集。它有大约 700 万个 YouTube 视频网址,分为 4716 个小类,并分为 24 个大类。它还提供预处理支持和框架功能。数据集由 Google Research(https://research.google.com/youtube8m/)维护。

 

TensorFlow当中读取数据的方法

  首先学习MNIST数据集的使用。

 

  这个过程真的是折磨啊,搞了一个下午。。。。还在搞

 

 

  首先我想的是刚接触TensorFlow,那么就从可视化开始做起吧。。。先至少看看用于机器学习的图片是什么样子的。

  首先看了这个博客https://www.cnblogs.com/xiaoyh/p/10813413.html

  输入了里面的代码:

from tensorflow.examples.tutorials.mnist import input_data

import scipy.misc

import os

from tensorflow.examples.tutorials.mnist import input_data
mnist = input_data.read_data_sets("MNIST_data/",one_hot=True)

save_dir = 'MNIST_data/raw/'  #图片的保存路径
if os.path.exists(save_dir) is False:
    os.mkdir(save_dir)

for i in range(20):
  image_array = mnist.train.images[i,:]
  image_array = image_array.reshape(28,28)
  filename = save_dir+'mnist_train_%d.jpg' % i

  scipy.misc.toimage(image_array,cmin=0.0,cmax=1.0).save(filename)

  结果显示scipy.misc导入错误。。。

  那么就pip install scipy吧。。然而还是不行。

  最终从一个百度知道页面https://zhidao.baidu.com/question/2206839918952665348.html,发现

  可能是安装scipy前需要安装numpy+mkl这个库

  因此去http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy下载

 

  我下载了numpy-1.16.6+mkl-cp35-cp35m-win_amd64.whl这个版本的文件,下了好久

  刚想使用命令 pip install D:\Python\numpy-1.16.6+mkl-cp35-cp35m-win_amd64.whl  ,愉快地安装

  结果显示

  

 

   居然版本不支持!!!!

 

  然后就搜索怎么查看可支持的版本。。。

  那些  

 

   还有

 

   还有

 

   统统都是没有用的!!!!

 

 

  最后还是好人多,找到了解决方法。

  import wheel.pep425tags as w

  print(w.get_supported())

 

   

 

  然后就看到了可支持的版本。。

 

 

 

  。。。

  终于解决这个问题了,根本就不需要下载这些狗币东西

  根据这个百度知道https://zhidao.baidu.com/question/942690237717778852.html,这个问题和我的问题完美契合。

 

  我的python就是如下所说

 

 

 

 

 

 

   因为在Windows命令行里pip只能安装到外面,安装不到这里的环境当中来。

  

  仔细看TensorFlow安装在anaconda的envs目录当中,envs就是virtual environment,是

python运行的虚拟环境。

 

  现在的问题就是,如何在我的

 

 

 这个虚拟环境下使用pip命令。

 

  Q1,如何创建一个虚拟环境。

  创建一个虚拟环境是很有必要的。因为python有很多的版本,可能不同项目需要在不同

版本的虚拟环境下运行。那么如果只有一个python版本,那么在运行的时候就会需要频繁地

对python进行卸载和安装,这显然是极其不方便的。

  如上图,在vscode下安装TensorFlow的时候就自动为TensorFlow安装了一个虚拟环境。

当然虚拟环境的安装是需要一定的步骤的。这里就不展开了。以后需要用到的时候再来搞。

 

  Q2,如何进入虚拟环境当中运行命令

  显然,我们上面遇到的问题就是,电脑安装的python版本是3.6版本的,而TensorFlow的

python版本是3.5.2版本的。在外面的pip 显然是无法安装到TensorFlow当中去。

  因此进入虚拟环境运行命令方法如下:

  

 

 

   首先如上图,进入envs目录下的文件

  

  

 

 

   第二步,如上图使用activate激活虚拟环境

 

 

  激活之后就会变成这样

  退出命令也很简单,deactivate即可。

 

 

  我们在虚拟环境下显示一下python的版本:

 

   可以看到成功进入到了这个版本的python

  

  ...但是显示这个版本的python好像不是因为进入了虚拟环境了,而是因为进入到了这个目录优先选择了这个目录下的python,

因为即使在这个目录下使用deactivate,还是显示的是3.5.2版本的python。

  那么activate的作用是什么呢?

  我去网上找了一下,

 

  在https://cloud.tencent.com/developer/news/730978

  和https://www.nuomiphp.com/eplan/369313.html这两个文件里。

   实际在运行的时候,也没有发现activate命令修改了系统环境变量。。。

 

  只能说先不管了。。。

  

  

  我发现上面这些全都错了!!!

  直接在

   

 

   随便哪个目录下运行这个命令,这样才算是真正进入到了虚拟环境当中!

 

  

 

   这个图就是对真正进入虚拟目录的最好说明,即使在c盘下面也能显示3.5.2版本的python。

 

  然后成功安装scipy

 

  

  ,程序也不报错了,

 

   它换了一个地方报错

 

   这个报错是因为scipy版本过高,已经不支持这个函数了。

  那么如何解决这个问题呢。

  

  只能用其他办法了。

  在下一节开始讲吧。

 

 QQQQQQQQQQQQQQQQQQQ

 

  再来解决如何使用activate,以及如何更加简洁(如在vscode当中)地进入虚拟环境。以及

activate和conda activate有什么区别。。。Q2

  疑惑来自于以下图片。。。

  

 

 

 

有用的信息:

  python虚拟环境,whell支持版本查看方法

 

 

  

 

  

posted @ 2021-09-20 20:15  TheDa  阅读(230)  评论(0编辑  收藏  举报