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

来源:互联网 发布:千县万村农村淘宝计划 编辑:程序博客网 时间:2024/05/29 03:22

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

http://www.cnblogs.com/Sinte-Beuve/p/6160905.html

在学习机器学习中会接触到大量的数学公式,所以在写博客是会非常的麻烦。用公式编辑器一个一个写会非常的麻烦,这时候我们可以使用LaTeX来插入公式。

写这篇博文的目的在于,大家如果要编辑一些简单的公式,就不必自己写,直接copy过去修改下就能用了。所以下面仅列出些常用的grammar。随着、机器学习的深入会添加更多的相关公式。

LaTeX公式基础

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

排版方式

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

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

常用西文符号

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

上标与下标

使用 ^和 _ 表示上标和下标. 例如,x_i^2:xi2 ,\log_2 xlog2⁡x

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

括号

小括号和中括号直接使用,大括号由于用来分组,所以需要转义。\{1+2\}:{1+2}

运算

  • 分数:\frac{}{}。例如,\frac{1+1}{2}+11+12+1
  • 求和:\sum_1^n:∑1n
  • 积分:\int_1^n:∫1n
  • 极限:lim_{x \to \infty:limx→∞
  • 矩阵:$$\begin{matrix}…\end{matrix}$$,使用&分隔同行元素,\\换行。例如:

    $$    \begin{matrix}    1 & x & x^2 \\    1 & y & y^2 \\    1 & z & z^2 \\    \end{matrix}$$

    得到的公式为:

    1xx21yy21zz2

杂例

  • $$h(\theta)=\sum_{j=0}^n \theta_jx_j$$

    线h(θ)=∑j=0nθjxj(线性模型)

  • $$J(\theta)=\frac1{2m}\sum_{i=0}(y^i-h_\theta(x^i))^2$$

    J(θ)=12m∑i=0m(yi−hθ(xi))2(均方误差orcostfunction)

  • $$\frac{\partialJ(\theta)}{\partial\theta_j}=-\frac1m\sum_{i=0}^m(y^i-h_\theta(x^i))x^i_j $$

    ∂J(θ)∂θj=−1m∑i=0m(yi−hθ(xi))xji(批量梯度下降的梯度算法)

  • $$f(n) =\begin{cases}n/2,  & \text{if $n$ is even} \\3n+1, & \text{if $n$ is odd}\end{cases}$$

    f(n)={n/2,if n is even3n+1,if n is odd

  • $$\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. $$

    {a1x+b1y+c1z=d1a2x+b2y+c2z=d2a3x+b3y+c3z=d3

  • $$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=(x11x12⋯x1dx21x22⋯x2d⋮⋮⋱⋮xm1xm2⋯xmd)=(x1Tx2T⋮xmT)

  • $$\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}$$

    (1)∂J(θ)∂θj=−1m∑i=0m(yi−hθ(xi))∂∂θj(yi−hθ(xi))(2)=−1m∑i=0m(yi−hθ(xi))∂∂θj(∑j=0nθjxji−yi)(3)=−1m∑i=0m(yi−hθ(xi))xji

总结

本文主要写了些用LaTeX来写数学公式的方法以及几个例子。杂例的前3个可以看到是用梯度法解决线性模型的几个公式,后面的几个是随意摘取的,尽可能包含大部分LaTeX的用法。杂例会在我学习机器学习的过程中不断添加,希望可以给大家带来方便吧。下面的参考文献包含了中英文,几乎包含了所有LaTeX书写数学公式的语法,有需要的可以去看看。

参考文献

  • MathJax basic tutorial and quick reference
  • Mathjax与LaTex公式简介