【什么是机器学习——多项式逼近】

news2025/4/2 0:13:09

什么是机器学习——多项式逼近

  机器学习可以分成三大类别,监督学习、非监督学习、强化学习。三大类别背后的数学原理不同。监督学习使用了数学分析中的函数逼近方法和概率统计中的极大似然方法;非监督学习使用聚类和EM算法;强化学习使用马尔可夫决策过程的想法。


机器学习的本质就是寻找数据间的关联或者关系。

文章目录

  • 什么是机器学习——多项式逼近
  • 前言
  • 一、什么是机器学习?
    • 数学语言——叙述机器学习问题
  • 二、多项式逼近函数
    • 1.拉格朗日插值公式———Cramer法则
    • 2.函数逼近——Cauchy矩阵
  • 三、多项式Remez算法
    • 1.最佳逼近函数
    • 2. Remez 算法
  • 参考文献


前言

数据间的关系直观上来说就两种:

  一种是确定性的关系,如函数的对应关系;另一种是不确定的、带有一定概率意义上的或者统计上的关系,比如联合分布、条件分布等。


一、什么是机器学习?

虽然机器学习的深入研究需要用到高深的数学和计算机知识,但是机器学习的具体例子在我们平时的工作和学习中早已用到。

  比如在下面这些二维数据中找出对应关系,并在问号处填上合适的数字。

(1,2),(2,4),(3,6),(4,8),(5,10),(6, ?)
通常小朋友会填写12,这就是一个典型的机器学习问题。又比如下面序列中的数字是一个一个列出来的
1,1,2,3,5,8,13,21,34,55,?
发现前面的若干项正好是斐波那契数列,所以问号处填89.
上述都比较简单,但是有些问题就比较困难。例如,给定一个序列,根据前面几项,预测最后一个数字是多少。

41,23,9,7,1,3,-1,?
  仔细观察可以发现,每两项之和都是2的幂次,而且幂次依次递减,由此可知应该填写1。总结上述问题,可以归纳抽象出共同的要素。给出一组数据,其背后存在一个确定的对应关系,这种关系可能是数组的第一个分量和第二个分量之间的关系,也可能是从第一个数据到第二数据之间的迭代关系。给出的数据可能是所有数据的一个子集,我们的目标是通过这个子集去了解全貌,从而找到隐藏在背后的对应关系。

数学语言——叙述机器学习问题

  有两个集合 Ω \Omega Ω A \mathrm{A} A,在它们之间有对应关系 f : Ω → A f: \Omega \rightarrow A f:ΩA。这种对应关系我们称为函数,从而对于 x ∈ Ω x \in \Omega xΩ有唯一对应的 f ( x ) ∈ A f(x) \in A f(x)A,但是这个对应关系 f f f我们不知道。为此,我们能够接触到的是全集 Ω \Omega Ω上的一个子集 S ⊂ Ω S \subset \Omega SΩ,同时每个 x ∈ S x \in S xS对应的 f ( x ) f(x) f(x)已知,即作为数据 { ( x , f ( x ) ) : x ∈ S } \begin{array}{l} \{(x, f(x)): x \in S\} \end{array} {(x,f(x)):xS} 是已知的,但是对应关系的算法描述我们是不知道的。我们需要通过这组数据(也称为样本数据)试图去寻找本源的对应关系,从而在全集 Ω \Omega Ω中任意给定一个新的 x ∈ Ω x \in \Omega xΩ,可以知道对应的 y = f ( x ) y=f(x) y=f(x)。上述使用函数的数学方法虽然结果令人满意,但是未必满足机器学习所有的问题形式。
  下面考虑另外一个问题,一个袋子里有很多个球,一部分是红色的球,一部分是黑色的球。分别把球一个一个拿出来,看到颜色以后在放回去。例如,分别是红、红、黑、红、黑、黑、红、红。那么下一个拿出来的球应该是红色还是黑色呢?
