在博客中使用LaTeX插入数学公式

在学习机器学习中会接触到大量的数学公式,因此在写博客是会很是的麻烦。用公式编辑器一个一个写会很是的麻烦,这时候咱们可使用LaTeX来插入公式。算法

写这篇博文的目的在于,你们若是要编辑一些简单的公式,就没必要本身写,直接copy过去修改下就能用了。因此下面仅列出些经常使用的grammar。随着、机器学习的深刻会添加更多的相关公式。express

LaTeX公式基础

这里的基础嫌烦的话能够先不看,直接看杂例,有不理解的地方在回来看这里的内容。此处知识摘取了一些简单的语法,若是须要完整的LaTeX书写数学公式的文档,见参考文献。机器学习

排版方式

行级元素(inline),行级元素使用$...$,两个$表示公式的首尾。编辑器

块级元素(displayed),块级元素使用$$...$$。块级元素默认是居中显示的。post

经常使用西文符号

\alpha, \beta, …, \omega表明α,β,…ω. 大写字母,使用\Gamma, \Delta, …, \Omega表明Γ,Δ,…,Ω.学习

上标与下标

使用 ^和 _ 表示上标和下标. 例如,x_i^2:\(x_i^2\)\log_2 x: \(\log_2 x\)ui

使用{}来消除二义性——优先级问题。例如10^10:\(10^10\),显然是错误的,要显示\(10^{10}\),正确的语法应该是10^{10}。一样的,还有个例子,x_i^2:\(x_i^2\)x_{i^2}:\(x_{i^2}\)的区别。spa

括号

小括号和中括号直接使用,大括号因为用来分组,因此须要转义。\{1+2\}:\(\{1+2\}\)code

运算

  • 分数:\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}(y^i-h_\theta(x^i))^2$$
    \[J(\theta)=\frac1{2m}\sum_{i=0}^m(y^i-h_\theta(x^i))^2(均方偏差\;or\;cost function)\]

  • $$\frac{\partialJ(\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书写数学公式的语法,有须要的能够去看看。

参考文献

相关文章
相关标签/搜索