从0开始学习机器学习--Day24--核函数

核函数(Kernelsl function)

非线性数据的决策边界

对于非线性问题来说,决策边界在很多时候都是曲线,需要我们在假设函数中加入高阶多项式来拟合原始数据,这对于算法来说需要很长的运行时间去计算这些高阶多项式,那么有没有更高效的方法呢?

假设我们在特征x_{1},x_{2}的坐标轴上标记三个点l^{(1)},l^{(2)},l^{(3)},设置新的输入变量为f_{1}=similarity(x,l^{(1)}) = e^{(-\frac{||x-l^{(1)}||^{2}}{2 \sigma^{2}})},后面三个点也是类似的计算公式,我们把相似度函数similarity称为核函数,这里展开的核函数是其中一种,叫做高斯核函数,其中||x-l^{(1)}||被称为欧式距离,也就是两个向量点之间距离的平方,一般记作k(x,l^{(i)})

虽然看起来很奇怪,但我们从函数内部的性质来剖析,就能知道为什么这个核函数可以用来解决分类问题了。假如 x \approx l^{1},意味着f_{1} \approx e^{-0} =1,此时结果为真,相反如果xl^{1}之间的距离很远,说明函数展开式中两点的距离非常大,那么f_{1} \approx e^{-\infty} =0,从而表示结果为假。而核函数里的分母\sigma^{2}则代表了f_{1}从1下降到0的速度,分母越大,下降速度越慢,反之则越快,如下图所示:

不同的sigma对应的等高线图和凸函数图

而在放在假设函数中,假设我们已经知道了参数\theta_{0},\theta_{1},\theta_{2},\theta_{3}分别为-0.5,1,1,0,那么函数在预测时就会通过计算与三个标记点的距离,带入到假设函数与0比较大小,大于等于0即为1,否则为0,类似于下图:

核函数预测的决策边界

但我们还有另一个问题,我们该如何去定义这些标记点,尤其是对于复杂的问题来说,标记点的数量也会随之上升。

一般来说,我们会把训练集里的每个点都作为标记点,也就是说计算一个点x^{(i)}对于所有点包括自己的f_{m}^{(i)},将这些特征量像我们以前做的一样组装成向量,将函数写成\theta^{T}f \gg0 if(y=1)

当然,在使用SVM算法的过程中,有很多细节跟之前不太一样。例如, 输入特征之前都会做归一化,毕竟有些点和标记点之间的距离本来就很大,不作归一化处理容易出现畸形的决策边界;挑选核函数,像之前由于我们的训练样本较少,函数里的特征量较多,为了避免过拟合,我们都是使用了线性核函数,也就是普通的\theta^{T}的形式输入,但并不是所有符合情景的核函数都是能使用的,需要满足的一个规定叫默塞尔定理(对于形如2q - 1的整数,只有在q本身也是一个素数的情况下,它才有可能是素数,同理,可以要求算法在用数值技巧不要脱离对于参数的定义),要求所用的SVM算法能满足优化方法,且能快速求得参数。

还有一些可能经常会用到的核函数,一个是多项式核函数,形式写作k(x,l)=(x^{T}l+C)^{m},其中C为常数,当预测样本和标记点很接近时,k值会非常大,所以其使用的前提是样本的特征值都大于0;字符串核函数,当涉及到文本处理的时候会使用。

最后,要注意输入特征和样本都非常少的情况,这种时候应该做的是先增加或创造某些特征(这些可能是根据市场或者科学原理推导出来的),再使用逻辑回归或线性核函数。

视频学习链接:https://www.bilibili.com/video/BV1By4y1J7A5?spm_id_from=333.788.player.switch&vd_source=867b8ecbd62561f6cb9b4a83a368f691&p=75

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/59403.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

charles简单使用

一、安装&配置 1、安装 通过官网下载稳定版的charles。 说明:官网下载也可以免费使用,不用到处找破解版,还不安全。官网下载的也能用半小时,然后重启一下还能继续用。如果有钱就买个服务,如果不原因花钱就动一动…

VMware和CentOS 7.6 Linux操作系统的安装使用

1. 安装VMware 安装VMware之前,有些电脑是需要去BIOS里修改设置开启cpu虚拟化设备支持才能安装。如果运气不好在安装过程中安装不了的话就自行百度吧。 打开 VMware 的官网: https://www.vmware.com/ 点击 product,往下滑找到 see desktop hypeerviso…

OCP证书如何下载?

访问Oracle CertView网站: 打开网址 https://certview.oracle.com/ ,这是Oracle官方提供的证书查询平台 。 登录账号: 使用您的Oracle账号和密码登录CertView。如果您不记得密码,可以通过注册账号时预留的邮箱重置密码 。 查看成…

将vscode的终端改为cygwin terminal

现在终端是默认的power shell,没有显示cygwin 接下来选择默认配置文件 找到cygwin的选项即可 然后提示可能不安全什么的,点是,就有了

html+js+css实现拖拽式便签留言

前些日子在网上冲浪时,看到一个便签式留言墙,让人耳目一新。心想这个看着不错,额想要。于是便开始搜寻是否有相应开源插件,想将其引入自己的博客中。但是搜寻了一圈,都没有符合预期的,要么功能不符合。有的功能符合&am…

C++入门基础知识147—【关于C++ 一元运算符重载】

