开始使用免费开始使用

进行二元预测

在上一个练习中,您使用 glm() 构建了一个关于捐赠者行为的逻辑回归模型。与 R 中许多机器学习方法类似,您可以对模型对象使用 predict() 来预测未来行为。默认情况下,除非指定 type = "response"predict() 会输出以「对数几率」表示的预测值。指定该参数会将对数几率转换为「概率」。

由于逻辑回归模型估计的是结果发生的「概率」,因此需要由您来确定在何种阈值下应采取行动。需要在过于谨慎与过于激进之间权衡。例如,如果您只联系捐赠概率 ≥ 99% 的人,可能会错过许多虽被估计为较低概率但仍会捐赠的人。对于结果高度不平衡的情形,这种权衡尤其重要。本数据集中捐赠相对少见,正是这种情况。

数据集 donors 和模型 donation_model 已为您准备好。

本练习是课程的一部分

R 中的监督学习:分类

查看课程

练习说明

  • 使用 predict() 估计每个人的捐赠概率。通过 type 参数获取概率。将预测结果保存到名为 donation_prob 的新列。
  • 通过将 mean() 应用于 donors 数据框中相应的列,计算平均水平下实际的捐赠概率。
  • 使用 ifelse():当某人的预测捐赠概率高于平均水平时预测其会捐赠。将结果保存到名为 donation_pred 的新列。
  • 使用 mean() 计算模型的准确率。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Estimate the donation probability
donors$donation_prob <- predict(___, type = "___")

# Find the donation probability of the average prospect
mean(___)

# Predict a donation if probability of donation is greater than average (0.0504)
donors$donation_pred <- ifelse(___ > 0.0504, ___, ___)

# Calculate the model's accuracy
mean(___ == ___)
编辑并运行代码