01-线性代数基础

线性代数

一、基本知识

  1. 本书中所有的向量都是列向量的形式:

\mathbf{\vec x}=(x_1,x_2,\cdots,x_n)^T=\begin{bmatrix}x_1\\x_2\\\ \vdots \\x_n\end{bmatrix}

本书中所有的矩阵 \mathbf X\in \mathbb R^{m\times n} 都表示为:
\mathbf X = \begin{bmatrix} x_{1,1} & x_{1,2} & \cdots & x_{1,n}\\ x_{2,1} & x_{2,2} & \cdots & x_{2,n}\\ \vdots & \vdots & \ddots & \vdots\\ x_{m,1} & x_{m,2} & \cdots & x_{m,n}\\ \end{bmatrix}
简写为:(x_{i,j})_{m\times n} 或者 [x_{i,j}]_{m\times n}

  1. 矩阵的F范数:设矩阵 \mathbf A=(a_{i,j})_{m\times n},则其F 范数为:||\mathbf A||_F=\sqrt{\sum_{i,j}a_{i,j}^{2}}

它是向量的 L_2 范数的推广。

  1. 矩阵的迹:设矩阵 \mathbf A=(a_{i,j})_{m\times n},则 \mathbf A的迹为: tr(\mathbf A)=\sum_{i}a_{i,i}

迹的性质有:

  • \mathbf AF 范数等于\mathbf A\mathbf A^T 的迹的平方根:

||\mathbf A||_F=\sqrt{tr(\mathbf A \mathbf A^{T})}

  • \mathbf A 的迹等于\mathbf A^T 的迹:

tr(\mathbf A)=tr(\mathbf A^{T})

  • 交换律:假设

\mathbf A\in \mathbb R^{m\times n},\mathbf B\in \mathbb R^{n\times m}

,则有:tr(\mathbf A\mathbf B)=tr(\mathbf B\mathbf A)

  • 结合律:

tr(\mathbf A\mathbf B\mathbf C)=tr(\mathbf C\mathbf A\mathbf B)=tr(\mathbf B\mathbf C\mathbf A)

二、向量操作

  1. 一组向量 \mathbf{\vec v}_1,\mathbf{\vec v}_2,\cdots,\mathbf{\vec v}_n 是线性相关的:指存在一组不全为零的实数 a_1,a_2,\cdots,a_n,使得:

\sum_{i=1}^{n}a_i\mathbf{\vec v}_i=\mathbf{\vec 0}

一组向量 \mathbf{\vec v}_1,\mathbf{\vec v}_2,\cdots,\mathbf{\vec v}_n 是线性无关的,当且仅当 a_i=0,i=1,2,\cdots,n 时,才有:

\sum_{i=1}^{n}a_i\mathbf{\vec v}_i=\mathbf{\vec 0}

  1. 一个向量空间所包含的最大线性无关向量的数目,称作该向量空间的维数。
  2. 三维向量的点积:

\mathbf{\vec u}\cdot\mathbf{\vec v} =u _xv_x+u_yv_y+u_zv_z = |\mathbf{\vec u}| | \mathbf{\vec v}| \cos(\mathbf{\vec u},\mathbf{\vec v})

  1. 三维向量的叉积:

\mathbf{\vec w}=\mathbf{\vec u}\times \mathbf{\vec v}= \begin{bmatrix} \mathbf{\vec i} & \mathbf{\vec j} & \mathbf{\vec k}\\ u_x & u_y & u_z\\ v_x & v_y & v_z\\ \end{bmatrix}

其中 \mathbf{\vec i}, \mathbf{\vec j},\mathbf{\vec k} 分别为 x,y,z 轴的单位向量。

\mathbf{\vec u}=u_x\mathbf{\vec i}+u_y\mathbf{\vec j}+u_z\mathbf{\vec k},\quad \mathbf{\vec v}=v_x\mathbf{\vec i}+v_y\mathbf{\vec j}+v_z\mathbf{\vec k}

  • \mathbf{\vec u}\mathbf{\vec v} 的叉积垂直于 \mathbf{\vec u},\mathbf{\vec v} 构成的平面,其方向符合右手规则。
  • 叉积的模等于 \mathbf{\vec u},\mathbf{\vec v} 构成的平行四边形的面积

