chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

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

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

掃碼添加小助手

加入工程師交流群

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

1.MATLAB機器學習概況

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

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

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

圖1 機器學習方法

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

分類

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

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

圖2 分類算法家族

回歸

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

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

圖3 回歸算法家族

聚類

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

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

圖4 聚類算法家族

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

2.分類技術

支持向量機(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模型訓練,使用線性核函數(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ù)建模方法中的機器學習方法介紹

圖5 支持向量分布

2)多分類

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

% 導入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二分類模型進行訓練并生成多分類模型

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. 回歸

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

邏輯回歸

在 MATLAB 中,邏輯回歸屬于廣義線性回歸的范疇,可以通過使用 fitglm 函數(shù)實現(xià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' 構建邏輯回歸模型

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

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

4.聚類

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

層次聚類

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

% 數(shù)據(jù)導入

loadfisheriris

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

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

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

eucD = pdist(mean ,'euclidean');

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

Z = linkage(eucD,'ward');

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

% 值越大表明距離計算結果越好

cophenet(Z, eucD)

ans = 0.872828315330562

%生成4個類別的聚類結果

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

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

% 查看層次聚類樹

dendrogram(Z)

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

圖6 層次聚類

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

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

    關注

    3

    文章

    4381

    瀏覽量

    64921
  • 機器學習
    +關注

    關注

    66

    文章

    8503

    瀏覽量

    134647
  • 數(shù)據(jù)分析

    關注

    2

    文章

    1473

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

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

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

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

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

    使用MATLAB進行無監(jiān)督學習

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

    一種無刷直流電機霍耳信號與定子繞組關系自學習方法

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

    DeepSeek與Kimi揭示o1秘密,思維鏈學習方法顯成效

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

    傳統(tǒng)機器學習方法和應用指導

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

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

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

    什么是機器學習?通過機器學習方法能解決哪些問題?

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

    eda在機器學習的應用

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

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

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

    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》第一章本書學習方法

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

    【《時間序列與機器學習》閱讀體驗】+ 了解時間序列

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

    【「時間序列與機器學習」閱讀體驗】全書概覽與時間序列概述

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