0.機器學習基礎

0.人工智能概述:

(1)必備三要素:

  • 數據
  • 算法
  • 計算力
    • CPU、GPU、TPU
    • GPU和CPU對比:
      • GPU主要適合計算密集型任務;
      • CPU主要適合I/O密集型任務;

【筆試問題】什么類型程序適合在GPU上運行?——面試題<1>

(2)人工智能、機器學習、深度學習區別?

  • 機器學習是人工智能的一個實現階段;
  • 深度學習是機器學習的一個方法發展而來(神經網絡);

(3)起源:

  • 圖靈測試:
    • 機器與人隔開情況下,人提問機器回答測試5min,測試完成后讓人回答:在你對面的是人還是機器?若30%的人無法判斷,這個機器就通過了測試。該測試提出者:艾倫.麥席森.圖靈。
  • 達特茅斯會議:
    • 1956年8月,提出機器模仿人類學習,無實質東西,會議長達2個月,1956年是人工智能元年。

(4)發展經歷:

  • 起步
  • 反思
  • 應用
  • 低迷
  • 穩步
  • 蓬勃

(5)分支:

  • 計算機視覺(CV)

指機器感知環境能力,這一技術類別中經典任務有圖像形成、圖像處理、圖像提取和圖像的三位推理。物體檢測和人臉識別是其比較成功的研究領域。

  • 自然語言處理(NLP)
    • 覆蓋文本挖掘/分類、機器翻譯和語音識別。

語言識別:指識別語言(說出語言)并將其轉換成文本的技術。仍面臨聲紋識別和[雞尾酒會效應]等一些特殊情況的難題。語言識別驗證依賴于云平臺,離線處理可能無法取得利息的工作原理。

文本挖掘和分類:對文字進行情緒分析、對里面垃圾信息檢測。面臨:可能出現歧義。

機器翻譯:將A語言翻譯B語言。面臨:方言、行話表現不好。

  • 機器人

固定機器人:工業應用;

移動機器人:工業和家庭應用。

一.機器學習介紹

1.步驟:

  • 獲取數據
  • 數據基本處理(科學計算庫)
    • Matplotlib
    • Pandas
    • Numpy
  • 特征工程
  • 機器學習算法
  • 模型評估與調優

2.概述:

(1)定義:

機器學習是從數據中自動分析獲得模型,并利用模型對未知數據進行預測

(2)工作流程:

機器學習工作流程總結:

  • 獲取數據
  • 數據基本處理
  • 特征工程
  • 機器學習(模型訓練)
  • 模型評估
    • 結果達到要求,上線任務
    • 沒有達到要求,重新上面步驟

3.工作流程詳述:

(1)獲取數據:

  • 在數據集中一般:
    • 一行數據是一個樣本;
    • 一列數據是一個特征;
    • 有些數據有目標值(標簽值),有些數據沒有目標值(如上表中,電影類型就是這個數據集中的目標值)
  • 數據類型構成:
    • 數據類型一:特征值+目標值(目標值是連續的和離散的)
    • 數據類型二:只有特征值,沒有目標值(典型算法:聚類算法)。
  • 數據分割:
    • 機器學習一般數據集劃分為兩個部分:
      • 訓練數據:用于訓練,構建模型;
      • 測試數據:在模型檢驗時使用,用于評估模型是否有效。
    • 劃分比例:
      • 訓練集:70% 80% 75%
      • 測試集:30% 20% 25%

(2)數據基本處理:

即對數據進行缺失值,去除異常值等處理。

(3)特征工程:

  • 定義:特征工程是使用專業背景知識和技巧處理數據,使得特征能在機器學習算法上發揮更好的作用的過程。
  • 為什么需要?
    • 數據和特征決定機器學習上限,而模型和算法只是逼近這個上限而已。
  • 包含內容
    • 特征提取
      • 將任意數據(如文本或圖像)轉換為可用于機器學習的特征工程;
    • 特征預處理
      • 通過一些轉換函數將特征數據轉換成更加適合算法模型的特征數據過程;
    • 特征降維
      • 指在某些特定條件下,降低隨機變量(特征)個數,得到一組“不相關”主變量的過程;?

