機器學習學習總結

一、機器學習到底是什么?
簡單說,機器學習就是讓計算機像人一樣 “從經驗中學習”。比如我們學騎自行車,摔多了就知道怎么保持平衡;計算機處理任務時,也能通過分析大量 “經驗數據”,自己找到規律,把任務做得越來越好。

最經典的例子就是 2016 年的阿爾法圍棋大戰:阿爾法圍棋通過學習海量棋譜數據(經驗),不斷優化下棋策略,最終以 4:1 戰勝了世界頂級棋手李世石。這就是機器學習的核心 —— 用數據 “喂” 模型,讓模型自己進步。

具體來說,機器學習要滿足三個條件:

針對特定任務(如下棋、判斷西瓜好壞);
有大量經驗數據作為基礎;
有評判任務好壞的標準,通過分析數據讓任務完成得更出色。

二、機器學習的 “基礎語言”:關鍵術語
想要看懂機器學習,得先認識這些 “行話”:
1. 數據相關的基本概念
數據集:就是一堆數據的集合。比如要研究西瓜好壞,收集的所有西瓜數據(包括色澤、根蒂等信息)就是一個數據集。
樣本:數據集中的每條記錄。比如數據集中的 “第 1 個西瓜”“第 2 個西瓜”,每個西瓜的信息就是一個樣本。
特征(屬性):描述樣本的具體信息。比如西瓜的 “色澤”(青綠、烏黑)、“根蒂”(蜷縮、硬挺)、“敲聲”(濁響、沉悶)等,這些都是特征。

屬性空間(樣本空間):把所有特征組合起來形成的 “空間”。比如西瓜有 “色澤”“根蒂”“敲聲” 3 個特征,每個特征有不同取值,這些取值組合起來就像一個三維空間,每個西瓜樣本都是這個空間里的一個點。
向量表示:為了方便計算,每個樣本可以用數字 “向量” 表示。比如一個西瓜的特征是(青綠、蜷縮、濁響),可以轉換成數字(1, 2, 3),這個數字列表就是向量,特征的數量就是向量的 “維數”(比如 3 個特征就是 3 維向量)。
2. 訓練和測試相關概念
訓練集:用來 “教” 模型的數據集,里面有 “正確答案”(專業叫 “標記”)。比如判斷西瓜好壞時,訓練集里的西瓜會明確標注 “是好瓜” 或 “否”,模型通過學習這些數據找規律。

測試集:用來 “考” 模型的數據集,里面沒有 “正確答案”,模型需要根據訓練時學到的規律預測結果。比如測試集里的西瓜沒有 “好瓜” 標注,模型預測后,再對比真實結果判斷模型好壞。

三、機器學習的 “門派”:學習類型
機器學習主要分為兩大 “門派”,還有一個 “混合門派”:
1. 監督學習(有老師教的學習)
就像學生有老師給答案一樣,監督學習的數據集有 “正確答案”(標記)。模型通過學習這些帶答案的數據,學會預測新數據的答案。

分類任務:預測結果是有限的 “類別”(離散值)。比如判斷西瓜是 “好瓜” 還是 “壞瓜”,判斷郵件是 “垃圾郵件” 還是 “正常郵件”。
回歸任務:預測結果是連續的數值。比如根據房屋面積、位置預測房價(價格可以是 88 萬、150 萬等任意數值),根據身高預測體重。

