百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术分类 > 正文

机器学习中有哪些形式简单却很巧妙的 idea?

ztj100 2025-02-08 13:56 13 浏览 0 评论


来源:机器学习与大数据挖掘

本文约1600字,建议阅读5分钟

本文介绍了几种企业中简单而适用的算法。

1. 异常检查算法Isolation Forest(孤立森林)

作者:桔了个仔

https://www.zhihu.com/question/347847220/answer/836019446

原理超简单,但检测效果可以说是state of the art. 对一个空间进行二分,早划分「孤立」出来的就是很可能异常的。「孤立」指的是这一边只有这一个数据点。因为是二分,我们可以构建一颗二叉树。例如下图的一棵树,第一次二分,左边有数据的a,b,c,右边只有d,那么d大概率就是异常点。为啥?想想你画一条线,把一把米分成了两边,左边只有一粒,那左边那粒很可能是离其他米粒很远。

为了更直观,有更多一步了解,请看下图,直觉上我们就知道 [公式] 是普通点, [公式] 是异常点。那么用Isolation tree怎么解释呢?

如果要把xi孤立出来,需要很11次划线,而x0需要的次数要少很多。所以x0比xi更可能是异常点。一棵树不够可信?没事,记得随机森林random forest不?没错,这里也引进一堆树。如果多数的树都在前几次分割时分出同一个点,那么这个点是异常点的概率就非常高了。

可以看到,树的数量(横轴)超过10时,平均分割次数(纵轴)就收敛了。从这个图我们可以看出,某个点x0 被「孤立」前,平均分割次数低于5,那么x0就是异常点。

原理是不是超级简单呢。如果想了解更多数学上的原理,可以参考下面的参考文献。

参考文献:

https://cs.nju.edu.cn/zhouzh/zhouzh.files/publication/icdm08b.pdf

2. word2vec

作者:苘郁蓁

https://www.zhihu.com/question/347847220/answer/881216785

2013年Mikolov的神作word2vec,目前两篇paper的引用量已经达到15669和12670了!这个工作属于nlp预训练和graph embedding的里程碑,而且思想还贼好理解。

word2vec的思想可以简单的归结为一句话:利用海量的文本序列,根据上下文单词预测目标单词共现的概率,让一个构造的网络向概率最大化优化,得到的参数矩阵就是单词的向量。

具体来说,对于Skip-Gram模型,就是给定句子中一个特定的词(input word),随机选它附近的一个词,网络的目标是预测选到这个附近词的概率。而对于CBOW模型则相反。而对于一个单词,先作one-hot,乘以参数矩阵,就得到了单词的向量表示,一图胜千言:

更加细致的negative sampling和hierarchical softmax都是针对训练问题的优化,但这一思想的本质就是很简单优雅。

举个简单的例子:词表大小为9的一段文本序列one-hot,乘以一个参数矩阵(蓝色部分),做均值pooling,乘以一个参数矩阵然后经过softmax层得到对应目标单词的概率向量(最后的红色部分),向量维度为词表大小,再根据ground truth反向传播优化参数矩阵,最后得到的就是类似图1的参数矩阵,列为词表大小9,行为词向量的维度4(注意:参数矩阵方向跟图1反过来了)。

word2vec在nlp领域的应用就不用说了,目前已经成为所有nlp模型的标配步骤。

更令我吃惊的是它在其他领域的遍地开花。这里整理一下最近几年在其他领域的embedding工作合集,全部是顶会!全部都有落地!就是这么简单粗暴而优雅!

3. 成分分析(Principal components analysis,PCA)

作者:Evan

https://www.zhihu.com/question/347847220/answer/871450361

4. Residual learning

作者:我爱吃三文鱼

https://www.zhihu.com/question/347847220/answer/854604632

Kaiming大神的Residual learning:

形式:y = f(x) + x

影响了后续的3万份研究工作。

5. SVM

作者:Cuute

https://www.zhihu.com/question/347847220/answer/874707947

我不知道svm的形式算不算简单,但是从图上来讲很直观。

这个小东西是上个世纪六七十年代就已经提出来的一个想法。通过不同类别分界的某些点来画出一个分割面,进而实现了分类。很像夹逼定理。

