區(qū) 蘇
(廣西大學(xué)行健文理學(xué)院,廣西 南寧 530005)
在當今時代背景下,人們所進行的大多數(shù)活動,都有著大數(shù)據(jù)的影子,甚至在許多情況下大數(shù)據(jù)占據(jù)著關(guān)鍵的位置,起到?jīng)Q定性的作用,數(shù)據(jù)爆炸的當今,我們通過計算機、互聯(lián)網(wǎng)就能夠獲取大量的信息。同時,在“互聯(lián)網(wǎng)+”、物聯(lián)網(wǎng)經(jīng)濟二者的潛移默化下,各個行業(yè)所產(chǎn)生的數(shù)據(jù),都應(yīng)運而生出令人嘆為觀止的增進趨向,那可以被形容為“天文數(shù)字”,在這種情況下,對數(shù)據(jù)的采集變得極為重要。而在完成數(shù)據(jù)采集工作之后,還應(yīng)該對數(shù)據(jù)進行深度地發(fā)掘、分析,操縱數(shù)據(jù)來引導(dǎo)未來的發(fā)展,以此來施展數(shù)據(jù)的價值。在這一過程中,工作人員就可以將Python編程語言應(yīng)用其中[1]。
對Python進行簡單的解釋,它是新時代的一種計算機程序語言,且自它誕生之日開始,它便較其他程序語言有著很大的優(yōu)勢。Python的可讀性很高,它的集成方法相較而言也比較全面,可以輕易滿足用戶的需求,而它不同于以往程序語言的晦澀難懂,Python上手門檻低,并且還十分方便人們理解。正是因為這些優(yōu)點,它被計算機領(lǐng)域廣泛使用,已經(jīng)成為不可或缺的一部分,而即便是除計算機領(lǐng)域以外的其他行業(yè),在進行數(shù)據(jù)分析時也會選擇Python。
其功能主要體現(xiàn)在以下幾方面:
(一)網(wǎng)絡(luò)開發(fā):正因為很多較為常見的網(wǎng)絡(luò)協(xié)議庫都存在于Python的內(nèi)部,所以Python才有能力作為一個網(wǎng)絡(luò)編程工具,比如Socket、urllib和urllib2模塊,并在相關(guān)的開發(fā)工作中發(fā)揮效果。
(二)GUI開發(fā):對Tkinter的使用,對GUI應(yīng)用程序的創(chuàng)建可以在短時間內(nèi)通過Python來完成,也能夠與Java形成Jython庫。
(三)游戲開發(fā):Python在游戲當中可以減輕開發(fā)游戲的復(fù)雜性,有助于在開發(fā)過程當中提高游戲的便捷。具體體現(xiàn)在游戲裝備、戰(zhàn)斗攻防互動系統(tǒng)、賬號登錄注冊系統(tǒng),它們的基礎(chǔ)都是通過Python進行開發(fā)[2]。
(四)人工智能:在當前的社會中,人工智能是較為火熱的一個領(lǐng)域,也是整個時代想要進行發(fā)展的先驅(qū),但是許多人工智能同時也需要Python作為基礎(chǔ),人工智能的開發(fā)設(shè)計離不開Python的幫助,在微軟的小冰、谷歌的“阿爾法狗”、蘋果的Siri等這些婦孺皆知的人工智能上皆有著Python的影子,Python在它們上面都得到了具體的體現(xiàn)。
(五)網(wǎng)絡(luò)爬蟲方面:Python有著自帶的框架,而通過Python,可以取得網(wǎng)站的信息,觀看到網(wǎng)頁的內(nèi)容,尋找到我們所需要的數(shù)據(jù)并且對其進行分析與提出,而后者只需要采用正則表達式,便可以成功地將我們所需要的數(shù)據(jù)提取出來。
Python數(shù)據(jù)分析顧名思義,便是針對所有收集的數(shù)據(jù),將其進行存儲、計算、分析,從數(shù)據(jù)當中發(fā)現(xiàn)有價值的東西,將有用或者有參考意義的信息摘取出來。從這方面來看,數(shù)據(jù)分析雖然只是一個計算機科學(xué)的分支,但是因為它獨有的特性,數(shù)據(jù)分析可以跨越多個領(lǐng)域,作為一個重要的方法去挖掘數(shù)據(jù)當中所隱含的價值[3]。
(一)機器學(xué)習(xí):所謂機器學(xué)習(xí),便是通過賦予機器學(xué)習(xí)的能力從而讓它完成變成無法完成的事情的功能,但是從實踐的角度出發(fā),機器學(xué)習(xí)可以通過利用數(shù)據(jù),從而訓(xùn)練出一個模型,再通過模型進行預(yù)測。
(二)深度學(xué)習(xí):源于人工神經(jīng)網(wǎng)絡(luò)的研究,作為機器學(xué)習(xí)研究當中的一個全新的領(lǐng)域,其主要的動機在于建立,對人腦進行模擬,從而進行分析學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò)。和機器學(xué)習(xí)方法相同,深度機器學(xué)習(xí)方法也可以分成監(jiān)督學(xué)習(xí)和無監(jiān)督學(xué)習(xí),舉例說明,卷積神經(jīng)網(wǎng)絡(luò)就屬于監(jiān)督學(xué)習(xí),深度置信網(wǎng)就屬于無監(jiān)督學(xué)習(xí)。
(三)神經(jīng)網(wǎng)絡(luò):神經(jīng)網(wǎng)絡(luò)最一開始屬于生物學(xué)的名詞概念,大腦的神經(jīng)元、觸點和細胞組成的一個完整的網(wǎng)絡(luò)便是神經(jīng)網(wǎng)絡(luò),將此概念引申到Python數(shù)據(jù)分析當中,人工智能受到啟發(fā),誕生了人工神經(jīng)網(wǎng)絡(luò),對人腦加以模擬,從而誕生了AI。
(四)人工智能:計算機同樣也有著無法解決的問題,例如對圖像的識別,對語音的識別,人工智能的出現(xiàn)便是為了針對這些問題進行解決,而事實證明這種設(shè)想確實可以實現(xiàn)。
這四個概念出現(xiàn)得十分頻繁,它們之間的關(guān)系是包含關(guān)系,逐漸遞進深入,如果使用圖片的話更容易理解:
圖1 包含關(guān)系
具體的學(xué)習(xí)模型例如LSTM,即長短期記憶神經(jīng)網(wǎng)絡(luò),這是一種特別的循環(huán)神經(jīng)網(wǎng)絡(luò),核心思想是記憶塊,主要由輸入門、遺忘門和記憶單元,他的特點是其網(wǎng)絡(luò)結(jié)構(gòu)模型是鏈狀結(jié)構(gòu),擅長用在不分段連續(xù)手寫識別上,其作為非線性模型,還可以作為復(fù)雜的非線性單元而去構(gòu)建大型的深度神經(jīng)網(wǎng)絡(luò)[4]。
該學(xué)習(xí)模型關(guān)鍵在于其單元狀態(tài),信息通過單元傳遞,從上一個單元傳遞到下一個,而線性相互作用也比較少,適合于處理和預(yù)測間隔和延遲時間非常長的重要事件。在解決傳統(tǒng)模式RNN存在的依賴問題上有著突出的表現(xiàn),在使用時要注意輸出遺忘和記憶變量這三個核心要點,對他們的掌控才能做到對該學(xué)習(xí)模型的掌控。
圖2 LSTM的模型
下面這是四個函數(shù)單元,最左邊的函數(shù)大多數(shù)情況下是區(qū)塊的輸入,右邊三個會經(jīng)過“門”決定輸入值接下來是否能傳入?yún)^(qū)塊,左邊第二個便是核心之一的輸入門,假設(shè)這里的數(shù)值近似于零,這里的數(shù)值將會在第二層就被阻擋,不會進到下一層。左邊第三個便是另一個核心——遺忘門,如果這里也是與零近似的數(shù)值,第二層里已經(jīng)得到記憶的值將會被遺忘,不能傳遞到第三層。第四個也就是最右邊的輸入為輸出門,這一個可以直接決定最后在單元之中進行傳遞的輸入值最后是否能被輸出。
Python數(shù)據(jù)分析可以在將大部分的工作獨自完成,熟悉Python集成的多種類型的庫,這對于數(shù)據(jù)的整理和分析是極為重要的。
Python中有著一個專門用于計算的模塊,他的名字叫做Numpy,作為Python科學(xué)計算的基礎(chǔ)包,它通過提供多維數(shù)組對象,可以直接運算數(shù)學(xué)和元素級別的數(shù)組。因此主要適用于數(shù)組和矩陣,在科學(xué)計算領(lǐng)域也多有應(yīng)用,而將Fortran集成到Python,也需要用到它。
Pandas和Numpy的使用頻率是最高的,對于Python中數(shù)據(jù)的讀取和保存有著重要的作用,且Pandas較強的靈活度使得它在處理Excel時可以更加高效,可以輕易的將execl表格中的數(shù)據(jù)進行轉(zhuǎn)換。
除了Python中對數(shù)據(jù)的計算、讀取和保存,使得數(shù)據(jù)更加容易被觀察,同樣是Python數(shù)據(jù)分析中至關(guān)重要的一項,它通過對圖表進行繪制從而使得數(shù)據(jù)簡單化,可視化。數(shù)據(jù)的可視化,不管是對數(shù)據(jù)的使用人員,還是數(shù)據(jù)分析人員,工作都將簡化方便,從而提高效率[5]。
在當今信息時代中,對于大數(shù)據(jù)的挖掘、分析,Python在大多數(shù)情況下是好用的一個。將Python應(yīng)用其中進行數(shù)據(jù)分析,能夠在很大程度上,為工作帶來更多的便捷。這是因為,這是Python自身先天的優(yōu)勢所決定的,Python有著較強的數(shù)據(jù)挖掘能力和分析能力。同時在數(shù)據(jù)分庫方面,Python具有突出且令人滿意的功能性,在實際應(yīng)用方面也有著很好的效果,并且Python可以在平臺當中實現(xiàn)跨越運轉(zhuǎn),所以可以將計算機編程的重要作用充分發(fā)揮出來。通過本文的分析能夠發(fā)現(xiàn),Python數(shù)據(jù)分析在數(shù)據(jù)整理和分析方面,非常符合當今時代的需求,且其實用性也為我們帶來了相較其他更多的好處。因此它的可行性毋庸置疑,在未來的一段時間內(nèi),不管是數(shù)據(jù)分析,還是游戲領(lǐng)域,亦或者是對AI進行開發(fā)研究,還是用于網(wǎng)絡(luò)安全等各種領(lǐng)域,Python都將是首選的語言,Python數(shù)據(jù)分析也必將發(fā)揮著巨大的作用。隨著我國的科學(xué)技術(shù)的飛速發(fā)展,筆者相信Python數(shù)據(jù)分析將會用在更加廣闊的領(lǐng)域,且發(fā)揮重要的作用。