標籤:Python項目開發之環境搭建 Anaconda+Pycharm
機器學習近來火得可謂人盡皆知。其實樓主現在的研究方向是橢圓曲線密碼的硬體實現。so,我一直以為這跟Python,神經網路啥的確是八竿子打不著,然而,這個世界上就是不缺那種能開先河能擺證據撂服眾生的大神。舉個栗子這篇文章learing the enigma with recurrent Neural Networks。是 2017年發表於AAAI 的一篇文章,AAAI 2017是指第31屆人工智慧大會AAAI-17,是人工智慧領域的最重磅會議之一。所以樓主也是很好奇,這裡的RNN究竟是對我們一個世紀之前的簡單的多表代換密碼enigma做了什麼,會如此的有價值呢。說起enigma,我也強烈推一波卷福氣質圖靈大神版的電影《模仿遊戲》,主要是關於二戰時期,以希特拉為首的納粹國依靠enigma密碼裝置加密通訊,戰事順風順水。所謂魔高一尺道高一丈,盟國就出現了以圖靈為首的科研團隊,各種劇情起承轉合可能有失真實,但是結局很surprise,圖靈成功破解該密碼機。額,,言歸正傳,這篇論文呢,我仔細看了,並將其翻譯為中文用RNN學習Enigma。然後根據該論文中所講,我就去github上下載了相關代碼All Code。
作為一個python完全的小白,接下來便是急不可耐的想試試下這些代碼真的如文中所述如此機智。
Python開發環境搭建
今天主要講下環境配置的問題。真真是讓我頭疼的地方。試了好多方案均已失敗告終。
至於環境其實在文中作者也都詳細告知,要想成功的跑通別人的代碼,還是老實的按照人家的環境進行配置。但是對於我們平常使用Python環境學習的話,以下這些方案都可以使用。具體使用哪一種,依自己的需要決定。
方案一:簡單粗暴的直接下載Python3.6
官網直接下載Python3.6Python官網。具體過程安裝如:
1、下載,以windows系統為例。
2、最好將軟體安裝包有條理的放在系統硬碟之外的其他盤,電腦上安裝的每個軟體都單獨建立檔案夾,命名最好是英文,特別是技術類軟體,避免以後不必要的麻煩。清晰分類,也利於以後的清除。緊接著雙擊下載完後的Python36應用,進入如下介面:(推薦自訂安裝,軟體為自己安裝,並且如果不想之後手動添加環境變數,這裡的Add Python 3.6 to PATH一定要勾選哦)
3、選中自訂安裝,以下就一路next.
4、選擇自己安裝的程式所在的檔案夾,最好安裝路徑自己建個install檔案夾,就可以把所有安裝時附帶的設定檔全都放在一個檔案夾下面。
5、稍等便可安裝完成。
6、安裝完成後,關掉頁面。快速鍵WIN+R,輸入cmd開啟命令窗,輸入python,可以看到如下python版本資訊,安裝成功。
7、如果輸入python斷行符號後,出現如下視窗。就是步驟2中木有勾選自動添加路徑,需要自己添加路徑。
8、添加路徑的方法網上很多,我簡單描述下就不放圖了。案頭-->右鍵 電腦-->屬性-->進階系統設定-->進階-->環境變數-->使用者變數-->path(這裡添加在使用者變數的path裡就可以,之前我安裝其他軟體的時候,出現問題看到有說將路徑添加在系統變數路徑,其實電腦在搜尋軟體的時候優先搜尋系統內容變數,如果沒有找到再搜尋使用者變數,所以直接將路徑填寫在使用者變數路徑即可)-->編輯。此時,回到PYTHON安裝路徑進入scipts找到python.exe將其路徑拷貝。粘貼到path路徑放到最前面注意分號與後一個盤符隔開。
9、至此,我們可以從開始-->所有程式-->python-->python idle,開啟進入python shell,簡單的起步語句就可以開始了。這是python內建的IDE,它簡單快捷,學習python測試或者編寫小型軟體很方便,佔用資源小。至於各種package,可以根據自己項目的需求逐一安裝。那在對於包的管理方面,anaconda確實好用,以下會重點講述。
方案二:Eclipse+PyDev 進行Python項目開發
談及Eclipse,大家比較熟知的是Java項目開發,Eclipse是JAVA的IDE,功能強大,而且Eclipse寫Python或者JAVA都可以,支援跨平台在Mac、Linux、Windows上都能運行。eclipse的正常運行必須先有java jdk的環境才可以。所以我們按以下步驟進行配置。
1、安裝jdk,選擇與自己電腦匹配的版本下載,安裝比較簡單,可以參考相關的說明。環境變數的添加方法同上。版本可根據自己的電腦系統選擇,如何你的是Windows 64位,那麼可以下載64位或者32位。但是接下來的eclipse也要安裝相對應的版本即64或者32。如果電腦是32位的,就安裝32位的jdk和eclipse。jdk安裝完成後,環境變數配置完成後,快速鍵wina+r,cmd開啟命令窗,輸入java,如,即可安裝成功。
然後可以輸入 java -version查看所安jdk的版本,是我的電腦顯示:
2、官網下載適合自己電腦系統的以及與你的jdk一致的Eclipse版本。稍等變會出現如下提示。
2、下載成功後,點擊解壓即可雙擊eclipse.exe直接使用eclipse,它無需安裝且免費使用。
3、安裝Python,這個完全同方案一中的python安裝方法。
3、然後便是外掛程式pydev的下載安裝。 啟動Eclipse,點擊Help->Install?New?Software...?在彈出的對話方塊中,點擊Add按鈕。Name填寫Pydev,location中填寫:http://pydev.org/updates,
-->OK,在彈出的對話方塊勾選pydev.-->next.耐心等待即可。
4、配置python解譯器。安裝完Pydev後,需要配置Python解譯器。開啟eclipse,windows-->Preferences-->
PyDev->Interpreter->Python?Interpreter
然後點擊右邊的New按鈕,彈出對話方塊,添加解譯器,name可根據自己的喜好自由選擇。
點擊OK,Pydev會自己載入該python解譯器所帶有的lib檔案。點擊OK--->apply配置生效。
至此,就可以開始簡單的python程式的開發了。
方案三:Anaconda+Pycharm進行Python項目開發
Anaconda是包管理器和環境管理器。Anaconda的英文本意是“蟒蛇”,所以我們看到Anaconda 的logo就像一隻首尾合抱的蟒蛇。
我們看到對於Anaconda的logo下面,The Most Popular Python Data Science Platform,OK,為什麼說Anaconda是最流行的Python資料科學平台?因為Anaconda附帶了一大批常用資料科學包及其依賴項。因此我們可以用它來很方便高效的處理資料。比如管理packages,Anaconda是在conda(一個包管理器和環境管理器)上發展出來的。在我們進行項目開發的時候,會需要用到很多第三方pkg,conda就可以很方便的在電腦上安裝和管理這些pkg。還有管理環境,由於Python2與Python3文法仍有差異,不同的項目可能需要不同的Python版本,同時安裝2個可能造成混亂,conda可以為不同的項目建立不同的運行環境。所以我推薦使用Anaconda。 Anaconda可以跨平台使用(Windows、mac、Linux)。
Anaconda的安裝
1、官網下載Anaconda.注意根據自己電腦的系統選擇對應的版本,比如我的電腦是Windows 64位:
。
2、如果你的電腦上已經安裝了Python,Anaconda的安裝不會造成影響,實際上指令碼和程式的使用預設Python是Anaconda附帶的Python.如果是windows 10系統,安裝軟體時注意右鍵以管理員身份運行。下面開始安裝,雙擊開啟.exe檔案,
3、同意條款:
4、just for me 一路next
5、選擇自己喜歡的單一檔案夾,next
6、這裡注意勾選,就不用安裝之後再手動添加Python的路徑啦。
7、然後就是休息等待ing,時間可能會稍長些。
8、安裝完成後,點擊開始-->所有程式-->Anaconda-->Anaconda Prompt終端。
9、輸入conda list,可以查看剛剛安裝的內容。
10、注意,為了避免之後莫名其妙的報錯。這裡可以輸入conda upgrade --all更新所有的軟體。中間有提示是否更新是輸入 y.,因為初始安裝的檔案版本一般比較老舊,因此提前更新可以避免不必要的麻煩。
conda管理packages
1、比如我們安裝pandas,開啟Anaconda Prompt,文法格式為:conda install package_name,所以輸入conda install pandas,,
若要選用特定的版本,如例子,可以輸入conda install package_name=1.1,conda還會自動安裝所需包的依賴項,這對於初學者來說真是perfect。
2、卸載不用的package。同樣是Anaconda Prompt中輸入conda remove package_name
3、更新包,上面提到更新全部的檔案是conda upgrade --all,如果你只想更新特定的檔案,
conda update package_name
4、查看已經安裝完成的packages,conda list。這個也可以從自己的Anaconda安裝路徑處,shift+右鍵-->在此處開啟命令窗,也可以開啟並輸入conda list進入:
5、對於本論文中的環境,我們這裡需要安裝的是tensorflow1.1,numpy,開啟Anaconda Prompt,輸入conda install tensorflow=1.1,安裝見:
可以看到conda會自動安裝tensorflow所需的依賴項。
6、至此,Anaconda就安裝完畢了。它本身整合安裝了Python3,conda我們又安裝了所需要的packages,所以,接下來便是開發平台Pycharm的安裝與配置。
Pycharm的安裝與配置
1、官網下載Pycharm,選擇與自己電腦系統對於的版本。中可以看出Pycharm有2個版本,professional功能齊全,但需要付費,but免費試用。
2、雙擊安裝,
3、install安裝,finish。
4、開啟Pycharm-->accept-->OK
試用30天,破解的話大家可以自行可以去搜尋方法,我現在用的是試用。
OK,Pycharm可以正常試用了。
5、下面是一些Pycharm的配置問題。因為剛初始的Pycharm版本字型特別小,很多地方可能會讓我們覺得看著很不舒服。所以適當調整為更符合我們習慣的樣式也有助於我們的學習。在不開啟或者建立工程的情況下就可以進行相關的配置:
A.主題設定
進入Settings-->Appearance & Behavior-->Appearance
Darcula黑灰色背景 ,護眼。
B、字型設定
直接在搜尋方塊輸入font即可快速搜尋,然後根據自己的相關設定相關參數。
Settings中還可以設定多種樣式,方法就是這樣,其餘的大家都可以根據自己的喜好隨心設定啦。
項目調試
對於本論文中的項目開發所需要的環境方案三已經設定完成了。那麼接下來我們來簡單的跑一下這個程式。
1、從githu上下載下來代碼後,將.py全都檔案放在一個工程檔案夾中,檔案夾的名稱可任意(除中文外)。開啟Pycharm,啟動後,直接點擊OPEN,找到你下載的工程檔案開啟。
2、我是之前已經跑過一遍的工程頁面。如果你是初次開啟,別忙著運行主程式,首先要去設定解譯器。仍然從Settings出發,按所示。
3、添加解譯器:點擊方框出設定按鈕--->add然後選擇Anaconda安裝資料夾的Python36,這是Pycharm會自動載入其所含的packages,如我們剛剛安裝的tensorflow1.1版本,最後一項是最新版本,可選擇升級與否。python解譯器選好之後,OK確定即可。
4、返回首頁面,圖中方框處上面的倒三角點開編輯配置,否則後面的綠色的運行符號是灰色,不可用狀態。
5、點擊方框中的綠色+,選Python,其餘的按圖中所示即可。
6、返回首頁面之後,直接點擊紅色方框內的運行符號,程式正在運行。
程式運行遇到問題:Python中的編解碼問題,正在尋找資料,以後會繼續更新。大家有好的意見和解決辦法,歡迎留言共同學習。
注意:1、大家在遇到莫名其妙的報錯時,不防在Anaconda Prompt中conda upgrade --all更新下所有的庫檔案,真的可以解決很多不必要的麻煩。
2、Python2.7隻有在mac和Linux下支援tensorflow。Windows系統中,Python3支援。Python核心團隊計劃在2020年停止支援Python 2。NumPy項目自2010年以來一直支援Python 2和Python 3,並且發現支援Python 2對我們有限的資源增加了負擔;因此,計劃將停止支援Python 2。現在,Python核心團隊已經進入了社區支援的Python 2的最後幾年,NumPy 項目公布了它逐步淘汰 Python 2 支援的時間表,計劃在此期間協助下遊生態系統制定計劃並完成過渡。到2018年12月31日為止,所有的NumPy版本都將完全支援Python2和Python3。從2019年1月1日開始,任何新的功能版本都只支援Python3。所以,對於現在的Python初學者來說,不用糾結與兩者的文法差異,package支援之類的問題,直接以3位標準學習肯定沒有問題的。
備忘:作者同樣是初學者,文中不免有很多疏漏之處,歡迎大家提出改進,互相交流學習。
python機器學習密碼之初來乍到