属性命名

  • 属性以双下划线开头,类内变量,实例无法访问。但可以通过某些方式访问,例如Student例中定义了__name变量,可以用_Student_name来实现访问,但不建议,因为不同的解释器的转化方式不一样。
  • 单下划线可以打开,但需要注意不能随意更改。
  • 双下划线结尾与开头,特殊变量,类内可以访问,实例不知。
Read more »

[TOC]

协同过滤推荐有哪些类型

  • 基于用户(user-based)的协同过滤

    基于用户(user-based)的协同过滤主要考虑的是用户和用户之间的相似度,只要找出相似用户喜欢的物品,并预测目标用户对对应物品的评分,就可以找到评分最高的若干个物品推荐给用户。

  • 基于项目(item-based)的协同过滤

    基于项目(item-based)的协同过滤和基于用户的协同过滤类似,只不过这时我们转向找到物品和物品之间的相似度,只有找到了目标用户对某些物品的评分,那么我们就可以对相似度高的类似物品进行预测,将评分最高的若干个相似物品推荐给用户

  • 基于模型(model based)的协同过滤

    用机器学习的思想来建模解决,主流的方法可以分为:用关联算法,聚类算法,分类算法,回归算法,矩阵分解,神经网络,图模型以及隐语义模型来解决。

Read more »


[TOC]

LSTM产生的原因

  • RNN在处理长期依赖(时间序列上距离较远的节点)时会遇到巨大的困难,因为计算距离较远的节点之间的联系时会涉及雅可比矩阵的多次相乘,会造成梯度消失或者梯度膨胀的现象。RNN结构之所以出现梯度爆炸或者梯度消失,最本质的原因是因为梯度在传递过程中存在极大数量的连乘 。
  • 相对于RNN,LSTM的神经元加入了输入门i、遗忘门f、输出门o 、内部记忆单元c
Read more »

[TOC]

1. 简单介绍决策树算法

  • 决策树将算法组织成一颗树的形式。其实这就是将平时所说的if-then语句构建成了树的形式。决策树主要包括三个部分:内部节点、叶节点、边。内部节点是划分的特征,边代表划分的条件,叶节点表示类别。
  • 构建决策树 就是一个递归的选择内部节点,计算划分条件的边,最后到达叶子节点的过程。 决策树在本质上是一组嵌套的if-else判定规则,从数学上看是分段常数函数,对应于用平行于坐标轴的平面对空间的划分。判定规则是人类处理很多问题时的常用方法,这些规则是我们通过经验总结出来的,而决策树的这些规则是通过训练样本自动学习得到的。
  • 训练时,通过最大化Gini或者其他指标来寻找最佳分裂。决策树可以输特征向量每个分量的重要性。
  • 决策树是一种判别模型,既支持分类问题,也支持回归问题,是一种非线性模型(分段线性函数不是线性的)。它天然的支持多分类问题。
Read more »

1. 机器学习中为什么需要梯度下降

  • 梯度下降的作用:
    • 梯度下降是迭代法的一种,可以用于求解最小二乘问题
    • 在求解损失函数的最小值时,可以通过梯度下降法来一步步的迭代求解,得到最小化的损失函数和模型参数值。
    • 如果我们需要求解损失函数的最大值,可通过梯度上升法来迭代。梯度下降法和梯度上升法可相互转换
Read more »

线性回归

1. 简单介绍一下线性回归。

  • 线性:两个变量之间的关系一次函数关系的——图象是直线,叫做线性。
  • 非线性:两个变量之间的关系不是一次函数关系的——图象不是直线,叫做非线性。
  • 回归:人们在测量事物的时候因为客观条件所限,求得的都是测量值,而不是事物真实的值,为了能够得到真实值,无限次的进行测量,最后通过这些测量数据计算回归到真实值,这就是回归的由来。
  • 线性回归就是利用的样本$D=(\mathrm{x}_i, \mathrm{y}_i)
    $,$ \mathrm{i}=1,2,3 \ldots \mathrm{N}, \mathrm{x}_i$是特征数据,可能是一个,也可能是多个,通过有监督的学习,学习到由$x$到$y$的映射$h$,利用该映射关系对未知的数据进行预估,因为$y$为连续值,所以是回归问题。
Read more »