成长路上不孤单😊😊😊😊😊😊 【14后😊///C爱好者😊///持续分享所学😊///如有需要欢迎收藏转发///😊】 今日分享关于C 一元运算符重载的相关内容&#xff0…

2022年蓝桥杯JavaB组 省赛 题目解析(含AC_Code)

目录 前言(必读)第一题:星期计算 (简单)问题描述思路AC代码总结 第二题 山 (简单)问题描述题目分析山形数定义解题思路代码实现解析代码详解回文和“山形”判断函数主函数 AC代码复杂度分析 总结…

NLP论文速读(微软出品)|使用GPT-4进行指令微调(Instruction Tuning with GPT-4)

论文速读|Instruction Tuning with GPT-4 论文信息: 简介: 这篇论文试图解决的问题是如何通过指令调优(instruction-tuning)提升大型语言模型(LLMs)在执行新任务时的零样本(zero-shot&#xff0…

C++20 概念与约束(3)—— 约束的进阶用法

《C20 概念与约束(1)—— SFINAE》 《C20 概念与约束(2)—— 初识概念与约束》 ●《C20 概念与约束(3)—— 约束的进阶用法》 1、再谈约束主句与从句 上一篇文章中提到过约束可以无限嵌套。末尾也提到不…

c#使用COM接口设置excel单元格宽高匹配图片,如何计算?

c#使用COM接口设置excel单元格宽高如何换算 在实际工作中,经常需要在excel中插入图片。并设置单元格与图片对齐。但是excel单元格的宽度和高度使用不同的单位。单元格的宽度以字符宽度为单位,而高度以点为单位。如果按照实际值来设置,例如设…

【activiti工作流源码集成】springboot+activiti+mysql+vue+redis工作流审批流集成整合业务绑定表单流程图会签驳回

工作流集成实际项目案例,demo提供 源码获取方式:本文末个人名片直接获取。 前言 activiti工作流引擎项目,企业erp、oa、hr、crm等企事业办公系统轻松落地,请假审批demo从流程绘制到审批结束实例。 一、项目形式 springbootvue…

CKA认证 | Day2 K8s内部监控与日志

第三章 Kubernetes监控与日志 1、查看集群资源状态 在 Kubernetes 集群中,查看集群资源状态和组件状态是非常重要的操作。以下是一些常用的命令和解释,帮助你更好地管理和监控 Kubernetes 集群。 1.1 查看master组件状态 Kubernetes 的 Master 组件包…

推荐一款好用的postman替代工具2024

Apifox 是国内团队自主研发的 API 文档、API 调试、API Mock、API 自动化测试一体化协作平台,是非常好的一款 postman 替代工具。 它通过一套系统、一份数据,解决多个系统之间的数据同步问题。只要定义好接口文档,接口调试、数据 Mock、接口…

gdb调试redis。sudo

1.先启动redis-server和一个redis-cli。 2.ps -aux|grep reids查看redis相关进程。 3.开始以管理员模式附加进程调试sudo gdb -p 2968.注意这里不能不加sudo,因为Redis 可能以 root 用户启动,普通用户无法附加到该进程。否则就会出现可能下列情形&#…

YUM 的使用

YUM 是一个用于 Fedora 和 Red Hat 以及 CentOS 操作系统的前端软件包管理器,它可以自动处理依赖关系并一次性安装所有必需的软件包。 镜像站点选择 1. 备份原有的镜像源配置文件 系统默认的 yum 镜像源配置文件存储在 /etc/yum.repos.d/ 目录下,可以…

力扣 LeetCode 242. 有效的字母异位词(Day3:哈希表)

解题思路: 哈希表三种数据结构的选择 1. 数组:适用于数据量小的情况 2. set:适用于数据量大的情况 3. map:适用于key-value 什么时候用哈希表? 给你一个元素,判断该元素在这个集合里是否出现过 本题使…

【MYSQL】锁详解(全局锁、表级锁、行级锁)【快速理解】

目录 一、全局锁 二、表级锁 1.表锁 2.元数据锁 3.意向锁 三、行级锁 1. 行锁 2.间隙锁 3.临建锁 锁是处理并发情况下,对数据的一致性的关键因素,也是并发情况下对效率影响非常大的。 1、全局锁:锁定表中所有数据。 2、表级锁:…

蓝桥杯每日真题 - 第11天

题目:(合并数列) 题目描述(14届 C&C B组D题) 解题思路: 题意理解:给定两个数组,目标是通过若干次合并操作使两个数组相同。每次合并操作可以将数组中相邻的两个数相加&#xff…

contos7.9 部署3节点 hadoop3.4 集群 非高可用

contos7.9 部署3节点 hadoop3.4 集群 非高可用 contos7.9 部署3节点 hadoop3.4 集群 非高可用环境信息服务器角色分配服务器配置服务器配置初始化 init_server.sh配置主机名映射所有节点配置 hosts文件 配置免密登录 hadoop 安装环境配置下载安装包下载 jdk1.8hadoop3.4 分发安…

人工智能:重塑医疗、企业与生活的未来知识管理——以HelpLook为例

一、医疗行业:AI引领的医疗革新 随着人工智能(AI)技术的持续飞跃,我们正身处一场跨行业的深刻变革之中。在医疗健康的广阔舞台上,人工智能技术正扮演着日益重要的角色。它不仅能够辅助医生进行病例的精准诊断&#xf…