(4)機器學習(模型訓練):

選擇合適算法對模型進行訓練。

(5)模型評估:

對訓練好模型進行評估。

二.機器學習算法分類:

1.監督學習:

1.1.定義:

  • 輸入數據是由輸入特征值和目標值所組成;
    • 函數的輸出可以是一個連續的值(稱為回歸);
    • 或是輸出有限個離散值(稱為分類);

(1)回歸問題:

例如:預測房價,根據樣本集:擬合出一條連續曲線。

(2)分類問題:

例如:根據腫瘤特征判斷良性還是惡性,得到結果是“良性”或者“惡性”,是離散的。

2.無監督學習:

2.1.定義:

  • 輸入數據是由輸入特征值組成,沒有目標值;
    • 輸入數據沒有被標記,也沒有確定的結果。樣本數據類別未知;
    • 需要根據樣本間的相似性對樣本集進行類別劃分。
  • 例:

【無監督與有監督對比】:

3.半監督學習:

3.1.定義:

  • 訓練集同時包含有標記樣本數據和未標記樣本數據;
  • 例:

監督:從數據庫中得到未標記數據,讓專家預測,得到大量標記過數據,通過標記過數據訓練預測模型;

半監督:從數據庫中得到少部分未標記數據,讓專家預測,得到少量標記過數據,通過少量數據訓練初步模型,再用未標記的數據進行模型得出(優化)。

總之:半監督是通過少量標記數據訓練初步模型,再利用大量未標記數據進行模型優化。

4.強化學習:

4.1.定義:

  • 實質是make decisions問題,即自動進行決策,并且可以做到連續決策。
  • 例:小孩走路,首先站起來,保持平衡,接下來先邁出左腿還是右腿,邁出一步再邁出一步。

小孩就是agent,他試圖通過采取行動來操縱環境,并且從一個狀態轉變到另一個狀態,當他完成任務的子任務時,孩子得到獎勵;并且當他不能走路時就不會給獎勵。

主要包含五個元素: agent ,action, reward,environment, observation

【強化與監督對比】

監督學習強化學習
反饋映射輸出的是之間的關系,可以告訴算法什么樣的輸入對應著什么樣的輸出輸出的是給機器反饋reward function,即用來判斷這個行為是好是壞
反饋時間做了比較壞的選擇會立刻反饋給算法結果反饋有延遲,有時候可能需要走了很多步以后才知道以前的某一步的選擇是好還是壞
輸入特征輸入是獨立同分布面對的輸入總是在變化,每當算法做出一個行為,它影響下一次決策的輸入

【拓展概念】什么是獨立同分布?

概念:西瓜書中解釋:輸入空間中的所有樣本服從一個隱含未知的分布,訓練數據所有樣本都是獨立的從這個分布上采樣而得。

  • 獨立:每次抽樣之間沒有關系,不會相互影響;
    • 舉例:給一個骰子,每次拋骰子拋到幾就是幾,這是獨立;如果我要骰子兩次之和大于8,那么第一次和和第二次拋就不獨立,因為第二次拋的結果和第一次相關;
  • 同分布:每次抽樣,樣本服從同一個分布
    • 舉例:給一個骰子,每次拋骰子得到任意點數的概率都是1/6,這個就是同分布;
  • 獨立同分布:i.i.d.,每次抽樣之間獨立而且同分步。

5.小結:

inout目的案例
監督(supervised learning)有標簽有反饋預測結果貓狗分類、房價預測
無監督(unsupervised learning)無標簽無反饋發現潛在結構“物以類聚人以群分”
半監督(Semi-Supervised learning)部分有標簽,部分無標簽有反饋降低數據標記難度
強化(reinforcement learning)決策流程及激勵系統一系列行動長期利益最大化學下棋

三.模型評估:

