亲宝软件园·资讯

展开

Matlab中关于argmax、argmin函数的使用解读

今天你发际线后移了嘛 人气:0

关于argmax、argmin函数的使用

1、在matlab的现有函数中,并没有argmax,argmin函数可以直接调用,要根据这两个函数的实际意义,自己编写程序进行计算

2、我要求解的函数是下式:

其中mad(theta)和amd(theta)两个均为1 * 11的double型向量

括号里得到一个1 * 11的向量

关于argmax函数的意思是: argmax(f(x))是使得 f(x)取得最大值所对应的变量x。也就是求出f(x)的最大值,返回使f(x)最大的自变量x。

因此我编了以下代码:

就是将函数结果以及自变量放在同一个矩阵,并上下一 一对照,求出函数结果的最大值,返回自变量。

aargmin函数原理和上述类似,在此不做赘述。

关于argmin和argmax的一点说明

定义

首先我们应该知道,arg是元素(变元)argument的英文缩写。

在数学中,arg max的参数是指使函数值最大化的某个函数域的点。与全局最大值相反,其指的是函数的最大输出 ,同理,arg min指的是使函数输出尽可能小的参数。

举例

比如对于:arg max/min f(x)

(1)当f(x) = -(x-3)^2,则有arg max f(x) = 3;

(2)当f(x) = (x-3)^2,则有arg min f(x) = 3;

(3)当f(x) = cos(x),则有arg min f(x) = {±π, ±3π, ±5π, …}

上式所表示的是使得似然函数取得最大值时θ的取值。

总结

arg max f(x) 就是使得f(x)取得最大值时变量的取值;

arg min f(x) 就是使得f(x)取得最小值时变量的取值;

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

加载全部内容

相关教程
猜你喜欢
用户评论