svm的精巧在于这个想法,是一个很自然的方法,不用数学光看图就能看出来的一个方法。并且能很自然的去发散。

比如说,图中的两个类别的边界极其明显,是一个线性的边界。但是一定会存在这样的两类点,不能在当前的平面上使用一个线性的分类来解决。那么如果这些点只是三维向二维平面的投影呢?

如果这两类点是有高度差的,那么是不是有可能还会找到一个分界面在三维空间进行分类?

三维找不到,那会不会是四维……

于是,我们引出了核方法。

最后,你觉得机器学习中有哪些形式简单却又很巧妙 idea?欢迎留言评论~

原文链接:

https://www.zhihu.com/question/347847220

编辑:王菁

校对:汪雨晴

相关推荐

Vue3非兼容变更——函数式组件(vue 兼容)

在Vue2.X中,函数式组件有两个主要应用场景:作为性能优化,因为它们的初始化速度比有状态组件快得多;返回多个根节点。然而在Vue3.X中,有状态组件的性能已经提高到可以忽略不计的程度。此外,有状态组...

利用vue.js进行组件化开发,一学就会(一)

组件原理/组成组件(Component)扩展HTML元素,封装可重用的代码,核心目标是为了可重用性高,减少重复性的开发。组件预先定义好行为的ViewModel类。代码按照template\styl...

Vue3 新趋势:10 个最强 X 操作!(vue.3)

Vue3为前端开发带来了诸多革新,它不仅提升了性能,还提供了...

总结 Vue3 组件管理 12 种高级写法,灵活使用才能提高效率

SFC单文件组件顾名思义,就是一个.vue文件只写一个组件...

前端流行框架Vue3教程:17. _组件数据传递

_组件数据传递我们之前讲解过了组件之间的数据传递,...

前端流行框架Vue3教程:14. 组件传递Props效验

组件传递Props效验Vue组件可以更细致地声明对传入的props的校验要求...

前端流行框架Vue3教程:25. 组件保持存活

25.组件保持存活当使用...

5 个被低估的 Vue3 实战技巧,让你的项目性能提升 300%?

前端圈最近都在卷性能优化和工程化,你还在用老一套的Vue3开发方法?作为摸爬滚打多年的老前端,今天就把私藏的几个Vue3实战技巧分享出来,帮你在开发效率、代码质量和项目性能上实现弯道超车!一、...

绝望!Vue3 组件频繁崩溃?7 个硬核技巧让性能暴涨 400%!

前端的兄弟姐妹们五一假期快乐,谁还没在Vue3项目上栽过跟头?满心欢喜写好的组件,一到实际场景就频频崩溃,页面加载慢得像蜗牛,操作卡顿到让人想砸电脑。用户疯狂吐槽,领导脸色难看,自己改代码改到怀疑...

前端流行框架Vue3教程:15. 组件事件

组件事件在组件的模板表达式中,可以直接使用...

Vue3,看这篇就够了(vue3 从入门到实战)

一、前言最近很多技术网站,讨论的最多的无非就是Vue3了,大多数都是CompositionAPI和基于Proxy的原理分析。但是今天想着跟大家聊聊,Vue3对于一个低代码平台的前端更深层次意味着什么...

前端流行框架Vue3教程:24.动态组件

24.动态组件有些场景会需要在两个组件间来回切换,比如Tab界面...

前端流行框架Vue3教程:12. 组件的注册方式

组件的注册方式一个Vue组件在使用前需要先被“注册”,这样Vue才能在渲染模板时找到其对应的实现。组件注册有两种方式:全局注册和局部注册...

焦虑!Vue3 组件频繁假死?6 个奇招让页面流畅度狂飙 500%!

前端圈的朋友们,谁还没在Vue3项目上踩过性能的坑?满心期待开发出的组件,一到高并发场景就频繁假死,用户反馈页面点不动,产品经理追着问进度,自己调试到心态炸裂!别以为这是个例,不少人在电商大促、数...

前端流行框架Vue3教程:26. 异步组件

根据上节课的代码,我们在切换到B组件的时候,发现并没有网络请求:异步组件:...

取消回复欢迎 发表评论: