1、你能说出机器学习和传统编程(基于规则的自动化)之间的区别吗?
在传统编程中,计算机遵循一组预定义的规则来处理输入数据并产生结果。
而在机器学习中,计算机试图模仿人类思维,它与输入数据、预期输出和环境进行交互,推导出由一个或多个数学模型表示的模式,然后使用这些模型与未来的输入数据进行交互并生成结果。
与自动化不同,机器学习环境中的计算机不会接收明确的指令性编码。
2、什么是过拟合,我们如何避免它?
过拟合与避免方法
过拟合是指我们基于相对于少量观测值而言过多的参数来描述学习规则,而非基于潜在关系;或者使模型过于复杂以拟合每个训练样本。
避免过拟合的方法
- 正则化 :向要最小化的误差函数添加额外参数以惩罚复杂模型。
- 丢弃层 :在神经网络训练中应用丢弃层,随机丢弃部分神经元。
- 特征选择 :选择相关特征子集,去除无关或冗余特征。
- 集成学习 :将多个弱模型组合成一个强模型。
3、请列举两种特征工程方法。
多项式变换、分箱
4、如何安装用于数据可视化的 Matplotlib 库,以及它的用途是什么?
若对 Matplotlib 感兴趣,可通过链接 https://matplotlib.org/ 安装它,它可用于进行数据可视化。
5、Practice makes perfect—another great project to deepen your understanding could be heart disease classification. The dataset can be downloaded directly from https://archive.ics.uci.edu/ml/datasets/Heart+Disease. 请将这句话翻译成中文。
熟能生巧——另一个加深你理解的好项目可能是心脏病分类。该数据集可直接从 https://archive.ics.uci.edu/ml/datasets/Heart+Disease 下载。
6、对模型进行微调后,它能达到的最佳AUC是多少?
- 经过微调的模型达到了0.686的AUC值。
- 使用最佳超参数集(2, False)重新训练模型后计算得到的AUC为0.6862056720417091。
7、能否在在线学习解决方案中尝试使用更多的训练样本,例如1000万个样本?
可以。使用1000万个样本进行在线学习训练,训练基于总共100万个样本仅需87秒,且能获得更好的准确率。代码示例中通过循环每次处理100000个样本,最终完成了10000000个样本的训练。
8、在基于TensorFlow的解决方案中,是否可以调整学习率、训练步数和其他超参数以获得更好的性能?
可以。在神经网络中,调整超参数是优化模型性能的常用方法。在基于TensorFlow的解决方案里,学习率、训练步数等超参数是可以调整的。如在定义梯度下降优化器时,学习率是一个可设置的超参数( learning_rate = 0.001
);调整隐藏层大小、训练轮数、学习率等超参数对模型性能(如R²值)有影响,说明调整超参数是提升性能的可行途径。
同时,超参数调优最佳实践表明,通过定义搜索空