>> 点击此处查看【 LaTeX实战经验:新手须知 】
数学公式
首先是引入一些必要的宏包:
\usepackage[namelimits]{amsmath} %数学公式
\usepackage{amssymb} %数学公式
\usepackage{amsfonts} %数学字体
\usepackage{mathrsfs} %数学花体
argminΘ,WLfeedback+Lcontent=−∑(m,i,j)∈Dslnf(rmij)+λ∥θ∥2+∥AeWe−Ye∥2F+12∑e∈{u,v}λe∥We∥2F
这是上面公式的LaTeX代码:
\begin{equation}
%分隔一个过长的公式分行显示使用split环境
\begin{split}
arg \min_{\substack{\Theta, W}} L_{feedback}+L_{content} =
& - \sum_{\left(m,i,j\right) \in D_s} \ln f \left( r_{mij}\right) + \lambda\|\theta\|^2\\
& + \|A^eW^e-Y^e\|^2_F + \frac 12 \sum_{e\in \{u,v\}}\lambda^e\|W^e\|^2_F
\end{split}
\end{equation}
如果想在下面堆叠符号需要在行间公式环境下进行,行内公式环境不起作用。使用
$$ \min_{\substack{\Theta, W}} $$
可得到下面的效果:
minΘ,W
另外,
\limits
也可使得符号强制出现在下方。
效果如下:
arg min如何堆叠符号
机器学习的问题经常可见求解最优化问题,上面的符号堆叠方法似乎对于下面的写法走了“歪路”:
要想达到上面的效果,需要使用
amsopn
的
underset
命令:
\begin{equation}
\hat{h}=\underset{\{\beta_m,\gamma_m\}_{1}^M}{\arg\min}
\end{equation}
h^=argmin{βm,γm}M1
数学符号加粗
LaTeX中数学公式有个
\mathbf
命令,可能会有人误认为是对数学公式的字体进行加粗处理,实则不然。你会发现虽然加了粗体,但是字体却变了,就像下面正确加粗
\bm
的 x1 , x2 ,与使用
\mathbf
错误加粗的 xm 。
想要对数学公式符号进行加粗可以有两种方式:至少有一个是使用 bm package 的
\bm
指令,一个是使用amsmath package 的
\boldmath
指令。
如何引用数学公式
引用数学公式使用
\eqref
, 而不要使用
\ref
。如下图,
\eqref
加上了括号,
\ref
没有括号。
省略号
公式中的\ldots和\cdots。“\ldots”是列举中的省略符号,而“\cdots”用于运算(如连加、连乘等)中的省略,二者主要区别在于位置一高一低,切勿混用;
公式标点
文中,特别是在equation环境下,如果要插入公式,则公式后一定要有标点“逗号”或“句号”。使用方法:在公式后加入“,,”(逗号)或“,.”(句号)即可。不推荐使用\text{,}或\text{.}。因为\text{}环境下的标点长相与“,,”或“,.”不同,且“,,”或“,.”前会自动与公式隔出一段距离,更加正式、美观;
指定函数
\exp \log等。公式中如果有指数或对数表示,要用\exp或\log命令。不能用\text{exp}或\text{log}(虽然这种方法可能看起来跟\exp \log效果一样),更不能直接输入exp或log来表示。
对于一些没有的数学符号,也可进行自定义:
% 定义数学符号
\DeclareMathOperator{\argmin}{arg\,min\,} % \, 是为了能有些许间隙
\DeclareMathOperator{\argmax}{arg\,max\,}
\DeclareMathOperator{\sign}{sign}
范数
\ell的用法。在很多机器学习和视觉文章中会用到范数,正确的一范数或二范数表示应为 ℓ1 或 ℓ2 。
零向量
公式中的单位向量或零向量要用向量写法:\vec{1} 或\vec{0},有时也用\bm{1}加粗来表示向量。否则会被误认为标量;