八、min 与 argmin
- min 和 argmin 在机器学习中常用;
- max 和argmax 同理;
8.1 min
- min 是 minimal 的缩写,用于获得集合中的最小值,如: min { 3 , 1 , 9 , 8 } = 1 \min \{3,1,9,8\}=1 min{ 3,1,9,8}=1,源码为:\min {3,1,9,8}=1,即 \min 是定义好的一种符号;
- min 可以与向量/矩阵配合使用,如:给定向量 x = [ 3 , 1 , 9 , 8 ] \mathbf{x}=[3,1,9,8] x=[3,1,9,8] ,则: min 1 ≤ i ≤ 4 x i = 1 \min_{1 \le i \le 4} \mathbf{x}_i = 1 min1≤i≤4xi=1,源码为:\min_{1 \le i \le 4} \mathbf{x}_i = 1,本质与前面的集合方式相同;
- min 可以和函数配合使用,如:令 f ( x ) = x 2 + x + 1 f(x)=x^2+x+1 f(x)=x2+x+1, min − 1 ≤ x ≤ 1 f ( x ) \min_{-1 \le x \le 1} f(x) min−1≤x≤1f(x) 表示 x x x 取 [ − 1 , 1 ] [-1,1] [−1,1] 区间的任意数,这些函数值构成了一个集合(重复元素只算一次),最终取最小的元素,源码为:\min_{-1 \le x \le 1} f(x),其中 \le 表示 less than or equal,也可以写作 \leq;
8.2 argmin
- argmin 是 argument minimal 的缩写,用于获得使函数取得最小值的参数;
- \arg\min 总是可用的,若 Latex 模板不支持 \argmin,可以在 tex 文件头部加上:\DeclareMathOperator*{\argmin}{argmin};
- argmin 可以与向量/矩阵配合使用,这时参数可以是向量下标,如:给定向量 x = [ 3 , 1 , 9 , 8 ] \mathbf{x} = [3,1,9,8] x=[3,1,9,8],则 arg min x i = 2 \argmin \mathbf{x}_i = 2 argminxi=2 的值是使得 x i \mathbf{x}_i xi 最小的参数值,即下标 i i i 的值,给定矩阵:
x = [ 3 2 9 8 7 6 1 4 ] \mathbf{x} = \left[ \begin{matrix} 3&2&9&8 \\ 7&6&1&4 \end{matrix} \right] x=[37269184]
源码为:\mathbf{x} = \left[ \begin{matrix} 3&2&9&8 \ 7&6&1&4 \end{matrix} \right],则 arg i , j min x i j = ( 2 , 3 ) \arg_{i,j}\min \mathbf{x}_{ij} = (2,3) argi,jminxij=(2,3) 的值是使得 x i j \mathbf{x}_{ij} xij 最小的参数值,即 i = 2 , j = 3 i=2,j=3 i=2,j=3。注意:这是返回了两个数据,在Java里面要专门处理,但Python可以直接支持。 - argmin 与函数配合最常见,如:令 f ( x ) = x 2 + x + 1 f(x)=x^2+x+1 f(x)=x2+x+1,则 arg − 1 ≤ x ≤ 1 min f ( x ) = − 1 2 \arg_{-1 \le x \le 1} \min f(x) = -\frac{1}{2} arg−1≤x≤1minf(x)=−21 表示 x x x 取 − 1 2 -\frac{1}{2} −21 时函数取最小值 3 4 \frac{3}{4} 43,只是这个最小值没有人关心。
8.3 作业
- 解释推荐系统: 问题、算法与研究思路 2.1 中的优化目标: min ∑ ( i , j ) ∈ Ω ( f ( x i , t j ) − r i j ) 2 \min \sum_{(i,j) \in \Omega}(f(\mathbf{x}_i,\mathbf{t}_j)-r_{ij})^2 min∑(i,j)∈Ω(f(xi,tj)−rij