1.分類模型評估:

  • 準確率:
    • 預測正確的數站樣本總數的比例;
  • 其他評價指標:精確率、召回率、F1-score、AUC指標等。

2.回歸模型評估:

  • 均方根誤差( Root Mean Squared Error,RMSE)
    • RMSE是一個衡量回歸模型誤差率的常用公式。不過,它僅能比較誤差是相同單位的模型。

?a = actual target真實值

p = predicted target預測值

  • 例:

  • RSE:(預測值 - 真實值 )的平方和 /(真實值的均值 - 真實值的平方和)
  • MAE:(預測值 - 真實值)的絕對值的和 / 樣本數量
  • RAE:(預測值 - 真實值的絕對值和)/ (真實值的均值 減 真實值的絕對值的和)

3.擬合:

模型評估用于評價訓練好的模型的表現效果,其效果大致分為:過擬合、欠擬合。

在訓練過程中,可能會遇到:

訓練數據訓練的很好,誤差不大,為什么在測試集上有問題,出現這種情況就是擬合問題。

3.1.欠擬合(under-fitting):

  • 模型學習太過粗糙,連訓練集中的樣本數據特征關系都沒有學出來。
  • 訓練集與測試集中表現不好;

3.2.過擬合(over-fitting):

  • 所建成的機器學習模型或者深度學習模型在訓練樣本中表現的過于優越,導致在測試數據集中表現不佳
  • 訓練集表現比較好,測試集中表現不好;

四.深度學習簡介:

1.概念:

  • 深度學習(deep learning)(也稱為速度結構學習【deep structure learning】、層次學習【Hierarchical learning】或者深度機器學習【deep machine learning】)是一類算法集合、是機器學習的一個分支。
  • 深度學習近些年來,在會話識別、圖像識別和對象偵測等領域出現出來驚人的準確性。
  • 但是,“深度學習”在1986年有Dechter在機器虛席領域提出,然后在2000年有Aizenberg等人引入到人工神經網絡中。而現在,由于Alex Krizhevsky在2012年使用卷積網絡結構贏得了ImageNet比賽后受到大家矚目。
  • 卷積網絡之父:Yann LeCun

2.各層負責內容:

  • 1層負責識別顏色及簡單紋理;
  • 2層一些神經元可以識別更加細化的紋理,布紋、刻紋、葉紋等;
  • 3層一些神經元負責感受黑夜里的黃色燭光,高光,螢火,雞蛋黃色等;
  • 4層一些神經元識別萌狗的臉,寵物形貌,圓柱體事物,七星瓢蟲等存在;
  • 5層一些神經元負責識別花,黑眼圈動物,鳥,鍵盤,原型屋頂等;

五.Jupyter Notebook

1.定義:

Jupyter 項目是一個非盈利的開源項目,源于2014年的ipython項目,因為它逐漸發展為支持夸所有編程語言的交互數據科學和數據計算。

  • Jupyter Notebook,原名IPython Notebook,是IPython的加強網頁版,一個開源Web應用程序;
  • 名字源自Julia、Python和R(數據科學的三種開源語言)
  • 是一款程序員和科學工作者的編程/文檔/筆記/展示軟件;
  • .ipynb文件格式使用于計算型敘述的JSON文檔格式的正式規范;

2.為什么使用:

  • 傳統軟件開發:工程/目標明確
    • 需求分析:設計框架,開發模版,測試
  • 數據挖掘:藝術/目標不明確
    • 目的是具體的洞察目標,而不是機械的完成任務;
    • 通過執行代碼來解決問題;
    • 迭代式改進代碼來解決方法;

實時運行代碼、敘事性的文本和可視化被整合在一起,方便使用代碼和數據來敘述故事。

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

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

相關文章

多類型醫療自助終端智能化升級路徑(代碼版.下)

醫療人機交互層技術實施方案 一、多模態交互體系 1. 醫療語音識別引擎 # 基于Wav2Vec2的醫療ASR系統 from transformers import Wav2Vec2Processor, Wav2Vec2ForCTC import torchaudioclass MedicalASR:def __init__(self):self.processor = Wav2Vec2Processor.from_pretrai…