\mathbf{\vec u}\times \mathbf{\vec v}=-\mathbf{\vec v}\times \mathbf{\vec u}

\mathbf{\vec u}\times( \mathbf{\vec v} \times \mathbf{\vec w})=(\mathbf{\vec u}\cdot \mathbf{\vec w})\mathbf{\vec v}-(\mathbf{\vec u}\cdot \mathbf{\vec v})\mathbf{\vec w}

  1. 三维向量的混合积:

[\mathbf{\vec u} \;\mathbf{\vec v} \;\mathbf{\vec w}]=(\mathbf{\vec u}\times \mathbf{\vec v})\cdot \mathbf{\vec w}= \mathbf{\vec u}\cdot (\mathbf{\vec v} \times \mathbf{\vec w})\\\ =\begin{vmatrix} u_x & u_y & u_z\\ v_x & v_y & v_z\\ w_x & w_y & w_z \end{vmatrix} =\begin{vmatrix} u_x & v_x & w_x\\ u_y & v_y & w_y\\ u_z & v_z & w_z \end{vmatrix}

其物理意义为:以 \mathbf{\vec u} ,\mathbf{\vec v} ,\mathbf{\vec w}
为三个棱边所围成的平行六面体的体积。 当 \mathbf{\vec u} ,\mathbf{\vec v} ,\mathbf{\vec w}
构成右手系时,该平行六面体的体积为正号。

  1. 两个向量的并矢:给定两个向量
    \mathbf {\vec x}=(x_1,x_2,\cdots,x_n)^{T}, \mathbf {\vec y}= (y_1,y_2,\cdots,y_m)^{T}

,则向量的并矢记作:

\mathbf {\vec x}\mathbf {\vec y} =\begin{bmatrix} x_1y_1 & x_1y_2 & \cdots & x_1y_m\\ x_2y_1 & x_2y_2 & \cdots & x_2y_m\\ \vdots & \vdots & \ddots & \vdots\\ x_ny_1 & x_ny_2 &\cdots & x_ny_m\\ \end{bmatrix}
也记作 \mathbf {\vec x}\otimes\mathbf {\vec y} 或者 \mathbf {\vec x} \mathbf {\vec y}^{T}

三、矩阵运算

  1. 给定两个矩阵
    \mathbf A=(a_{i,j}) \in \mathbb R^{m\times n},\mathbf B=(b_{i,j}) \in \mathbb R^{m\times n}

,定义:

  • 阿达马积Hadamard product(又称作逐元素积):

\mathbf A \circ \mathbf B =\begin{bmatrix} a_{1,1}b_{1,1} & a_{1,2}b_{1,2} & \cdots & a_{1,n}b_{1,n}\\ a_{2,1}b_{2,1} & a_{2,2}b_{2,2} & \cdots & a_{2,n}b_{2,n}\\ \vdots$&$\vdots & \ddots & \vdots\\ a_{m,1}b_{m,1} & a_{m,2}b_{m,2} & \cdots & a_{m,n}b_{m,n} \end{bmatrix}

  • 克罗内积Kronnecker product

\mathbf A \otimes \mathbf B =\begin{bmatrix} a_{1,1}\mathbf B & a_{1,2}\mathbf B & \cdots & a_{1,n}\mathbf B\\ a_{2,1}\mathbf B & a_{2,2}\mathbf B & \cdots & a_{2,n}\mathbf B\\ \vdots & \vdots & \ddots & \vdots\\ a_{m,1}\mathbf B & a_{m,2}\mathbf B & \cdots & a_{m,n}\mathbf B \end{bmatrix}


  1. \mathbf {\vec x},\mathbf {\vec a},\mathbf {\vec b},\mathbf {\vec c}

为 n 阶向量, \mathbf A,\mathbf B,\mathbf C,\mathbf X 为 n 阶方阵,则有:

