本文主要是介绍Python高层解雇和客户活跃度量化不确定性模型,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
🎯要点
🎯量化不确定性模型:🖊模型检测短信编写者行为变化 | 🖊确定(商业领域中)竞争性替代方案 | 🖊确定作弊供词真实比例 | 🖊学生考试作弊 | 🖊确定零部件损坏导致的灾难事故原因 | 🖊马尔可夫链蒙特卡罗算法先验-后验范式可视化 | 🖊聚类寻找信息隐藏源头 | 🖊模型确定和纠正虚假商品星评 | 🖊客户商品价格优化呈现 | 🖊星系位置和椭圆率模拟 | 🖊最大化赌场奖金策略 | 🖊证券分析。
🎯动态分析和常微分方程推理流感传播 | 🎯高层领导被解雇模型预测 | 🎯客户活跃度模型预测 | 🎯热饮冷却非线性模型动态分析 | 🎯多级回归和后分层预测公众人物角逐 | 🎯模型分析专业人士对比机器学习工具的优劣 | 🎯销售领域利润率建模 | 🎯模型分析定位无线网络用户位置。
🍇Python贝叶斯推理
贝叶斯推理是一种找出变量分布的方法(例如高度 h h h 的分布)。贝叶斯推理的有趣特征是,统计学家(或数据科学家)可以利用他们的先验知识作为改进我们对分布情况的猜测的手段。贝叶斯推理依赖于贝叶斯统计的主要公式:贝叶斯定理。贝叶斯定理接受我们对分布的假设,即新的数据,并输出更新后的分布。对于数据科学,贝叶斯定理通常表示如下:
P ( θ ∣ Data ) = P ( Data ∣ θ ) ∗ P ( θ ) P ( Data ) P(\theta \mid \text { Data })=\frac{P(\text { Data } \mid \theta) * P(\theta)}{P(\text { Data })} P(θ∣ Data )=P( Data )P( Data ∣θ)∗P(θ)
- P ( θ ∣ D a t a ) P(\theta \mid D a t a) P(θ∣Data) 后验
- P ( P( P( Data ∣ θ ) \mid \theta) ∣θ) 似然
- P ( θ ) P(\theta) P(θ) 先验
- P ( P( P( Data ) ) ) 事实
我们可以从贝叶斯定理中看出,先验是一个概率:P(θ)。首先,让我们深入研究一下“θ”的含义。θ 通常表示为我们对最能描述我们试图研究的变量的模型的假设。让我们回到身高的例子。根据背景知识和常识,我们推断出身高在一个班级中呈正态分布。正式来说:
h ∼ N ( μ , σ ) h \sim N (\mu, \sigma) h∼N(μ,σ)
其中 N N N表示正态分布, μ \mu μ表示平均值, σ \sigma σ表示标准差。
现在,我们的先验并不完全是上面的表达式。相反,它是我们对每个参数 μ \mu μ 和 σ \sigma σ 如何分布的假设。请注意,这就是贝叶斯统计的定义特征的体现:我们如何找到这些参数的分布?有趣的是,我们根据先验知识“编造”它们。如果我们的先验知识很少,我们可以选择一个非常无信息的先验,以免使过程产生偏差。例如,我们可以定义平均高度 μ \mu μ 介于 1.65 m 1.65 m 1.65m 和 1.8 m 1.8 m 1.8m 之间。如果我们想要一个无信息的先验,我们可以说 μ \mu μ 沿着该区间均匀分布。相反,如果我们认为平均高度在某种程度上偏向于更接近 1.65 m 1.65 m 1.65m 而不是 1.8 m 1.8 m 1.8m 的值,我们可以定义 μ \mu μ 服从 beta 分布,由“超”参数 α \alpha α 定义和 β \beta β。我们可以看看下面这些选项:
import scipy.stats as sts
import numpy as np
import matplotlib.pyplot as pltmu = np.linspace(1.65, 1.8, num = 50)
test = np.linspace(0, 2)
uniform_dist = sts.uniform.pdf(mu) + 1
uniform_dist = uniform_dist/uniform_dist.sum()
beta_dist = sts.beta.pdf(mu, 2, 5, loc = 1.65, scale = 0.2)
beta_dist = beta_dist/beta_dist.sum()
plt.plot(mu, beta_dist, label = 'Beta Dist')
plt.plot(mu, uniform_dist, label = 'Uniform Dist')
plt.xlabel("Value of $\mu$ in meters")
plt.ylabel("Probability density")
plt.legend()
请注意 y 轴如何为我们提供“概率密度”,即我们认为真正的 μ \mu μ 是 x x x 轴上的概率密度。另外,请注意,β 分布和均匀分布会导致我们对 μ \mu μ 的值可能得出的不同结论。如果我们选择均匀分布,我们就表示我们不倾向于判断 μ \mu μ 是否接近我们范围内的任何值,我们只是认为它位于其中的某个位置。如果我们选择 beta 分布,我们相当确定 μ \mu μ 的“真实”值介于 1.68 m 1.68 m 1.68m 和 1.72 m 1.72 m 1.72m 之间,如蓝线峰值所示。
请注意,我们正在讨论 μ \mu μ 的先验,但我们的模型实际上有两个参数: N ( μ , σ ) N (\mu, \sigma) N(μ,σ)。一般来说,我们也可以定义 σ \sigma σ 上的先验。然而,如果我们对 σ \sigma σ 的猜测感到幸运,或者如果我们想为了示例而简化过程,我们可以将 σ \sigma σ 设置为固定值,例如 0.1 m 0.1 m 0.1m。
似然表示为 P ( P ( P( Data ∣ θ ) \mid \theta) ∣θ)。在这种情况下,“数据”将是高度的观测值。假设我们要测量一名随机挑选的学生,他们的身高为 1.7m。考虑到有了这个数据,我们现在可以了解 θ \theta θ 的每个选项有多好。我们通过以下问题来做到这一点:如果 θ \theta θ 的一个特定选项(称为 θ 1 \theta 1 θ1)是真实的,那么我们观察到 1.7 m 1.7 m 1.7m 高度的“可能性”有多大? θ 2 \theta 2 θ2 怎么样:如果 θ 2 \theta 2 θ2 是“正确”模型,观察到 1.7 m 1.7 m 1.7m 高度的可能性有多大?
然而,就我们目前的目的而言,我们正在改变分布/模型本身。这意味着我们的 x x x 轴实际上将具有变量 μ \mu μ 的不同可能性,而我们的 y y y 轴将具有每种可能性的概率密度。看看下面的代码,它代表了我们的似然函数及其可视化:
def likelihood_func(datum, mu):likelihood_out = sts.norm.pdf(datum, mu, scale = 0.1) return likelihood_out/likelihood_out.sum()likelihood_out = likelihood_func(1.7, mu)plt.plot(mu, likelihood_out)
plt.title("Likelihood of $\mu$ given observation 1.7m")
plt.ylabel("Probability Density/Likelihood")
plt.xlabel("Value of $\mu$")
plt.show()
一些统计学家将 P ( P ( P( Data ) ) ) 称为“证据”。这个变量的含义非常简单:它是产生价值数据的概率。然而,这很难直接计算。值得庆幸的是,我们有一个好办法。考虑以下方程:
∫ P ( Data ∣ θ ) ∗ P ( θ ) d θ = P ( Data ) \int P(\text { Data } \mid \theta) * P(\theta) d \theta=P(\text { Data }) ∫P( Data ∣θ)∗P(θ)dθ=P( Data )
贝叶斯定理的右侧 P ( θ ∣ P (\theta \mid P(θ∣ Data) 称为“后验”。这是我们对数据如何分布的后验理解,因为我们目睹了数据,并且我们有先验知识。我们如何得到后验呢?回到方程:
P ( θ ∣ Data ) = P ( Data ∣ θ ) ∗ P ( θ ) P ( Data ) P(\theta \mid \text { Data })=\frac{P(\text { Data } \mid \theta) * P(\theta)}{P(\text { Data })} P(θ∣ Data )=P( Data )P( Data ∣θ)∗P(θ)
那么,第一步是将似然度 (P(Data ∣ θ ) ) \mid \theta)) ∣θ)) 与先验 ( P ( θ ) ) ( P (\theta)) (P(θ)) 相乘:
import scipy as spunnormalized_posterior = likelihood_out * uniform_dist
plt.plot(mu, unnormalized_posterior)
plt.xlabel("$\mu$ in meters")
plt.ylabel("Unnormalized Posterior")
plt.show()
👉参阅一:计算思维
👉参阅二:亚图跨际
这篇关于Python高层解雇和客户活跃度量化不确定性模型的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!