算法理论
文章平均质量分 70
hubery_zhang
学习理论、练习编程
展开
-
使用libsvm(faruto)工具箱问题小结
问题一:Error: C<=0方法:根据你使用的参数寻优方法,修改参数范围。比如GA方法寻优,找到源文件gaSVMcgForClass.m ,修改C的取值范围为大于0的数即可。问题二:svmtrain()返回值model为空。方法:svmtrain参数格式错误。例子:cmd = ['-c ',num2str(bestc),' -g ',num2str(bestg),'-s 0 -t 2'];...原创 2018-07-13 15:36:24 · 1195 阅读 · 0 评论 -
正则化问题
参考来源:(1)详细讲解版本机器学习中的范数规则化之(一)L0、L1与L2范数 http://blog.csdn.net/zouxy09/article/details/24971995机器学习中的范数规则化之(二)核范数与规则项参数选择 http://blog.csdn.net/zouxy09/article/details/24972869(2)知乎回答https:转载 2017-06-26 11:23:32 · 457 阅读 · 0 评论 -
libsvm-3.1-[FarutoUltimate3.1Mcode]——辅助函数简介(修改)
此工具箱是matlab中文论坛版主faruto在林智仁教授版本上改进的libsvm工具箱。工具箱下载地址:http://www.matlabsky.com/thread-17936-1-1.html本文主要介绍其中增加的参数(c和RBF核函数中的g)寻优函数和其他一些有用的函数。1、Grid SearchSVMcgForClass.m (分类问题寻优)、SVMc原创 2017-06-02 15:17:16 · 5661 阅读 · 22 评论 -
libsvm——数据格式的转换及使用
一、将.xlsx格式的数据转换为libsvm格式:1、下载FormatDatalibsvm.xls。下载地址:http://download.csdn.NET/detail/smilehehe110/9702456 http://download.csdn.NET/detail/smilehehe110/97024562、打开FormatDatalibsvm.xls,注原创 2017-05-15 15:15:04 · 6561 阅读 · 11 评论 -
libsvm——参数优化工具grid.py的使用
工具grid.py主要通过交叉验证的方法求最优的核函数参数C和gamma。参考来源:http://blog.csdn.net/flydreamgg/article/details/4470477友情提示,耗费了一晚上时间才搞定,吐血啊。。。千万不要漏步骤,严格跟着来保证没问题。当然,你也可以发挥,比如dos的输入那里, 总起来说,命令为python 目标文件 样本文件,其原则是原创 2017-05-14 22:57:11 · 8221 阅读 · 8 评论 -
libsvm3.22——使用指南
关于libsvm的使用,官方文档和matlab中文论坛大神faruto已经写得很明白,针对libsvm3.22版本稍稍有一点需要改进的。参考来源:网址:http://www.csie.ntu.edu.tw/~cjlin/libsvm/参考文档:《A practical guide to SVM classification》matlab中文论坛:http://www.matla原创 2017-05-14 22:42:12 · 4347 阅读 · 4 评论 -
libsvm3.22——在matlab(32位和64位)中的安装
一、libsvm官方网址http://www.csie.ntu.edu.tw/~cjlin/libsvm/使用入门阅读文档:《A practical guide to SVM classification》 下载地址:http://download.csdn.net/detail/ckzhb/9840092 二、安装详细安装教程:http://www.matlabsky.c...原创 2017-05-11 22:32:57 · 5573 阅读 · 0 评论 -
matlab自带SVM算法例子(附函数详解)
一、程序SVM理论的学习,见文章:http://blog.csdn.net/ckzhb/article/details/68941695load fisheriris %fisheriris 是一个数据集。X = [meas(:,1), meas(:,2)];原创 2017-05-10 10:47:09 · 66638 阅读 · 6 评论 -
SVM学习网址记录
1、pluskid博客: http://blog.pluskid.org/?page_id=68376248372、JerryLead博客:http://www.cnblogs.com/jerrylead/tag/Machine%20Learning/3、july的csdn:支持向量机通俗导论(理解SVM的三层境界)特点:基本以前两篇为基础,对前两篇内容进行整个。最原创 2017-04-01 10:28:33 · 8548 阅读 · 0 评论 -
BP神经网络:feedforwardnet版回归预测
程序相关说明:input:预处理后的训练集数据 (60 by 14731)output:预处理后的训练集标签(1 by 14731)input_test:预处理后的测试集数据(60 by 100)output_test:测试集数据经模型拟合后的结果(1 by 100)BPoutput:反归一化,得到数据本身数量级的值(1 by 100)net:训练后的网络注:与newf原创 2017-11-23 22:04:51 · 4357 阅读 · 4 评论 -
BP神经网络matlab程序运行问题
一、Inputs and targets have different numbers of samples. net = train(net,input,label); 使用网络作非线性拟合。input:60 by 14731;label:14731 by 1.解决方法:将label转置!!二、Output data size does not mat原创 2017-11-23 16:05:01 · 10344 阅读 · 0 评论 -
归一化函数mapminmax的讨论
一、基本用法[y,ps] = mapminmax(x,ymin,ymax) % 这里如果不指定 ymin,ymax,则ymin默认为-1,ymax默认为1。mapminmax(data) 默认归一化范围为[-1,1],且对每一行做归一化。一定记住是对行进行归一化!!!二、归一化的讨论参考:http://www.ilovematlab原创 2017-06-05 20:51:29 · 11040 阅读 · 8 评论 -
matlab建立BP神经网络中train函数的参数及学习算法参数
1.神经网络主要训练参数net.trainParam.goal=0.1 % 训练目标最小误差,这里设置为0.1net.trainParam.epochs=300; % 训练次数,这里设置为300次net.trainParam.show=20; % 显示频率,这里设置为没训练20次显示一次net...原创 2017-03-08 19:25:22 · 46414 阅读 · 1 评论 -
一个简单的BP神经网络matlab程序(附函数详解)
说明:20180604更新1、此文的程序来自博客:http://www.cnblogs.com/heaad/archive/2011/03/07/1976443.html2、本人对其中涉及到的函数进行了详细说明。3、此程序中部分函数的使用方式是高版本Matlab中不推荐的文中给出了当前高版本Matlab中的使用方式,并给出了相关博客地址,具体如下:归一化方式mapminmax ...原创 2017-03-06 10:53:42 · 95270 阅读 · 88 评论 -
BP神经网络的数学原理及其算法实现
说明:1、本文以截图形式转载自http://blog.csdn.net/zhongkejingwang/article/details/44514073 2、转载供个人学习研究,对部分内容做出个人笔记。一、BP神经网络简介BP神经网络是一种按误差逆传播算法训练的多层前馈网络.它的学习规则是使用梯度下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小转载 2017-02-28 22:39:01 · 9584 阅读 · 0 评论 -
机器学习实战——AdaBoost
书籍:《机器学习实战》中文版IDE:Spyder环境:Adaconda3 python3.6(Spyder相对pycharm来说,比较简洁,而且对于常用matlab的人,感觉更亲切。它可以方便的观察变量值,查看运行结果等。但是spyder没有代码折叠!代码提示方面也远不如pycharm!)Ensemble方法:集合方法,将弱分类器变成一个强分类器。原创 2017-12-18 22:54:44 · 857 阅读 · 0 评论 -
机器学习实战——岭回归、缩减法
一、基本知识1、岭回归:从公式看,加入正则化项(2范数)。回归系数的计算公式为:问题引入:若给定数据集X,如果XTX的逆存在,可以使用常规的线性回归方法。但是,(1)数据样本数比特征数少的情况,矩阵的逆不能直接计算;(2)即使样本数多于特征数,若特征高度相关,XTX的逆依然无法计算。此时,可以考虑岭回归。另,岭回归是有偏估计回归方法,引入lamda来限制所有系数原创 2017-12-03 21:56:07 · 1198 阅读 · 1 评论 -
机器学习实战——线性回归和局部加权线性回归(含python中复制的四种情形!)
书籍:《机器学习实战》中文版IDE:PyCharm Edu 4.02环境:Adaconda3 python3.6注:本程序相比原书中的程序区别,主要区别在于函数验证和绘图部分。一、一般线性回归(最小二乘法OLS)回归系数求解公式:说明:X矩阵中每一行是一个样本,y是列向量。只有逆矩阵存在的时候使用,必须在代码中进行判断。from numpy原创 2017-11-28 21:59:03 · 4022 阅读 · 0 评论 -
python文件读取方法
一、text文件的读取readlines():一次读取所有内容并按行返回listsplit()方法:str.split(str="",num=string.count(str)).指定分隔符对字符串进行切片,如果参数num 有指定值,则仅分隔 num 个子字符串。例子一:withopen('testSet.txt') as fr: forlin原创 2017-11-27 22:40:06 · 1453 阅读 · 0 评论 -
机器学习实战——Logistic回归
书籍:《机器学习实战》中文版IDE:PyCharm Edu 4.02环境:Adaconda3 python3.6关键词:sigmoid函数、批梯度上升法、随机梯度上升法from numpy import *import matplotlib.pyplot as pltdef loadDataSet(): dataMat = [] label原创 2017-11-27 21:42:34 · 821 阅读 · 0 评论 -
机器学习实战—朴素贝叶斯及要点注解
书籍:《机器学习实战》中文版IDE:PyCharm Edu 4.02环境:Adaconda3 python3.6#!/usr/bin/env python3# -*- coding: utf-8 -*-from numpy import *# 测试函数用的简单实例def loadDataSet(): postingList=[['my', 'dog', 'ha原创 2017-11-19 22:30:50 · 512 阅读 · 0 评论 -
python文件的运行方法
方法一:从命令行运行(1)首先进入DOS环境。win+r,然后输入cmd。(2)直接输入python+空格(3)将文件拖拽到光标处或者输入文件所在位置方法二:解释器中运行文件为了方便操作,将hello.py直接放在D盘下。(1)在DOS环境下,定位到python文件所在位置;(2)进入python交互式环境;(3)import 文件名原创 2017-11-12 23:19:51 · 10856 阅读 · 0 评论 -
机器学习实战——决策树:matplotlib绘图
书籍:《机器学习实战》中文版IDE:PyCharm Edu 4.02环境:Adaconda3 python3.6第一个例子:import matplotlib.pyplot as plt#定义文本框和箭头格式decisionNode = dict(boxstyle="sawtooth",fc="0.8")leafNode = dict(boxsty原创 2017-11-12 19:48:51 · 1061 阅读 · 0 评论 -
机器学习实战——决策树:树的构建及分类
书籍:《机器学习实战》中文版IDE:PyCharm Edu 4.02环境:Adaconda3 python3.6主要内容:使用ID3算法构建1、信息熵的计算+数据集的划分=根据信息增益选择最佳的数据集划分方式2、创建树、投票法3、将决策树用于分类 树的保存与提取第一部分代码:from math import logimport operator# 创建简单的鱼原创 2017-11-12 17:41:14 · 585 阅读 · 0 评论 -
机器学习实战——KNN及部分函数注解
书籍:《机器学习实战》中文版IDE:PyCharm Edu 4.02环境:Adaconda3 python3.6本系列主要是代码学习记录,其中设计的理论知识,不做过多解释。书中代码使用的是python2,所以代码会有些许变化,并对其中部分函数进行注解。#!/usr/bin/env python3# -*- coding: utf-8 -*-import matpl原创 2017-11-10 14:44:46 · 706 阅读 · 0 评论 -
Jacobian矩阵、Hessian矩阵
本文来源于:http://jacoxu.com/jacobian%e7%9f%a9%e9%98%b5%e5%92%8chessian%e7%9f%a9%e9%98%b5/由于经常忘记雅克比矩阵和海森矩阵的定义,故摘录下来,方便察看。1. Jacobian在向量分析中, 雅可比矩阵是一阶偏导数以一定方式排列成的矩阵, 其行列式称为雅可比行列式. 还有, 在代数几何中, 代数曲转载 2017-03-22 16:54:35 · 1287 阅读 · 0 评论 -
牛顿法和拟牛顿法
本文主要从大量介绍牛顿法和拟牛顿法的博客中,选出两篇讲解详细的博文。对博文的内容进行整理,方便学习和查看。原创 2017-03-22 22:25:16 · 513 阅读 · 0 评论 -
最小二乘法、梯度下降法和两者区别
一、最小二乘法(最小平方法)参考来源:一元线性回归模型与最小二乘法及其C++实现http://blog.csdn.net/qll125596718/article/details/8248249监督学习中,如果预测的变量是离散的,我们称其为分类(如决策树,支持向量机等),如果预测的变量是连续的,我们称其为回归。回归分析中,如果只包括一个自变量和一个因变量,且二者的关系可用一条直线近原创 2017-03-23 20:58:20 · 1397 阅读 · 0 评论 -
D-S证据理论基本概念
证据理论是Dempster于1967年首先提出,由他的学生Shafer于1976年进一步发展起来的一种不精确推理理论,也称为Dempster/Shafer 证据理论(D-S证据理论)。主要是基于“证据”和“组合”来处理不确定性推力问题的数学方法。1、识别框架:由互不相容的基本命题(假定)组成的完备集合,表示对某一问题的所有可能答案,但其中只有一个答案是正确的。2、mass函数(BPA):识原创 2017-03-16 15:57:06 · 8595 阅读 · 0 评论 -
主成份分析(PCA)——原理、实现步骤
PCA(Principal Component Analysis)是一种常用的数据分析方法。PCA通过线性变换将原始数据变换为一组各维度线性无关的表示,可用于提取数据的主要特征分量,常用于高维数据的降维。本文主要分为两大部分:第一部分:PCA原理的主要内容。第二部分:给出PCA程序实现步骤。第三部分:程序详解。一、原理参考:http://blog.csdn.net/原创 2017-07-18 10:20:20 · 6250 阅读 · 0 评论 -
代码:小波包分解与重构、小波包能量特征提取
1、小波变换的理解傅里叶变换——短时傅里叶变换——小波变换。参考文献:以下两篇参考资料讲述得十分清楚,有助于理解小波变换。但具体的数学角度阐述,请参考其他资料。(1)知乎专栏:形象易懂讲解算法I——小波变换https://zhuanlan.zhihu.com/p/22450818(2)知乎专栏:傅里叶分析之掐死教程。https://zhuanlan.zhihu.co原创 2017-10-19 20:07:03 · 68918 阅读 · 35 评论 -
理解:回归与拟合、归一化与标准化
回归和拟合:一、回归:研究一个随机变量Y对另一个(X)或一组(X1,X2,…,Xk)变量的相依关系的统计分析方法。应用回归预测法时应首先确定变量之间是否存在相关关系。如果变量之间不存在相关关系,对这些变量应用回归预测法就会得出错误的结果。二、拟合所谓拟合是指已知某函数的若干离散函数值{f1,f2,…,fn},通过调整该函数中若干待定系数f(λ1,λ2,…,λn),使得该函数与已原创 2017-09-13 09:44:34 · 12169 阅读 · 0 评论 -
主成分分析(PCA)——matlab程序及函数详解
参考来源:http://www.cnblogs.com/Hand-Head/articles/5156435.htmlhttp://www.matlabsky.com/thread-11751-1-1.htmlmatlab帮助文档例子:它使用了衡量美国329个城市生活质量的9个指标:气候、住房、健康、犯罪率、交通、教育、艺术、娱乐和经济。对于各指标,越高表示越好,如原创 2017-07-18 10:57:41 · 75012 阅读 · 11 评论