機器學習開篇:算法分類與開發流程

種一棵樹最好的時間是十年前,其次是現在。

一、機器學習算法分類

機器學習(ML,Meachine Learning)是人工智能的核心領域,讓計算機從數據中學習規律并做出預測,本文簡單介紹機器學習的算法分類和開發流程。

常見的機器學習算法從學習方式上可以分為以下幾類:監督學習無監督學習半監督學習等其它類型,其中監督學習是指使用帶有標簽(已標記)的數據集進行訓練,模型通過學習輸入特征與標簽之間的映射關系進行預測或分類,監督學習又可以根據輸出是否連續分為分類和回歸問題,連續的稱為回歸,離散的稱為分類;而無監督學習則是指處理無標簽(未標記)的數據集,模型通過算法自行發現數據中的隱藏結構或模式(如聚類、降維)

機器學習
算法分類
子類定義常見算法應用場景示例
監督學習分類使用帶有標簽的數據集進行訓練
模型輸出離散數據
k-近鄰算法
貝葉斯分類
決策樹
邏輯森林
邏輯回歸
SVM
神經網絡
垃圾郵件檢測
圖像識別
回歸使用帶有標簽的數據集進行訓練
模型輸出連續數據
線性回歸
嶺回歸
隨機森林
房價預測
銷量預測
無監督學習聚類聚類算法將數據點分組
使得同一組內的數據點相似度高
而不同組的數據點相似度低
K-means算法
層次聚類
客戶分群
文檔主題分類
降維減少數據集中的特征數量
以簡化模型并提高計算效率
主成分分析(PCA)分析藥物主要成分
其它半監督學習結合少量標注數據和大量未標注數據進行學習標簽傳播
半監督SVM
醫學圖像分析
自監督學習通過數據自身的結構生成標簽進行訓練Masked Language Model(BERT)
對比學習
自然語言處理
圖像預訓練
強化學習通過與環境的交互學習最優策略
以最大化長期獎勵
Q-Learning
深度Q網絡(DQN)
策略梯度
游戲AI
機器人控制
自動駕駛
深度學習多層神經網絡自動提取特征
可應用于監督/無監督/強化學習
CNN
RNN
圖像識別
文本生成

二、機器學習開發流程

以監督學習為例,但核心步驟適用于所有機器學習任務

2.1 步驟1-問題定義

核心目標:將模糊的業務需求轉化為可量化的機器學習任務。

關鍵操作說明案例
確定任務類型分類/回歸/聚類?用戶流失預測 → 二分類任務
定義成功指標選擇與業務目標一致的評估指標欺詐檢測 → 高召回率(寧錯殺不放過)
推薦系統 → 精確率
約束條件分析時延要求、可解釋性需求、計算資源限制醫療診斷 → 需要可解釋性(選擇決策樹而非神經網絡)
可行性評估數據是否足夠?特征是否可獲取?使用數據矩陣草圖驗證特征覆蓋率

常見陷阱:

  • 將回歸問題錯誤定義為分類問題(如將銷售額預測轉為"高/中/低"三分類)
  • 忽略業務成本(如信用卡欺詐中誤判好客戶的代價)

2.2 步驟2-數據收集

數據類型獲取方式預處理難點
結構化數據SQL查詢、數據倉庫導出處理缺失值
文本數據API抓取、日志解析分詞、去停用詞
圖像數據爬蟲、公開數據集尺寸歸一化
時序數據IoT傳感器、用戶行為日志處理時間漂移

2.3 步驟3-數據預處理

核心目標:將原始數據轉化為信息密度更高的特征。

2.3.1 數據清洗

缺失值處理策略:

方法適用場景
刪除樣本缺失率<5%且隨機缺失
中位數/眾數填充數值型/分類型特征
模型預測填充高價值數據且缺失有模式
增加缺失標志位缺失本身包含信息

2.3.2 特征工程

