跳转至

所有文章

修改 Jupyter Notebook 的默认 Python 解释器

Conda 可以十分方便地创建虚拟环境,便于在不同的项目中使用不同的 Python 版本、外部包等。今天在创建新的虚拟 Conda 环境后,在 VS Code 中没有找到刚刚创建的 Python 解释器。

解决方案是:

  1. 先按Ctrl+Shift+P,调出Select Interpreter选项,这里应该可以看到最新创建的 Conda 环境;
  2. 再按Ctrl+Shift+P,调出Clear Cache and Reload Window选项,重新加载窗口;
  3. 最后点击右上角的“选择内核”,可以看到刚才创建的环境。

中文技术文档的写作规范

本文转载了阮一峰的《中文技术文档的写作规范》。

本站之前发布的文章有许多并没有遵循这一规范(例如中英文之间应有空格)。在今后的工作和写作中,我会尽量书写规范的文档,提高文章的易读性。

pandas 中的 axis

pandas 中的axis参数代表对数据进行处理时遵循的方向。在单行、单列操作(如drop)时,axis=0axis=1分别代表删除行和删除列。在聚合操作(如求mean)时,axis=0axis=1分别代表求列均值和行均值。

总结

  • axis=0

如果是单行操作,就指的是某一行;

如果是聚合操作,指的是跨行 cross rows。

  • axis=1

如果是单列操作,就指的是某一列;

如果是聚合操作,指的是跨列 cross columns。

基于 XGBoost 的音乐流行度预测与推荐

本文基于音乐平台 Spotify 中的 30 万余条音乐数据与 10 万余条歌手数据,分析并构造了音乐流派、音乐语言等特征,与歌手热度、音乐发行时间等特征共同建模预测音乐流行度,使用 XGBoost 内置的特征重要性计算函数和 SHAP 值评估各特征的重要性及其对预测结果的影响方向与大小,并构建了基于内容余弦相似度的音乐推荐系统。

image-20230108215611641

均值方差模型的有效前沿曲线

在无做空限制的情形下推导均值方差模型的有效前沿曲线,本质上是求解一个带有等式约束的最优化问题。

\[ \begin{aligned} & \underset{w}{\text{minimize}} & & \frac{1}{2} w^{\top} \sum w \\\ & \text{subject to} & & w^{\top} e=1 \\\ & & & w^{\top} \mu=\mu_0 \end{aligned} \]

png

有效前沿曲线

L1、L2 正则化与贝叶斯先验

从贝叶斯统计的视角看,L1 正则化的 Lasso 回归和 L2 正则化的岭回归,分别相当于参数具有拉普拉斯先验和高斯先验。

image-20221231112601740

拉普拉斯分布的概率密度函数图像

当梯度下降陷入局部最优解

应用梯度下降法时,损失函数的值不再发生变化并不一定是找到了全局最优解,可能是陷入了局部最优解。为当前参数加上一个微小扰动,可以帮助跳出局部最优解。

image-20221229225045209

梯度下降陷入局部最优解