機器學習、深度學習和神經網絡

機器學習、深度學習和神經網絡


術語及相關概念


在深入了解人工智能(AI)的工作原理以及它的各種應用之前,讓我們先區分一下與AI密切相關的一些術語和概念:人工智能、機器學習、深度學習和神經網絡。這些術語有時會被交替使用,但它們并不指代同樣的東西:

  • 人工智能是計算機科學的一個分支,處理智能行為的模擬。AI系統通常會展示與人類智能相關的行為,如規劃、學習、推理、問題解決、知識表示、感知、運動和操控,較少涉及社會智能和創造力。
  • 機器學習是AI的一個子集,它使用計算機算法分析數據,并根據所學做出智能決策,而無需明確編程。機器學習算法通過大量數據進行訓練,并從示例中學習。它們不遵循基于規則的算法。機器學習使機器能夠自己解決問題,并使用提供的數據做出準確的預測。
  • 深度學習是機器學習的一個專門子集,它利用分層的神經網絡模擬人類決策。深度學習算法能夠標記和分類信息,識別模式。這使得AI系統能夠在工作中不斷學習,并通過判斷決策是否正確,改進結果的質量和準確性。
  • 人工神經網絡,通常簡稱神經網絡,受生物神經網絡的啟發,盡管它們的工作原理有所不同。AI中的神經網絡是由小型計算單元(稱為神經元)組成,它們接受輸入數據并隨著時間的推移學習做出決策。神經網絡通常有多層,它們是深度學習算法在數據集增加時變得更加高效的原因,而與其他機器學習算法不同,后者可能會在數據增加時出現平臺效應。

現在,你已經對一些關鍵AI概念的區別有了廣泛的理解,接下來還有一個重要的區分,即人工智能與數據科學的區別

  • 數據科學是從大量不同的數據中提取知識和洞察的過程和方法。它是一個跨學科的領域,涉及數學、統計分析、數據可視化、機器學習等。它使我們能夠從大量數據中獲取信息、看到模式、找出意義,并用它來做出推動業務決策的判斷。
  • 數據科學可以使用許多AI技術來從數據中提取洞察。例如,它可以使用機器學習算法甚至深度學習模型來提取意義并做出推論。AI和數據科學之間有一些交集,但它們并不是彼此的子集。相反,數據科學是一個涵蓋整個數據處理方法論的廣泛術語,而AI包括所有允許計算機學習如何解決問題并做出智能決策的技術。
  • AI和數據科學都可以涉及使用大數據,也就是極為龐大的數據量。后面我們將更詳細地討論機器學習、深度學習和神經網絡的相關術語。

機器學習


機器學習是人工智能的一個子集,它使用計算機算法分析數據,并根據所學做出智能決策。與基于規則的算法不同,機器學習通過構建模型來對數據進行分類和預測:

  • 讓我們通過一個問題來理解機器學習的應用:如果我們想判斷一個人的心臟是否會衰竭,機器學習能否解決這個問題?答案是肯定的。
  • 假設我們有一些數據,比如每分鐘心跳數、身體質量指數(BMI)、年齡、性別以及結果(心臟是否衰竭)。通過機器學習,給定這些數據集,我們能夠學習并創建一個模型,基于輸入預測結果。
  • 那么,這與使用統計分析創建算法有什么區別呢?算法是一種數學技術。傳統編程中,我們會拿到數據和規則,并使用它們來開發一個算法,給出答案。在前面的例子中,如果使用傳統算法,我們會利用如心跳數和BMI等數據,創建一個算法來判斷心臟是否會衰竭。這本質上是一個if-then-else語句。當我們提交輸入時,基于我們確定的算法得到結果,而這個算法不會改變。
  • 而機器學習則不同,它接受數據和答案,并創建算法。機器學習不直接給我們最終答案,而是給我們一組規則,確定模型會是什么樣的。模型確定規則,當它收到輸入時,會通過這些規則來做出判斷。與傳統算法不同,機器學習模型可以不斷訓練,并將來用于預測結果。

