一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

MATLAB數(shù)據(jù)建模方法中的機器學(xué)習(xí)方法介紹

MATLAB ? 來源:djl ? 作者:馬文輝 ? 2019-09-16 14:31 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

近年來,全國賽的題目中,多多少少都有些數(shù)據(jù),而且數(shù)據(jù)量總體來說呈不斷增加的趨勢, 這是由于在科研界和工業(yè)界已積累了比較豐富的數(shù)據(jù),伴隨大數(shù)據(jù)概念的興起及機器學(xué)習(xí)技術(shù)的發(fā)展, 這些數(shù)據(jù)需要轉(zhuǎn)化成更有意義的知識或模型。 所以在建模比賽中, 只要數(shù)據(jù)量還比較大, 就有機器學(xué)習(xí)的用武之地。

1.MATLAB機器學(xué)習(xí)概況

機器學(xué)習(xí) ( Machine Learning ) 是一門多領(lǐng)域交叉學(xué)科,它涉及到概率論、統(tǒng)計學(xué)、計算機科學(xué)以及軟件工程。機器學(xué)習(xí)是指一套工具或方法,憑借這套工具和方法,利用歷史數(shù)據(jù)對機器進行“訓(xùn)練”進而“學(xué)習(xí)”到某種模式或規(guī)律,并建立預(yù)測未來結(jié)果的模型。

機器學(xué)習(xí)涉及兩類學(xué)習(xí)方法(如圖1):有監(jiān)督學(xué)習(xí),主要用于決策支持,它利用有標識的歷史數(shù)據(jù)進行訓(xùn)練,以實現(xiàn)對新數(shù)據(jù)的標識的預(yù)測。有監(jiān)督學(xué)習(xí)方法主要包括分類和回歸;無監(jiān)督學(xué)習(xí),主要用于知識發(fā)現(xiàn),它在歷史數(shù)據(jù)中發(fā)現(xiàn)隱藏的模式或內(nèi)在結(jié)構(gòu)。無監(jiān)督學(xué)習(xí)方法主要包括聚類。

MATLAB數(shù)據(jù)建模方法中的機器學(xué)習(xí)方法介紹

圖1 機器學(xué)習(xí)方法

MATLAB 統(tǒng)計與機器學(xué)習(xí)工具箱(Statistics and Machine Learning Toolbox)支持大量的分類模型、回歸模型和聚類的模型,并提供專門應(yīng)用程序(APP),以圖形化的方式實現(xiàn)模型的訓(xùn)練、驗證,以及模型之間的比較。

分類

分類技術(shù)預(yù)測的數(shù)據(jù)對象是離散值。例如,電子郵件是否為垃圾郵件,腫瘤是癌性還是良性等等。 分類模型將輸入數(shù)據(jù)分類。 典型應(yīng)用包括醫(yī)學(xué)成像,信用評分等。MATLAB 提供的分類算法包括:

MATLAB數(shù)據(jù)建模方法中的機器學(xué)習(xí)方法介紹

圖2 分類算法家族

回歸

回歸技術(shù)預(yù)測的數(shù)據(jù)對象是連續(xù)值。 例如,溫度變化或功率需求波動。 典型應(yīng)用包括電力負荷預(yù)測和算法交易等?;貧w模型包括一元回歸和多元回歸,線性回歸和非線性回歸,MATLAB 提供的回歸算法有:

MATLAB數(shù)據(jù)建模方法中的機器學(xué)習(xí)方法介紹

圖3 回歸算法家族

聚類

聚類算法用于在數(shù)據(jù)中尋找隱藏的模式或分組。聚類算法構(gòu)成分組或類,類中的數(shù)據(jù)具有更高的相似度。聚類建模的相似度衡量可以通過歐幾里得距離、概率距離或其他指標進行定義。MATLAB 支持的聚類算法有:

MATLAB數(shù)據(jù)建模方法中的機器學(xué)習(xí)方法介紹

圖4 聚類算法家族

以下將通過一些示例演示如何使用 MATLAB 提供的機器學(xué)習(xí)相關(guān)算法進行數(shù)據(jù)的分類、回歸和聚類。

2.分類技術(shù)

支持向量機(SVM)

SVM 在小樣本、非線性及高維數(shù)據(jù)分類中具有很強的優(yōu)勢。在 MATLAB 中,可以利用 SVM 解決二分類問題。同時也可以使用 SVM 進行數(shù)據(jù)的多分類劃分。