特征變換技巧:

  • 數值特征:對數變換(右偏分布)、Box-Cox變換
  • 時間特征:提取"小時/星期幾/是否節假日"
  • 文本特征:TF-IDF、Word2Vec嵌入
  • 組合特征:用戶年齡 × 商品價格(交互效應)

降維策略對比:

方法保留信息可解釋性線性假設適用場景
PCA全局結構需要圖像預處理
t-SNE局部結構不需要高維數據可視化
LDA類別區分需要分類任務特征壓縮
自編碼器非線性不需要復雜數據表示學習

2.3.3 數據分割

把處理好的數據按一定比例劃分訓練集、測試集、驗證集。

2.4 步驟4-模型選擇與訓練

簡單算法選型決策樹:

在這里插入圖片描述

scikit-learn的算法選擇決策:

在這里插入圖片描述

計算優化技巧:

  • 使用GPU加速(CUDA)
  • 分布式訓練(如Spark MLlib)
  • 增量學習(partial_fit)處理超大數據

2.5 步驟5-模型評估

評估指標全景圖:

分類任務:┌─宏觀指標──準確率(Accuracy)├─類別平衡─┤│          └─F1-score(F1)│├─概率評估─AUC-ROC曲線│└─業務對齊─精確率(Precision)/召回率(Recall)權衡回歸任務:├─絕對誤差─MAE(平均絕對誤差)├─放大異常─MSE(均方誤差)└─比例解釋─R2(決定系數)

典型問題診斷:

  • 準確率高但AUC低 → 模型無區分力
  • 驗證集表現遠差于訓練集 → 過擬合
  • 某些類別召回率極低 → 樣本不平衡

2.6 步驟6-模型調優

調優方法對比:

方法搜索效率并行性適用空間大小代碼實現
網格搜索小(<10維)GridSearchCV
隨機搜索中(<100維)RandomizedSearchCV
貝葉斯優化BayesianOptimization
遺傳算法極大TPOT

調優黃金法則:

  • 先粗調(大范圍隨機搜索)
  • 再精調(小范圍貝葉斯優化)
  • 最終確認需在測試集上只評估一次。

2.7 步驟7-模型部署與監控

簡單的部署架構示例:

用戶請求 → API網關 → 預測微服務 → 模型緩存 ↓監控系統(Prometheus)↓日志分析 → 模型性能儀表盤

監控關鍵指標:

  • 預測分布變化(PSI群體穩定性指數)
  • 特征漂移檢測(KL散度)
  • 業務指標關聯性(如推薦系統CTR變化)

可參考的迭代觸發機制:

監控警報規則:- PSI > 0.25 → 嚴重漂移- 精度下降 > 15% → 需要重新訓練- 新數據量 > 10倍原始數據 → 自動觸發增量訓練

模型版本管理參考:

  • 使用MLflow/DVC跟蹤實驗
  • A/B測試流量分配(10%新模型 vs 90%舊模型)

動態流程調整:

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/86845.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/86845.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/86845.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

使用pyflink編寫demo并將任務提交到yarn集群

目錄 背景 一、pyflink安裝 二、編寫demo程序 三、提交yarn前準備 四、提交任務 五、踩坑記錄 1、提交任務時客戶端出現語法錯誤 2、提交任務時客戶端出現lzma包找不到 3、提交任務時客戶端出現“org.apache.flink.streaming.api.utils.PythonTypeUtils.getCollectionIn…

Vue 3 最基礎核心知識詳解

Vue3作為現代前端主流框架&#xff0c;是前后端開發者都應當掌握的核心技能。本篇文章將帶你了解vue3的基礎核心知識&#xff0c;適合學習與復習 一、Vue 3 應用創建 1.1 創建Vue應用的基本步驟 // main.js import { createApp } from vue // 1. 導入createApp函數 import …

Bootstrap 5學習教程,從入門到精通,Bootstrap 5 Flex 布局語法知識點及案例(27)

Bootstrap 5 Flex 布局語法知識點及案例 Bootstrap 5 提供了強大的 Flexbox 工具集&#xff0c;讓布局變得更加簡單靈活。以下是 Bootstrap 5 Flex 布局的完整知識點和詳細案例代碼。 一、Flex 布局基礎語法 1. 啟用 Flex 布局 <div class"d-flex">我是一個…

HarmonyOS 5智能單詞應用開發:記憶卡(附:源碼

一、應用概述與核心價值 在語言學習過程中&#xff0c;單詞記憶是基礎也是難點。本文介紹的智能單詞記憶卡應用通過創新的交互設計和科學的學習模式&#xff0c;幫助用戶高效記憶單詞。應用采用ArkUI框架開發&#xff0c;主要特點包括&#xff1a; 雙模式學習系統&#xff1a…

LeetCode--38.外觀數列

前言&#xff1a;之前我不是說&#xff0c;我后續可能會講一下遞歸嗎&#xff0c;現在它來了&#xff0c;這道題會用到回溯的方法&#xff0c;并且比較純粹哦 解題思路&#xff1a; 1.獲取信息&#xff1a;&#xff08;下面這些信息差不多是力扣上面的題目信息了&#xff0c;所…

服務器的安裝與安全設置

1&#xff1a;安裝操作系統 1、創建虛擬機Win49&#xff08;49為序號&#xff09;&#xff0c;并安裝Windows Server 2019操作系統 參考配置&#xff1a;安裝系統的分區大小為20GB&#xff0c;其余分區暫不劃分&#xff0c; 文件系統格式為NTFS&#…

Sensodrive SensoJoint機器人力控關節模組抗振動+Sensodrive力反饋系統精準對接

Sensodrive成立于2003年&#xff0c;起源于德國航空航天中心&#xff08;DLR&#xff09;的LBR項目。公司由一批傳感器技術專家創立&#xff0c;專注于高精度工業扭矩傳感器的研發。憑借二十余年的技術積累&#xff0c;Sensodrive將DLR輕型機器人扭矩技術引入工業領域&#xff…

【AI實踐】Mac一天熟悉AI模型智能體應用(百煉版)

25.6.29增加Gummy 實時/一句話語音識別25.6.28增加Qwen TTS本地音頻和實時播報 背景 準備環境 MacOS M1電腦&#xff08;其他M系列芯片也可以&#xff09; 為了方便python的使用環境&#xff0c;使用Miniconda&#xff1a;下載鏈接&#xff1a;Download Anaconda Distribution…

WEB安全--Java安全--jsp webshell免殺1

1.1、BCEL ClassLoader 介紹&#xff08;僅適用于BCEL 6.0以下&#xff09;&#xff1a; BCEL&#xff08;Apache Commons BCEL?&#xff09;是一個用于分析、創建和操縱Java類文件的工具庫&#xff1b;BCEL的類加載器在解析類名時會對ClassName中有$$BCEL$$標識的類做特殊處…

Valkey與Redis評估對比:開源替代方案的技術演進

#作者&#xff1a;朱雷 文章目錄 1 概述1.1內存數據結構存儲核心特性1.2主流內存數據結構存儲設計與適用場景1.3目前主流內存數據結構存儲對比 2 Valkey 說明2.1 哨兵架構設計2.2 集群架構設計2.3 valkey 使用企業和業內生態? 3 評估指標4 評估結果 1 概述 內存數據結構存儲…

華為云Flexus+DeepSeek征文 | 基于華為云ModelArts Studio安裝NoteGen AI筆記應用程序

華為云FlexusDeepSeek征文 | 基于華為云ModelArts Studio安裝NoteGen AI筆記應用程序 引言一、ModelArts Studio平臺介紹華為云ModelArts Studio簡介ModelArts Studio主要特點 二、NoteGen介紹NoteGen簡介主要特點 三、安裝NoteGen工具下載NoteGen軟件安裝NoteGen工具 四、開通…

BUUCTF在線評測-練習場-WebCTF習題[BJDCTF2020]Easy MD51-flag獲取、解析

解題思路 打開靶場&#xff0c;有個提交框&#xff0c;輸入后url會出現我們提交的參數password http://a48577ed-9a1c-4751-aba0-ae99f1eb8143.node5.buuoj.cn:81/leveldo4.php?password123 查看源碼并沒用發現什么貓膩&#xff0c;抓包在響應頭發現了貓膩 hint: select * …

面向對象三大特性深度解析:封裝、繼承與多態

面向對象三大特性深度解析&#xff1a;封裝、繼承與多態 思維導圖概覽 #mermaid-svg-v2u0XIzKotjyXYei {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-v2u0XIzKotjyXYei .error-icon{fill:#552222;}#mermaid-svg-v2…

mmap映射物理內存之三invalid cache

目錄 流程設計 invalid 命令 內核態invalid 內核態invalid&#xff0c;用戶態mmap物理地址 PAN機制 PAN機制歷程 硬件支持 ARMv8.1-PAN 特性 Linux 內核的適配 軟件模擬 PAN&#xff08;SW PAN&#xff09; 背景 Linux 的實現 總結 前述刷新cache的流程也同樣可…

記憶化搜索(dfs+memo)無環有向圖

這是一道可以當作板子的極簡記憶化搜索 建立a 是鄰接表&#xff0c;其中 a[x] 存儲從節點 x 出發能到達的所有節點。 b[x] 記錄從節點 x 出發的所有邊的權重之和。根據數學原理&#xff0c;我們很容易發現&#xff0c;一個根&#xff08;起點&#xff09;的期望&#xff0c;等…

使用AI豆包寫一個車輛信息管理頁面

記錄一個基本的車輛信息管理頁面&#xff0c;由豆包撰寫完成&#xff0c;只需要微調頁面即可。 主要功能是車輛信息的查詢、新增、編輯&#xff0c;項目用到了uniapp、vue3、ts、uni-ui、z-paging 頁面效果如下&#xff1a; 以上界面均由豆包生成&#xff0c;完成度非常高&am…

《HarmonyOSNext應用防崩指南:30秒定位JS Crash的破案手冊》

《HarmonyOSNext應用防崩指南&#xff1a;30秒定位JS Crash的破案手冊》 ##Harmony OS Next ##Ark Ts ##教育 本文適用于教育科普行業進行學習&#xff0c;有錯誤之處請指出我會修改。 &#x1f4a5; 哇哦&#xff01;JS Crash崩潰日志完全解析手冊 當你的應用突然閃退時&am…

閱讀筆記(3) 單層網絡:回歸(下)

閱讀筆記(3) 單層網絡:回歸(下) 該筆記是DataWhale組隊學習計劃&#xff08;共度AI新圣經&#xff1a;深度學習基礎與概念&#xff09;的Task03 以下內容為個人理解&#xff0c;可能存在不準確或疏漏之處&#xff0c;請以教材為主。 1. 為什么書上要提到決策理論&#xff1f; …

Mac OS系統每次開機啟動后,提示:輸入密碼來解鎖磁盤“Data”,去除提示的解決方法

問題描述&#xff1a; Mac mini外接了一個磁盤&#xff08;EX_Mac&#xff09;為默認使用的系統盤&#xff0c;內置的硬盤&#xff08;Macintosh HD&#xff09;為Mac mini自帶的系統盤 外置硬盤系統每次開機都會掛載內置磁盤&#xff0c;同時會提示需要輸入密碼來解鎖磁盤“…

CSS Flex 布局中flex-shrink: 0使用

flex-shrink: 0 是 CSS Flexbox 布局中的一個關鍵屬性&#xff0c;用于禁止彈性項目&#xff08;flex item&#xff09;在容器空間不足時被壓縮。以下是詳細解釋和示例&#xff1a; 核心作用 當容器的可用空間小于所有彈性項目的總寬度&#xff08;或高度&#xff09;時&#…