\frac{\partial(\mathbf {\vec a}^{T}\mathbf {\vec x}) }{\partial \mathbf {\vec x} }=\frac{\partial(\mathbf {\vec x}^{T}\mathbf {\vec a}) }{\partial \mathbf {\vec x} } =\mathbf {\vec a}

\frac{\partial(\mathbf {\vec a}^{T}\mathbf X\mathbf {\vec b}) }{\partial \mathbf X }=\mathbf {\vec a}\mathbf {\vec b}^{T}=\mathbf {\vec a}\otimes\mathbf {\vec b}\in \mathbb R^{n\times n}

\frac{\partial(\mathbf {\vec a}^{T}\mathbf X^{T}\mathbf {\vec b}) }{\partial \mathbf X }=\mathbf {\vec b}\mathbf {\vec a}^{T}=\mathbf {\vec b}\otimes\mathbf {\vec a}\in \mathbb R^{n\times n}

\frac{\partial(\mathbf {\vec a}^{T}\mathbf X\mathbf {\vec a}) }{\partial \mathbf X }=\frac{\partial(\mathbf {\vec a}^{T}\mathbf X^{T}\mathbf {\vec a}) }{\partial \mathbf X }=\mathbf {\vec a}\otimes\mathbf {\vec a}

\frac{\partial(\mathbf {\vec a}^{T}\mathbf X^{T}\mathbf X\mathbf {\vec b}) }{\partial \mathbf X }=\mathbf X(\mathbf {\vec a}\otimes\mathbf {\vec b}+\mathbf {\vec b}\otimes\mathbf {\vec a})

\frac{\partial[(\mathbf A\mathbf {\vec x}+\mathbf {\vec a})^{T}\mathbf C(\mathbf B\mathbf {\vec x}+\mathbf {\vec b})]}{\partial \mathbf {\vec x}}=\mathbf A^{T}\mathbf C(\mathbf B\mathbf {\vec x}+\mathbf {\vec b})+\mathbf B^{T}\mathbf C(\mathbf A\mathbf {\vec x}+\mathbf {\vec a})

\frac{\partial (\mathbf {\vec x}^{T}\mathbf A \mathbf {\vec x})}{\partial \mathbf {\vec x}}=(\mathbf A+\mathbf A^{T})\mathbf {\vec x}

\frac{\partial[(\mathbf X\mathbf {\vec b}+\mathbf {\vec c})^{T}\mathbf A(\mathbf X\mathbf {\vec b}+\mathbf {\vec c})]}{\partial \mathbf X}=(\mathbf A+\mathbf A^{T})(\mathbf X\mathbf {\vec b}+\mathbf {\vec c})\mathbf {\vec b}^{T}

\frac{\partial (\mathbf {\vec b}^{T}\mathbf X^{T}\mathbf A \mathbf X\mathbf {\vec c})}{\partial \mathbf X}=\mathbf A^{T}\mathbf X\mathbf {\vec b}\mathbf {\vec c}^{T}+\mathbf A\mathbf X\mathbf {\vec c}\mathbf {\vec b}^{T}

  1. 如果 f 是一元函数,则:
    • 其逐元向量函数为:
      f(\mathbf{\vec x}) =(f(x_1),f(x_2),\cdots,f(x_n))^{T}
  • 其逐矩阵函数为:

f(\mathbf X)=\begin{bmatrix} f(x_{1,1}) & f(x_{1,2}) & \cdots & f(x_{1,n})\\ f(x_{2,1}) & f(x_{2,2}) & \cdots & f(x_{2,n})\\ \vdots & \vdots & \ddots & \vdots\\\ f(x_{m,1}) & f(x_{m,2}) & \cdots & f(x_{m,n})\\ \end{bmatrix}

  • 其逐元导数分别为:

f^{\prime}(\mathbf{\vec x})=(f^{\prime}(x1),f^{\prime}(x2),\cdots,f^{\prime}(x_n))^{T}

