当前位置: 首页 > news >正文

Finale

#Feature Exploitation Techniques 这几篇博客介绍的第一个feature transform方法就是kernel。kernel先出现是在SVM里面,原因就是为了减少 內积计算的复杂度,把特征转换和內积计算结合到一起。特征转换其实也是一种特征的提取。介绍过的kernel:polynomial kernel,Gaussion kernel,stump kernel。另外,不同的kernel相加或者是相乘做uniform或者是combination可以提取更加复杂的特征,比如Network。但是使用kernel是需要满足Mercer条件的,对称半正定。不同的kernel可以搭配不同的模型,SVM,SVR,probability SVM,或者是kernel ridge regression等等。之前学过的PCA,kmean这些算法都包括了內积的计算,所以它们各自也有对应的kernel函数,比如之前使用的Kmean是用的高斯距离,那么kernel就是Gaussion kernel了。

kernel是使用的第一种特征转换的方法,第二种方法就是aggregation了,之前介绍的所有的hypothesis都可以看做是一种特征转换,比如之前学过的decision tree,RBF Network。如果g是已知的,那我们可以把它们进行uniform的组合,non-uniform和conditional组合。如果g是未知的,那么我们就可以使用bagging或者Adaboost来建立模型。
其实就是总结了一下aggregation model。特征转换是一种寻找特征的方法,特征提取是另外学习到的,提取出隐藏的特征,hidden feature。一般通过unsupervised learning,从原始数据中提取特征,有点像生成模型,先摸清楚数据的情况分布特点,再进行模型的建立。比如:聚类算法,kmeans,mean shfit等等,PCA都是。
另外还有一种就是 维度的压缩了,其实有点像特征提取,因为维度压缩其实就是先看看哪一个特征重要,然后把重要的特征留下了,不重要的去掉,比较有代表性的就是PCA,autoencode,matrix factorization,这种方法可以把数据从高纬度降到低纬度是很有用的。
顺带提一下,decision stump是遍历所有的维度看看哪一个维度分开的purity是最小的,random forest可以进行特征的重要性选择,通常也是随机选择一两个或者是做OOB特征重要性选择得到重要的特征。 总结一下特征处理的方法: 特征转换:可以使用kernel,aggregation 特征提取:matrix factorization,autoencode 降维:PCA,autoencode #Error Optimization Techniques 对于Ein的优化,首先第一个就是梯度下降或者是梯度上升,这两个方法都是比较常用的一次逼近方法,SGD、Steepest Descent和Functional GD都是利用了梯度下降的技巧。
除了梯度下降,还有一些是做不了的,比如SVM的dual problem和α的求解,都是需要数学上的一些推导和技巧来转换成其他形式之后再处理。
如果原始问题比较复杂,可以拆分求解,拆分成多个子问题进行求解,比如multi-stage。另外也可以使用交叉迭代,matrix factorization的优化方法就是一种。刚刚拆分子问题的也就是分而治之的方法就是decision tree了。
最后再来探讨一下梯度下降方法,梯度下降是一次逼近的方法,意味着他只是求了一次导数,也就是Taylor展开一次,它的视野就只能看到一阶的地方,所以他选取的方向就是一阶的方向而已。对于另外一种optimization 方法牛顿法就不太一样。牛顿法的是二次逼近,意味着牛顿法它看的更加远,看的是再二次导数的地方哪个是最远的,当然牛顿法也可以Taylor三次展开,但是一般都是二次了,所以牛顿法比梯度下降迭代的更加快,因为它看的更加远,走的就更加稳。 #Overfitting Elimination Techniques Feature Exploitation Techniques和Error Optimization Techniques都是为了优化复杂模型减小Ein,但是Ein过小就会造成overfitting的问题。因此机器学习中过拟合的处理是非常重要的。 处理过拟合的方法之前介绍过:large margin,regularization,voting。
除了上面提到的方法,还可以使用validation来处理
这个章节的东西比较少,也没有什么代码,是看机器学习技法课程最后一张总结的了,最后贴一下十大data mining算法:

转载于:https://juejin.im/post/5c321159518825253661ab11

相关文章:

  • String不得不说的那些事
  • 利用React 16.6新特性优化应用性能
  • ajax的19道经典面试题
  • 大数据就业前景,分析的太到位了
  • (原創) 如何優化ThinkPad X61開機速度? (NB) (ThinkPad) (X61) (OS) (Windows)
  • 程序员的本质
  • matlab练习程序(直方图匹配)
  • TortoiseSvn介绍
  • C#中Monitor和Lock以及区别
  • HDU 1575 Tr A (矩阵乘法)
  • MVC使用基架添加控制器出现的错误:无法检索XXX的元数据
  • 从程序员的视角揭秘Silverlight
  • oracle索引再论
  • Android应用开发学习笔记之多线程与Handler消息处理机制
  • jquery $.each() 小探
  • [数据结构]链表的实现在PHP中
  • CentOS从零开始部署Nodejs项目
  • CSS3 聊天气泡框以及 inherit、currentColor 关键字
  • Docker 1.12实践:Docker Service、Stack与分布式应用捆绑包
  • ES6 学习笔记(一)let,const和解构赋值
  • If…else
  • iOS小技巧之UIImagePickerController实现头像选择
  • js
  • MYSQL 的 IF 函数
  • Zsh 开发指南(第十四篇 文件读写)
  • 简单基于spring的redis配置(单机和集群模式)
  • 每天10道Java面试题,跟我走,offer有!
  • 嵌入式文件系统
  • 体验javascript之美-第五课 匿名函数自执行和闭包是一回事儿吗?
  • 系统认识JavaScript正则表达式
  • 项目管理碎碎念系列之一:干系人管理
  • Android开发者必备:推荐一款助力开发的开源APP
  • 哈罗单车融资几十亿元,蚂蚁金服与春华资本加持 ...
  • 专访Pony.ai 楼天城:自动驾驶已经走过了“从0到1”,“规模”是行业的分水岭| 自动驾驶这十年 ...
  • ​LeetCode解法汇总518. 零钱兑换 II
  • ​Linux·i2c驱动架构​
  • (poj1.2.1)1970(筛选法模拟)
  • (第27天)Oracle 数据泵转换分区表
  • (附源码)spring boot基于小程序酒店疫情系统 毕业设计 091931
  • (附源码)计算机毕业设计SSM基于java的云顶博客系统
  • (附源码)计算机毕业设计SSM疫情社区管理系统
  • (三)docker:Dockerfile构建容器运行jar包
  • (十一)c52学习之旅-动态数码管
  • .NET Core SkiaSharp 替代 System.Drawing.Common 的一些用法
  • .net core Swagger 过滤部分Api
  • .Net Core webapi RestFul 统一接口数据返回格式
  • .net 简单实现MD5
  • .NET国产化改造探索(一)、VMware安装银河麒麟
  • .NET简谈设计模式之(单件模式)
  • .Net小白的大学四年,内含面经
  • @软考考生,这份软考高分攻略你须知道
  • [ Linux ] git工具的基本使用(仓库的构建,提交)
  • [ 环境搭建篇 ] 安装 java 环境并配置环境变量(附 JDK1.8 安装包)
  • [ 云计算 | AWS 实践 ] Java 如何重命名 Amazon S3 中的文件和文件夹
  • [2021 蓝帽杯] One Pointer PHP