2. 無監督學習(自學成才的學習)
沒有 “正確答案”,模型自己從數據中找規律。最典型的是聚類:把相似的樣本分成一組。比如電商平臺分析用戶購物記錄,自動把喜歡買零食的用戶、喜歡買家電的用戶分成不同群體。
還有關聯推薦,比如超市發現 “買尿布的人經常買葡萄酒”,就會給買尿布的顧客推薦葡萄酒,這就是無監督學習從數據中發現的隱藏規律。
3. 集成學習(團隊合作的學習)
不是單個模型 “孤軍奮戰”,而是把多個模型組合起來,一起完成任務。就像考試時多個同學一起討論,答案往往更準確。集成學習通過結合多個模型的優勢,減少單個模型的誤差,提升性能。
四、怎么判斷模型好不好?模型評估方法
訓練出模型后,得知道它好不好用。這就需要 “評估指標” 和 “評估方法”:
1. 常用評估指標
錯誤率和精度:分類任務最常用。
錯誤率:預測錯的樣本數 ÷ 總樣本數(比如 100 個西瓜,預測錯了 10 個,錯誤率就是 10%)。
精度:1 - 錯誤率(上面的例子中,精度就是 90%)。
殘差:回歸任務中,模型預測值和真實值的差距。比如預測房價 100 萬,實際是 110 萬,殘差就是 10 萬,殘差越小模型越好。
訓練誤差和泛化誤差:
訓練誤差:模型在訓練集上的誤差(“課后作業” 的錯誤率)。
泛化誤差:模型在新數據(測試集)上的誤差(“期末考試” 的錯誤率)。我們更關心泛化誤差,因為模型最終要處理新數據。
損失函數:衡量模型預測偏差的 “工具”。損失函數值越小,說明模型預測得越準。比如用一條直線預測房價,損失函數就是所有點到直線的距離總和,總和越小,直線擬合得越好。
2. 分類任務的專項指標
對于分類任務(比如判斷好瓜 / 壞瓜),還有更細致的指標:

TP(真正例):實際是好瓜,模型也預測為好瓜(對的)。
FP(假正例):實際是壞瓜,模型卻預測為好瓜(錯的)。
TN(真反例):實際是壞瓜,模型也預測為壞瓜(對的)。
FN(假反例):實際是好瓜,模型卻預測為壞瓜(錯的)。

在此基礎上,有兩個關鍵指標:

查準率(P):模型預測的 “好瓜” 中,真正是好瓜的比例(P=TP÷(TP+FP))。比如預測了 10 個好瓜,其中 8 個真的是好瓜,查準率就是 80%。
查全率(R):所有實際好瓜中,被模型正確預測為好瓜的比例(R=TP÷(TP+FN))。比如實際有 10 個好瓜,模型只預測對了 7 個,查全率就是 70%。

查準率和查全率通常 “此消彼長”:想讓預測的好瓜盡量都是真的(高查準率),可能會漏掉一些好瓜(低查全率);想把所有好瓜都找出來(高查全率),可能會把一些壞瓜當成好瓜(低查準率)。
3. 評估方法
怎么合理劃分訓練集和測試集,才能準確評估模型?

留出法:直接把數據集分成兩部分,比如 70% 做訓練集(教模型),30% 做測試集(考模型)。注意兩點:
訓練集和測試集的分布要一致(比如好瓜和壞瓜的比例要和原數據集一樣),避免偏差。
可以多次隨機劃分,取平均結果,避免一次劃分的運氣成分。
交叉驗證法:把數據集分成 k 個相似的子集(比如 10 個),每次用 9 個子集訓練,1 個子集測試,重復 10 次,最后取 10 次結果的平均值。這種方法更穩定,常用的是 “10 折交叉驗證”。
五、模型常見 “毛病” 及解決辦法
模型訓練時可能會出兩種問題:欠擬合和過擬合。
1. 欠擬合:模型 “學不會”
表現:模型在訓練集和測試集上誤差都很大,連簡單的規律都沒學會。比如判斷西瓜好壞時,模型只看 “色澤”,忽略了 “根蒂”“敲聲” 等重要特征,導致預測不準。
解決辦法:

給模型更多 “線索”:添加新特征(比如紋理、臍部等)。
讓模型更 “聰明”:增加模型復雜度(比如從簡單規則升級為更復雜的算法)。
減少約束:如果用了正則化(防止過擬合的技術),可以減小正則化系數,讓模型更自由地學習。
2. 過擬合:模型 “學太死”
表現:模型在訓練集上誤差很小,但在測試集上誤差很大。就像學生死記硬背課后題,考試換了新題就不會了。比如模型記住了訓練集中每個好瓜的細節,甚至把噪聲當成規律(比如誤以為 “青綠 + 蜷縮” 一定是好瓜,忽略了其他特征),遇到新西瓜就預測錯。
解決辦法:

給模型更多 “練習材料”:增加訓練數據,讓模型見更多情況,減少對噪聲的依賴。
給模型 “減負”:刪除無關特征(降維),避免模型被干擾信息誤導。
加 “約束”:用正則化技術,限制模型參數的大小,防止模型過度學習細節。
團隊合作:用集成學習,多個模型一起預測,減少單個模型的偏見。
六、選模型的 “黃金法則
1. 奧卡姆剃刀原理:簡單的才是最好的
“如無必要,勿增實體”—— 如果簡單模型能解決問題,就不用復雜模型。比如判斷西瓜好壞,用 “根蒂蜷縮 + 敲聲濁響” 的簡單規則就能準確預測,就不用非要用復雜的算法,避免 “殺雞用牛刀”。
2. 沒有免費的午餐(NFL):沒有萬能算法
不存在一種算法對所有問題都有效。比如 A 算法預測房價很準,但用來判斷西瓜好壞可能不如 B 算法。評價算法好壞,必須結合具體任務,脫離實際問題談 “最好的算法” 都是空談。

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

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

相關文章

Boost庫中boost::function函數使用詳解

1. 函數作用 boost::function 是 Boost 庫提供的一個 通用函數封裝器,可用于存儲、傳遞和調用任意可調用對象(如普通函數、函數指針、Lambda、函數對象、成員函數指針等)。它類似于 C11 及以上標準的 std::function。 作用總結: 可…

SQL Server安全刪除數據并釋放空間的技術方案

在SQL Server中執行大規模數據刪除時,直接使用DELETE語句可能導致日志文件暴漲、事務阻塞和性能下降。以下提供一種安全刪除數據并釋放磁盤空間的完整方案: 方案核心步驟 -- 設置讀未提交隔離級別(避免鎖競爭) SET TRAN ISOLATION…

EgoVLA——根據第一視角的人類視頻中訓練的VLA模型:助力家具組裝等人形靈巧操作任務的攻克(利用可穿戴手部追蹤)

前言 我在此文《ForceVLA——將具備力感知的MoE整合進π0的動作專家中:從而融合“視覺 語言 力反饋”三者實現精密插拔》的開頭說過,我司「七月在線」目前側重以下兩大本體的場景落地 人形層面,側重 1.1 人形靈巧操作 1.2 人形展廳講解機械…

廚具新風尚,解鎖廚房新體驗

在快節奏的現代生活中,廚房已不僅僅是烹飪的場所,更是家庭溫馨與創意的源泉。一款好的廚具,不僅能讓烹飪變得輕松愉悅,更能為餐桌增添無限風味。今天,就讓我們一起走進廚具的新世界,解鎖那些令人愛不釋手的…

手機長焦進化史:攀過十年,終抵云巔

今天,華為相機解決方案專家熊諶飛在《長焦十年之路對談》直播中,首次系統揭秘了華為手機長焦技術的十年進化史。從P9雙攝到Pura 80系列“一鏡雙目”,每一代影像旗艦,都有一段鮮為人知的誕生秘辛。不少觀眾這才恍然大悟&#xff1a…

鈣鈦礦光伏:十年磨一劍,產業化突圍路在何方?

2013年,一種具有高效太陽能轉化率、高電荷傳輸率、低成本、制作簡單等優點的新型太陽能電池材料——鈣鈦礦突然出現在大眾視野。相比于又重又硬、轉換效率通常只有22%-26%的傳統晶體硅太陽能板,鈣鈦礦太陽能電池薄如蟬翼可彎曲&am…

斷言:assert()的實用指南

目錄 一、斷言概述 二、基本用法 三、工作原理 四、斷言的優點 五、啟用和禁用斷言 六、性能考慮 七、最佳實踐 八、示例代碼 一、斷言概述 assert.h 頭文件定義了宏 assert(),用于在運行時驗證程序是否符合指定條件。如果條件不滿足,程序會報錯并…

開發避坑指南(27):Vue3中高效安全修改列表元素屬性的方法

