国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Python機器學習工具:Scikit-Learn介紹與實踐

HackerShell / 488人閱讀

摘要:簡介官方的解釋很簡單用來玩機器學習。什么是機器學習機器學習關注的是計算機程序如何隨著經驗積累自動提高性能。的生態是一門簡單易學的語言,語法要素不多,對于只關心機器學習本身非軟件開發的人員,語言層面的東西基本是不需要關心的。

Scikit-learn 簡介

官方的解釋很簡單: Machine Learning in Python, 用python來玩機器學習。

什么是機器學習

機器學習關注的是: 計算機程序如何隨著經驗積累自動提高性能。而最大的吸引力在于,不需要寫任何與問題相關的特定代碼,泛型算法就能告訴你一些關于數據的秘密。

Scikit-learn的優點

構建于現有的NumPy(基礎n維數組包),SciPy(科學計算基礎包), matplotlib(全面的2D/3D畫圖),IPython(加強的交互解釋器),Sympy(Symbolic mathematics), Pandas(數據結構和分析)之上,做了易用性的封裝。

簡單且高效的數據挖掘、數據分析的工具。

對所有人開放,且在很多場景易于復用。

BSD證書下開源。

Scikit-learn的生態 Python

python是一門簡單易學的語言,語法要素不多,對于只關心機器學習本身非軟件開發的人員,python語言層面的東西基本是不需要關心的。

Jupyter

http://nbviewer.jupyter.org/ 提供了一種便利的方式去共享自己或是別人的計算成果,以一種之前單單共享代碼不同的交互的方式,scikit-learn官網上面大量的例子也是以這種方式展示,使用者不僅看到了代碼的使用方式,還看到了代碼的結果,如果自己搭建了jupyter server的話,導入notebook還可以直接在瀏覽器中在其中上下文任意處修改,大大增加了學習效率。

Scikit-learn 的主要內容 Scikit-learn的算法地圖

按照上圖 scikit-learn提供的主要功能主要關注與數據建模,而非加載、操作、總結數據, 這些任務可能NumPy、Pandas就已經足夠了。為此scikit-learn 主要提供了以下功能:

測試數據集,sklearn.datasets模塊提供了乳腺癌、kddcup 99、iris、加州房價等諸多開源的數據集

降維(Dimensionality Reduction): 為了特征篩選、統計可視化來減少屬性的數量。

特征提取(Feature extraction): 定義文件或者圖片中的屬性。

特征篩選(Feature selection): 為了建立監督學習模型而識別出有真實關系的屬性。

按算法功能分類,分為監督學習:分類(classification)和回歸(regression),以及非監督學習:聚類(clustering)。sklearn提供了很全面的算法實現,詳細算法清單http://scikit-learn.org/stabl...。

聚類(Clustring): 使用KMeans之類的算法去給未標記的數據分類。

交叉驗證(Cross Validation): 去評估監督學習模型的性能。

參數調優(Parameter Tuning): 去調整監督學習模型的參數以獲得最大效果。

流型計算(Manifold Learning): 去統計和描繪多維度的數據

常用算法的大致介紹 分類 Classification

適用范圍: 用作訓練預測已經標記的數據集的類別. 監督學習的代表。

常用算法對比:

Do we Need Hundreds of Classifiers to Solve Real World Classification Problems?,文章測試了179種分類模型在UCI所有的121個數據上的性能,發現Random Forests 和 SVM 性能最好。

回歸 Regression

適用范圍:

回歸是用于估計兩種變量之間關系的統計過程,回歸分析可以幫助我們理解當任意一個自變量變化,另一個自變量不變時,因變量變化的典型值。最常見的是,回歸分析能在給定自變量的條件下估計出因變量的條件期望。 (舉個例子,在二維的坐標系中,根據已有的坐標點去推導x、y軸的函數關系,既一元n次方程。)

常用算法對比:

優點:直接、快速;知名度高

缺點:要求嚴格的假設;需要處理異常值

集成算法 Ensemble Algorithms


上圖是多帶帶用決策樹來做回歸任務去預測數據,但是反映了決策樹雖然易于解釋理解之外會有一些預測上的缺點,總結而言是趨向過擬合,可能或陷于局部最小值中、沒有在線學習,所以下圖引入了AdaBoost 集成算法來增加預測的可靠性,由此引出了集成算法的優點:

集成方法是由多個較弱的模型集成模型組,其中的模型可以多帶帶進行訓練,并且它們的預測能以某種方式結合起來去做出一個總體預測。

當先最先進的預測幾乎都使用了算法集成。它比使用單個模型預測出來的結果要精確的多。

但是如何找出可結合的弱模型、以及結合的方式又稱為了繁重的維護工作。

聚類 Clustering

適用范圍:

是在沒有標記的情況下去分類數據,使數據變得有意義, 如果已知分類分類的個數,Kmeans算法會更容易得出效果。

常用算法對比:

該圖中顏色是聚類的結果,而非標記, 各算法的分類結果都可以根據輸入參數調優,只是為了展示聚類的適用范圍適合有特征的數據類型,對于最下一行的幾乎均勻的數據幾乎沒有任何意義。

Scikit-learn進行計算的主要步驟

數據獲取、預處理。

可選的降維過程.因為原始數據的維度比較大, 所以需要先找出真正跟預測目標相關的屬性。

學習以及預測的過程。

反復學習的過程。增加樣本、調優參數、換算法各種方式去提供預測的準確率。

Scikit-learn 的簡單使用示例

決策樹示例:

from sklearn import datasets
from sklearn import metrics
from sklearn.tree import DecisionTreeClassifier
# 讀取 iris 數據集
dataset = datasets.load_iris()
# 采用CART模型
model = DecisionTreeClassifier()
model.fit(dataset.data, dataset.target)
print(model)
# 預測
expected = dataset.target
predicted = model.predict(dataset.data)
# 統計
print(metrics.classification_report(expected, predicted))
print(metrics.confusion_matrix(expected, predicted))

輸出:

  precision    recall  f1-score   support
     
    0       1.00      1.00      1.00        50
    1       1.00      1.00      1.00        50
    2       1.00      1.00      1.00        50
 
    avg / total       1.00      1.00      1.00       150
    
    [[50  0  0]
    [ 0 50  0]
    [ 0  0 50]]
引用

Quick Start Tutorial http://scikit-learn.org/stabl...

User Guide http://scikit-learn.org/stabl...

API Reference http://scikit-learn.org/stabl...

Example Gallery http://scikit-learn.org/stabl...

Scikit-learn: Machine Learning in Python

API design for machine learning software: experiences from the scikit-learn project


反爬蟲
文章來源:http://bigsec.com/

toyld 豈安科技搬運代碼負責人

主導各處的挖坑工作,擅長挖坑于悄然不息,負責生命不息,挖坑不止。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/38541.html

相關文章

  • 入門系列之Scikit-learnPython中構建機器學習分類器

    摘要:使用該數據集,我們將構建機器學習模型以使用腫瘤信息來預測腫瘤是惡性的還是良性的。我們將使用函數來確定機器學習分類器的準確性。您已成功構建了第一臺機器學習分類器。現在,您可以使用在中加載數據組織數據訓練預測和評估機器學習分類器。 歡迎大家前往騰訊云+社區,獲取更多騰訊海量技術實踐干貨哦~ 本文由信姜緣 發表于云+社區專欄 介紹 機器學習是計算機科學、人工智能和統計學的研究領域。機器學...

    Null 評論0 收藏0
  • 編程界的“頭牌”名媛:Python,14個數據科學的“曖昧情事”

    摘要:安裝安裝用于數據科學的的最佳方法是使用發行版。但這只是展示了構建數據科學問題的不同方式中的機器學習這是一個重要的主題,機器學習正在風靡世界,是數據科學家工作的重要組成部分。 作為編程界的頭牌名媛,Python平易近人的態度和精明婉約的靈動深得各個大佬歡心。比如:人工智能、web開發、爬蟲、系統運維、數據分析與計算等等。這幾位風流多金的行業精英隨便哪個都能逆轉未來。 本文為你精心準備了一...

    Labradors 評論0 收藏0
  • 重磅 | 完備的 AI 學習路線,最詳細的資源整理!

    摘要:是你學習從入門到專家必備的學習路線和優質學習資源。的數學基礎最主要是高等數學線性代數概率論與數理統計三門課程,這三門課程是本科必修的。其作為機器學習的入門和進階資料非常適合。書籍介紹深度學習通常又被稱為花書,深度學習領域最經典的暢銷書。 showImg(https://segmentfault.com/img/remote/1460000019011569); 【導讀】本文由知名開源平...

    荊兆峰 評論0 收藏0

發表評論

0條評論

HackerShell

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<