f^{\prime}(\mathbf X)=\begin{bmatrix} f^{\prime}(x_{1,1}) & f^{\prime}(x_{1,2}) & \cdots & f^{\prime}(x_{1,n})\\ f^{\prime}(x_{2,1}) & f^{\prime}(x_{2,2}) & \cdots & f^{\prime}(x_{2,n})\\ \vdots & \vdots & \ddots & \vdots\\ f^{\prime}(x_{m,1}) & f^{\prime}(x_{m,2}) & \cdots & f^{\prime}(x_{m,n})\\ \end{bmatrix}

  1. 各种类型的偏导数:
  • 标量对标量的偏导数: \frac{\partial u}{\partial v}

  • 标量对向量(n 维向量)的偏导数 :

\frac{\partial u}{\partial \mathbf {\vec v}}=(\frac{\partial u}{\partial v_1},\frac{\partial u}{\partial v_2},\cdots,\frac{\partial u}{\partial v_n})^{T}

  • 标量对矩阵(m\times n 阶矩阵)的偏导数:
    \frac{\partial u}{\partial \mathbf V}=\begin{bmatrix} \frac{\partial u}{\partial V_{1,1}} & \frac{\partial u}{\partial V_{1,2}} & \cdots & \frac{\partial u}{\partial V_{1,n}}\\ \frac{\partial u}{\partial V_{2,1}} & \frac{\partial u}{\partial V_{2,2}} & \cdots & \frac{\partial u}{\partial V_{2,n}}\\ \vdots & \vdots & \ddots & \vdots\\ \frac{\partial u}{\partial V_{m,1}} & \frac{\partial u}{\partial V_{m,2}} & \cdots & \frac{\partial u}{\partial V_{m,n}} \end{bmatrix}
  • 向量(m 维向量)对标量的偏导数:
    \frac{\partial \mathbf {\vec u}}{\partial v}=(\frac{\partial u_1}{\partial v},\frac{\partial u_2}{\partial v},\cdots,\frac{\partial u_m}{\partial v})^{T}

  • 向量(m 维向量)对向量 (n 维向量) 的偏导数(雅可比矩阵,行优先)

\frac{\partial \mathbf {\vec u}}{\partial \mathbf {\vec v}}=\begin{bmatrix} \frac{\partial u_1}{\partial v_1} & \frac{\partial u_1}{\partial v_2} & \cdots & \frac{\partial u_1}{\partial v_n}\\ \frac{\partial u_2}{\partial v_1} & \frac{\partial u_2}{\partial v_2} & \cdots & \frac{\partial u_2}{\partial v_n}\\ \vdots & \vdots & \ddots & \vdots\\ \frac{\partial u_m}{\partial v_1} & \frac{\partial u_m}{\partial v_2} & \cdots & \frac{\partial u_m}{\partial v_n} \end{bmatrix}

如果为列优先,则为上面矩阵的转置。

  • 矩阵(m\times n 阶矩阵)对标量的偏导数

\frac{\partial \mathbf U}{\partial v}=\begin{bmatrix} \frac{\partial U_{1,1}}{\partial v} & \frac{\partial U_{1,2}}{\partial v} & \cdots & \frac{\partial U_{1,n}}{\partial v}\\ \frac{\partial U_{2,1}}{\partial v} & \frac{\partial U_{2,2}}{\partial v} & \cdots & \frac{\partial U_{2,n}}{\partial v}\\ \vdots & \vdots & \ddots & \vdots\\ \frac{\partial U_{m,1}}{\partial v} & \frac{\partial U_{m,2}}{\partial v} & \cdots & \frac{\partial U_{m,n}}{\partial v} \end{bmatrix}

  1. 对于矩阵的迹,有下列偏导数成立:

\frac{\partial [tr(f(\mathbf X))]}{\partial \mathbf X }=(f^{\prime}(\mathbf X))^{T}

\frac{\partial [tr(\mathbf A\mathbf X\mathbf B)]}{\partial \mathbf X }=\mathbf A^{T}\mathbf B^{T}

\frac{\partial [tr(\mathbf A\mathbf X^{T}\mathbf B)]}{\partial \mathbf X }=\mathbf B\mathbf A

\frac{\partial [tr(\mathbf A\otimes\mathbf X )]}{\partial \mathbf X }=tr(\mathbf A)\mathbf I

