
机器学习
Justin_YWX
数学专业硕士毕业,主要研究方向为数据挖掘,机器学习。
展开
-
MATLAB进阶学习之神经网络GUI实现
神经网络GUI实现一、启动二、导入数据三、创建网络四、开始训练五、网络测试六、结果导出一、启动在MATLAB命令行中输入nntool/nnstart。本文以nntool为例:nntool弹出界面如下:二、导入数据按照相同的方法导入目标数据,即标签数据。数据导入完成后,关闭数据导入界面:三、创建网络四、开始训练和利用函数训练时一样:五、网络测试六、结果导出...原创 2020-03-31 11:17:49 · 1488 阅读 · 1 评论 -
多类运动想象---左右手分类(基于MATLAB)
本文是基于CSP特征、POWER特征和CSP+POWER特征,利用BP神经网络模型进行左右手想象运动分类。BP网络参数设置为:隐含层层数,从1层递增至3层,隐含层节点数,从3个递增至8个,一共18个不同的网络模型。 首先,针对每个被试,利用BP网络计算分类准确率,选择最高准确率对应的网络模型作为其分类模型。 然后,将所有被试的数据进行整体分类,计算准确率,选择最好准确率对应的网络模型作为综合分类模型。原创 2019-12-03 11:09:30 · 3772 阅读 · 6 评论 -
画圆的函数----(基于MATLAB)
function Circle( x, y, r )theta = 0:2*pi/3600:2*pi;% 利用极坐标得到圆的坐标Circle1 = x + r*cos(theta);Circle2 = y + r*sin(theta);% 画圆plot(Circle1,Circle2,'--k')axis equal原创 2019-08-05 15:45:53 · 10745 阅读 · 0 评论 -
两点间的欧式距离---基于MATLAB
没事干,就想写点什么,于是就:function dist = Distance(X,Y) dist = sqrt(sum((X - Y).^2));原创 2019-08-05 15:51:48 · 8154 阅读 · 0 评论 -
感知机学习算法(自编函数)(基于MATLAB)
%%%%% 感知机模型 %%%%%%%%function [w,b] = Perceptron(x, y, w, b, a, Iter)% 其中a为学习率 Iter为迭代次数for i = 1:Iter num = 0; for j = 1:length(y) if y(j)*(w*x(:,j)+b) <= 0 ...原创 2019-08-01 15:21:54 · 537 阅读 · 0 评论 -
MATLAB绘制图时设置坐标轴的一些常用函数命令
利用MATLAB作图时,一些常用的函数命令:、figure()----创建新图窗;subplot(121)-----创建子图,12表示创建的子图为1行2列排列,1表示其中第一幅子图;xlim,ylim----横纵坐标的范围;xlabel,ylabel-----横纵坐标的名称;xticks,yticks-----横纵坐标刻度;xticklabels,yticklabels-----横纵坐...原创 2019-08-13 17:53:06 · 6122 阅读 · 0 评论 -
数据0值处理函数----MATLAB
%%%%% 此函数用来处理数据中的0值,主要的处理方法为:利用0值的前一个非0值替代0值function Y = NullComplet(X)if X(1) ~= 0 % 判断数据第一个值是否为0,若不是,则利用上述处理方法处理数据中的0。 for i = 2:length(X) if X(i) == 0 X(i) = X(i...原创 2019-08-13 18:00:54 · 2436 阅读 · 0 评论 -
分类结果字符形式转换成数字形式------MATLAB
函数主要作用,将分类结果中’w’转换成1,'N1’转换成2,'N2’转换成3,'N3’转换成4,'REM’转换成5.%分类结果字符形式转换成数字形式,以便于作图function Y = StrR2NumR(X)Stage = {'w','N1','N2','N3','REM'}; %数据包含的5个类别名称for i = 1:length(X) flag = s...原创 2019-08-13 18:13:41 · 800 阅读 · 1 评论 -
多个.txt文件插值及存储----基于MATLAB
function myInterP(path,outpath)%path 存放所有插值前文件的目录%outpath 存放所有插值后文件的目录namelist = dir([path,'*.txt']); %获取每个文件名,这里读取的是TXT文件x0 = linspace(0,30,3000); %插值前横坐标,共3000个点x1 = linspace(0,30,4800); ...原创 2019-08-26 20:05:09 · 503 阅读 · 0 评论 -
朴素贝叶斯算法---统计学习方法例4.1计算(MATLAB)
个人学习记录,只进行了书上例题的结果验证,没有改写成函数。%%%%%% 朴素贝叶斯算法 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%clcclearX = {1,'S';1,'M';1,'M';1,'S';1,'S';2,'S';2,'M';2,'M';2,'L';2,'L';3,'L';3,'M';3,'M';3,'L';3...原创 2019-08-05 15:35:36 · 928 阅读 · 0 评论 -
机器学习实战(4)----Logistic 回 归(基于python3.5)
Logistic回归的目的是寻找一个非线性函数Sigmiod的最佳拟合参数,求解过程可以由最优化算法来完成 。在最优 算法中,最常用 的就是梯度上升算法,而梯度上升算法又可以简化为随机梯度上升法 。随机梯度上升算法与梯度上升算法的效果相当,但占用更少的计算资源。此外,随机梯度上升是一个在线算法,它可以在新数据到来时就完成参数更新,而不需要重新读取整个数据集来进行批处理运算。import num...原创 2019-07-25 18:01:04 · 154 阅读 · 0 评论 -
多维缩放法(MDS)------- 自写MATLAB函数
function MDSMat = MyMDS(DMat, k)%%%%参数 DMat 为距离(或相似度)矩阵%%%%参数 k 为降维的目标维度%%%%%%%%%%%%%%%%%%%%%%%%%%% example %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% D = [[0,587,1212,701,1936,604,748,2139,2182,54...原创 2019-07-23 16:30:44 · 1601 阅读 · 2 评论 -
CART---回归树(基于MATLAB)
clcclear all% 导入数据load('S_Data.mat') % 预测S含量所用数据n =12; % n 是自变量的个数m = 1; % m 是因变量的个数% 读取训练数据train_num = 1600; %训练样本数train_Data = S_Data(1:train_num,:);train_Input = S_Data(1:train...原创 2019-04-13 16:30:56 · 6521 阅读 · 13 评论 -
数据预处理---空值(补全或删除)与异常值(剔除)(基于MATLAB)
% clc% clear all% % 导入数据(原始数据)Data = xlsread('F:\实验数据\数据汇总表111','D:M'); figure(1)x3str={'z1','z2','z3','z4','z5','z6','z7','z8','z9','z10','z11','z12','z13','z14','z15'}bar(Data(1:15))xtextp...原创 2019-04-13 16:44:03 · 26800 阅读 · 7 评论 -
数据可视化——变量相关性(基于MATLAB)
% 数据可视化——变量相关性% 读取数据clcclear allload('Data.mat')% 绘制变量间相关性强度图covmat = corrcoef(Data);figure(1)x3str={'z1','z2','z3','z4','z5','z6','z7','z8','z9','z10','z11','z12','z13','z14','z15','z16','z...原创 2019-04-13 16:33:19 · 4732 阅读 · 0 评论 -
偏最小二乘回归(基于MATLAB)
clcclear all% 导入数据load('Data.mat')S_Data = Data(:,[1:27,29]);n = 27; % n 是自变量的个数m = 1; % m 是因变量的个数% 读取训练数据train_num = 1600; %训练样本数train_Data = S_Data(1:train_num,:);mu = mean(train_D...原创 2019-04-13 16:29:05 · 6305 阅读 · 11 评论 -
最小二乘支持向量机(基于MATLAB)
需要下载工具箱,我下载的是:LSSVMlabv1_8_R2009b_R2011a,网上随便一搜就可以下载到。参数gam选取clcclear all%% 导入数据load('S_Data.mat') % 预测S含量所用数据n = 12; % n 是自变量的个数m = 1; % m 是因变量的个数%% 读取训练数据train_num = 1600; %训练样本...原创 2019-04-13 16:22:22 · 18728 阅读 · 84 评论 -
BP神经网络(基于MATLAB)
clcclear all%% 导入数据load('S_Data.mat') % 预测S含量所用数据n = 12; % n 是自变量的个数m = 1; % m 是因变量的个数%% 读取训练数据train_num = 1600; %训练样本数train_Data = S_Data(1:train_num,:);% 特征值归一化[train_Input,min...原创 2019-04-13 16:14:56 · 1524 阅读 · 2 评论 -
机器学习实战(2)----决策树(基于python3.5)
'''优点:计算复杂度不高,输出结果易于理解,对中间值的缺失不敏感,可以处理不相关特征数据缺点:可能会产生过度匹配问题适用数据类型:数值型和标称型信息增益:ID3 信息增率:C4.5基尼指数:CART'''from math import logimport operator#计算给定数据集的香农熵def calcShannonEnt(dataSet): nu...原创 2019-04-13 16:01:58 · 215 阅读 · 0 评论 -
机器学习实战(1)----K-近邻算法(基于python3.5)
ML新手日常学习记录代码基于python3.5‘’’优点:精度高、对异常值不敏感、无数据输入假定。缺点:计算复杂度高、空间复杂度高。适用数据范围:数值型和标称型。k-近邻算法是分类数据最简单最有效的算法,它是基于实例的学习,使用算法时必须有接近实际数据的训练样本数据k-近邻算法必须保存全部数据集,若训练数据集很大,就必须使用大量的存储空间k-近邻算法对每个数据计算距离值,计算比较耗...原创 2019-04-13 15:49:36 · 187 阅读 · 0 评论 -
主成分分析---PCA(基于MATLAB)
clcclear all%% 导入数据及处理load('Data_shuxing')%数据标准化处理n = size(Data_shuxing,2);for i = 1:n SA(:,i) = (Data_shuxing(:,i)-mean(Data_shuxing(:,i)))/std(Data_shuxing(:,i));end%% 计算相关系数矩阵的特征值和特征向量...原创 2019-04-19 17:31:41 · 611 阅读 · 0 评论 -
机器学习实战(3)----朴素贝叶斯(基于python3.5)
import numpy as npdef loadDataSet(): #实验样本 postingList = [['my', 'dog', 'has', 'flea', 'problems', 'help', 'please'], ['maybe', 'not', 'take', 'him', 'to', 'dog', 'park', '...原创 2019-04-13 17:04:01 · 202 阅读 · 0 评论