1) 二分類

以下示例顯示了利用 MATLAB 提供的支持向量機模型進行二分類,并在圖中畫出了支持向量的分布情況(圖5中圓圈內(nèi)的點表示支持向量)。MATLAB 支持 SVM 的核函數(shù)(KernelFunction 參數(shù))有:線性核函數(shù)(Linear),多項式核函數(shù)(Polynomial)、高斯核函數(shù)(Gaussian)。

%% 支持向量機模型

loadfisheriris;

% 數(shù)據(jù)只取兩個分類:‘versicolor' 和 'virginica'

inds = ~strcmp(species,'setosa');

% 使用兩個維度

X = meas(inds,3:4);

y = species(inds);

tabulate(y)

Value Count Percent

versicolor 50 50.00%

verginica 50 50.00%

%% SVM模型訓(xùn)練,使用線性核函數(shù)

SVMModel = fitcsvm(X, y,'KernelFunction','linear');

%% 查看進行數(shù)據(jù)劃分的支持向量

sv = SVMModel.SupportVectors;

figure

gscatter( X( : , 1) , X( : , 2) ,y)

holdon

plot(sv( : , 1) , sv( : , 2) ,'ko','MarkerSize', 10)

legend('versicolor','virginica','Support Vector')

holdoff

MATLAB數(shù)據(jù)建模方法中的機器學(xué)習(xí)方法介紹

圖5 支持向量分布

2)多分類

MATLAB 多分類問題的處理是基于二分類模型.下面的示例演示如何利用 SVM 的二分類模型并結(jié)合 fitcecoc 函數(shù)解決多分類問題。

% 導(dǎo)入Fisher' s iris數(shù)據(jù)集

loadfisheriris

X = meas;

Y = species;

tabulate(Y)

Value Count Percent

setosa 50 33.33%

versicolor 50 33.33%

virginica 50 33.33%

% 創(chuàng)建SVM模板(二分類模型),并對分類變量進行標準化處理

% predictors

t = templateSVM('Standardize', 1);

% 基于SVM二分類模型進行訓(xùn)練并生成多分類模型

Mdl = fitcecoc( X, Y,'Learners', t , . . .'ClassNames', {'setosa','versicolor','virginica'})

Mdl =

ClassificationECOC

ResponseName: 'Y'

CategoricalPredictors: [ ]

ClassNames: {'setosa' 'versicolor' 'virginica'}

ScoreTransform: 'none'

BinaryLearners: {3*1 cell}

CodingName: 'onevsone'

MATLAB 的 fitcecoc 函數(shù)支持多種二分類模型,例如, templateKNN, templateTree, templateLinear, templateNaiveBayes, 等等。

3. 回歸

回歸模型描述了響應(yīng)(輸出)變量與一個或多個預(yù)測變量(輸入)變量之間的關(guān)系。 MATLAB 支持線性,廣義線性和非線性回歸模型。以下示例演示如何訓(xùn)練邏輯回歸模型。

邏輯回歸

在 MATLAB 中,邏輯回歸屬于廣義線性回歸的范疇,可以通過使用 fitglm 函數(shù)實現(xiàn)邏輯回歸模型的訓(xùn)練。

% 判定不同體重、年齡和性別的人的吸煙概率

loadhospital

dsa = hospital;

% 指定模型使用的計算公式

% 公式的書寫方式符合 Wilkinson Notation, 詳情請查看:

% http://cn.mathworks.com/help/stats/wilkinson-notation.html

modelspec ='Smoker ~ 1+ Age + Weight + Sex + Age:Weight + Age:Sex + Weight:Sex';

% 通過參數(shù) ’Disribution' 指定 ‘binomial' 構(gòu)建邏輯回歸模型

mdl = fitglm(dsa, modelspec,'Distribution','binomial')

MATLAB數(shù)據(jù)建模方法中的機器學(xué)習(xí)方法介紹

4.聚類

聚類是將數(shù)據(jù)集分成組或類。 形成類,使得同一類中的數(shù)據(jù)非常相似,而不同類中的數(shù)據(jù)差異非常明顯。

層次聚類

下面以層次聚類方法為例,演示如何利用 MATLAB 進行聚類分析。

% 數(shù)據(jù)導(dǎo)入

loadfisheriris

% MATLAB中層次聚類是通過linkage函數(shù)實現(xiàn)

% 通過參數(shù)可以配置距離計算方法

