anaconda下載及虛擬環境配置
anaconda官方下載地址
我們選擇Python 3.7 version 即可
下載完成後在下載目錄有這樣一個文件
打開終端執行命令
出現圖片上結果之後一直按回車直到出現Please answer yes or no
這時輸入yes回車
表示安裝在此目錄下,可以直接回車!
輸入yes 回車
上圖是安裝完成後界面
我們重新打開一個終端
也許你的終端出現(base)字樣
說明默認進入了base虛擬環境
輸入 conda deactivate 可以退出虛擬環境,但這不是永久性的操作
我們可以在主目錄下找到.bashrc文件(需要開啓顯示隱藏文件)在最後一行加入 conda deactivate保存後退出,之後就不會打開終端默認進入base環境了
這裏推薦打開終端輸入conda upgrade --all 更新一下工具包
如果想要進入剛剛的base環境可以輸入conda activate base
或者Conda activate 也是默認進入base環境
可以查看一下自己python版本,是下載anaconda時候預裝的3.7版本,且可以看到Anaconda,Inc. on linux 字樣
當然我們也可以自己創建虛擬環境,以滿足開發過程中不同環境的需要
conda create -n python36 python=3.6
python36是自己起的名字,python=3.6爲指定python的版本
因爲預裝的是3.7環境,如果創建3.6版本的話需要下載一些東西,出現上面的界面後,輸入yes即可完成創建
進入自己創建的環境和退出操作如下
conda常用命令
conda remove -n python36 --all 刪除環境
conda info --env查看已有的環境
$ # conda的包管理類似pip
$ conda install scipy # conda安裝scipy
$ conda list # 查看已經安裝的packages
$ conda list -n tensotflow # 查看某個指定環境的已安裝包
$ conda search numpy # 查找package信息
$ conda install -n tensotflow numpy # 安裝某個指定環境的package
$ # 如果不用-n指定環境名稱,則被安裝在當前活躍環境,也可以通過-c指定通過某個channel安裝
$ conda update -n tensotflow numpy # 更新package
$ conda remove -n tensotflow numpy # 刪除package
#當然你也可以使用pip命令安裝
也許你的環境下現在還不能使用pip命令,需要配置一下
python -m pip install -U pip
安裝完成就可以使用pip了
Tensorflow環境配置
進入你想要安裝tensorflow的虛擬環境
輸入
Conda install tensorflow=1.14 安裝即可
注:最新的tensorflow已經到了2.0版本,conda中tensorflow版本也更新到了2.0,如果不指定版本Conda install tensorflow將默認安裝2.0版本,2.0版本中許多函數都發生了變化,因爲目前很多學習資料都是基於老版本的,如果是萌新的話建議指定安裝老版本
利用Pycharm進行開發
Linux下pycharm的安裝在此不詳細介紹
直接進入環境配置
如何在pycharm中用上conda虛擬環境呢
如果你已經創建了一個project,想把當前project環境切換到conda創建的虛擬環境可以這麼操作
File ->settings
上圖是已經配置好的界面,解釋器已經是conda下的python36
初次設置時候也許conda環境不能直接選擇,需要手動添加
點擊右上小齒輪->showall->+號
左側選擇Conda Environment->再選擇existing environment,或許可選的解釋器沒有我們想要的(如果已近可以直接選了,那選擇,一路OK下去就結束了),比如python36,可以點擊三個小點按如下地址尋找
找到之後,一路OK即可
之後我們就可以在剛剛點+號的這個頁面選擇conda環境了
下面簡單介紹一下新建project而且是使用conda環境的操作
File->new project->自己設置好project名字->點開下面小三角配置解釋器或許你要的環境在已經存在的解釋器(Existing interpreter)裏並不能直接選擇(如下圖),那就點Existing interpreter那一欄尾部的三個小點,像剛纔一樣手動選擇即可
到此環境就已經配置好了,下面給出一段基礎的tensorflow手寫數字識別的代碼可以驗證一下有沒有安裝成功(運行時候會先下載數據集,網絡不好的話會下載的比較慢,也可以在此數據集官網下載,放在工程文件夾主目錄即可MNIST)
from tensorflow.examples.tutorials.mnist import input_data
import os
import tensorflow as tf
import numpy as np
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'
# 載入數據集
mnist = input_data.read_data_sets("MNIST_data",one_hot=True)
# 每個批次的大小
batch_size = 100
# 計算一共有多少個批次
n_batch = mnist.train.num_examples //batch_size
print(n_batch)
# 定義兩個placeholder
x = tf.placeholder(tf.float32, [None, 784])
y = tf.placeholder(tf.float32, [None, 10])
#創建簡單的神經網絡
W = tf.Variable(tf.zeros([784, 10]))
b = tf.Variable(tf.zeros([10]))#只要列匹配就可以,會對每一行都加上
prediction = tf.nn.softmax(tf.matmul(x, W)+b)
#二次代價函數
loss = tf.reduce_mean(tf.square(y-prediction))
#使用梯度下降法
train_step = tf.train.GradientDescentOptimizer(0.2).minimize(loss)
#初始化設置
init = tf.global_variables_initializer()
#結果存放在一個布爾型列表中
correct_prediction = tf.equal(tf.argmax(y,1),tf.argmax(prediction,1))#argmax返回一維張量中最大的值所在的位置,0行1列,每一行轉化成一個數字
#求準確率
accuracy = tf.reduce_mean(tf.cast(correct_prediction,tf.float32))
with tf.Session() as sess:
sess.run(init)
for epoch in range(21):
for batch in range(n_batch):
batch_xs, batch_ys = mnist.train.next_batch(batch_size)
sess.run(train_step,feed_dict={x: batch_xs, y: batch_ys})
acc = sess.run(accuracy,feed_dict={x:mnist.test.images,y:mnist.test.labels})
print("ITER"+str(epoch)+",Testing Accuracy" + str(acc))
最後運行效果如上圖