在这里插入图片描述
  这个问题就带着强烈的概率色彩。如果取球过程充分随机,绝对不可能因为取出来红色和黑色的球就断言所有球的颜色仅仅有红色和黑色,显然什么颜色的球都有可能出现,所以我们仅能在概率的意义上来问取到红色球和黑色球的概率分别是多少。
  把这个概率问题用数学语言来叙述就是:两个随机变量 X , Y X,Y X,Y,它们的联合分布记为 p ( x , y ) p(x, y) p(x,y)。虽然联合分布没有给出具体形式,但是给出了有限个样本点集 ( x 1 , y 1 ) , ( x 2 , y 2 ) , ⋅ ⋅ ⋅ , ( x n , y n ) \begin{array}{l} ( x_1,y_1),( x_2,y_2 ),···,( x_n,y_n) \end{array} x1,y1,x2,y2,⋅⋅⋅,xn,yn我们需要从中学习到联合分布。一旦联合分布给出就很容易计算边缘分布 p ( x ) = ∫ R p ( x , y ) d y p ( y ) = ∫ R p ( x , y ) d x \begin{array}{l} p(x)=\int_{\mathbb{R}} p(x, y) \mathrm{d} y\\ p(y)=\int_{\mathbb{R}} p(x, y) \mathrm{d} x \end{array} p(x)=Rp(x,y)dyp(y)=Rp(x,y)dx以及对于任意一个 x x x,对应的是 y y y的条件分布 p ( y ∣ x ) = p ( x , y ) p ( x ) \begin{array}{l}p(y \mid x)=\frac{p(x, y)}{p(x)}\end{array} p(yx)=p(x)p(x,y)经过我们抽象出来的问题,无论是确定性问题还是统计性问题,都涉及学习和预测。学习过程可以看做从样本内找到一定关系;预测过程就是把学习到的关系使用在样本外。

二、多项式逼近函数

1.拉格朗日插值公式———Cramer法则

  在基础的数学理论中,也可以找到非常明显的机器学习的影子,那就是函数逼近理论。本节将回顾这个理论并且从机器学习的角度来重新阐述一些重要的原则。已知有若干有限个一维实数空间的点和在这些点上的函数值,根据这些信息来预测这个函数在其他点的取值。这个传统的数学领域和机器学习的目标非常相似。下面我们用数学语言来精确描述问题。
  给出直线上的一个区间 [ 0 , 1 ] [0,1] [0,1],有一个实值函数使得 f : [ 0 , 1 ] → R f:[0,1]→R f:[0,1]R,但是我们不知道这个函数是什么形式。与此同时,给出 [ 0 , 1 ] [0,1] [0,1]区间上的一个离散点集
О < x 1 < x 2 < … < x n < 1 \begin{array}{l} О< x_1< x_2<…< x_n<1\end{array} О<x1<x2<<xn<1
以及一组对应的函数值
y i = f ( x 1 ) , y 2 = f ( x 2 ) , … , y n = f ( x n ) \begin{array}{l} y_i=f(x_1),y_2=f(x_2),…,y_n=f(x_n)\end{array} yi=f(x1)y2=f(x2),yn=f(xn)我们试图通过这些有限数据推测出原来的函数关系。那么什么样的函数可以精确地给出这种对应关系呢?常见的可以选择多项式。根据多项式理论,任何一个 n − 1 n-1 n1 次的多项式
g ( x ) = a n − 1 x n − 1 + a n − 2 x n − 2 + ⋯ + a 1 x + a 0 \begin{array}{l} g(x)=a_{n-1} x^{n-1}+a_{n-2} x^{n-2}+\cdots+a_{1} x+a_{0} \end{array} g(x)=an1xn1+an2xn2++a1x+a0使得能够满足对于任何 0 < i < n 0<i<n 0<i<n
g ( x i ) = y i \begin{array}{l} g(x_i)=y_i \end{array} g(xi)=yi这个问题就相当于求解一系列的关于多项式系数的线性方程
( 1 x 1 x 1 2 ⋯ x 1 n − 1 1 x 2 x 2 2 ⋯ x 2 n − 1 1 ⋯ ⋯ ⋯ ⋯ 1 x n x n 2 ⋯ x n n − 1 ) ( a 0 a 1 ⋯ a n − 1 ) = ( y 1 y 2 ⋯ y n ) \begin{array}{l} \left(\begin{array}{ccccc} 1 & x_{1} & x_{1}^{2} & \cdots & x_{1}^{n-1} \\ 1 & x_{2} & x_{2}^{2} & \cdots & x_{2}^{n-1} \\ 1 & \cdots & \cdots & \cdots & \cdots \\ 1 & x_{n} & x_{n}^{2} & \cdots & x_{n}^{n-1} \end{array}\right)\left(\begin{array}{c} a_{0} \\ a_{1} \\ \cdots \\ a_{n-1} \end{array}\right)=\left(\begin{array}{c} y_{1} \\ y_{2} \\ \cdots \\ y_{n} \end{array}\right) \end{array} 1111x1x2xnx12x22xn2x1n1x2n1xnn1 a0a1an1

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

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