% 類內(nèi)距離的計算方法:'euclidean' ,歐幾里得距離

eucD = pdist(mean ,'euclidean');

% 類間距離的計算方法:'ward' ,最小化兩個類內(nèi)點之間聚類平方和

Z = linkage(eucD,'ward');

% 使用 cophenetic 相關(guān)系數(shù)評價聚類計算過程(類內(nèi)距離最小,類間距離最大)

% 值越大表明距離計算結(jié)果越好

cophenet(Z, eucD)

ans = 0.872828315330562

%生成4個類別的聚類結(jié)果

c = cluster(Z,'maxclust', 4);

可以顯示層次聚類生成的聚類樹,使用 dendrogram 函數(shù):

% 查看層次聚類樹

dendrogram(Z)

MATLAB數(shù)據(jù)建模方法中的機器學(xué)習(xí)方法介紹

圖6 層次聚類

以上只是簡單的介紹了一下 MATLAB 支持的機器學(xué)習(xí)算法的使用方式,更多的信息可以查看 MathWorks 官網(wǎng)和 MATLAB 幫助文檔。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4381

    瀏覽量

    64860
  • 機器學(xué)習(xí)
    +關(guān)注

    關(guān)注

    66

    文章

    8503

    瀏覽量

    134601
  • 數(shù)據(jù)分析
    +關(guān)注

    關(guān)注

    2

    文章

    1473

    瀏覽量

    35034
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    利用MATLAB對交流電機調(diào)速系統(tǒng)進行建模和仿真

    是借助計算機及相關(guān)技術(shù),對真實系統(tǒng)的運行過程和狀態(tài)進行數(shù)字化模擬的技術(shù)。Simulink作為MATLAB的一個組件,能夠?qū)崿F(xiàn)對動態(tài)系統(tǒng)的建模、仿真和綜合分析。本文在Simulink環(huán)境建立面向電氣
    發(fā)表于 06-06 14:31

    第一章 W55MH32 高性能以太網(wǎng)單片機的學(xué)習(xí)方法概述

    本章介紹W55MH32的學(xué)習(xí)方法,建議先了解硬件資源,按基礎(chǔ)篇、入門篇循序漸進學(xué)習(xí)。參考兩份手冊,提供例程資料,還給出官網(wǎng)、github 等學(xué)習(xí)資料查找渠道。讓我們一起踏上W55MH3
    的頭像 發(fā)表于 05-26 09:07 ?101次閱讀
    第一章 W55MH32 高性能以太網(wǎng)單片機的<b class='flag-5'>學(xué)習(xí)方法</b>概述

    使用MATLAB進行無監(jiān)督學(xué)習(xí)

    無監(jiān)督學(xué)習(xí)是一種根據(jù)未標注數(shù)據(jù)進行推斷的機器學(xué)習(xí)方法。無監(jiān)督學(xué)習(xí)旨在識別數(shù)據(jù)
    的頭像 發(fā)表于 05-16 14:48 ?682次閱讀
    使用<b class='flag-5'>MATLAB</b>進行無監(jiān)督<b class='flag-5'>學(xué)習(xí)</b>

    一種無刷直流電機霍耳信號與定子繞組關(guān)系自學(xué)習(xí)方法

    的關(guān)系。提出了一種無刷直流電機霍耳信號與定子繞組關(guān)系自學(xué)習(xí)方法,該方法通過不同的繞組通電組合將電機轉(zhuǎn)子依次轉(zhuǎn)到6個不同的位置并記錄對應(yīng)的霍耳信號,然后得出霍耳信號與定子繞組的對應(yīng)關(guān)系。所提出的方法快速
    發(fā)表于 03-25 15:15

    DeepSeek與Kimi揭示o1秘密,思維鏈學(xué)習(xí)方法顯成效

    據(jù)消息,OpenAI近日發(fā)布了一項重要研究報告。報告指出,DeepSeek和Kimi兩家機構(gòu)通過獨立研究,成功利用思維鏈學(xué)習(xí)方法,在數(shù)學(xué)解題與編程挑戰(zhàn)顯著提升了模型的綜合表現(xiàn)。 Kimi的研究員
    的頭像 發(fā)表于 02-18 15:13 ?467次閱讀

    傳統(tǒng)機器學(xué)習(xí)方法和應(yīng)用指導(dǎo)

    用于開發(fā)生物學(xué)數(shù)據(jù)機器學(xué)習(xí)方法。盡管深度學(xué)習(xí)(一般指神經(jīng)網(wǎng)絡(luò)算法)是一個強大的工具,目前也非常流行,但它的應(yīng)用領(lǐng)域仍然有限。與深度學(xué)習(xí)相比
    的頭像 發(fā)表于 12-30 09:16 ?1184次閱讀
    傳統(tǒng)<b class='flag-5'>機器</b><b class='flag-5'>學(xué)習(xí)方法</b>和應(yīng)用指導(dǎo)

    使用位移基本場方法對空間擴展光源進行建模

    摘要 空間擴展光源在實際中經(jīng)常出現(xiàn)。 可以使用Tervo等人[J. Opt. Soc. Am. A 27 (9), 2010]報道的位移基本場方法對它們進行建模。 該用例演示了如何基于楊氏干涉實驗
    發(fā)表于 12-16 10:43

    什么是機器學(xué)習(xí)?通過機器學(xué)習(xí)方法能解決哪些問題?

    計算機系統(tǒng)自身的性能”。事實上,由于“經(jīng)驗”在計算機系統(tǒng)主要以數(shù)據(jù)的形式存在,因此機器學(xué)習(xí)需要設(shè)法對數(shù)據(jù)進行分析
    的頭像 發(fā)表于 11-16 01:07 ?965次閱讀
    什么是<b class='flag-5'>機器</b><b class='flag-5'>學(xué)習(xí)</b>?通過<b class='flag-5'>機器</b><b class='flag-5'>學(xué)習(xí)方法</b>能解決哪些問題?

    eda在機器學(xué)習(xí)的應(yīng)用

    機器學(xué)習(xí)項目中,數(shù)據(jù)預(yù)處理和理解是成功構(gòu)建模型的關(guān)鍵。探索性數(shù)據(jù)分析(EDA)是這一過程不可
    的頭像 發(fā)表于 11-13 10:42 ?899次閱讀

    PyTorch 數(shù)據(jù)加載與處理方法

    PyTorch 是一個流行的開源機器學(xué)習(xí)庫,它提供了強大的工具來構(gòu)建和訓(xùn)練深度學(xué)習(xí)模型。在構(gòu)建模型之前,一個重要的步驟是加載和處理數(shù)據(jù)。 1
    的頭像 發(fā)表于 11-05 17:37 ?929次閱讀

    Matlab/Simulink/Stateflow建模開發(fā)及仿真測試

    matlab 模擬仿真 熟悉Matlab/Simulink/Stateflow建模開發(fā)及仿真測試,熟悉V模型開發(fā)流程。 熟悉自動代碼生成,能夠編寫或者配置自動代碼生成腳本。
    發(fā)表于 10-24 17:23

    高速PCB信號和電源完整性問題的建模方法研究

    高速PCB信號和電源完整性問題的建模方法研究
    發(fā)表于 09-21 14:13 ?1次下載

    《DNK210使用指南 -CanMV版 V1.0》第一章本書學(xué)習(xí)方法

    第一章 本書學(xué)習(xí)方法 為了讓讀者更好地學(xué)習(xí)和使用本書,本章將為讀者介紹本書的學(xué)習(xí)方法,包括:本書的學(xué)習(xí)順序、編寫規(guī)范、代碼規(guī)范、資料查找和
    發(fā)表于 08-28 17:57

    【《時間序列與機器學(xué)習(xí)》閱讀體驗】+ 了解時間序列

    學(xué)習(xí)方法對該序列數(shù)據(jù)進行分析,可以得到結(jié)論或預(yù)測估計,因此時間序列分析的用途是非常多的,比如: 可以反映社會經(jīng)濟現(xiàn)象的發(fā)展變化過程,描述現(xiàn)象的發(fā)展狀態(tài)和結(jié)果。 可以研究社會經(jīng)濟現(xiàn)象的發(fā)展趨勢和發(fā)展速度
    發(fā)表于 08-11 17:55

    【「時間序列與機器學(xué)習(xí)」閱讀體驗】全書概覽與時間序列概述

    他領(lǐng)域(如自然語言處理、計算機視覺等)的關(guān)聯(lián)。 ●第2章“時間序列的信息提取”:介紹特征工程的核心概念及其在時間序列分析的廣用,比如對原始數(shù)據(jù)進行歸一化、缺失值填充等轉(zhuǎn)換;以及如何通過特征工程從時間
    發(fā)表于 08-07 23:03