乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      【機器學習】數(shù)據(jù)挖掘/知識發(fā)現(xiàn)/人工智能相關概念梳理

       南莊小筑 2020-02-29

      1 引言

      ??前段時間,花了很多精力在了解、學習和思考有關——大數(shù)據(jù)/數(shù)據(jù)挖掘/知識發(fā)現(xiàn)/人工智能等等的知識/概念。思維上很受啟發(fā),對一些曾經(jīng)很模糊的概念,也有了較為清晰的認識。

      ??另一方面,作為一個程序員,我開始認真思考一些比較深層次的問題,比如,“信息的本質(zhì)”,“軟件的本質(zhì)”,“數(shù)據(jù)的本質(zhì)”,“語言的本質(zhì)”,“系統(tǒng)的本質(zhì)與系統(tǒng)論”,“編程語言原理”,信息在傳輸過程中的損耗,“對象與關系”,“如何評估智能化的程度”,“神經(jīng)網(wǎng)絡”,“計算機與大腦”等等等等。很有趣,也很有意義,而且讓我對現(xiàn)實生活和現(xiàn)實世界有了新的認知。

      ??另外,對“馮.諾依曼”體系結構,也有了進一步的認知,它與現(xiàn)代計算機結構的關系,以及對編程語言的影響。

      本文主要是把自己學習中遇到的工具、概念、過程,做一些整理和記錄。

      2 統(tǒng)計工具的學習

      ??首先,以運維監(jiān)控信息為原數(shù)據(jù),以關聯(lián)性分析為切入點,展開分析,希望在大量、靜態(tài)的數(shù)據(jù)中獲取有價值的信息。在這一需求背景下,學習了 R 語言,并通過 R 語言完成了一些簡單的分析工作。

      圖1 R語言編程環(huán)境
      這里寫圖片描述

      ??R 語言更專注和適應于統(tǒng)計學領域,是做學術和實驗的絕佳選擇,在產(chǎn)品化和集成方面稍顯不足。于是,將關注點轉(zhuǎn)向 Python 的數(shù)據(jù)分析模塊,Numpy&Pandas,Scipy,Matplotlib等。Python 由于其自身的開放、簡潔、和靈活性,使其在數(shù)據(jù)分析領域擁有著得天獨厚的優(yōu)勢,相對于 R 在統(tǒng)計方面的專業(yè)性,Python 更均衡,更全面。

      ??此外,數(shù)據(jù)分析畢竟是一門專業(yè)性很強的工作,需要掌握很多統(tǒng)計學、數(shù)學相關的領域知識。比如,如何建立相關模型,如何進行回歸,如何理解檢驗參數(shù),一般線性模型與廣義線性模型,非參數(shù)校驗與參數(shù)校驗,ROC曲線等等。Python 和 R 只不過是個工具,它們提供了所有可用的方法和函數(shù),但如何使用它們,如何有效的建立模型,得出結論,則需要大量的時間、精力,以及統(tǒng)計分析經(jīng)驗。作為一名程序員,這些才是真正的挑戰(zhàn)。

      圖2 Python大數(shù)據(jù)學習路線
      這里寫圖片描述

      ??除了 Python 和 R,還花了不少時間學習和使用SPSS。

      ??SPSS 是一個可視化的統(tǒng)計分析平臺,其分析結果清晰、直觀、易學易用,可對一些簡單的數(shù)據(jù)進行快速建模分析,對于掌握和理解一些專業(yè)術語有極大的幫助。它整合集成了統(tǒng)計分析中最常用、最主流的算法、過程、和工具,特別適合對分析、建模的方案進行快速驗證。

      圖3 SPSS軟件視圖
      這里寫圖片描述

      ??SPSS更適合那些傳統(tǒng)統(tǒng)計領域的從業(yè)人員,重心放在對工具的使用上,點一點,選一選,無需編程。但是 SPSS 缺少靈活性,尤其是在大數(shù)據(jù)分析時,SPSS所能完成的功能,也都可以通過python來編程實現(xiàn)。

      ??除了以上三種在數(shù)據(jù)分析領域普遍使用的工具,還花時間學習了杭州奇越數(shù)據(jù)科技有限公司的SPM軟件??傮w來說,SPM與SPSS有很多相似之處,但它比SPSS更專注于算法和大數(shù)據(jù)分析,能更靈活的應對數(shù)據(jù)的不同規(guī)模、復雜度和結構,對數(shù)據(jù)進行描述性分析,構建分析模型,或者預測。

      ??SPM內(nèi)含了多種先進的數(shù)據(jù)挖掘、機器學習算法模塊,如CART、TreeNet、MARS、Random Forests等,學習起來明顯比SPSS更難,非統(tǒng)計學專業(yè)人員,一般只能使用經(jīng)典模型進行分析,很難根據(jù)數(shù)據(jù)特征進行調(diào)參、優(yōu)化,或者創(chuàng)建新的分析模型。

      圖3 SPM軟件視圖
      這里寫圖片描述

      ??統(tǒng)計分析相關的工具主要了解了以上四種,數(shù)據(jù)分析是一個極其廣泛的領域,社會、金融、互聯(lián)網(wǎng)、娛樂、氣象等等,不同領域都有各式各樣定制化的分析工具或系統(tǒng)方案,另外還有很多開源工具,各具特色,但萬變不離其宗,數(shù)據(jù)分析的基本規(guī)律、結構和算法原理都一樣。

      ??研究了這些統(tǒng)計工具之后,我的感觸是,我們畢竟是程序員,很難做好統(tǒng)計專業(yè)的事情,一句話隔行如隔山,我花了挺多時間去看高等數(shù)學、概率論與數(shù)理統(tǒng)計,也看了不少的技術文檔,可以理解一些術語,一些算法,但是很難去使用它們、去建模、去做其他有創(chuàng)造性的事情,尤其是涉及到大數(shù)據(jù)和復雜結構時。

      ??而且,數(shù)據(jù)的統(tǒng)計分析是指導我們?nèi)绾稳シ治?、處理和理解?shù)據(jù),是一個技術概念、一個方法論。那么如何跳出晦澀的、統(tǒng)計相關的技術范疇?有沒有系統(tǒng)化的解決方案?

      ??于是,開始進入了第二階段的探索——知識發(fā)現(xiàn)。知識發(fā)現(xiàn)是數(shù)據(jù)分析的目的。

      3 知識發(fā)現(xiàn)

      ??知識發(fā)現(xiàn)就是在數(shù)據(jù)中發(fā)掘知識,將低層次的原始數(shù)據(jù)轉(zhuǎn)換為高層次的信息。

      ??比如運維系統(tǒng)中,常常幾百G的歷史記錄躺在數(shù)據(jù)庫中,死氣沉沉,毫無價值,因為客戶根本不關心半年前的主機或者網(wǎng)絡設備到底是什么狀態(tài),有沒有告警,cpu高了還是低了,因為那都是陳年往事了。

      ??那么這些數(shù)據(jù)中,有沒有蘊藏著某些天機呢?可能有,也可能沒有,這就需要進行知識發(fā)現(xiàn)。沃爾瑪尿不濕與啤酒的經(jīng)典案例,就是知識發(fā)現(xiàn)的最佳實踐。

      圖4 知識發(fā)現(xiàn)過程圖
      這里寫圖片描述

      ??知識發(fā)現(xiàn)過程可以概括為三個部分:數(shù)據(jù)準備、數(shù)據(jù)挖掘、結果的表達和解釋(數(shù)據(jù)展示)。

      3.1 數(shù)據(jù)準備與數(shù)據(jù)倉庫

      ??數(shù)據(jù)準備其實就是把原始數(shù)據(jù)提取并轉(zhuǎn)換為可分析數(shù)據(jù)!當數(shù)據(jù)量小,數(shù)據(jù)結構簡單的時候,我們甚至可以通過excel來完成數(shù)據(jù)準備,無非就是進行數(shù)據(jù)規(guī)整、合并、填充、轉(zhuǎn)換等等操作唄;但是隨著數(shù)據(jù)量的增大,比如幾百M甚至幾G,或者多種不同結構的信息,excel就無能為力了,不過,還可以通過數(shù)據(jù)庫的sql語句來完成。

      ??當數(shù)據(jù)量進一步增大,數(shù)據(jù)結構進一步復雜,甚至數(shù)據(jù)來源于不同結構的存儲體系,有些在分布式數(shù)據(jù)庫中,有些在關系型數(shù)據(jù)庫中,有些可能在mysql里,有些可能在oracle里,要對這些不同來源,不同形式的數(shù)據(jù)進行綜合分析,很顯然,傳統(tǒng)的sql查詢也無能為力了。

      ??以淘寶網(wǎng)站的架構變遷為例,在最開始的時候,由于業(yè)務規(guī)模很小,電商系統(tǒng)的技術門檻是非常低的,簡單的前端設計+Apache+幾臺應用服務器+mysql,網(wǎng)站就可以運營了。這個時候業(yè)務量不大,每天的訂單數(shù),訂單金額,訪問量,暢銷商品排行,客戶消費能力排行等等信息,幾張excel表就可以做了,一目了然。

      ??然后,客戶和訂單越來越多,查詢開始變慢,系統(tǒng)開始卡頓,這個時候就需要對網(wǎng)站架構進行升級,增加服務器,增加數(shù)據(jù)庫(分庫分表)。業(yè)務數(shù)據(jù)和指標依然可以從數(shù)據(jù)庫中查詢,基于數(shù)據(jù)表信息進行數(shù)據(jù)的查詢處理。

      ??接下來,隨著網(wǎng)購時代的真正來臨,業(yè)務規(guī)模指數(shù)級增長,數(shù)據(jù)量陡增,管理團隊的規(guī)模也越來越大,高層管理人員關心的問題,已經(jīng)不再是流量,收入,PV,UV這些細枝末節(jié)的技術指標了,逐漸演變?yōu)橼厔菪缘?、集群性、?zhàn)略性的分析。而這樣的需求,再也無法通過傳統(tǒng)的數(shù)據(jù)查詢來實現(xiàn)了,因為數(shù)據(jù)量太大了,原始數(shù)據(jù)必須抽象轉(zhuǎn)換為更高級的知識才能發(fā)揮價值。

      ??此時,數(shù)據(jù)倉庫技術應運而生!

      ??數(shù)據(jù)倉庫,簡單的說就是為了知識發(fā)現(xiàn)與輔助決策而構建的數(shù)據(jù)加工系統(tǒng),支持復雜的分析操作,并且提供直觀易懂的查詢結果。數(shù)據(jù)倉庫的建立標識著一家公司真正進入信息化階段!

      圖5 數(shù)據(jù)倉庫結構視圖
      這里寫圖片描述

      ??IBM、Oracle、Sybase、Microsoft、和SAS等IT巨頭都曾先后通過收購或研發(fā)推出了自己的數(shù)據(jù)倉庫解決方案,可見IT公司對數(shù)據(jù)倉庫的重視。

      ??Hive 是一個基于Hadoop的數(shù)據(jù)倉庫基礎架構,它提供了一系列的工具,可以用來進行數(shù)據(jù)ETL(Extract-Transform-Load),是一種可以存儲、查詢和分析 Hadoop中數(shù)據(jù)的技術方案。

      ??在了解和學習Hive時,專門使用了4臺服務器搭建了一個Hadoop集群,并安裝了Hive工具,進行了簡單功能的使用。

      圖6 Hive體系結構
      這里寫圖片描述

      ??當然,建立數(shù)據(jù)倉庫最重要的工作并非工具使用,而是對業(yè)務系統(tǒng)和決策需求的分析,確定數(shù)據(jù)倉庫所要解決的真正問題,不同主題下的查詢需求等等。

      3.2 數(shù)據(jù)挖掘

      ??當數(shù)據(jù)準備結束,就開始進行數(shù)據(jù)挖掘了。數(shù)據(jù)挖掘是知識發(fā)現(xiàn)中的核心工作,它利用一系列的方法或算法從數(shù)據(jù)中獲取知識。

      ??數(shù)據(jù)挖掘的概念來源于機器學習。學習是人類才具有的智能行為,目的在于獲取知識。機器學習是研究如何使用計算機來模擬或?qū)崿F(xiàn)人類的學習行為的技術,是人工智能領域中的重要研究方向。

      圖7 機器學習的方向
      這里寫圖片描述

      ??數(shù)據(jù)挖掘根據(jù)任務目的的不同,可以分為聚類、分類、關聯(lián)規(guī)則發(fā)現(xiàn)等。

      ??聚類算法是將沒有類別的數(shù)據(jù)按照距離的遠近親疏聚集成若干類別,典型的方法有K-means。分類方法是對有類別的數(shù)據(jù),找出各類別的描述知識,典型的算法有ID3,C4.5,IBLE等。關聯(lián)規(guī)則是對多個數(shù)據(jù)項重復出現(xiàn)的概率進行評測,超過指定的閾值時,建立這些數(shù)據(jù)項之間的關聯(lián),典型的算法是Apriori。此外,人工神經(jīng)網(wǎng)絡的相關算法也被應用于數(shù)據(jù)挖掘中。

      ??在學習過程中,深入的了解和學習了決策樹與人工神經(jīng)網(wǎng)絡這兩類算法。

      ??決策樹是用樣本的屬性作為結點,用屬性的取值作為分支的樹結構,利用信息論原理對大量樣本的屬性進行分析和歸納而產(chǎn)生的。決策樹的根結點是所有樣本中信息量最大的屬性。ID3,C4.5都屬于決策樹算法。

      ??人工神經(jīng)網(wǎng)絡算法,由大量處理單元互聯(lián)組成的非線性、自適應信息處理系統(tǒng)。它是在現(xiàn)代神經(jīng)科學研究成果的基礎上提出的,試圖通過模擬大腦神經(jīng)網(wǎng)絡處理、記憶信息的方式進行信息處理。目前廣泛應用于模式識別、智能機器人、預測估計、自動控制等領域,并成功解決了許多現(xiàn)代計算機難以解決的實際問題。

      ??Keras是目前比較流行、易學易用的python 深度學習框架,可以通過Keras對數(shù)據(jù)進行網(wǎng)絡建模和訓練。我在公司環(huán)境里搭建了Keras環(huán)境,并構建了簡單的網(wǎng)絡模型,實現(xiàn)圖片分類功能。對理解人工神經(jīng)網(wǎng)絡的原理與應用有極大的幫助。

      3.3 智能決策系統(tǒng)

      ??知識發(fā)現(xiàn)的最后一步是結果的表達和解釋,其實就是數(shù)據(jù)展示。

      ??對于小公司或者創(chuàng)業(yè)公司的初期,業(yè)務數(shù)據(jù)非常簡單,可以通過excel進行圖表展示,比如直方圖,餅圖等就能滿足需求了。對于中型公司,它們的數(shù)據(jù)量已經(jīng)大到了一定程度,就需要報表系統(tǒng)來進行數(shù)據(jù)的展示。那么對于阿里、騰訊這樣的互聯(lián)網(wǎng)巨頭呢?馬云思考的一定是那些戰(zhàn)略性的、趨勢性的問題,他所想要看的數(shù)據(jù)已經(jīng)不再是存儲在數(shù)據(jù)庫中的定量的、技術性的數(shù)據(jù)了,他需要一個智能決策系統(tǒng)。

      ??部署并實際操作體驗了以下兩個智能決策系統(tǒng):FineBI和Pentaho。

      1. FineBI

      圖8 FineBI主界面
      這里寫圖片描述

      ??FineBI是帆軟公司的產(chǎn)品,是一個初級的、易學易用的決策系統(tǒng),更準確的應該說是加強版的智能報表系統(tǒng),更適合中小規(guī)模企業(yè)使用。

      ??總的來說,F(xiàn)ineBI是個入門級的決策系統(tǒng),基本做到了數(shù)據(jù)的展現(xiàn)與存儲的隔離,能支持多種數(shù)據(jù)源與數(shù)據(jù)格式。
      2. Pentaho

      ??Pentaho是世界上最流行的開源商務智能軟件,以工作流為核心的,強調(diào)面向解決方案而非工具組件的,它包括一個web server平臺和幾個工具軟件:報表,分析,圖表,數(shù)據(jù)集成,數(shù)據(jù)挖掘等,可以說包括了商務智能的方方面面。它偏向于與業(yè)務流程相結合的BI解決方案,側重于大 中型企業(yè)應用。它允許商業(yè)分析人員或開發(fā)人員創(chuàng)建報表,儀表盤,分析模型,商業(yè)規(guī)則和 BI 流程。

      圖9 Pentaho BI組成
      這里寫圖片描述

      ??開源BI或者說決策系統(tǒng)是越來越多IT公司的選擇,因為其不遜于商業(yè)BI的功能,以及天生的開放性和靈活性,當然Pentaho的部署和使用需要投入非常多的技術成本。

      4 業(yè)務拓撲

      ??業(yè)務拓撲是一個實踐任務,簡單的說就是主動探索環(huán)境中對象間的拓撲關系??梢允蔷W(wǎng)絡環(huán)境中的不同網(wǎng)絡節(jié)點間的關系,也可以是服務器中不同進程間的關系。建立業(yè)務拓撲,本質(zhì)上是要依靠“關系”去剖析“系統(tǒng)”,是個逆向分析與解構的過程。

      ??關系具有這些特征:方向性、強度、頻度、成本、周期。

      ??可以根據(jù)采集的關系數(shù)據(jù),對網(wǎng)絡節(jié)點進行數(shù)據(jù)分析,如聚類、分類,或者關聯(lián)分析等。能夠建立一個初始的關系網(wǎng),然后再結合節(jié)點本身的信息,進一步的檢索、匹配業(yè)務信息,豐富關系網(wǎng)的屬性。

      ??第一階段,是發(fā)現(xiàn)服務器內(nèi)部進程間的關系。
      ??使用tcpdump,scapy,netstat,ps等系統(tǒng)工具采集所需的業(yè)務信息,以數(shù)據(jù)流信息為關系,通過graphviz工具對BTSO系統(tǒng)中進程進行拓撲。

      圖10 進程間的業(yè)務關系圖
      這里寫圖片描述

      ??業(yè)務拓撲的后續(xù)工作還沒有展開,如果是預研性質(zhì)的去探索可行性、做技術儲備和選型,可以繼續(xù)深入研究。但如果想結合業(yè)務場景進行開發(fā)、集成,可能還需要花更多的時間在業(yè)務需求的分析上。

      5 總結

      ??智能化是件復雜的事兒,有些事情要想明白,說清楚,這樣討論和交流業(yè)務問題時才會有思想基礎和共鳴。

      圖11 馮.諾伊曼結構
      這里寫圖片描述

      ??上圖是馮.諾依曼結構,該結構指明了人工智能探索的方向。我們要進行運維智能化,我們的方向在哪里?我結合自己這半年的體會,開個腦洞,胡亂說說。

      ??1. 智能輸入系統(tǒng):我們要開發(fā)智能探針,snmp,wmi這些都太落伍了,智能指針能語音識別,能文字解析,能圖像識別,要能聯(lián)網(wǎng),能爬各種互聯(lián)網(wǎng)信息,要能監(jiān)控移動終端,比如智能手機、手環(huán)、手表等等。

      ??2. 智能存儲系統(tǒng):想要單純的基于pgsql/cassandra去做大數(shù)據(jù)分析,去做業(yè)務智能化,確實是有點浪漫,巧婦難為無米之炊啊!要智能化,怎么說也得分布式、集群之類的吧!首先把規(guī)模搞上去,橫向擴展起來,然后再縱向分層,讀寫分離,搞個智能化的數(shù)據(jù)倉庫之類的,這樣就比較有感覺了。

      ??3. 智能運算系統(tǒng):運算這一塊是技術活,搞個算法團隊,專門琢磨怎么去優(yōu)化決策樹,如何重構卷積網(wǎng)絡模型。開源的、經(jīng)典的算法,組件,統(tǒng)統(tǒng)想辦法集成進來,就兩個字,準!快!

      ??4. 智能控制系統(tǒng):除了智能探針,再開發(fā)個智能幫手,專門負責實施。運算系統(tǒng)中出來的指令直接分發(fā)到智能幫手那里,有令必行,令行禁止。什么升級啊,更新啊,遠程配置,控制,全部能干,包省心!

      ??5. 智能展示:既然都智能了,語音識別是必須的吧,領導站在大屏幕前,說到哪里就展示到哪里。畫面就更不用說了,必須炫酷,有視覺沖擊力。等等等等吧。

      ??腦洞就開到這兒,書歸正傳,智能這件事兒,大了可以很大,小了也可以很小??照{(diào)連上網(wǎng)就變成智能家具了,電視連上網(wǎng)就變成智能電視了,本質(zhì)上他們只是增加了一種輸入方式而已。

        本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多