每個數據科學家都應該知道的 9 大數據科學算法
已發表: 2020-02-13算法是一組規則或指令,計算機程序遵循這些規則或指令來執行計算或執行其他解決問題的功能。 由於數據科學就是為數據集提取有意義的信息,因此有無數的算法可以解決這個問題。
數據科學算法可以幫助分類、預測、分析、檢測默認值等。這些算法還構成了機器學習庫(如 scikit-learn)的基礎。 因此,它有助於對錶面下發生的事情有一個堅實的了解。
學習世界頂尖大學的數據科學課程。 獲得行政 PG 課程、高級證書課程或碩士課程,以加快您的職業生涯。
閱讀:數據科學的機器學習算法
目錄
常用的數據科學算法
一、分類
用於離散目標變量,輸出為類別形式。 聚類、關聯和決策樹是處理輸入數據以預測結果的方式。 例如,可以使用分類模型將新患者標記為“生病”或“健康”。
2.回歸
回歸用於預測目標變量以及衡量目標變量之間的關係,這些關係本質上是連續的。 這是一種在單個特徵或一組特徵(例如 x)和目標變量 y 的圖上繪製“最佳擬合線”的簡單方法。
回歸可用於根據不同大氣參數之間的先前相關性來估計降雨量。 另一個例子是根據面積、地點、年齡等特徵來預測房子的價格。
現在讓我們了解數據科學算法最基本的構建塊之一——線性回歸。
3. 線性回歸
具有 N 個特徵的數據集的線性方程可以給出為: y = b 0 + b 1 .x 1 + b 2 .x 2 + b 3 .x 3 + .....b n .x n ,其中 b 0是一些常數。
對於單變量數據 (y = b 0 + b 1 .x),目標是將損失或誤差最小化到返回變量的可能最小值。 這是成本函數的主要目的。 如果假設 b 0為零並為 b 1輸入不同的值,您會發現線性回歸成本函數的形狀是凸的。
數學工具有助於優化 b 0和 b 1這兩個參數,並最小化成本函數。 其中之一討論如下。
4.最小二乘法
在上述情況下,b 1是 x 的權重或直線的斜率,b 0是截距。 此外,y 的所有預測值都在這條線上。 最小二乘法旨在最小化每個點之間的距離,例如 (x i , y i ),即預測值。
要計算 b 0的值,請找出 x i的所有值的平均值並將它們乘以 b 1 。 然後,從所有 y i的平均值中減去乘積。 此外,您可以在 Python 中針對 b 1的值運行代碼。 這些值將準備好插入成本函數,並且由於損失和錯誤,返回值將最小化。 例如,對於 b 0 = -34.671 和 b 1 = 9.102,成本函數將返回 21.801。
5.梯度下降
當有多個特徵時,例如在多元回歸的情況下,複雜的計算由梯度下降等方法處理。 它是一種迭代優化算法,用於確定函數的局部最小值。 該過程首先為 b 0和 b 1取一個初始值,並一直持續到成本函數的斜率為零。

假設你必須去一個位於山的最低點的湖。 如果您的能見度為零並且站在山頂,您將從土地趨於下降的地方開始。 邁出第一步,沿著下降的路徑,很可能你會到達湖邊。
雖然成本函數是一種允許我們評估參數的工具,但梯度下降算法可以幫助更新和訓練模型參數。 現在,讓我們概述一些其他的數據科學算法。
6. 邏輯回歸
雖然線性回歸的預測是連續值,但邏輯回歸給出離散或二元預測。 換句話說,輸出中的結果在應用轉換函數後屬於兩個類別。 例如,邏輯回歸可用於預測學生是否通過或不及格,或者是否會下雨。 閱讀有關邏輯回歸的更多信息。
7. K-means 聚類
它是一種迭代算法,將相似的數據點分配到集群中。 為此,它計算 k 個聚類的質心,並根據與質心的最小距離對數據進行分組。 詳細了解數據挖掘中的聚類分析。
8. K-最近鄰(KNN)
當新的數據實例需要結果時,KNN 算法會遍歷整個數據集以找到 k-最近的實例。 用戶指定要使用的 k 值。
9. 主成分分析(PCA)
PCA 算法通過將數據中的最大方差捕獲到一個新的“主成分”系統中來減少變量的數量。 這使得探索和可視化數據變得容易。
包起來
如果您剛剛開始涉足該領域,那麼上述數據科學算法的知識可能會非常有用。 在執行日常數據科學功能時,了解細節也可以派上用場。
如果您想了解數據科學,請查看 IIIT-B 和 upGrad 的數據科學執行 PG 計劃,該計劃是為在職專業人士創建的,提供 10 多個案例研究和項目、實用的實踐研討會、與行業專家的指導、1與行業導師一對一,400 多個小時的學習和頂級公司的工作協助。
在為 ML 選擇數據科學算法之前,我們應該考慮哪些要點?
檢查線性度; 最簡單的方法是擬合一條直線或執行邏輯回歸或 SVM 並尋找殘差。 較大的誤差表明數據不是線性的,需要復雜的技術來擬合它。
樸素貝葉斯、線性和邏輯回歸算法易於構建和執行。 需要參數調整的 SVM、具有快速收斂時間的神經網絡和隨機森林都需要大量時間來訓練數據。 因此,請根據您喜歡的速度做出選擇。
為了生成可靠的預測,通常建議收集大量數據。 然而,數據可用性經常是一個問題。 如果訓練數據受到限製或數據集包含較少的觀察和較多的特徵,例如遺傳學或文本數據,請使用具有高偏差/低方差的算法,例如線性回歸或線性 SVM。
什麼是靈活和限制性算法?
由於它們創建了有限種類的映射函數形式,因此據說某些算法具有限制性。 例如,線性回歸是一種有限的技術,因為它只能創建像線這樣的線性函數。
有些算法據說很靈活,因為它們可以創建更大範圍的映射函數形式。 例如,k=1 的 KNN 非常通用,因為它在生成映射輸出函數時會考慮每個輸入數據點。
如果一個函數能夠預測給定觀測值的接近真實響應值的響應值,那麼這就是它的準確度。 具有高度可解釋性的技術(限制性模型,如線性回歸)意味著可以理解每個單獨的預測變量,而靈活的模型以低可解釋性為代價提供更高的準確性。
什麼是樸素貝葉斯算法?
它是一種基於貝葉斯定理和預測變量獨立假設的分類算法。 簡單來說,樸素貝葉斯分類器指出,一個類中一個特徵的存在與任何其他特徵的存在無關。 樸素貝葉斯模型易於構建,對大型數據集特別有用。 由於其簡單性,樸素貝葉斯以擊敗最強大的分類算法而聞名。