【資料分析】python機器學習-什麼是標籤欄位不平衡? 造成的影響以及處理辦法

閱讀時間約 4 分鐘
raw-image

在機器學習和數據分析中,「標籤」(Label)通常指的是你想要預測的目標變數,這個變數代表了你模型的輸出結果。「標籤欄位不平衡」指的是在分類問題中,目標變數(即標籤或類別)不同類別的樣本數量分佈不均勻,某些類別的樣本數遠多於其他類別的樣本數。


# 可使用目錄功能快速確認要閱覽的主題


標籤不平衡具體的例子

假設我們有一個紅酒品質預測的數據集,標籤欄位 quality 的值範圍是3到8,代表不同品質的紅酒。如果數據集中的品質標籤分佈如下:

  • quality = 5:6000樣本
  • quality = 6:5000樣本
  • quality = 7:400樣本
  • quality = 8:100樣本
  • quality = 4:50樣本
  • quality = 3:10樣本

這裡我們看到 quality = 5quality = 6 的樣本數遠遠多於其他品質等級的紅酒,這就是標籤不平衡的情況。


不平衡問題的影響

標籤不平衡會對模型的訓練、評估和最終預測性能產生多種不利影響:

1. 模型偏向多數類別

  • 在訓練過程中,機器學習模型會學習如何區分不同的類別。如果數據集中大部分樣本都來自於某一個或幾個類別(多數類別),而其他類別(少數類別)樣本很少,模型會更傾向於預測多數類別,因為這樣可以在訓練數據上獲得更高的準確率。
  • 例如,在上述紅酒品質預測中,模型可能會傾向於預測品質為5或6的紅酒,而忽略品質為7或8的紅酒。結果是模型在少數類別上的預測效果很差。


2. 錯誤分類代價高

  • 對於不平衡數據集,少數類別通常可能代表更重要的業務場景。例如,在醫療診斷中,少數類別可能是“患病”或“有風險”的標籤,錯誤分類這些樣本會帶來嚴重後果。
  • 在紅酒品質預測中,可能品質較高(如7或8)的紅酒樣本是最有價值的,錯誤預測這些樣本的品質可能導致錯誤的商業決策。


3. 評估指標的偏差

  • 在不平衡數據集中,像準確率(accuracy)這樣的評估指標可能會誤導模型的性能。例如,如果90%的樣本來自多數類別,模型只要總是預測多數類別,就能達到90%的準確率,這看似很好,但事實上模型可能在少數類別上表現非常糟糕。
  • 因此,單靠準確率並不能全面反映模型的性能,需要使用更合適的評估指標,如精確率(precision)、召回率(recall)、F1分數等。


4. 模型收斂問題

  • 在訓練過程中,由於多數類別對模型的影響更大,模型可能更快收斂到針對多數類別的解決方案,而忽略少數類別的特徵和模式,這會導致模型在整個數據集上的表現不穩定。


處理標籤不平衡方法選擇參考

  • 過採樣(Oversampling)少數類別:當你希望增加少數類別的樣本數量以平衡數據集,並且不想丟失任何多數類別的信息時,可以選擇過採樣,如 SMOTE。
  • 欠採樣(Undersampling)多數類別:當你想簡化數據集並減少模型訓練時間,且可以接受丟失部分多數類別信息時,選擇欠採樣。
  • 調整類別權重(Class Weights):當你不想改變數據集大小,但希望模型在訓練中更重視少數類別時,調整類別權重是一個不錯的選擇。
  • 生成合成樣本:當少數類別的樣本極少且多樣性不足時,使用 SMOTE 等生成合成樣本的方法來豐富少數類別。
  • 使用適合不平衡數據的評估指標:當你需要全面衡量模型性能,特別是在處理不平衡數據時,選擇精確率、召回率或 F1 分數來替代或補充準確率。
  • 調整決策閾值(Threshold Tuning):當你想通過調整模型的預測行為來改善少數類別的檢出率或減少誤報時,考慮調整決策閾值。
  • 集成方法:當數據集特徵複雜且不平衡嚴重,並且你希望利用多個基模型來提高模型穩定性和泛化能力時,選擇集成方法如隨機森林或 XGBoost。