相关文章

《午夜地铁的幽灵AP》

点击下面图片带您领略全新的嵌入式学习路线 &#x1f525;爆款热榜 88万阅读 1.6万收藏 文章目录 **第一章&#xff1a;末班车的二进制月光****第二章&#xff1a;ESP32的赛博墓志铭****第三章&#xff1a;都市传说与CRC校验****第四章&#xff1a;数字孪生的献祭仪式****终章…

创作领域“<em >彩</em><em>票</em><em>导</em><em>师</em><em>带</em><em>玩</em><em>群

天光揉碎最后一块夜斑&#xff0c;露珠压弯草叶的脆响惊醒了沉睡的巷子。青灰雾霭中&#xff0c;老墙上的爬山虎在打哈欠&#xff0c;卷曲的藤须滴落隔夜的月光。sFsTU

Spring Cloud Gateway中GatewayFilter Factories(网关过滤工厂)的详细介绍

文章目录 1、网关过滤工厂介绍2、 GatewayFilter 过滤器的基本配置3、 Spring Cloud Gateway 内置 GatewayFilter Factories3.1、AddRequestHeader GatewayFilter3.2、AddResponseHeader GatewayFilter3.3、AddRequestParameter GatewayFilter3.4、RewritePath GatewayFilter3.…

微服务架构:构建可持续演进的微服务架构的原则与实践指南

引言&#xff1a;微服务的价值锚点 某物流公司微服务化后&#xff0c;订单履约周期从2小时缩短至15分钟&#xff0c;但技术债务却以每年200%的速度增长。这个案例揭示了一个关键认知&#xff1a;‌微服务架构的成败不在于技术实现&#xff0c;而在于是否建立有效的演进机制‌。…

C++的四种类型转换

文章目录 const_cast:去掉常量类型的类型转换static_cast:提供编译器认为安全的类型转换&#xff08;在编译阶段完成类型转换&#xff09;reinterpret:类似c风格的强制类型转化dynamic_cast:主要用在继承结构里&#xff0c;可以支持RTTI类型识别的上下转换dynamic_cast<>…

《Python实战进阶》No37: 强化学习入门加餐版3 之 Q-Learning算法可视化升级

连续第4篇文章写Q-Learning算法及可视化 Q-Learning强化学习算法在迷宫寻路中的应用 引言 强化学习是机器学习的一个重要分支&#xff0c;其核心理念是通过与环境的交互来学习最优策略。在上三篇文章中&#xff0c;《Python实战进阶》No37: 强化学习入门&#xff1a;Q-Learn…

漏洞挖掘---灵当CRM客户管理系统getOrderList SQL注入漏洞

一、灵当CRM 灵当CRM是上海灵当信息科技有限公司旗下产品&#xff0c;适用于中小型企业。它功能丰富&#xff0c;涵盖销售、服务、财务等管理功能&#xff0c;具有性价比高、简洁易用、可定制、部署灵活等特点&#xff0c;能助力企业提升经营效益和客户满意度。 二、FOFA-Sear…

Java高频面试之集合-20

hello啊&#xff0c;各位观众姥爷们&#xff01;&#xff01;&#xff01;本baby今天来报道了&#xff01;哈哈哈哈哈嗝&#x1f436; 面试官&#xff1a;讲讲 HashSet 的底层实现&#xff1f; HashSet 是 Java 集合框架中用于存储唯一元素的高效数据结构&#xff0c;其底层实…

sort命令:排序

sort&#xff1a;默认首位排序 参数&#xff1a; -n&#xff1a;按整个数字排序 -r&#xff1a;降序 -u&#xff1a;去重 [rootrobin ~]# sort -n aa.txt #按数字排序&#xff08;正序&#xff09; [rootrobin ~]# sort -nr aa.txt #降序 [rootrobin ~]# sort -…

Javaweb后端 AOP快速入门 AOP核心概念 AOP执行流程

AOP是对特定方法编程&#xff0c;把共用都用的方法提取出来&#xff0c;统一维护 AOP基础 AOP快速入门 对原始方法无影响 AOP核心概念 连接点&#xff0c;是原始方法&#xff0c;被控制范围内的原始方法 通知&#xff0c;AOP类里面写的公共的方法 切入点&#xff0c;实际被AO…

deepseek ai 输入法

一、简介 使用java开发一个安卓输入法接入deepseek实现ai聊天&#xff0c;代码已开源。 二、视频演示 deepseek输入法_哔哩哔哩_bilibili 三、开源地址 https://github.com/deepseek/inputmethed 四、技术细节 CustomInputMethodService.java 输入法服务类 MainActivity.…

探究 CSS 如何在HTML中工作

2025/3/28 向全栈工程师迈进&#xff01; 一、CSS的作用 简单一句话——美化网页 <p>Lets use:<span>Cascading</span><span>Style</span><span>Sheets</span> </p> 对于如上代码来说&#xff0c;其显示效果如下&#xff1…

Verilog中X态的危险:仿真漏掉的bug

由于Verilog中X态的微妙语义&#xff0c;RTL仿真可能PASS&#xff0c;而网表仿真却会fail。 目前进行的网表仿真越来越少&#xff0c;这个问题尤其严重&#xff0c;主要是网表仿真比RTL仿真慢得多&#xff0c;因此对整个回归测试而言成本效益不高。 上面的例子中&#xff0c;用…

使用 uv 管理 Python 项目

介绍 首先, uv 工具是使用 rust 开发出来的, 速度要比传统的 pip, pipx 等一众包管理工具要快不少. 另外, 除了包管理之外, uv 还提供了脚手架的功能, 使用体验和前端开发使用过的 vue-cli 很相似, 可以帮助我们自动初始化项目, 创建好一个空的包含必要文件结构的文件夹. 此外…

《C++11:通过thread类编写C++多线程程序》

关于多线程的概念与理解&#xff0c;可以先了解Linux下的底层线程。当对底层线程有了一定程度理解以后&#xff0c;再学习语言级别的多线程编程就轻而易举了。 【Linux】多线程 -&#xff1e; 从线程概念到线程控制 【Linux】多线程 -&#xff1e; 线程互斥与死锁 语言级别的…

19-dfs-排列数字(基础)

题目 来源 842. 排列数字 - AcWing题库 思路 由于相对简单&#xff0c;是dfs的模板题&#xff0c;具体思路详见代码 代码 #include<bits/stdc.h> using namespace std; const int N10; int state[N],path[N];//是否使用过&#xff0c;当前位置 int n; void dfs(int …

32.代码题

接着上集...... 派对&#xff1a;超时了&#xff0c;总该受到惩罚吧&#xff1f; 洛西&#xff1a;至于吗&#xff1f;就0.1秒&#xff01; 晴/宇&#xff1a;十分应该。 洛西&#xff1a;我..................... 没办法&#xff0c;洛西只能按照要求去抓R了。 1.P1102 …

nacos 3.x Java SDK 使用详解

Nacos 3.x Java SDK 使用详解 Nacos 3.x 是云原生服务治理的重要升级版本&#xff0c;其 Java SDK 在性能、协议和扩展性上均有显著优化。 一、环境要求与依赖配置 基础环境 JDK 版本&#xff1a;需使用 JDK 17&#xff08;Nacos 3.x 已放弃对 JDK 8 的支持&#xff09;。Spri…

SPI-NRF24L01

模块介绍 NRF24L01是NORDIC公司生产的一款无线通信芯片&#xff0c;采用FSK调制&#xff0c;内部集成NORDIC自己的Enhanced Short Burst 协议&#xff0c;可以实现点对点或者1对6 的无线通信,通信速率最高可以达到2Mbps. NRF24L01采用SPI通信。 ①MOSI 主器件数据输出&#xf…

python黑科技:无痛修改第三方库源码

需求不符合 很多时候&#xff0c;我们下载的 第三方库 是不会有需求不满足的情况&#xff0c;但也有极少的情况&#xff0c;第三方库 没有兼顾到需求&#xff0c;导致开发者无法实现相关功能。 如何通过一些操作将 第三方库 源码进行修改&#xff0c;是我们将要遇到的一个难点…