機器學習依賴于通過檢查和比較大量數據集來定義行為規則,找到共同模式。例如,我們可以向機器學習程序提供大量鳥類的圖片,并訓練模型在看到鳥類圖片時標記為“鳥”。同樣,我們也可以為“貓”創建標簽,并提供貓的圖片進行訓練。當機器模型看到貓或鳥的圖片時,它會根據一定的置信度標記圖片:

  • 這種機器學習類型被稱為監督學習,即通過人工標注的數據訓練算法。你提供更多的樣本,監督學習算法會變得更加精確地對新數據進行分類。
  • 另一種機器學習類型是無監督學習,它依賴于提供未標注的數據,并讓算法自己發現數據中的模式。你提供輸入數據,但不提供標簽,讓機器自行推斷數據的特征。這種學習方式對于聚類數據很有用,即根據數據與鄰近數據的相似性,將數據分組。在數據聚類之后,可以使用不同技術來探索數據,尋找模式。例如,你可以提供一個持續的網絡流量數據流,機器學習算法會自主學習網絡的正常活動以及異常行為和可能的惡意行為。
  • 第三種機器學習算法是強化學習,它依賴于給機器學習算法提供一組規則和約束條件,并讓它學會如何實現目標。你定義狀態、目標、允許的行動和約束條件。算法通過嘗試不同的組合來實現目標,并根據決策的好壞給予獎勵或懲罰。算法會盡力在給定的約束下最大化獎勵。例如,你可以使用強化學習來教機器玩棋類游戲或通過障礙物。機器學習模型是一種用于在數據中發現模式的算法,而不需要程序員顯式編程這些模式。

機器學習技術與訓練


機器學習是一個廣泛的領域,我們可以將其分為三種不同的類別:監督學習、無監督學習和強化學習。通過這些方法,我們可以解決許多不同的任務:

  • 監督學習是指當我們在數據集中有類別標簽時,使用這些標簽來構建分類模型。也就是說,當我們接收到數據時,它已經有標簽,告訴我們數據代表的是什么。例如,在之前的例子中,我們有一個包含年齡、性別等標簽的表格。
  • 無監督學習則不同,我們沒有類別標簽,必須從無結構的數據中發現類別標簽。這通常涉及深度學習等技術,例如通過觀察圖片來訓練模型,通常采用聚類的方式進行。
  • 強化學習是另一種子集,它使用獎勵函數來懲罰不好的行為或獎勵好的行為。

監督學習的細分

監督學習可以進一步細分為回歸(Regression)、分類(Classification)和神經網絡(Neural Networks)三類。

  • 回歸模型通過觀察特征x與結果y之間的關系來構建,其中y是一個連續變量。本質上,回歸用于估算連續值。
  • 神經網絡指的是模仿人類大腦結構的結構。
  • 分類則側重于識別離散值。我們可以根據許多輸入特征x為輸出y分配離散的類別標簽。例如,在之前的例子中,給定一組特征x(如每分鐘心跳、身體質量指數、年齡和性別),算法將輸出y分類為兩個類別:True或False,預測心臟是否會衰竭。

在其他分類模型中,我們可以將結果分類為多個類別。例如,預測一個菜譜是印度菜、中國菜、日本菜還是泰國菜。一些分類方法包括決策樹、支持向量機、邏輯回歸和隨機森林。

通過分類,我們可以從數據中提取特征。在這個例子中,特征可能是每分鐘心跳或年齡。特征是輸入模式的獨特屬性,幫助確定輸出類別或類標簽。每一列是一個特征,每一行是一個數據點。分類是預測給定數據點所屬類別的過程。我們的分類器使用一些訓練數據來理解輸入變量與類別之間的關系。

訓練模型

那么,訓練到底意味著什么呢?訓練是指使用學習算法來確定和開發模型的參數。雖然有許多算法可以做到這一點,用通俗的話來說,如果你正在訓練一個預測心臟是否衰竭的模型(True或False的值),你會向算法展示一些標記為True的實際數據,然后再次向算法展示一些標記為False的數據,你會不斷重復這個過程,直到算法學會從標記為True的心臟衰竭數據中識別出來,標記為False的數據則相反。

數據集劃分

在機器學習中,我們通常將數據集分為三部分:訓練集、驗證集和測試集。

  • 訓練集是用于訓練算法的數據。
  • 驗證集用于驗證結果并微調算法的參數。
  • 測試集是模型從未見過的數據,用于評估模型的效果。

通過這些評估方法,我們可以使用如準確率精確度召回率等指標來表示模型的好壞。

深度學習


機器學習是人工智能(AI)的一個子集,深度學習則是機器學習的一個專門子集。深度學習通過分層算法創建神經網絡,這是一種人工復制大腦結構和功能的方式,使得AI系統能夠在工作中持續學習,并提高結果的質量和準確性。這就是為什么深度學習可以讓系統從非結構化數據中學習,例如照片、視頻和音頻文件。例如,深度學習使得AI系統具備自然語言理解的能力,能夠理解傳達的信息的上下文和意圖。

  • 深度學習算法并不直接將輸入映射到輸出。相反,它們依賴于多個處理層。每一層將其輸出傳遞給下一層,下一層再處理這些輸出并傳遞給下一層。由于有很多層,因此稱之為深度學習。
  • 在創建深度學習算法時,開發人員和工程師配置層數和連接每一層輸出與下一層輸入的函數類型。然后,他們通過提供大量帶注釋的示例來訓練模型。例如,你可以給深度學習算法提供成千上萬張圖片和與每張圖片內容對應的標簽。算法會通過其分層的神經網絡運行這些示例,并調整每一層神經網絡中變量的權重,從而能夠檢測出定義相似標簽的圖片的共同模式。

深度學習解決了舊版本學習算法中的一個主要問題。盡管機器學習算法的效率和性能在數據集增長時會達到瓶頸,深度學習算法在數據不斷增加時仍然能持續改進。深度學習在多個任務中已經證明了其高效性,包括圖像字幕生成、語音識別與轉錄、人臉識別、醫學影像和語言翻譯等。深度學習也是自動駕駛汽車的主要組成部分之一。

神經網絡


人工神經網絡

人工神經網絡是由一組較小的單元稱為神經元組成的計算單元,這些神經元模擬了人類大腦處理信息的方式。人工神經網絡借鑒了生物神經網絡的一些思想,目的是近似其處理結果。這些單元或神經元像生物神經網絡一樣,接受輸入數據,并隨著時間的推移學習做出決策。

  • 神經網絡通過反向傳播(Backpropagation)進行學習。反向傳播使用一組訓練數據,將已知的輸入與期望的輸出匹配。首先,輸入數據被傳入網絡并產生輸出。然后,誤差函數會計算給定輸出與期望輸出之間的差距。最后,網絡會進行調整,以減少誤差。
  • 神經網絡中的一組神經元被稱為,每一層接受輸入并提供輸出。每個神經網絡至少有一個輸入層和一個輸出層,它還可能包含一個或多個隱藏層,這些隱藏層模擬了人腦中的活動。隱藏層接受一組加權輸入,并通過激活函數產生輸出。如果一個神經網絡有多個隱藏層,它就被稱為深度神經網絡(Deep Neural Network)。

  • 感知機(Perceptrons)是最簡單且最早的神經網絡類型,它是單層神經網絡,由輸入節點直接連接到輸出節點。輸入層將輸入值通過乘以權重并求和的方式傳遞給下一層。隱藏層接收來自其他節點的輸入,并將其輸出傳遞給其他節點。隱藏層和輸出層的節點具有一種叫做偏置(Bias)的屬性,它是應用在節點上的一種特殊類型的權重,用來在考慮其他輸入后進行調整。

  • 最后,激活函數決定了節點如何響應其輸入。激活函數會根據輸入值的總和和偏置進行計算,結果將作為輸出傳遞。激活函數有不同的形式,選擇合適的激活函數是神經網絡成功的關鍵。

卷積神經網絡CNNs

卷積神經網絡(Convolutional Neural Networks,CNNs)是多層神經網絡,它們受到動物視覺皮層的啟發。CNNs在圖像處理、視頻識別和自然語言處理等應用中非常有用。卷積(Convolution)是一種數學運算,將一個函數應用于另一個函數,結果是兩個函數的混合。卷積非常擅長檢測圖像中的簡單結構,并將這些簡單特征結合起來構建更復雜的特征。

在卷積神經網絡中,這一過程通過一系列層進行,每一層對前一層的輸出進行卷積。CNNs擅長從較簡單的特征中構建復雜的特征。

遞歸神經網絡RNNs

遞歸神經網絡(Recurrent Neural Networks,RNNs)之所以叫做“遞歸”神經網絡,是因為它們對每個序列元素執行相同的任務,且前一步的輸出會作為后續階段的輸入。在一般的神經網絡中,輸入通過多層處理后產生輸出,假設兩個連續的輸入是相互獨立的,但在某些情況下,這種假設并不成立。例如,當我們需要考慮一個單詞的上下文時,必須考慮前一步的觀察結果才能產生正確的輸出。

RNNs可以利用長序列中的信息,每一層網絡代表某一時刻的觀察值。

