在博客中使用LaTeX插入数学公式
在学习机器学习中会接触到大量的数学公式,所以在写博客是会非常的麻烦。用公式编辑器一个一个写会非常的麻烦,这时候我们可以使用LaTeX来插入公式。
写这篇博文的目的在于,大家如果要编辑一些简单的公式,就不必自己写,直接copy过去修改下就能用了。所以下面仅列出些常用的grammar。随着、机器学习的深入会添加更多的相关公式。
LaTeX公式基础
这里的基础嫌烦的话可以先不看,直接看杂例,有不理解的地方在回来看这里的内容。此处知识摘取了一些简单的语法,如果需要完整的LaTeX书写数学公式的文档,见参考文献。
排版方式
行级元素(inline),行级元素使用$...$,两个$表示公式的首尾。
块级元素(displayed),块级元素使用$$...$$。块级元素默认是居中显示的。
常用西文符号
\alpha, \beta, …, \omega代表α,β,…ω. 大写字母,使用\Gamma, \Delta, …, \Omega代表Γ,Δ,…,Ω.
上标与下标
使用 ^和 _ 表示上标和$f(x)$下标. 例如,x_i^2 : $x_i^2$
使用{}来消除二义性——优先级问题。例如10^10:$10^10$,显然是错误的,要显示$10^{10}$,正确的语法应该是10^{10}。同样的,还有个例子,x_i^2:$x_i^2$和x_{i^2}:$x_{i^2}$的区别。
括号
小括号和中括号直接使用,大括号由于用来分组,所以需要转义。\{1+2\}:$\{1+2\}$
运算
- 分数:
\frac{}{}。例如,\frac{1+1}{2}+1: $\frac{1+1}{2}+1$ - 求和:
\sum_1^n:$\sum_1^n$ - 积分:
\int_1^n:$\int_1^n$ - 极限:
lim_{x \to \infty:$lim_{x \to \infty$ -
矩阵:
$$\begin{matrix}…\end{matrix}$$,使用&分隔同行元素,\\换行。例如:$$ \begin{matrix} 1 & x & x^2 \\ 1 & y & y^2 \\ 1 & z & z^2 \\ \end{matrix} $$得到的公式为:
$$
\begin{matrix}
1 & x & x^2 \\
1 & y & y^2 \\
1 & z & z^2 \\
\end{matrix}
$$
$$h(\theta)=\sum_{j=0}^n \theta_jx_j(线性模型)$$
$$h(\theta)=\sum_{j=0}^n \theta_jx_j(线性模型)$$
$$J(\theta)=\frac1{2m}\sum_{i=0}^m(y^i-h_\theta(x^i))^2(均方误差\;or\;cost function)$$
$$J(\theta)=\frac1{2m}\sum_{i=0}^m(y^i-h_\theta(x^i))^2(均方误差\;or\;cost function)$$
$$\frac{\partial J(\theta)}{\partial\theta_j }=-\frac1m\sum_{i=0}^m(y^i-h_\theta(x^i))x^i_j (批量梯度下降的梯度算法)$$
$$\frac{\partial J(\theta)}{\partial\theta_j }=-\frac1m\sum_{i=0}^m(y^i-h_\theta(x^i))x^i_j (批量梯度下降的梯度算法)$$
$$
f(n) =
\begin{cases}
n/2, & \text{if $n$ is even} \\
3n+1, & \text{if $n$ is odd}
\end{cases}
$$
$$
f(n) =
\begin{cases}
n/2, & \text{if $n$ is even} \\
3n+1, & \text{if $n$ is odd}
\end{cases}
$$
$$
\left\{
\begin{array}{c}
a_1x+b_1y+c_1z=d_1 \\
a_2x+b_2y+c_2z=d_2 \\
a_3x+b_3y+c_3z=d_3
\end{array}
\right.
$$
$$
\left\{
\begin{array}{c}
a_1x+b_1y+c_1z=d_1 \\
a_2x+b_2y+c_2z=d_2 \\
a_3x+b_3y+c_3z=d_3
\end{array}
\right.
$$
$$
X=\left(
\begin{matrix}
x_{11} & x_{12} & \cdots & x_{1d}\\
x_{21} & x_{22} & \cdots & x_{2d}\\
\vdots & \vdots & \ddots & \vdots\\
x_{m1} & x_{m2} & \cdots & x_{md}\\
\end{matrix}
\right)
=\left(
\begin{matrix}
x_1^T \\
x_2^T \\
\vdots\\
x_m^T \\
\end{matrix}
\right)
$$
$$
X=\left(
\begin{matrix}
x_{11} & x_{12} & \cdots & x_{1d}\\
x_{21} & x_{22} & \cdots & x_{2d}\\
\vdots & \vdots & \ddots & \vdots\\
x_{m1} & x_{m2} & \cdots & x_{md}\\
\end{matrix}
\right)
=\left(
\begin{matrix}
x_1^T \\
x_2^T \\
\vdots\\
x_m^T \\
\end{matrix}
\right)
$$
$$
\begin{align}
\frac{\partial J(\theta)}{\partial\theta_j}
& = -\frac1m\sum_{i=0}^m(y^i-h_\theta(x^i)) \frac{\partial}{\partial\theta_j}(y^i-h_\theta(x^i)) \\
& = -\frac1m\sum_{i=0}^m(y^i-h_\theta(x^i)) \frac{\partial}{\partial\theta_j}(\sum_{j=0}^n\theta_jx_j^i-y^i) \\
& = -\frac1m\sum_{i=0}^m(y^i-h_\theta(x^i))x^i_j
\end{align}
$$
$$
\begin{align}
\frac{\partial J(\theta)}{\partial\theta_j}
& = -\frac1m\sum_{i=0}^m(y^i-h_\theta(x^i)) \frac{\partial}{\partial\theta_j}(y^i-h_\theta(x^i)) \\
& = -\frac1m\sum_{i=0}^m(y^i-h_\theta(x^i)) \frac{\partial}{\partial\theta_j}(\sum_{j=0}^n\theta_jx_j^i-y^i) \\
& = -\frac1m\sum_{i=0}^m(y^i-h_\theta(x^i))x^i_j
\end{align}
$$
总结
本文主要写了些用LaTeX来写数学公式的方法以及几个例子。杂例的前3个可以看到是用梯度法解决线性模型的几个公式,后面的几个是随意摘取的,尽可能包含大部分LaTeX的用法。杂例会在我学习机器学习的过程中不断添加,希望可以给大家带来方便吧。下面的参考文献包含了中英文,几乎包含了所有LaTeX书写数学公式的语法,有需要的可以去看看。
参考文献

浙公网安备 33010602011771号