需求 Vue3 中如何遍歷list并修改list元素的屬性的值? 解決辦法 1、?使用 map 方法? const newList list.value.map(item > {return {...item,modifiedProperty: newValue // 修改的屬性名稱和屬性值} })Vue 中的 map() 函數是 JavaScript 數組的高階函數&…

L4 級別自動駕駛 硬件架構設計

L4 級自動駕駛(根據 SAE 標準,屬于 “高度自動化”)的核心是系統在特定場景下(如城市道路、高速路)可完全自主完成駕駛任務,無需駕駛員干預,且在系統失效時能自動實現安全降級。其硬件架構需滿足…

【網絡安全測試】手機APP安全測試工具NowSecure 使用指導手冊(有關必回)

以下是 NowSecure安全測試工具 的詳細使用指導,涵蓋從環境準備、測試配置到報告分析的完整流程,適合團隊協作或合規性審計場景: NowSecure 使用指導手冊 1. 工具簡介 定位:自動化移動應用(Android/iOS)安全…

Matlab(5)進階繪圖

一、Advanced 2D plots1. Logarithm Plotsx logspace(-1,1,1000); % 從-1到1生成等間隔的1000個點 y x .^ 2; subplot(2,2,1); plot(x,y); title(Plot); subplot(2,2,2); semilogx(x,y); title(Semilogx); subplot(2,2,3); semilogy(x,y); title(Semilogy); subplot(2,2,4);…

運維學習Day22——Anisible自動化與基本使用

文章目錄01-Ansible 自動化介紹Ansible 自動化介紹手動執行任務和自動化執行任務基礎架構即代碼Ansible 與 DevOps什么是 ANSIBLE?Ansible 特點Ansible 概念和架構Ansible WayAnsible 用例Ansible 部署準備實驗環境控制節點受管節點LinuxWindows網絡設備02-Ansible …

Codeforces Deque工藝

題目來源: 問題 - 2128B - Codeforces 這道題有些地方表達的并不是特別準確,首先就是從最左端與最右端移除一個元素,實際含義是從原數組的最左端或者最右段依次取出一個元素構成一個新的數組,使得這個新數組的數組符合題目的“好…

談談《More Effective C++》的條款30:代理類

在《More Effective C》的條款30中,Scott Meyers深入探討了**代理類(Proxy Classes)**的設計與應用。代理類是一種通過重載運算符模擬原始對象行為的設計模式,其核心目標是在不直接暴露原始對象的情況下,提供額外功能、…

實用AI在線開發工具網址匯總(含免費限額,國內可訪)

AI在線開發工具 標題分類屬性在線開發工具1https://www.builder.io/介紹詳見:AI在線編碼三劍客對決:Replit/Builder/Blot在線開發工具2https://replit.com/介紹詳見:AI在線編碼三劍客對決:Replit/Builder/Blot在線開發工具3https…

react+vite來優化下每次使用hook函數都要引入的情況

前言:react項目中,每個頁面都得引入react/react-dom等元素,就像uniapp的項目中得onload,onshow等生命周期一樣,這里也可以用vite的插件:unplugin-auto-import 來解決我們每次都需要調用才能使用hook方法的問題。安裝&a…

【排序算法】⑤冒泡排序

系列文章目錄 第一篇:【排序算法】①直接插入排序-CSDN博客 第二篇:【排序算法】②希爾排序-CSDN博客 第三篇:【排序算法】③直接選擇排序-CSDN博客 第四篇:【排序算法】④堆排序-CSDN博客 第五篇:【排序算法】⑤冒…

如何使用gpt進行模式微調(2)?

對 GPT(Generative Pre-trained Transformer)類大模型進行微調(Fine-tuning),是將其適配到特定任務或領域的關鍵步驟。以下是 ??全流程指南??,涵蓋方法選擇、數據準備、訓練配置、評估部署等核心環節&a…

基于飛算JavaAI實現圖書管理系統框架部署

摘要 本文詳細介紹了如何利用飛算JavaAI技術實現圖書管理系統的框架部署。首先闡述了飛算JavaAI的基本概念、特點和優勢,接著對圖書管理系統的需求進行分析,然后按照軟件開發流程,從系統設計、代碼生成、框架搭建到部署測試,逐步展…

ODE-by-Matlab-01-人口增長模型

博客地址:Matlab微分方程01-模型 馬爾薩斯模型 馬爾薩斯模型是人口增長模型中最簡單的模型,它由英國牧師家馬爾薩斯在1798年提出。 他利用在教堂工作的機會,收集英國100多年的人口數據,發現人口的相對增長率是常數。 在這個基礎…