第一章 赋予计算机从数据中学习的能力
每一行:代表一个样本,行向量用上标表示:每一列:代表一个维度,列向量用下标表示。
numpy:多维矩阵的存储和操作数据,pandas:基于numpy,提供更高级操作,使表格数据操作更加方便。matplotlib:数据可视化
第二章 训练简单的机器学习分类方法
fit方法:用于从数据中学习;
predict方法:用于预测
对象初始化时未创建而通过其他方法创建的属性:后缀加_:如 self.w_
自适应线性神经元adaline:定义了最小化连续性代价函数这一概念,优点是使得代价函数可分,并且凸起。可以理解为也是映射的一种,只是将输出不在直接与结果比较,而是自己有了一个期望的输出,与之进行比较。
通过调整特征大小改善梯度特征:对每一个样本的同一个特征做减去均值,然后除以标准差。
使用方法mean 和 std 可以实现,x_std=np.copy(x) x_std[:,0]=(x_std[:,0]-x_std[:,0].mean())/x_std[:,0].std() 对每一列都做此操作。
批量梯度下降法(BGD):对所有样本都进行求解后,取均值进行更新权重。(速度慢,计算量大)
随机梯度下降法(SGD):随机选择一个样本,进行权重的更新。(速度快,但容易陷入局部最优);此方法的学习率通常要实时调整,可选 a/(b+迭代次数),另一优点,可以在线学习,在存储较少时.
折中的算法:小批量梯度下降(MBGD)
第三章 scikit-learn机器学习分类器一览
训练机器学习算法的步骤:1、选择特征并收集训练样本。2、选择度量性能的指标。3、选择分类器并优化算法。4、评估模型性能。5、调整算法。
对特征进行标准化:from sklearn.preprocessing import StandarScaler 引入StandarCsaler 类。
学习方法的使用:1、将选择的分类器的类初始化;2、采用fit 方法训练分类器;3、采用predict方法查看测试结果;4、将预测结果与标签进行比较。
性能指标:from sklearn.metrics import accuracy_score 性能指标的一种 accuracy_score(y_test,y_pred);还可以用分类器自带的方法 score.
逻辑回归同样是一种分类方法,不仅可以用来分类,还给出了分类的可能性。
方差:模型对样本预测结果的一致性,在面对训练集的不同子集,模型是否能保持不变。
偏差:针对不同的训练集多次重新建模,用偏置来度量预测值与真值之间的差异性。
正则化:引入额外的偏置来惩罚过多的参数值。
svm的优点:通常具有较小的泛化误差。
逻辑回归与svm通常会造成相似的结果,逻辑回归模型更容易更新,适用于流式数据。