Variance in OLS/GLM

对于GLM来说,如何估计其prediction \hat y的Confidence Interval?以及如何估计其Coefficients \hat \beta的Variance?【这个常常在线性模型用以评估其变量的Causal Inference时需要用】都是非常重要的问题。
由于GLM的支持的分布,可以是real continuous number,以及integer(包含binary number)等等,所以对它们Variance的估计就有不同的计算方法。

1、Linear model(OLS)中的variance估计[Homoscedasticity时]

详细可见Variance in Linear Model

  • 理解ols estimator[0]

    • a、The MSE of a point estimator is its variance (V) plus the square of its bias.
      优化MSE即是同时优化Variance与Bias。MSE=Var + Bias^2

    • b、OLS的假设:\epsilon_i \sim N(0,\sigma(\epsilon)^2)\vec x无关,且无自相关性。

    • c、设定:
      \vec y \in R^{n \times 1}\vec e \in R^{n \times 1}\vec {\hat \beta} \in R^{ m \times 1}\mathbf {X} \in R^{n \times m}\vec {x_i} \in R^{m \times 1}
      得到:\hat y_i = \vec x_i^T \hat \beta + \epsilon_i,或矩阵表达:\vec {\hat y} = \mathbf X \hat \beta + \vec \epsilon

    • d、形式化推导:
      \min_{\beta} \sum_i^n (y_i - \vec {x_i}^T\beta)^2

      • 1、用矩阵表示residual:
        \vec e \in R^{1 \times n}\vec e = \vec y - \mathbf {X}\beta

      • 2、用矩阵形式表达loss。
        带入\hat y得到(注意结果为一个标量,与\vec e \vec e^T \in R^{n \times n}不同):
        \vec e^T \vec e= (\vec y - \mathbf {X} \hat \beta)^T (\vec y - \mathbf {X} \hat \beta)
        =\vec y ^T \vec y - \hat \beta^T\mathbf{X}^T\vec y - \vec y\mathbf{X} \hat \beta + \hat \beta^T\mathbf{X}^T \mathbf {X} \hat \beta
        由于\hat \beta^T\mathbf{X}^T\vec y = ( \vec y\mathbf{X} \hat \beta )^T,因为其结果为scalar,scalar的转置仍然是其本身。
        所以最终要minimize的loss function用矩阵表达如下:
        \vec e^T \vec {e} = \vec y ^T \vec {y} - 2\times \hat \beta^T\mathbf{X}^T\vec y + \hat \beta^T\mathbf{X}^T \mathbf {X} \hat \beta

      • 3、要minimize上述表达式,我们需要计算对\hat \beta的偏导。(Matrix Derivatives[13])
        Jacobian: \frac {\partial \vec {e}^T \vec {e}}{\partial \hat \beta } = -2 \mathbf{X}^T \vec {y} + 2 \mathbf{X}^T\mathbf{X} \hat \beta
        Hessian: \frac {\partial^2 \vec {e}^T \vec {e}}{\partial^2 \hat {\beta}} = 2\mathbf{X}^T \mathbf{X}
        由于对\hat \beta的二阶偏导数矩阵(Hessian Matrix)半正定,所以该函数为凸函数(证明见[12])。因此对凸函数求minimize \hat \beta,只需要求解一阶导数Jacobian=0即可

      • 4、使Jacobian:\frac {\partial \vec {e}^T \vec {e}}{\partial \hat \beta }=0,我们得到normal equation:
        \mathbf {X}^T \mathbf{X} \hat \beta = \mathbf {X}^ T \vec {y}

      • 5、由此得到close form solution:
        \hat {\beta} =( \mathbf{X}^T \mathbf{X})^{-1} \mathbf{X}^T \vec {y}

      • 6、我们可以通过解析解,推导出\hat \beta的期望:
        假设真实参数为\beta,所以:\vec y = \mathbf X \beta + \vec \epsilon
        则:\hat \beta =( \mathbf{X}^T \mathbf{X})^{-1} \mathbf{X}^T (\mathbf {X} \beta + \vec {\epsilon})【带入\vec y
        = \beta + ( \mathbf{X}^T \mathbf{X})^{-1} \mathbf{X}^T \vec \epsilon
        因此:\mathbb {E}(\hat \beta) = \beta + ( \mathbf{X}^T \mathbf{X} )^{-1} \mathbf{X}^T \mathbb {E} (\vec \epsilon)
        由于\mathbb E(\epsilon) = 0
        所以\mathbb E(\hat \beta) = \beta,即OLS为无偏估计量

      • 7、同时,我们也可以推导出其方差:
        Var(\hat \beta) = \mathbb E[(\hat \beta - \mathbb E(\hat \beta) )^2]
        用矩阵表达为:
        = \mathbb E[(\hat \beta - \beta )^T(\hat \beta - \beta)]【带入\mathbb E(\hat \beta) = \beta
        = \mathbb E[ ( \mathbf{X}^T \mathbf{X})^{-1} \mathbf{X}^T \vec \epsilon(( \mathbf{X}^T \mathbf{X})^{-1} \mathbf{X}^T \vec \epsilon)^T]【带入上述计算\mathbb E(\hat \beta)时,\hat \beta的表达式】
        =\mathbb E[ (\mathbf{X}^T \mathbf{X})^{-1} \mathbf{X}^T \vec \epsilon \vec \epsilon^T \mathbf{X} (\mathbf{X}^T \mathbf{X})^{-1}]【由于(X^TX)^{-1}为对称矩阵,所以其转置等于其自身】
        =\mathbb E[ \vec \epsilon \vec \epsilon^T] (\mathbf{X}^T \mathbf{X})^{-1} \mathbf{X}^T \mathbf{X} (\mathbf{X}^T \mathbf{X})^{-1}
        =\mathbb E[ \vec \epsilon \vec \epsilon^T] (\mathbf{X}^T \mathbf{X})^{-1}【其中(\mathbf{X}^T \mathbf{X} ) ^{-1} \mathbf{X}^T \mathbf{X} = \mathbf I
        由于\mathbb E[ \vec \epsilon \vec \epsilon^T] \in R^{n \times n}在矩阵视角下为对角矩阵(非对角元素为0),对角线上,矩阵的X_{ii} = \mathbb E(\epsilon_i^2)),由于Var(x)=\mathbb E(x^2) - \mathbb E(x)^2,而\mathbb E(\epsilon) = 0,且有同方差性。所以\mathbb {E}[ \vec \epsilon \vec \epsilon^T] =Var(\epsilon) \mathbf {I}= \sigma^2 \mathbf I
        因此化简得到:
        Var(\hat \beta) = \sigma^2 (\mathbf{X}^T \mathbf{X})^{-1}
        由于\sigma^2未知,我们通常用样本方差代替\hat \sigma^2=\frac {\vec \epsilon^T \vec \epsilon}{n - k},其中k为参数数量.

  • 关于缺失变量可能带来的\hat \beta偏差:Omitted Variable Bias[14]
    这里与Confounding Bias比较类似(但不完全一致,这里似乎缺失了mediator也会造成bias?)。当我们缺失的变量满足X_{omitted} \perp Y或者X_{omitted} \perp X时,OLS estimator能保持无偏。
    这点非常好理解,假设z= x + \epsilon,y = z + x,true model中\beta_1=\beta_2 = 1「这里假设的形式更像是mediator」,当我们omit掉z,对y = \hat \beta x进行OLS估计时,天然就会计算出\hat \beta = 2 \neq \beta,直觉上也好理解,\hat \beta是有偏的。
    当然,原问题中,\hat \beta是无偏的,则\hat y是无偏的。而当我们在omitted Variable的情况下做回归,\hat y是否有偏,还需要证明:\mathbb E(\hat y) \neq \mathbb E(y)

  • 关于缺失变量对\hat y是否也带来偏差:
    X_2为omitted variable
    \vec y = X_1\beta_1 + X_2\beta_2 + \vec \epsilon
    所以\hat y = X_1 \hat \beta_1 = X_1((X_1^TX_1)^{-1}X_1^T\vec y )
    =X_1((X_1^TX_1)^{-1}X_1^T (X_1\beta_1 + X_2\beta_2 + \vec \epsilon) )
    =X_1\beta_1 + X_1(X_1^TX_1)^{-1}X_1^T * (X_2\beta_2+ \epsilon)【前一项结合律】
    =X_1\beta_1 + X_1(X_1^TX_1)^{-1}X_1^TX_2\beta_2+ X_1(X_1^TX_1)^{-1}X_1^T\epsilon
    \neq X_1\beta_1 + X_2\beta_2 + \epsilon
    只有在X_1(X_1^TX_1)^{-1}X_1^T = I_n时,才满足无偏,所以\mathbb E(\hat y) \neq \mathbb E(y),所以\hat y仍然是有偏的。因此,如果我们有omitted variable,则我们\hat \beta是有偏的,所以不能用做causal inference,\hat y也是有偏的,所以也不能用于prediction

  • 从另一个角度理解,为何omitted variable产生时 prediction也会有偏?
    因为omitted variable可能会导致非同方差性[15]。
    其实,我们进行OLS估计时,得到的解\hat \beta的形式并不需要保证同方差性。但是在非同方差性的状态下,我们不满足Gauss Markov Assumptions,所以我们的\hat \beta_{OLS}不是无偏估计[16]。此时我们也可以使用OLS做估计(我们的求解过程并不需要Gauss-Markov假设来化简),但是只有在满足Gauss Markov Assumptions的时候,我们的OLS estimator才是BLUE的。【Best Linear Unbiased Estimator】Best此处指其Variance是最小的。

  • 关于omitted variable情况下,bias的方向问题。positive bias or negative bias,可以见Omitted Variable Bias: The Simple Case

  • Variance 计算

    • a、误差项:
      \epsilon \sim N(0,\sigma^2(\epsilon))
      Var(\hat \epsilon) = \frac 1 {n-1} \sum_i^n (y_i - \hat y_i) ^ 2
      通常被记为\sigma.
      由于同方差性,所以,每一个点估计,其误差的方差都是Var(\hat \epsilon),通常真实的variance:Var(\epsilon)难以计算,所以用其估计值:Var(\hat \epsilon)代替,以下Var(\beta)的计算公式中用到的也是。

    • b、参数项:
      \hat \beta|X \sim N(\beta,\sigma^2(\beta))
      Var(\hat \beta) = \frac {Var(\epsilon)}{X^TX}
      =\sigma^2(X^TX)^{-1}
      注意,Xn \times m的矩阵\sigma^2为标量,所以这里得到的是m \times m的矩阵,即m维系数的协方差矩阵,对角线上第i行的元素即为\beta_i的方差。

    • c、estimate项:
      Var(\hat Y) = Var(\vec x_0^T\hat \beta)
      = \vec x_0^TVar(\hat \beta)\vec x_0【方差性质】
      =\sigma^2 \vec x_0^T(X^TX)^{-1}\vec x_0【带入Var(\hat \beta)
      注意,\vec x_0 \in R^{m \times 1}为某一个样本的取值。

    • d、Prediction Interval:[6]
      TODO