總結


  • 機器學習是人工智能的一個子集,它使用計算機算法來分析數據,并根據所學內容做出智能決策。機器學習算法的三個主要類別包括監督學習、無監督學習和強化學習。
    • 監督學習是指我們在數據集中有類別標簽,并使用這些標簽來構建分類模型。
    • 監督學習分為三個類別——回歸、分類和神經網絡。
    • 機器學習算法通過使用分為訓練數據、驗證數據和測試數據的數據集進行訓練。
  • 深度學習是機器學習的一個專門子集,它通過分層算法創建神經網絡,使人工智能系統能夠從非結構化數據中學習,并在工作中持續學習。
  • 神經網絡,一種模仿生物神經元的計算單元集合,隨著時間的推移學習對數據進行決策。不同的神經網絡類型包括感知器、卷積神經網絡或 CNN 以及循環神經網絡或 RNN。
  • 進階學習(可選但是推薦)
    • 機器學習模型Models for Machine Learning
    • 神經網絡深度探索A Neural Networks deep dive

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

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

相關文章

打造高性能中文RAG系統:多輪對話與語義檢索的完美結合

目錄 1、引言 2、RAG系統的核心架構 3、對話理解:超越單輪問答 3.1、指代消解技術 3.2、話題跟蹤與記憶 4、混合檢索策略:兼顧精確與廣泛 4.1、向量檢索 關鍵詞檢索 4.2、重排序機制 5、性能優化:應對大規模文檔 5.1、向量量化技術…

人工智能助力數字化轉型:生成式人工智能(GAI)認證開啟新篇章

在數字化浪潮席卷全球的今天,企業正面臨著前所未有的轉型壓力與機遇。數字化轉型,這一曾經被視為“選擇題”的戰略議題,如今已演變為關乎企業生存與發展的“必答題”。在這場深刻的變革中,人工智能(AI)作為…

Windows 圖形顯示驅動開發-WDDM 2.4功能-GPU 半虛擬化(十二)

DxgkDdiQueryAdapterInfo 更新 DXGKARG_QUERYADAPTERINFO 結構已更新,以包括以下字段以支持半虛擬化: 添加了 Flags 成員,允許 Dxgkrnl 指示以下內容: 它將 VirtualMachineData 設置為指示調用來自 VM。它將 SecureVirtualMach…

iOS審核被拒:Missing privacy manifest 第三方庫添加隱私聲明文件

問題: iOS提交APP審核被拒,蘋果開發者網頁顯示二進制錯誤,收到的郵件顯示的詳細信息如下圖: 分析: 從上面信息能看出第三方SDK庫必須要包含一個隱私文件,去第三方庫更新版本。 幾經查詢資料得知,蘋果在…

馬達加斯加企鵝字幕

Antarctica 南極洲 An inhospitable wasteland 一個荒涼的不毛之地 But even here 但即使在這里 on the Earth’s frozen bottom 地球另一端的冰天雪地里 we find life 也有生命存在 And not just any life 不是別的什么生物 Penguins 而是企鵝 Joyous, frolicking 快樂的 頑皮…

愛因斯坦求和 torch

目錄 向量點積 矩陣乘法 矩陣轉置 向量轉換相機坐標系 在 Python 的科學計算庫(如 NumPy)中,einsum 是一個強大的函數,它可以簡潔地表示各種張量運算。下面是幾個不同類型的使用示例: 向量點積 向量點積是兩個向量…

FPGA調試筆記

XILINX SSTL屬性電平報錯 錯誤如下: [DRC BIVRU-1] Bank IO standard Vref utilization: Bank 33 contains ports that use a reference voltage. In order to use such standards in a bank that is not configured to use INTERNAL_VREF, the banks VREF pin mu…

一區嚴選!挑戰5天一篇脂質體組學 DAY1-5

Day 1! 前期已經成功挑戰了很多期NHANES啦!打算來試試孟德爾隨機化領域~ 隨著孟德爾隨機化研究的普及,現在孟德爾發文的難度越來越高,簡單的雙樣本想被接收更是難上加難,那么如何破除這個困境,這次我打算…

DataGear 5.3.0 制作支持導出表格數據的數據可視化看板

DataGear 內置表格圖表底層采用的是DataTable表格組件,默認并未引入導出數據的JS支持庫,如果有導出表格數據需求,則可以在看板中引入導出相關JS支持庫,制作具有導出CSV、Excel、PDF功能的表格數據看板。 在新發布的5.3.0版本中&a…

