人工智慧技術相關術語解析
Python
一種計算機解釋型指令碼語言,誕生於1989年,可用於各類軟體開發、web開發和科學計算,目前是人工智慧最主要的程式語言,各類程式語言排行榜已經躍居前三。
Python簡單易學易用,可讀性強,而且具有豐富的資料科學和人工智慧功能模組,開發生態非常健全。
Html5
HyperText Markup Language,網頁開發最主要的程式語言,簡單好學功能強大。 Html5是最新版本,2014年釋出。
CSS3
Cascading Style Sheets,層疊樣式表,用來給網頁元素設定各種樣式,美化頁面。 CSS3是最新版本,2001年制定。
JavaScript['dʒɑvə,skrɪpt]
網頁程式設計指令碼語言,主要用來實現網頁動態效果和各種功能和業務邏輯。 JavaScript是開發者使用最廣泛的語音,沒有之一。 JavaScript和Java的關係類似雷鋒和雷鋒塔的關係,半毛錢都沒。 Java學不好對於JavaScript沒有任何影響。
jQuery[dʒe'kwɪərɪ]
Javascript的一個框架,就是別人把很多網頁常用功能寫好了打包在一起成為jQuery給大家用。 jQuery能夠操作頁面製作動畫,以及更多厲害的功能。 jQuery曾經是網頁開發的必選工具,但近幾年隨著Vue、react、angular的興起,jQuery已經不那麼流行了。
Bootstrap['bʊt'stræp]
JS框架,提供了很多現成的網頁元素,可以很快讓網頁變得美觀大方。
Flask[flɑːsk]
Python的一個輕量級web開發框架。可以幫助開發者快速搭建Web服務程式,簡單易用,可定製性強。
Django[ˈdʒæŋɡo]
Pythond的一個web開發框架,遵循MVC框架模式。可以幫助開發者快速搭建Web服務程式,功能強大,適合企業級產品開發。
xadmin[eks'ædmɪn]
Web站點的管理頁面的開發框架,可以配合Django一起使用,快速開發美觀又強大的前端後臺管理頁面。
Http和Https
就是瀏覽器位址列中開頭的字元,表示網頁的內容是按照這個標準傳遞的。
HyperText Transfer Protocol超文字傳輸協議。
Hyper Text Transfer Protocol over Secure Socket Layer超文字傳輸協議安全層。
沒有s的會被瀏覽器標識為不安全 ,逐漸將被替代消失。
其他瀏覽器支援的常見協議還有
- FTP,檔案傳輸協議File Transfer Protocol,用於上傳下載檔案。
- File,本地檔案傳輸協議。
TCP/IP
網路通訊模型及整個網路傳輸協議家族,是網際網路的基礎通訊架構。
傳輸控制協議Transmission Control Protocol。
網際協議Internet Protocol,我們說的IP地址就是這個協議實現的。
傳統網路有七層:物理層、資料鏈路層、網路層、傳輸層、會話層、表示層、應用層。
而TCP/IP簡化為4層:
- 主機到網路,給上層提供一個介面,802.2,802.3等。
- 網路互連層,IP。
- 傳輸層,TCP、UDP。
- 應用層,Http(s),Ftp,SNFP,TELENT等。
Requests[rɪ'kwɛsts]
Python的http請求模組工具,可以模擬瀏覽器傳送網路請求,獲取網頁資料。
獲取資料之後我們可以藉助其他工具對資料進行分析和爬取。
Urllib['ju: ɑ:r 'el lɪb]
Python的核心模組,和Requests功能類似。
Threading['θrediŋ]
Python裡面常用的執行緒模組,多執行緒處理任務對於提升效率非常重要,可以同時對多個網頁進行抓取。
Scrapy ['skræpi]
Python的網路爬蟲框架,可以快速實現各種頁面和資料的爬取並存儲到資料庫,還能實現分散式爬蟲等高階功能。
目前Python爬蟲技術最常用的框架之一。
Selenium[sə'linɪəm]
瀏覽器外掛,支援幾乎所有常用瀏覽器,可以使用Python程式碼通過Selenium控制瀏覽器,模擬使用者點選行為,實現自動登入、自動重新整理等功能,幫助開發者在複雜情況下爬取網頁資料。
分散式爬蟲
同時在多個計算機上執行爬蟲程式,既可以避免單個IP地址被封殺,也可以更加快速的爬取海量資料。
代理與反爬蟲
很多網站採用特殊技術防止本站頁面資料被爬取,包括資料延遲載入、使用者登入、真人驗證、限制訪問頻率、封殺IP等手段,對這類情況需要用到代理伺服器訪問等更多技術。
MySQL[mai'si:kjuːel]
目前行業最常用的關係型資料庫,用來儲存各種資料,可以很方便的查詢搜尋。
NoSQL/Redis[re'dis]/MongoDB['mɒŋgəʊ'di'bi]
NoSQL是非關係型資料庫,和MySQL不同。
非關係型資料庫在網際網路時代尤其是大資料雲端計算時代越來越重要,可以應對更多樣的資料儲存需要。
最常見的非關係型資料庫有Redis、MongoDB和Memcache。同時這些資料庫也經常被用來大幅度提高後端軟體的執行效率。
很好的結合各種資料庫使用,可以使軟體程式效能提高成百上千倍。
多維陣列與矩陣
在人工智慧的資料科學領域,往往不僅處理簡單的數字和字元,更多時候需要處理更加複雜的資料結構,在更多維度上對資料進行分析,尋找潛在關聯和變化規律。
Numpy['nʌmpaɪ]
Python的重要數學計算庫,主要用於多維陣列和大型矩陣的複雜運算,其運算速度比python自身快很多很多。
Pandas['pændəs]
Python的重要數學計算庫,基於Numpy之上,主要用於大型的表格資料的複雜處理。
資料清洗和特徵工程
企業現實中產生的資料往往很凌亂,有很多無價值的資料,也有很多殘缺的、甚至錯誤的資料,對這些資料的處理稱為資料清洗。
資料中有很多重要資訊,比如使用者的性別、消費歷史、興趣愛好等,這些都可以視為使用者的特徵資料,對特徵資料的整理和提取、整理處理,稱之為特徵工程。
資料清洗和特徵工程是機器學習深度學習的前提工作,也是關鍵步驟。
機器學習
研究如何讓計算機模仿人的學習方式,從資料中找到規律,提取變化,然後對新的情況進行預測推理。
機器學習是人工智慧的主要技術,廣泛應用於電子商務、金融銀行、工業生產等領域。機器學習是人工智慧的子集,也是深度學習的超集。
深度學習
研究如何利用計算機神經網路演算法模擬人類的認知過程,從資料中發掘那些用常規方法難以發覺的規律。
深度學習是當前人工智慧最火熱的技術,廣泛用與影象識別、人臉識別、語音識別、自然語言、自動駕駛等領域。
人工智慧相關數學知識
人工智慧演算法研究需要線性代數、矩陣、微分、概率論、統計學等多方面的數學知識,具有良好的數學基礎可以加深機器學習演算法的理解,有利於更好的掌握演算法技術。
但在人工智慧應用開發領域,這些數學基礎並不是必須的。
除了數學之外,實際工作中更加需要專案實踐能力、業務理解能力等綜合技能。
線性迴歸和logistic迴歸
研究兩種或者多種變數之間相互依賴的定量關係的方法,這種關係一般都符合線性方程的邏輯,即這些點都分佈在一條線或者一個面周圍。
logistic迴歸是一種廣義的線性迴歸分析模型,常用於資料探勘,疾病自動診斷,經濟預測等領域。例如,探討引發疾病的危險因素,並根據危險因素預測疾病發生的概率等。
決策樹和隨機森林
常用的一種典型的分類方法,利用歸納出來的規則進行逐層分類,分類規則層層劃分形成樹狀結構。
隨機森林是一個包含多個決策樹的分類方法,往往可以得到比簡單決策樹更好的結果。
PCA
PCA,主成分分析演算法,主要用於降維。它可以把複雜的多維度資料簡化成維度比較少的資料,而且幾乎沒有太多損失,從而實現演算法的簡化和加速。PCA演算法的經典應用就是人臉識別資料的維度降低。
K-means
K均值聚類演算法,可以把眾多的樣本根據空間距離劃分成幾個組,進而實現分類,是常用的無監督學習分類方法之一。比如常用的使用者分類。
神經網路
使用計算機程式設計和數學演算法,模擬人類大腦的識別和思考模式,從而讓計算機從大量資料中自主找到規律。
與機器學習使用多種演算法應對各種問題不同,神經網路使用更為統一的演算法來解決各種問題,因此只需要掌握這些演算法並能靈活應用就可以解決眾多的實際問題,比如人臉識別、語音識別、語言翻譯等都是依賴近年神經網路技術取得的重大突破。
TensorFlow
谷歌釋出的開源人工智慧開發框架,主要用於深度學習神經網路相關演算法進行推理預測。TensorFlow是當前行業中最流行的人工智慧框架,其他還有Coffee、Mxnet,pytorch等。
卷積神經網路和迴歸神經網路
神經網路中的兩種演算法,用於組合實現各種複雜的模型。
影象識別技術
包括人類識別、物體識別、人體姿勢識別、醫療圖片識別等。
自然語言處理與文字挖掘
文字挖掘指利用機器學習技術,從大量文字文字中尋找規律,提取含義、關鍵詞、情感傾向等。
自然語言處理NLP,nature language processing,廣義上包含語音識別、語義理解NLU和語音合成等技術。NLP比文字挖掘覆蓋的範圍更加廣,這也是目前最流行、最前沿的人工智慧技術之一。
智慧推薦與使用者畫像
主要應用在電子商務、智慧營銷、金融風控等領域,通過人工智慧演算法分析使用者特徵、行為喜好,並據此依賴智慧演算法為每個人定製不同的廣告營銷和服務。經典案例就是淘寶、頭條的千人千面,每人看到的內容都是不同的、定製的。
天池大賽
有阿里雲主辦的全球人工智慧演算法大賽,目前影響力僅次於谷歌的Kaggle大賽,是國內最重要的人工智慧賽事,很多企業都把開發者參加這個賽事的能力作為重要的技術評估指標。