前端基礎:React項目打包部署服務器教程

問題背景 我做了一個React框架的前端的Node項目&#xff0c;是一個單頁面應用。 頁面路由用的是&#xff0c;然后使用了React.lazy在路由層級對每一個不同頁面進行了懶加載&#xff0c;只有打開那個頁面才會加載對應資源。 然后現在我用了Webpack5對項目進行了打包&#xff…

【深度學習:理論篇】--Pytorch基礎入門

目錄 1.Pytorch--安裝 2.Pytorch--張量 3.Pytorch--定義 4.Pytorch--運算 4.1.Tensor數據類型 4.2.Tensor創建 4.3.Tensor運算 4.4.Tensor--Numpy轉換 4.5.Tensor--CUDA&#xff08;GPU&#xff09; 5.Pytorch--自動微分 &#xff08;autograd&#xff09; 5.1.back…

使用 Spring Boot 快速構建企業微信 JS-SDK 權限簽名后端服務

使用 Spring Boot 快速構建企業微信 JS-SDK 權限簽名后端服務 本篇文章將介紹如何使用 Spring Boot 快速構建一個用于支持企業微信 JS-SDK 權限校驗的后端接口&#xff0c;并提供一個簡單的 HTML 頁面進行功能測試。適用于需要在企業微信網頁端使用掃一掃、定位、錄音等接口的…

工程師 - FTDI SPI converter

中國網站&#xff1a;FTDIChip- 首頁 UMFT4222EV-D UMFT4222EV-D - FTDI 可以下載Datasheet。 UMFT4222EVUSB2.0 to QuadSPI/I2C Bridge Development Module Future Technology Devices International Ltd. The UMFT4222EV is a development module which uses FTDI’s FT4222H…

rcore day6

批處理系統 (Batch System) 出現于計算資源匱乏的年代&#xff0c;其核心思想是&#xff1a; 將多個程序打包到一起輸入計算機&#xff1b;當一個程序運行結束后&#xff0c;計算機會 自動 執行下一個程序 應用程序難免會出錯&#xff0c;如果一個程序的錯誤導致整個操作系統都…

Linux系統學習Day2——在Linux系統中開發OpenCV

一、OpenCV簡介 OpenCV&#xff08;Open Source Computer Vision Library&#xff09;是一個開源的跨平臺計算機視覺和機器學習庫&#xff0c;廣泛應用于圖像處理、視頻分析、物體檢測等領域。它提供了豐富的算法和高效的工具集&#xff0c;支持C、Python等多種語言&#xff0c…

SAP Overview

SAP—企業運營的數字化引擎 在數字化轉型的浪潮中&#xff0c;SAP以其全面的企業應用軟件套件&#xff0c;為全球企業提供了強大的運營支持。SAP的模塊化解決方案覆蓋了企業運作的每一個關鍵環節&#xff0c;從銷售到倉庫管理&#xff0c;每個模塊都是針對特定業務需求精心設計…

Kafka 中的冪等機制

Kafka 中的 冪等性&#xff08;Idempotence&#xff09; 是生產者端的重要機制&#xff0c;旨在確保即使在網絡抖動、重試、Broker 重啟等情況下&#xff0c;同一條消息不會被重復寫入到 Topic 中。這是實現可靠消息傳遞、避免重復消費的關鍵手段之一。 ? 什么是冪等性&#…

用c語言寫一個linux進程之間通信(聊天)的簡單程序

使用talk 用戶在同一臺機器上talk指令格式如下&#xff1a; ? talk 用戶名ip地址 [用戶終端號] 如果用戶只登錄了一個終端&#xff0c;那么可以不寫用戶終端號&#xff0c;如&#xff1a; talk userlocalhost可以使用who指令來查看當前有哪些用戶登錄&#xff0c;他的終端號…

深入探索Scala:從基礎到進階的全面總結