1. 重採樣(Resampling)

1.1 過採樣(Oversampling)少數類別

  • 原理:過採樣通過增加少數類別的樣本數量來平衡數據集。可以簡單地複製少數類別的樣本,或使用合成方法來生成新的少數類別樣本。
  • 常見方法
    • 簡單複製:直接複製少數類別的現有樣本。
    • SMOTE(Synthetic Minority Over-sampling Technique):通過插值的方法生成新的少數類別樣本。
from sklearn.datasets import make_classification
from imblearn.over_sampling import SMOTE
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier
from sklearn.metrics import classification_report

# 創建一個不平衡的數據集
X, y = make_classification(n_samples=1000, n_features=20, n_informative=2, n_redundant=10,
n_clusters_per_class=1, weights=[0.9, 0.1], flip_y=0, random_state=42)

# 分割數據集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# 使用 SMOTE 進行過採樣
sm = SMOTE(random_state=42)
X_resampled, y_resampled = sm.fit_resample(X_train, y_train)

# 訓練隨機森林模型
model = RandomForestClassifier(random_state=42)
model.fit(X_resampled, y_resampled)

# 在測試集上進行預測
y_pred = model.predict(X_test)

# 顯示分類報告
print(classification_report(y_test, y_pred))


使用 SMOTE(Synthetic Minority Over-sampling Technique)

  • 過採樣優點
    • 增加少數類別的樣本數量,使數據集更加平衡。
    • 生成的新樣本具有多樣性,有助於減少過度擬合的風險。
    • 在不刪除任何多數類別樣本的情況下提高少數類別的代表性。
  • 過採樣缺點
    • 可能生成一些不代表真實分佈的噪聲樣本,尤其是在少數類別分佈不規則時。
    • 在某些情況下,生成的合成樣本可能並沒有提供有用的信息,反而增加了訓練時間和模型的複雜性。


1.2 欠採樣(Undersampling)多數類別

  • 原理:欠採樣通過減少多數類別的樣本數量來平衡數據集。這樣可以強迫模型在有限的多數類別樣本上學習,從而更關注少數類別。
  • 常見方法
    • 隨機欠採樣:隨機刪除多數類別中的樣本。
    • NearMiss:選擇那些與少數類別樣本距離最近的多數類別樣本進行保留。
from imblearn.under_sampling import RandomUnderSampler

# 使用 RandomUnderSampler 進行欠採樣
rus = RandomUnderSampler(random_state=42)
X_resampled, y_resampled = rus.fit_resample(X_train, y_train)

# 訓練隨機森林模型
model = RandomForestClassifier(random_state=42)
model.fit(X_resampled, y_resampled)

# 在測試集上進行預測
y_pred = model.predict(X_test)

# 顯示分類報告
print(classification_report(y_test, y_pred))


使用 RandomUnderSampler

  • 欠採樣優點
    • 簡化數據集,減少訓練時間和內存需求。
    • 通過強制模型在有限的多數類別樣本上學習,幫助模型更關注少數類別。
  • 欠採樣缺點
    • 可能丟失多數類別的重要信息,導致模型性能下降。
    • 在極端欠採樣的情況下,多數類別的樣本數量過少,可能導致模型過度擬合。


2. 調整類別權重(Class Weights)

  • 原理:通過在模型訓練過程中賦予少數類別更高的權重,來告訴模型少數類別的重要性。這樣,模型在計算損失函數時,少數類別的錯誤會有更大的懲罰。
  • 應用:許多機器學習算法,如支持向量機(SVM)、邏輯回歸(Logistic Regression)、隨機森林(Random Forest)等,都允許通過 class_weight 參數來自動調整類別權重。
# 訓練帶有類別權重的隨機森林模型
model = RandomForestClassifier(class_weight='balanced', random_state=42)
model.fit(X_train, y_train)

# 在測試集上進行預測
y_pred = model.predict(X_test)

# 顯示分類報告
print(classification_report(y_test, y_pred))


在模型中使用 class_weight='balanced'

  • 調整類別權重優點
    • 不需要修改數據集,避免了過採樣或欠採樣可能帶來的數據變形或信息丟失。
    • 容易實現,並且對模型訓練時間的影響較小。
    • 能夠在不改變數據集大小的情況下,提高模型對少數類別的敏感度。
  • 調整類別權重缺點
    • 在某些情況下,權重設置過高可能導致模型過度擬合少數類別。
    • 權重調整不足可能不足以完全解決嚴重的不平衡問題,尤其是在少數類別極為稀少的情況下。


3. 生成合成樣本

  • SMOTE 和其他生成方法(如 ADASYN)可以通過生成合成樣本來平衡數據集。這些方法不僅僅是簡單地複製樣本,而是基於現有樣本之間的距離來生成新樣本。
from sklearn.datasets import make_classification
from imblearn.over_sampling import SMOTE
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier
from sklearn.metrics import classification_report

# 創建一個不平衡的數據集
X, y = make_classification(n_samples=1000, n_features=20, n_informative=2, n_redundant=10,
n_clusters_per_class=1, weights=[0.9, 0.1], flip_y=0, random_state=42)

# 分割數據集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# 使用 SMOTE 進行過採樣
sm = SMOTE(random_state=42)
X_resampled, y_resampled = sm.fit_resample(X_train, y_train)

# 訓練隨機森林模型
model = RandomForestClassifier(random_state=42)
model.fit(X_resampled, y_resampled)

# 在測試集上進行預測
y_pred = model.predict(X_test)

# 顯示分類報告
print(classification_report(y_test, y_pred))


使用 SMOTE 或 ADASYN

  • 生成合成樣本優點
    • 增加少數類別的樣本數量,並且通過插值生成多樣性較高的合成樣本。
    • 適用於少數類別樣本非常稀少的情況,有助於模型更好地學習少數類別的特徵。
  • 生成合成樣本缺點
    • 可能生成不真實或不代表實際情況的樣本,特別是在樣本稀疏或分佈不規則的情況下。
    • 可能增加噪聲,導致模型在測試數據上的泛化能力下降。


4. 使用適合不平衡數據的評估指標

  • 問題:在不平衡數據集上,像準確率(accuracy)這樣的指標可能會誤導模型的性能。
  • 解決方案:使用其他評估指標,如精確率(precision)、召回率(recall)、F1分數、ROC-AUC 曲線等,來全面評估模型的表現。
    • 精確率:關注在所有被模型預測為正類的樣本中,實際為正類的比例。
    • 召回率:關注在所有實際為正類的樣本中,被模型正確識別的比例。
    • F1分數:精確率和召回率的調和平均數,當精確率和召回率之間有較大差異時,F1分數是更好的衡量指標。


使用範例:

【資料分析】python機器學習-使用不同的方法來評估模型準確率


  • 使用適合的評估指標優點
    • 提供了更全面的模型性能評估,尤其在處理不平衡數據時,比單一的準確率指標更有意義。
    • 有助於識別模型在少數類別上的表現,從而進一步優化模型。
  • 使用適合的評估指標缺點
    • 需要在不同指標之間進行權衡(如精確率與召回率之間的平衡),不適合所有情況。
    • 在應用中可能需要多次實驗來找到最合適的指標,這需要額外的時間和計算資源。


5. 調整決策閾值(Threshold Tuning)

  • 原理:大多數分類器默認將預測概率大於 0.5 的樣本分類為正類,但這在不平衡數據集上可能並不合適。通過調整這個閾值,可以提高少數類別的檢出率。
  • 應用:在評估過程中,你可以嘗試不同的閾值,找到最適合不平衡數據集的決策閾值。
from sklearn.metrics import precision_recall_curve

# 獲取預測概率
y_scores = model.predict_proba(X_test)[:, 1]