\frac{\partial [tr(\mathbf A\mathbf X \mathbf B\mathbf X)]}{\partial \mathbf X }=\mathbf A^{T}\mathbf X^{T}\mathbf B^{T}+\mathbf B^{T}\mathbf X \mathbf A^{T}

\frac{\partial [tr(\mathbf X^{T} \mathbf B\mathbf X \mathbf C)]}{\partial \mathbf X }=\mathbf B\mathbf X \mathbf C +\mathbf B^{T}\mathbf X \mathbf C^{T}

\frac{\partial [tr(\mathbf C^{T}\mathbf X^{T} \mathbf B\mathbf X \mathbf C)]}{\partial \mathbf X }=(\mathbf B^{T}+\mathbf B)\mathbf X \mathbf C \mathbf C^{T}

\frac{\partial [tr(\mathbf A\mathbf X \mathbf B\mathbf X^{T} \mathbf C)]}{\partial \mathbf X }= \mathbf A^{T}\mathbf C^{T}\mathbf X\mathbf B^{T}+\mathbf C \mathbf A \mathbf X \mathbf B

\frac{\partial [tr((\mathbf A\mathbf X\mathbf B+\mathbf C)(\mathbf A\mathbf X\mathbf B+\mathbf C))]}{\partial \mathbf X }= 2\mathbf A ^{T}(\mathbf A\mathbf X\mathbf B+\mathbf C)\mathbf B^{T}

  1. 假设 \mathbf U= f(\mathbf X) 是关于 \mathbf X 的矩阵值函数(
    f:\mathbb R^{m\times n}\rightarrow \mathbb R^{m\times n}

),且 g(\mathbf U) 是关于 \mathbf U 的实值函数(g:\mathbb R^{m\times n}\rightarrow \mathbb R),则下面链式法则成立:

\frac{\partial g(\mathbf U)}{\partial \mathbf X}= \left(\frac{\partial g(\mathbf U)}{\partial x_{i,j}}\right)_{m\times n}=\begin{bmatrix} \frac{\partial g(\mathbf U)}{\partial x_{1,1}} & \frac{\partial g(\mathbf U)}{\partial x_{1,2}} & \cdots & \frac{\partial g(\mathbf U)}{\partial x_{1,n}}\\ \frac{\partial g(\mathbf U)}{\partial x_{2,1}} & \frac{\partial g(\mathbf U)}{\partial x_{2,2}} & \cdots & \frac{\partial g(\mathbf U)}{\partial x_{2,n}}\\ \vdots & \vdots & \ddots &\vdots\\ \frac{\partial g(\mathbf U)}{\partial x_{m,1}} & \frac{\partial g(\mathbf U)}{\partial x_{m,2}} & \cdots \frac{\partial g(\mathbf U)}{\partial x_{m,n}}\\ \end{bmatrix}\\ =\left(\sum_{k}\sum_{l}\frac{\partial g(\mathbf U)}{\partial u_{k,l}}\frac{\partial u_{k,l}}{\partial x_{i,j}}\right)_{m\times n} =\left(tr\left[\left(\frac{\partial g(\mathbf U)}{\partial \mathbf U}\right)^{T} \frac{\partial \mathbf U}{\partial x_{i,j}}\right]\right)_{m\times n}

四、特殊函数

  1. 这里给出机器学习中用到的一些特殊函数。

4.1 sigmoid 函数

  1. sigmoid函数:

\sigma(x)=\frac{1}{1+\exp(-x)}

  • 该函数可以用于生成二项分布的 \phi 参数。
  • 当 x 很大或者很小时,该函数处于饱和状态。此时函数的曲线非常平坦,并且自变量的一个较大的变化只能带来函数值的一个微小的变化,即:导数很小。

4.2 softplus 函数

  1. softplus函数:
    \zeta(x)=\log(1+\exp(x))
  • 该函数可以生成正态分布的 \sigma^{2} 参数。
  • 它之所以称作softplus,因为它是下面函数的一个光滑逼近:x^{+}=\max(0,x)
  1. 如果定义两个函数:

x^{+}=\max(0,x)\\\ x^{-}=\max(0,-x)

则它们分布获取了 y=x 的正部分和负部分。