在大數據技術領域&#xff0c;Scala語言憑借其獨特優勢占據重要地位。它與Spark緊密相連&#xff0c;為大數據計算提供強大支持。今天&#xff0c;讓我們一同深入回顧Scala從基礎到進階的關鍵知識點。 Scala開發環境搭建是入門的第一步&#xff0c;需確保JDK安裝成功&#xff0…

【每日一個知識點】分布式數據湖與實時計算

在現代數據架構中&#xff0c;分布式數據湖&#xff08;Distributed Data Lake&#xff09; 結合 實時計算&#xff08;Real-time Computing&#xff09; 已成為大數據處理的核心模式。數據湖用于存儲海量的結構化和非結構化數據&#xff0c;而實時計算則確保數據能夠被迅速處理…

GPT-5、o3和o4-mini即將到來

原計劃有所變更: 關于我們應有何期待的一些零散想法。 深度研究(Deep Research)確實強大但成本高昂且速度較慢(當前使用o3模型)。即將推出的o4-mini在性能上可能與o3相近,但將突破這些限制,讓全球用戶——甚至免費用戶(盡管會有速率限制)——都能用上世界頂級AI研究助…

Spring Cloud LoadBalancer負載均衡+算法切換

目錄 介紹核心功能負載均衡啟動兩個支付服務訂單模塊引入依賴LoadBalanced 注解啟動訂單服務測試結果 負載均衡算法切換總結 介紹 Spring Cloud LoadBalancer 是 Spring Cloud 提供的客戶端負載均衡解決方案&#xff0c;提供更現代化的 API 和更好的 Spring 生態系統集成。它支…

Chrome 瀏覽器插件收錄

1. Responsive Viewer 可以在同個窗口內&#xff0c;針對同一網站&#xff0c;添加多個不同設備屏幕顯示。 在前端開發&#xff0c;需要多端適配&#xff0c;尤其是移動端響應式適配的網站開發中&#xff0c;可以同時測試多個不同屏幕的適配效果。 2. VisBug 提供工具欄&#x…

SQL 函數概述

SQL 函數概述 SQL 函數可以分為幾大類&#xff0c;不同數據庫系統可能有略微不同的實現。以下是主要的 SQL 函數分類&#xff1a; 1. 聚合函數 (Aggregate Functions) COUNT() - 計算行數 SUM() - 計算總和 AVG() - 計算平均值 MIN() - 找最小值 MAX() - 找最大值 GROUP…

MySQL學習筆記九

第十一章使用數據處理函數 11.1函數 SQL支持函數來處理數據但是函數的可移植性沒有SQL強。 11.2使用函數 11.2.1文本處理函數 輸入&#xff1a; SELECT vend_name,UPPER(vend_name) AS vend_name_upcase FROM vendors ORDER BY vend_name; 輸出&#xff1a; 說明&#…

認識vue中的install和使用場景

寫在前面 install 在實際開發中如果你只是一個簡單的業務實現者&#xff0c;那么大部分時間你是用不到install的&#xff0c;因為你用到的基本上都是別人封裝好的插件、組件、方法、指令等等&#xff0c;但是如果你需要給公司的架構做建設&#xff0c;install就是你避不開的一個…

【SpringCloud】構建分布式系統的利器

一、引言 在當今數字化時代&#xff0c;隨著業務規模的不斷擴大和用戶量的急劇增長&#xff0c;單體應用逐漸暴露出諸多局限性&#xff0c;如可擴展性差、維護困難等。分布式系統應運而生&#xff0c;而 Spring Cloud 則成為了構建分布式系統的熱門框架之一。它提供了一系列豐…

mkdir通配符詳解

在 mkdir 命令中使用通配符可以簡化批量創建目錄的操作。通配符如 {} 和 * 可以用來生成多個目錄名稱&#xff0c;從而減少重復輸入。以下是一些常見的使用方法和示例。 使用 {} 通配符 {} 通配符可以用來生成一系列的目錄名稱&#xff0c;語法如下&#xff1a; mkdir dir_{…