2、OLS:Heteroscedasticity时的variance估计

  • 与Homoscedasticity的差异:
    非同方差性。
    由于我们假设\epsilon \not\perp x。这里是与OLS假设不同的。
  • 常用建模方式:[10]
    lNormal , Exponential, Inverse Gaussian

  • Estimator

    • a、Weighted Least Square,要求我们对\epsilon_i有个比较明确的建模,(然后输入模型,表示为weight)。通常需要我们找到一个正比于variance的变量。当且仅当这个变量能比较正确地建模方差variance,才能够解决方差不同性的问题。[16]

    • b、White Estimator
      将这个问题视为nuisance,通过修正其估计量的方差来解决,而非建模这个方差。[16]
      见Heteroscedasticity-consistent standard errors[17]
      在非同方差的状态下,\hat \beta_{OLS}仍然为unbiased estimator,但是并不满足BLUE,即此时的variance并不是最小的。并且,由于\mathbb E(\vec \epsilon \vec \epsilon^T) = Var(\epsilon) \neq \sigma^2 I_n【第一个等号在\mathbb E(\epsilon)=0的情况下成立,而第二个等号仅在同方差时成立】,所以上述的Variance估计是不成立的。
      此处,我们假设\epsilon_i来源于不同分布,但其之间互相独立,即没有auto-correlation,所以定义:
      \Sigma := \mathbb E(\vec \epsilon \vec \epsilon^T) = diag(\sigma_1^2,\sigma_2^2...\sigma_n^2)
      因而:
      Var(\hat \beta_{OLS}) = \mathbb E((\hat \beta - \beta)(\hat \beta - \beta)^{-1})
      = \mathbb E((X^TX)^{-1}X^T\epsilon \epsilon X(X^TX)^{-1})
      =(X^TX)^{-1}X^T\Sigma X(X^TX)^{-1}【这一步与之前的推导一致】
      然而,通常如果我们无法准确地获得\sigma_i^2,所以我们用purely empirical 的方式来估计:即\sigma_i^2= \epsilon_i^2,【\epsilon_i即为真实OLS估计后的residual】
      因此:
      \hat \Sigma = diag(\epsilon_1^2,\epsilon_2^2...\epsilon_n^2)
      带入即可获得其Variance:
      Var(\hat \beta_{OLS}) = (X^TX)^{-1}X^T\hat \Sigma X(X^TX)^{-1}

    • c、当然,相较于上述纯empirical的估计方法,也可以加入一些假设,譬如某一部分observations有相同的variance。即group cluster variance。

  • Variance 计算:
    推导见上
    Var(\hat \epsilon) = \hat \Sigma = diag(\epsilon_1^2,\epsilon_2^2...\epsilon_n^2)
    Var(\hat \beta) = (X^TX)^{-1}X^T\hat \Sigma X(X^TX)^{-1}
    Var(\hat y) = \vec x_0^TVar(\hat \beta)\vec x_0