根据定义有:x=x^{+}-x^{-} 。而 \zeta(x) 逼近的是 x^{+}\zeta(-x) 逼近的是
x^{-},于是有:

\zeta(x)-\zeta(-x)=x

  1. sigmoidsoftplus函数的性质:

\sigma(x)=\frac{\exp(x)}{\exp(x)+\exp(0)} \\ \frac {d}{dx}\sigma(x)=\sigma(x)(1-\sigma(x)) \\ 1-\sigma(x)=\sigma(-x) \\ \log\sigma(x)=-\zeta(-x) \\ \frac{d}{dx}\zeta(x)=\sigma(x) \\ \forall x\in(0,1),\sigma^{-1}(x)=\log(\frac{x}{1-x}) \\ \forall x \gt 0,\zeta^{-1}(x)=\log(\exp(x)-1) \\ \zeta(x)=\int_{-\infty}^{x}\sigma(y)dy \\ \zeta(x)-\zeta(-x)=x \\
其中 f^{-1}(\cdot) 为反函数。\sigma^{-1}(x) 也称作logit函数。

4.3 伽马函数

  1. 伽马函数定义为:
    \Gamma(x)=\int_0^{+\infty} t^{x-1}e^{-t}dt\quad,x\in \mathbb R\\ or. \quad\Gamma(z)=\int_0^{+\infty} t^{z-1}e^{-t}dt\quad,z\in \mathbb Z\\

性质为:

  • 对于正整数 n 有: \Gamma(n)=(n-1)!

  • \Gamma(x+1)=x\Gamma(x) ,因此伽马函数是阶乘在实数域上的扩展。

  • 与贝塔函数的关系:

B(m,n)=\frac{\Gamma(m)\Gamma(n)}{\Gamma(m+n)}

  • 对于 x \in (0,1) 有:

\Gamma(1-x)\Gamma(x)=\frac{\pi}{\sin\pi x}

则可以推导出重要公式: \Gamma(\frac 12)=\sqrt\pi

  • 对于 x\gt 0,伽马函数是严格凹函数。
  1. 当 x 足够大时,可以用Stirling 公式来计算Gamma函数值:
    \Gamma(x) \sim \sqrt{2\pi} e^{-x}x^{x+1/2}

4.4 贝塔函数

  1. 对于任意实数 m,n \gt 0 ,定义贝塔函数:

B(m,n)=\int_0^1 x^{m-1}(1-x)^{n-1} dx

其它形式的定义:

B(m,n)=2\int_0^{\frac \pi 2}\sin ^{2m-1}(x) \cos ^{2n-1}(x) dx\\\ B(m,n) = \int_0^{+\infty}\frac{x^{m-1}}{(1+x)^{m+n}} dx\\\ B(m,n)=\int_0^1\frac{x^{m-1}+x^{n-1}}{(1+x)^{m+n}}dx

  1. 性质:
  • 连续性:贝塔函数在定义域 m\gt0,n\gt0 内连续。

  • 对称性:B(m,n)=B(n,m)

  • 递个公式:
    B(m,n) = \frac{n-1}{m+n-1}B(m,n-1),\quad m\gt0,n\gt1\\ B(m,n) = \frac{m-1}{m+n-1}B(m-1,n),\quad m\gt1,n\gt0\\ B(m,n) = \frac{(m-1)(n-1)}{(m+n-1)(m+n-2)}B(m-1,n-1),\quad m\gt1,n\gt1

  • m,n 较大时,有近似公式:
    B(m,n)=\frac{\sqrt{(2\pi)m^{m-1/2}n^{n-1/2}}}{(m+n)^{m+n-1/2}}
  • 与伽马函数关系:
    • 对于任意正实数 m,n ,有:
      B(m,n)=\frac{\Gamma(m)\Gamma(n)}{\Gamma(m+n)}
    • B(m,1-m)=\Gamma(m)\Gamma(1-m)
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,012评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,628评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,653评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,485评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,574评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,590评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,596评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,340评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,794评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,102评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,276评论 1 344
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,940评论 5 339
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,583评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,201评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,441评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,173评论 2 366
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,136评论 2 352

推荐阅读更多精彩内容