【個人筆記】用戶注冊登錄思路及實現 springboot+mybatis+redis

基本思路 獲取驗證碼接口 驗證碼操作用了com.pig4cloud.plugin的captcha-core這個庫。 AccountControl的"/checkCode"接口代碼,通過ArithmeticCaptcha生成一張驗證碼圖片,通過text()函數得到驗證碼的答案保存到變量code,然后把圖…

Linux網絡編程概述

Linux網絡編程是在Linux操作系統環境下進行的網絡相關程序開發,主要用于實現不同計算機之間的數據通信和資源共享。以下從基礎知識、網絡編程模型、常用函數和編程步驟等方面進行詳細介紹: 基礎知識 1. 網絡協議 TCP/IP協議族:是互聯網通信…

Linux內核perf性能分析工具案例分析

一、系統級性能分析工具perf原理 1. perf 的基本概念 內核集成:perf 直接集成在 Linux 內核源碼中,能夠深度訪問硬件和操作系統層面的性能數據,具有低開銷、高精度的特點。 事件采樣原理:通過定期采樣系統事件&#xff0…

word-spacing 屬性

介紹 CSS word-spacing 屬性,用于指定段字之間的空間,例如: p {word-spacing:30px; }word-spacing屬性增加或減少字與字之間的空白。 注意: 負值是允許的。 瀏覽器支持 表格中的數字表示支持該屬性的第一個瀏覽器版本號。 屬…

5種特效融合愚人節搞怪病毒

內容供學習使用,不得轉賣,代碼復制后請1小時內刪除,此代碼會危害計算機安全,謹慎操作 并在虛擬機里運行此代碼!&#xff0c;病毒帶來后果自負! #include <windows.h> #include <cmath> #include <thread> using namespace std; // 屏幕特效函數聲明 void In…

深入理解 Windows 進程管理:taskkill 命令詳解

引言 在 Windows 系統開發和日常使用中&#xff0c;我們經常會遇到程序卡死、文件被占用導致無法編譯等問題。這時&#xff0c;taskkill 命令就成了解決問題的利器。本文將詳細介紹 taskkill 的使用方法、常見場景以及注意事項&#xff0c;幫助你高效管理系統進程。 1. 什么是…

【C++】右值引用與完美轉發

目錄 一、右值引用&#xff1a; 1、左值與右值&#xff1a; 2、左值引用和右值引用&#xff1a; 二、右值引用的使用場景&#xff1a; 1、左值引用的使用場景&#xff1a; 2、右值引用的使用場景&#xff1a; 移動構造 移動賦值 三、完美轉發&#xff1a; 1、萬能引用…

wx201基于ssm+vue+uniapp的購物系統設計與實現小程序

開發語言&#xff1a;Java框架&#xff1a;ssmuniappJDK版本&#xff1a;JDK1.8服務器&#xff1a;tomcat7數據庫&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;數據庫工具&#xff1a;Navicat11開發軟件&#xff1a;eclipse/myeclipse/ideaMaven包&#xff1a;M…

Mac 常用命令

一、文件操作(必知必會)? ?1. 快速導航 cd ~/Documents # 進入文檔目錄 cd .. # 返回上級目錄 pwd # 顯示當前路徑 2. ?文件管理 touch new_file.txt # 創建空文件 mkdir -p project/{src,docs} # 遞歸創建目錄 cp …

Nginx RTMP 處理模塊 (ngx_rtmp_handler.c) 詳細分析

ngx_rtmp_handler 是 Nginx RTMP 模塊中的核心處理部分&#xff0c;主要負責處理 RTMP 流會話中的數據接收、發送、ping 操作以及分塊大小的設置等。 1. 全局變量 ngx_rtmp_naccepted: 記錄接受的 RTMP 連接數。 ngx_rtmp_bw_out 和 ngx_rtmp_bw_in: 分別表示輸出帶寬和輸入帶…

(二)萬字長文解析:deepResearch如何用更長的思考時間換取更高質量的回復?各家產品對比深度詳解

DeepResearch的研究背景 業務背景&#xff1a;用更長的等待時間&#xff0c;換取更高質量、更具實用性的結果 當前AI技術發展正經歷從“即時響應”到“深度思考”的范式轉變。用戶對延遲的容忍度顯著提升&#xff0c;從傳統200ms的交互響應放寬至數秒甚至數分鐘&#xff0c;以…