# 計算精確率、召回率及其對應的閾值
precisions, recalls, thresholds = precision_recall_curve(y_test, y_scores)

# 找到最佳的閾值
f1_scores = 2 * (precisions * recalls) / (precisions + recalls)
optimal_threshold = thresholds[np.argmax(f1_scores)]

print(f"Optimal Threshold: {optimal_threshold}")

# 根據最佳閾值進行預測
y_pred_new = (y_scores >= optimal_threshold).astype(int)

# 顯示新的分類報告
print(classification_report(y_test, y_pred_new))


通過調整閾值來改進模型對少數類別的預測

  • 調整決策閾值優點
    • 能夠靈活調整模型的預測行為,找到最佳的精確率和召回率平衡點。
    • 只需要調整模型的預測輸出,不需要重新訓練模型,因此操作簡單且高效。
  • 調整決策閾值缺點
    • 需要仔細選擇和測試最佳閾值,這可能需要大量實驗來確定最佳值。
    • 調整閾值可能會在提高一個指標的同時犧牲另一個指標(如提高召回率可能會降低精確率)。


6. 使用集成方法

  • 不平衡數據集的集成學習:通過使用集成方法,如隨機森林、提升方法(如 XGBoost),可以提高模型在不平衡數據集上的性能。這些方法通過集成多個基模型來提高少數類別的檢出率。
from xgboost import XGBClassifier

# 訓練 XGBoost 模型並設置類別權重
model = XGBClassifier(scale_pos_weight=len(y_train[y_train == 0]) / len(y_train[y_train == 1]), random_state=42)
model.fit(X_train, y_train)

# 在測試集上進行預測
y_pred = model.predict(X_test)

# 顯示分類報告
print(classification_report(y_test, y_pred))


使用隨機森林或 XGBoost 等集成學習方法

  • 用集成方法優點
    • 集成方法能夠有效地提高模型在不平衡數據集上的性能,因為它們通過多個基模型的投票或加權來做出預測,減少單一模型的偏差。
    • 特別適合於處理複雜和不平衡的數據集,並能夠捕捉更多樣的數據特徵。
  • 用集成方法缺點
    • 集成方法通常計算成本較高,訓練時間較長。
    • 模型的解釋性較差,難以理解具體決策過程。
