t-test,z-test原理

目录

Population & sample

Population average treatment effect(PATE)

Hypothesis Testing, t-test & p-value

Execute t-test via Excel & Python

z-test


Population & sample

Population是全体数据集,Sample是从Population中随机抽取的实验数据集,我们想通过sample的特征最终推断出population的特征。比如,测试一项treatment是否真的在population上有效果,则应通过sample上该treatment是否有效果来推断。

Population average treatment effect(PATE)

  • 最初,PATE我们想通过SATE(sample average treatment effect)得到:

SATE=\frac{1}{n}\sum_{i=1}^{n}\left \{ Y_{i}(1)-Y_{i}(0) \right \}

\bg_white PATE=E\left [ Y_{i}(1)-Y_{i}(0) \right ]

(当某数据i位于treatment group时,它的outcome是Y_{i}(1); 当它位于control group时,它的outcome是Y_{i}(0)。所以此时SATE的含义就是:求所有数

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Softmax回归是一种用于多类别分类的机器学习算法。它基于Logistic回归的思想,通过将输入数据与每个类别的权重进行线性组合,并将结果通过Softmax函数转化为概率分布来预测样本的类别。 Softmax函数的定义如下: $$ \sigma(z)_j = \frac{e^{z_j}}{\sum_{k=1}^{K}e^{z_k}} $$ 其中,$z_j$表示第$j$个类别的线性组合结果,$K$表示类别的总数。 Softmax回归的训练过程可以分为以下几个步骤: 1. 初始化权重矩阵$W$和偏置向量$b$。 2. 对于每个训练样本,计算线性组合$z$,并将其输入到Softmax函数中得到预测的概率分布。 3. 使用交叉熵损失函数来衡量预测结果与真实标签之间的差异。 4. 使用梯度下降法或其他优化算法来更新权重矩阵$W$和偏置向量$b$,使损失函数最小化。 5. 重复步骤2-4,直到达到停止条件(例如达到最大迭代次数或损失函数收敛)。 下面是一个使用Softmax回归进行MNIST手写数字分类的Python代码示例: ```python import numpy as np import theano import theano.tensor as T # 定义输入变量 x = T.matrix('x') # 输入数据 y = T.ivector('y') # 真实标签 # 定义模型参数 W = theano.shared(np.zeros((784, 10), dtype=theano.config.floatX), name='W') # 权重矩阵 b = theano.shared(np.zeros((10,), dtype=theano.config.floatX), name='b') # 偏置向量 # 定义模型输出 z = T.dot(x, W) + b # 线性组合 p_y_given_x = T.nnet.softmax(z) # 预测的概率分布 # 定义损失函数 cost = T.mean(T.nnet.categorical_crossentropy(p_y_given_x, y)) # 定义参数更新规则 learning_rate = 0.01 updates = [(W, W - learning_rate * T.grad(cost, W)), (b, b - learning_rate * T.grad(cost, b))] # 定义训练函数 train_model = theano.function(inputs=[x, y], outputs=cost, updates=updates) # 进行模型训练 for epoch in range(10): for batch in range(n_batches): cost = train_model(X_train[batch * batch_size: (batch + 1) * batch_size], y_train[batch * batch_size: (batch + 1) * batch_size]) # 定义预测函数 predict_model = theano.function(inputs=[x], outputs=T.argmax(p_y_given_x, axis=1)) # 进行预测 y_pred = predict_model(X_test) ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值