3、LR(GLM)中的variance估计[1]

  • Deviance概念:
    当我们拟合GLM模型的时候,不使用MSE,而是使用Deviance?[3]
    Deviance是GLM中对RSS(residual sum of squares)在OLS中的一种泛化。
    Deviance满足:
    D(y,y)=0,D(y,u) > 0,when[y \neq u]
    通过likelihood 来构建Deviance:
    D(y, \hat u) = 2(log(p(y| \theta_s)) - log(p(y|\hat \theta)))
    \theta_s 为saturated model(即每个参数表示一个样本)的参数,\hat \theta为模型估计的参数。

    • a、对于normal distribution来说,常用
      d(y,u)=\frac {(y-u)^2}{\sigma ^2},其实就是MSE
    • b、对于Bernoulli distribution来说常用
      d(y,u) = log(p(y|y))-log(|u-y|)
      = - ylog(u) - (1-y) log(1-u)
      其中【p(y|y) =1,log(1) = 0
  • 与OLS差异性来源:
    假设不同:g(y)=\mathbf {X} \beta,其中g(x)为link function。[1]
    1、非同方差性:
    比如:Logistics model属于GLM,由于y \propto Bernoulli,所以它天然地构建了Variance与Mean的关系,即:Var(y) = E(y) (1 - E(y)),这个关系在OLS中是不存在的,这里天然造成了Heteroscedasticity。
    2、同时,由于link function的存在,通常GLM没有Analytical Solution[11]
    3、同时,也是由于没有Analytical Solution,所以Variance的推导也比较tricky

  • 常用概率建模方式:[10]
    Logit,Porbit,cloglog,Possion[1]

  • Variance 计算:

    • a、参数\hat \beta的方差:[18]
      假设数据x_i 服从概率分布f_{\beta}(x)f为其概率密度函数PDF。
      X为iid采样获得的样本,其似然函数Likelihood function如下:L(X;\beta)= \prod_i f_{\beta}(x_i)

      • aa、Score Function:log likelihood的一阶导数
        S(X;\beta) = \sum_i \frac {\partial log(f_{\beta}(x_i))}{\partial \beta}
        = \sum_i \frac {1}{f_{\beta}(x_i)} \frac {\partial f_{\beta}(x_i)}{\partial \beta}
        性质其期望为0,\mathbb E(S(X;\beta))=0
        \mathbb E(S(X;\beta)) = \int S(x;\beta) f_{\beta}(x) dx【期望,概率积分】
        =\int \frac {\partial f_{\beta}(x_i)}{\partial \beta} dx【假设Sample size=1,带入上述表达式】
        =\frac {\partial \int f_{\beta}(x_i) dx}{\partial \beta}【与\beta无关,交换顺序,Leibniz integral rule】
        =\frac {\partial 1}{\partial \beta} = 0【pdf积分为常数1】

      • ab、Fisher Information Matrix:
        I(\beta)=Var(E(S(X;\beta)^2)
        =\mathbb E(S(X;\beta)^2)【期望为0,则其二阶矩等于方差】
        =\int (\frac {\partial log(f(x))}{\partial \beta})^2 f(x) dx 【假设sample size=1,带入】
        =\int (\frac {\partial log(f(x))}{\partial \beta})^2 f(x) dx
        TODO:
        很容易证明对于对数似然损失,Fisher Information 与Hessian相同[20]:
        Expected Fisher Information:
        \mathbb I(\beta)= - \mathbb E(\frac {\partial^2 log(f_{\beta}(X))}{\partial^2 \beta})
        Observerd Fisher Information:(Empirical Fisher Information)
        \mathbb I(\beta) = - \frac {\partial^2 log(f_{\beta}(X))}{\partial^2 \beta}
        在Matrix Form中,可以通过对数似然loss的Hessian推导而来。[20]
        即:I(\beta) = \mathbb H
        【注,由于我们一般都是优化负对数似然,所以负号已经包含在Hessian中了】

      • ab2、Hessian in LR:
        TODO,矩阵推导得到:
        \mathbb H(\hat \beta) = X^T \hat \Sigma X
        其中\hat \Sigma = diag(\hat y_1(1- \hat y_1), \hat y_2(1- \hat y_2)...\hat y_n(1- \hat y_n))为带入\hat \beta后得到的对角矩阵。

      • ac、Cramer-Rao bound:[19]
        根据Cramér–Rao bound给出的lower bound of estimator:
        *注:这里是lower bound,所以An unbiased estimator which achieves this lower bound is said to be (fully) efficient
        即:Var(\beta) \geq \mathbb I(\beta)^{-1} = \mathbb H(\beta)^{-1}
        注:相同地,在OLS中,其参数的Variance也能用相同的方法推导出来,也是\mathbb H(\beta)^{-1}

      • ad、最终Variance的形式:[21]
        因此,对Logistic Regression:
        Var(\hat \beta) = (X^T \hat \Sigma X)^{-1}
        其中\hat \Sigma = diag(\hat y_1(1- \hat y_1), \hat y_2(1- \hat y_2)...\hat y_n(1- \hat y_n))
        由于Var(\hat \beta)的表达式中有取逆操作,所以一般也没有analytical form,都是通过numerical的方法来解得。

    • b、预估值\hat y的方差:
      对于Categorical Dependent Variable(outcome Y是一个类别变量)的情况下,有四种办法可以计算其置信区间。

      • ba、前言:Maximum Likelihood(在Probability估计中不可用)[5]
        Linear Model中可用:
        Var(\vec x_0^T \hat \beta)=\vec x_0^T Var(\hat \beta) \vec x_0
        其中\vec x_0 \in R^{m \times 1}为样本点,Var(\hat \beta) \in R^{m \times m}是covariance matrix of regression coefficients:即Var(\hat \beta) = (X^T \Sigma X)^{-1},其中X \in R^{n \times m}为样本,\Sigma \in R^{n \times n}是预估值的covariance矩阵,实际计算可见[4]

      • bb、Endpoint Transformation [8]
        根据Maximum Likelihood估计其中线性项的Variance:Var(X_0 \beta),然后获得其线性项的Confidence Interval:y_{LB} \leq y \leq y_{UB},再将其转换到概率维度的空间中[4],只要转换函数为单调的即可,得到:F(y_{LB}) \leq F(y) \leq F(y_{UB}),例如logistic function:F(y)=\frac {e^y}{1+e^y} = \frac {1}{1 + e^{-y}}
        注意:这种方式计算出来不会越界,但是需要 outcome of interest is monotonic of the linear combination

      • bc、Delta method
        TODO。

      • bd、Bootstrap method
        从sample中多次采样样本,多次拟合模型,并且多次估计样本,然后通过样本的多次估计,来模拟从population中采样造成的variability。缺点就是非常耗时。

运用

1、计算propensity score的时候,如何评估我们模型variance带来的影响?
要求无偏吗?
为什么要用semi-parametric的方法?

2、模型计算

Refer

[0]MSE
https://study.com/academy/lesson/properties-of-point-estimators.html

[1]GLM
引子,https://stats.stackexchange.com/questions/402584/why-does-logistic-regression-not-have-variance-but-have-deviance

GLM差异性来源,Modeling probabilities:https://web.stanford.edu/class/stats191/notebooks/Logistic.html
常用建模方式:见最后,Logit,Porbit,cloglog

常用link function:
https://en.wikipedia.org/wiki/Generalized_linear_model#Link_function

[2]Confidence Interval of Coefficient
其实参数的CI很重要,譬如我们在进行Causal Effect的估计时,我们用来导出结论的是Treatment变量的系数,那么知道这个系数的CI便很重要。
https://stats.stackexchange.com/questions/354098/calculating-confidence-intervals-for-a-logistic-regression

[3]Deviance:
https://en.wikipedia.org/wiki/Deviance_(statistics)

[4]Confidence Interval for Binary Classifier(such as Logistic Regression),in Practice
Endpoint Transformation & Delta Method:
https://stats.stackexchange.com/questions/163824/different-ways-to-produce-a-confidence-interval-for-odds-ratio-from-logistic-reg
以及:
Confidence intervals for predicted outcomes in regression models for categorical outcomes
以及:
Confidence Intervals for the Odds Ratio in Logistic Regression with One Binary X

[5]
线性模型的一些假设,变量命名,以及推导见:Applied Linear Models

[6]Prediction Interval
http://web.vu.lt/mif/a.buteikis/wp-content/uploads/PE_Book/3-7-UnivarPredict.html

[7]Confidence Interval
http://web.vu.lt/mif/a.buteikis/wp-content/uploads/PE_Book/3-5-UnivarConfInt.html

[8]
7.1章:Endpoint Transformation
Confidence intervals for predicted outcomes in regression models for categorical outcomes

[10]
GLM,Link Function
https://en.wikipedia.org/wiki/Generalized_linear_model

[11]LR has no Analytical(close form) Solution
https://stats.stackexchange.com/questions/455698/why-does-logistic-regressions-likelihood-function-have-no-closed-form

[12]证明
Hessian matrix 半正定

[13] Matrix Derivative
OLS in Matrix Form:page2 bottom

[14]
OLS in Matrix Form:Omitted Variable Bi

[15]
Omitted Variable bias:
https://statisticsbyjim.com/regression/confounding-variables-bias/#:~:text=Omitted%20variable%20bias%20occurs%20when,which%20biases%20the%20coefficient%20estimates.

[16]
在OLS in Matrix Form
Gauss-Markov 假设见 如下章节:
4、The Gauss-Markov Assumptions
5、The Gauss-Markov Theorem
检验同方差性(不同方差状态下的解决办法),见如下章节:
6、Robust (Huber of White) Standard Errors

[17]
Weight Estimator:
https://en.wikipedia.org/wiki/Heteroscedasticity-consistent_standard_errors

[18]
LR中参数\beta的 covariance matrix:
David W. Hosmer Applied Logistic Regression
P35

[19]
Fisher Information的意义
https://www.zhihu.com/question/26561604

[20]
Fisher Information
score function and I() proof:
https://en.wikipedia.org/wiki/Fisher_information

[21]
此时Variance就是Hessian Matrix求逆。
Lecture 26 — Logistic regression

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

推荐阅读更多精彩内容