3會員
19內容數
留言0
查看全部
發表第一個留言支持創作者!
JayRay 的沙龍 的其他內容
在機器學習中,超參數的設定對模型的性能至關重要。本文介紹了主要的超參數調整方法,包括網格搜索、隨機搜索、貝葉斯優化、交叉驗證以及自適應搜索算法。每種方法的優缺點詳細說明,幫助讀者選擇最合適的調整策略。透過這些技術,可以有效提高模型的泛化能力與性能,並實現更好的機器學習效果。
過擬合是機器學習中的一個常見問題,指模型在訓練數據上表現優異但在未見過的測試數據上效果不佳。本文介紹了多種避免過擬合的方法,包括增加數據量、使用正則化、交叉驗證、簡化模型結構以及學習曲線分析等。透過這些策略,能夠提升模型的泛化能力和在未來預測中的可靠性,幫助讀者更好地理解和解決過擬合問題。
在評估預測模型的準確率時,選用合適的評估方法至關重要。本文探討了不同的回歸和分類指標,如均方誤差(MSE)、平均絕對誤差(MAE)及準確率等。透過這些評估指標,更全面地理解模型性能,避免因不當評估而錯失優良模型。本文章還列舉了多種常見誤區和情境,以幫助讀者選擇最合適的評估方法,從而提升模型性能。 
監督式學習是機器學習的一種方法,通過利用標註數據進行訓練,模型學習輸入特徵與結果標籤間的關係。此方法分為分類與回歸兩類,並涵蓋了多種算法如線性回歸、邏輯回歸和決策樹等。每種算法各有優缺點,適用於不同的應用場景。學習這些內容有助於理解如何選擇合適的模型以解決實際問題。
Seaborn 是基於 Matplotlib 的 Python 資料視覺化庫,旨在簡化統計圖形的繪製過程。本文介紹了 Seaborn 各類圖形的使用情況,包括散佈圖、折線圖、柱狀圖、直方圖、熱力圖和箱線圖,幫助用戶快速選擇合適的視覺化工具以進行有效的數據分析。
特徵工程是機器學習中的核心技術,通過將原始數據轉換為有意義的特徵,以提升模型的準確性和穩定性。常見的特徵工程方法包括異常值檢測、特徵轉換、特徵縮放、特徵表示、特徵選擇和特徵提取。本文將深入探討這些方法的適用情況及具體實施流程,以幫助讀者有效利用特徵工程來優化機器學習模型表現。
在機器學習中,超參數的設定對模型的性能至關重要。本文介紹了主要的超參數調整方法,包括網格搜索、隨機搜索、貝葉斯優化、交叉驗證以及自適應搜索算法。每種方法的優缺點詳細說明,幫助讀者選擇最合適的調整策略。透過這些技術,可以有效提高模型的泛化能力與性能,並實現更好的機器學習效果。
過擬合是機器學習中的一個常見問題,指模型在訓練數據上表現優異但在未見過的測試數據上效果不佳。本文介紹了多種避免過擬合的方法,包括增加數據量、使用正則化、交叉驗證、簡化模型結構以及學習曲線分析等。透過這些策略,能夠提升模型的泛化能力和在未來預測中的可靠性,幫助讀者更好地理解和解決過擬合問題。
在評估預測模型的準確率時,選用合適的評估方法至關重要。本文探討了不同的回歸和分類指標,如均方誤差(MSE)、平均絕對誤差(MAE)及準確率等。透過這些評估指標,更全面地理解模型性能,避免因不當評估而錯失優良模型。本文章還列舉了多種常見誤區和情境,以幫助讀者選擇最合適的評估方法,從而提升模型性能。 
監督式學習是機器學習的一種方法,通過利用標註數據進行訓練,模型學習輸入特徵與結果標籤間的關係。此方法分為分類與回歸兩類,並涵蓋了多種算法如線性回歸、邏輯回歸和決策樹等。每種算法各有優缺點,適用於不同的應用場景。學習這些內容有助於理解如何選擇合適的模型以解決實際問題。
Seaborn 是基於 Matplotlib 的 Python 資料視覺化庫,旨在簡化統計圖形的繪製過程。本文介紹了 Seaborn 各類圖形的使用情況,包括散佈圖、折線圖、柱狀圖、直方圖、熱力圖和箱線圖,幫助用戶快速選擇合適的視覺化工具以進行有效的數據分析。
特徵工程是機器學習中的核心技術,通過將原始數據轉換為有意義的特徵,以提升模型的準確性和穩定性。常見的特徵工程方法包括異常值檢測、特徵轉換、特徵縮放、特徵表示、特徵選擇和特徵提取。本文將深入探討這些方法的適用情況及具體實施流程,以幫助讀者有效利用特徵工程來優化機器學習模型表現。
你可能也想看
Google News 追蹤
Thumbnail
這個秋,Chill 嗨嗨!穿搭美美去賞楓,裝備款款去露營⋯⋯你的秋天怎麼過?秋日 To Do List 等你分享! 秋季全站徵文,我們準備了五個創作主題,參賽還有機會獲得「火烤兩用鍋」,一起來看看如何參加吧~
Thumbnail
美國總統大選只剩下三天, 我們觀察一整週民調與金融市場的變化(包含賭局), 到本週五下午3:00前為止, 誰是美國總統幾乎大概可以猜到60-70%的機率, 本篇文章就是以大選結局為主軸來討論近期甚至到未來四年美股可能的改變
Thumbnail
Faker昨天真的太扯了,中國主播王多多點評的話更是精妙,分享給各位 王多多的點評 「Faker是我們的處境,他是LPL永遠繞不開的一個人和話題,所以我們特別渴望在決賽跟他相遇,去直面我們的處境。 我們曾經稱他為最高的山,最長的河,以為山海就是盡頭,可是Faker用他28歲的年齡...
Thumbnail
特徵工程是機器學習中的核心技術,通過將原始數據轉換為有意義的特徵,以提升模型的準確性和穩定性。常見的特徵工程方法包括異常值檢測、特徵轉換、特徵縮放、特徵表示、特徵選擇和特徵提取。本文將深入探討這些方法的適用情況及具體實施流程,以幫助讀者有效利用特徵工程來優化機器學習模型表現。
Thumbnail
在資料分析過程中,透過衡量變數之間的線性或非線性關係,能有效探索數據集,篩選出重要特徵,並進行預測建模。本文介紹瞭如何理解數據、使用相關矩陣找出變數關聯性,以及利用互資訊評估變數之間的依賴程度,幫助資料科學家在建模過程中選擇適當的變數,提升模型效果。
Thumbnail
Python資料視覺化在數據分析中扮演關鍵角色,透過視覺化捕捉數據模式、趨勢和異常,透過Matplotlib等工具創建專業圖表變相對簡單和高效。
Thumbnail
本文介紹了在進行資料分析時,將類別欄位轉換為數值欄位的方法,包括Label Encoding、One-Hot Encoding、Binary Encoding、Target Encoding和Frequency Encoding。每種方法的應用範例、優缺點和適用場景都有詳細說明。
Thumbnail
資料前處理(Data Preprocessing)中的重要角色-缺失值處理。從檢查、刪除到填充缺失值,以及插值法和機器學習算法的應用方法。Pandas 缺失值處理基礎方法、進階填充缺失值、鐵達尼號存活預測資料集的示例和機器學習算法填補缺失值方法的介紹與使用。
Thumbnail
在當今快速變化的數位時代,企業面臨著前所未有的數據處理需求。為了應對這些挑戰,企業紛紛建立自己的大型語言模型(LLM),利用大量數據進行訓練,讓模型能夠理解並生成自然語言,從而實現人機協作,優化業務流程並提升客戶體驗。
Thumbnail
數據分析與解讀 隨著數據的爆炸式增長,能夠分析、解讀和應用數據的能力變得至關重要。這包括熟悉數據分析工具和技術,如統計學、數據挖掘、機器學習等。然而,僅靠短時間的數據分析並不足以提供深入見解。 要熟悉數據分析工具和技術,如統計學、數據挖掘和機器學習,可以從以下幾個方面入手: 基礎知識的學習
Thumbnail
前言 讀了許多理論,是時候實際動手做做看了,以下是我的模型訓練初體驗,有點糟就是了XD。 正文 def conv(filters, kernel_size, strides=1): return Conv2D(filters, kernel_size,
Thumbnail
本文要探討AI的任務與實戰場景。AI技術已深入生活各層面,從違約預測到都市交通管理。AI任務主要有三類:數值型資料處理、自然語言處理(NLP)和電腦影像辨識。時間序列資料和強化學習方法(如AlphaGo)也引起廣泛關注。AI演算法和方法因應不同學派和技術發展而多樣化,了解這些基礎有助選擇適合研究方向
機器學習領域的專業人士可以從這篇文章中獲得寶貴的見解。 追求更大的數據集和更強大的模型一直是提升性能的核心策略。 以下是我在機器學習領域工作7年後的三個重大體悟。 ▋體悟1 - 大數據的重要性 自2009年ImageNet問世以來, 數據集的規模和質量對機器學習的影響越
Thumbnail
這個秋,Chill 嗨嗨!穿搭美美去賞楓,裝備款款去露營⋯⋯你的秋天怎麼過?秋日 To Do List 等你分享! 秋季全站徵文,我們準備了五個創作主題,參賽還有機會獲得「火烤兩用鍋」,一起來看看如何參加吧~
Thumbnail
美國總統大選只剩下三天, 我們觀察一整週民調與金融市場的變化(包含賭局), 到本週五下午3:00前為止, 誰是美國總統幾乎大概可以猜到60-70%的機率, 本篇文章就是以大選結局為主軸來討論近期甚至到未來四年美股可能的改變
Thumbnail
Faker昨天真的太扯了,中國主播王多多點評的話更是精妙,分享給各位 王多多的點評 「Faker是我們的處境,他是LPL永遠繞不開的一個人和話題,所以我們特別渴望在決賽跟他相遇,去直面我們的處境。 我們曾經稱他為最高的山,最長的河,以為山海就是盡頭,可是Faker用他28歲的年齡...
Thumbnail
特徵工程是機器學習中的核心技術,通過將原始數據轉換為有意義的特徵,以提升模型的準確性和穩定性。常見的特徵工程方法包括異常值檢測、特徵轉換、特徵縮放、特徵表示、特徵選擇和特徵提取。本文將深入探討這些方法的適用情況及具體實施流程,以幫助讀者有效利用特徵工程來優化機器學習模型表現。
Thumbnail
在資料分析過程中,透過衡量變數之間的線性或非線性關係,能有效探索數據集,篩選出重要特徵,並進行預測建模。本文介紹瞭如何理解數據、使用相關矩陣找出變數關聯性,以及利用互資訊評估變數之間的依賴程度,幫助資料科學家在建模過程中選擇適當的變數,提升模型效果。
Thumbnail
Python資料視覺化在數據分析中扮演關鍵角色,透過視覺化捕捉數據模式、趨勢和異常,透過Matplotlib等工具創建專業圖表變相對簡單和高效。
Thumbnail
本文介紹了在進行資料分析時,將類別欄位轉換為數值欄位的方法,包括Label Encoding、One-Hot Encoding、Binary Encoding、Target Encoding和Frequency Encoding。每種方法的應用範例、優缺點和適用場景都有詳細說明。
Thumbnail
資料前處理(Data Preprocessing)中的重要角色-缺失值處理。從檢查、刪除到填充缺失值,以及插值法和機器學習算法的應用方法。Pandas 缺失值處理基礎方法、進階填充缺失值、鐵達尼號存活預測資料集的示例和機器學習算法填補缺失值方法的介紹與使用。
Thumbnail
在當今快速變化的數位時代,企業面臨著前所未有的數據處理需求。為了應對這些挑戰,企業紛紛建立自己的大型語言模型(LLM),利用大量數據進行訓練,讓模型能夠理解並生成自然語言,從而實現人機協作,優化業務流程並提升客戶體驗。
Thumbnail
數據分析與解讀 隨著數據的爆炸式增長,能夠分析、解讀和應用數據的能力變得至關重要。這包括熟悉數據分析工具和技術,如統計學、數據挖掘、機器學習等。然而,僅靠短時間的數據分析並不足以提供深入見解。 要熟悉數據分析工具和技術,如統計學、數據挖掘和機器學習,可以從以下幾個方面入手: 基礎知識的學習
Thumbnail
前言 讀了許多理論,是時候實際動手做做看了,以下是我的模型訓練初體驗,有點糟就是了XD。 正文 def conv(filters, kernel_size, strides=1): return Conv2D(filters, kernel_size,
Thumbnail
本文要探討AI的任務與實戰場景。AI技術已深入生活各層面,從違約預測到都市交通管理。AI任務主要有三類:數值型資料處理、自然語言處理(NLP)和電腦影像辨識。時間序列資料和強化學習方法(如AlphaGo)也引起廣泛關注。AI演算法和方法因應不同學派和技術發展而多樣化,了解這些基礎有助選擇適合研究方向
機器學習領域的專業人士可以從這篇文章中獲得寶貴的見解。 追求更大的數據集和更強大的模型一直是提升性能的核心策略。 以下是我在機器學習領域工作7年後的三個重大體悟。 ▋體悟1 - 大數據的重要性 自2009年ImageNet問世以來, 數據集的規模和質量對機器學習的影響越