优化 SMS 垃圾短信分类
您之前为 SMS 垃圾短信模型构建的 pipeline 使用了各组件的默认参数。不过,这些参数很难直接得到表现出色的模型。本练习中,您将针对一组参数取值来运行该 pipeline。我们会采用系统化的方法:把每个超参数的取值排成一个网格,然后让 pipeline 系统地遍历网格中的每个点。
在本练习中,您将设置一个参数网格,并结合交叉验证为 SMS 垃圾短信分类器选择一组较优参数。
以下对象已定义:
hasher—— 一个HashingTF对象;logistic—— 一个LogisticRegression对象。
本练习是课程的一部分
使用 PySpark 进行机器学习
练习说明
- 创建一个参数网格构建器对象。
- 为
HashingTF对象添加numFeatures和binary的网格点,取值分别为 1024、4096、16384,以及 True 和 False。 - 为
LogisticRegression对象添加regParam和elasticNetParam的网格点,取值分别为 0.01、0.1、1.0、10.0,以及 0.0、0.5、1.0。 - 构建参数网格。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Create parameter grid
params = ____()
# Add grid for hashing trick parameters
params = params.____(____, ____) \
.____(____, ____)
# Add grid for logistic regression parameters
params = params.____(____, ____) \
.____(____, ____)
# Build parameter grid
params = ____.____()