机器学习代码实战
文章平均质量分 85
这个专栏是Approaching Any Machine Learning这本书的学习汇总
风过无痕0230
If you didn't code, you didn't learn.
展开
-
9.超参数优化
上述调整超参数的方法是最常见的,几乎适用于所有模型:线性回归、逻辑回归、基于树的方法、梯度提升模型(如xgboost、lightgbm),甚至是神经网络。虽然这些方法已经存在,但学习时必须从手动调整超参数开始,即手工调整。手工调整可以帮助你学习基础知识,例如,在梯度提升中,当你增加深度时,你应该降低学习率。如果使用自动工具,就无法学习到这一点。一旦你能更好地手动调整参数,你甚至可能不需要任何自动超参数调整。创建大型模型或引入大量特征时,容易造成过拟合。原创 2023-10-05 12:09:16 · 102 阅读 · 0 评论 -
8.特征选择
在每次迭代中,我们都可以剔除最不重要的特征或者系数接近0的特征,直到达到所需的特征数量为止。特征过多会带来维度诅咒的问题,也需要更多的样本来训练模型,通过特征选择来减少特征数量是很常见的方法。你还可以根据需要指定系数或特征重要性的阈值,以及要选择的特征的最大数量(这在下面的例子中没有体现)。如果你用系数的方法选择特征,你可以设定一个阈值,如果特征的系数高于该阈值,则保留该特征,否则剔除。上面的实现可以满足大部分单变量特征选择的需求,创建较少而重要的特征通常比创建数以百计的特征要好。原创 2023-09-27 20:45:00 · 86 阅读 · 0 评论 -
7. 特征工程
有时候,比如在处理时间序列问题的时候,你会遇到一个特征的值不是一个单独的值,而是一个列表包含多个值的情况。这时候,可以根据列表的值创建很多新的特征:比如mean,max,min,unique,skew,kurtosis,kstat,percentile,quantile,pear to peak等等。对于数值型特征,一个方法是用一个未出现的值比如0来填充该特征所有的缺失值,但这种方法效果不佳。一个比较新奇的方法是knn:对于一个有缺失值的样本,找到最近的k个样本,用这k个样本的均值来填充缺失值。原创 2023-09-15 21:21:57 · 70 阅读 · 0 评论 -
1. 监督学习和无监督学习
大部分人刚开始学习机器学习的时候,会从非常有名的数据集开始,比如泰坦尼克数据集(Titanic dataset)或者鸢尾花数据集(Iris dataset),这两个都是监督学习问题。MNIST,手写数字识别,是一个很流行的监督学习问题,一般是构造一个模型,可以根据输入数字的图片(0-9)判断出输入的数字是什么。通过t-SNE方法将输入的图片数据降成2维,然后画出降维后的数据散点图。从可视化结果可以看到,降到2维后,不同数字的样本点有明显的聚类现象。(classification),标签为实数的叫。原创 2023-09-03 17:17:36 · 137 阅读 · 0 评论 -
mac环境配置
Miniconda是一款小巧的python环境管理工具,安装包大约只有50M多点,其安装程序中包含conda软件包管理器和Python。一旦安装了Miniconda,就可以使用conda命令安装任何其他软件工具包并创建环境等。用conda或者pip都可以安装工具包,不过有一些工具包conda仓库可能没有,所以pip安装比较方便。命令行输入换源语句,下面四个源随便用哪一个都行,再加上最后一句。你的环境名字是创建的文件夹名字,也就是项目名字。本书所有的代码都在ml环境中运行。环境名就是创建的文件夹的名字。原创 2023-09-02 21:16:54 · 197 阅读 · 0 评论