整理数据科学中的一些常见模型与算法以及一些数据处理方式,做个类似索引的内容,主要都是关键词,没什么具体内容。
一、矩阵与回归
1.求最小二乘系数
y=Xa , 已知 X 和 y,求a
(由于X不一定是方阵,所以需要通过乘X^T变成方阵,才有逆矩阵,而对y=X a同时左乘X^T然后同乘(X^TX)^{-1}即可得到结果)
2.多元线性回归
二、数据统计分析(具体内容在其他章节展开)
1.数据结构与基本操作
2.数据加载与数据准备
3.数据统计分析
4.时间序列
三、数据可视化——主要为matplotlib(二维/三维)
1.创建子绘图区-subplot(s)
2.常用图表(极坐标,散点图,箱型图,饼图,直方图等)
3.坐标轴设置
- xlim,ylim——设置X/Y轴刻度取值范围
- text——在指定位置添加注释文本
4.标签设置
- title——图表标题
- xlabel,ylabel——X/Y轴坐标名
- xticks,yticks——设置X/Y轴的刻度范围及显示标签 e.g plt.xticks(np.arange(3), ('Tom', 'Dick', 'Harry')
- legend——图例位置
e.g plt.legend(bbox_to_anchor=(1, 1.15))__距离设定原点的距离
四、爬虫与正则
五、scikit-learn AI
——分类问题
1.k近邻法 (K Nearest Neighbors)
- 基本思想:新数据点的预测结果由距离其最近的k个“邻居”的信息决定
- 影响主要因素:超参数K,距离标准选取(欧式、曼哈顿...)
- 改进:加权kNN,指定半径的kNN
- 优点:模型简单,易于解释,无须训练,对异常点和噪声容忍度较好。
- 缺点:
1、预测效率低
训练时,只需记住样本,快;
预测时,需计算待测样本与每个训练 样本的距离,若有N个训练样本,就需N次距离计算,慢
2、
对高维、稀疏数据集预测效果差
2.朴素贝叶斯分类
- 基本思想:贝叶斯决策以使后验概率最大作为分类的判定准则
- 类型:根据对数据分布的不同假设
高斯朴素贝叶斯——用于连续的高维数据
多项式朴素贝叶斯——稀疏计数型数据,如文本分类
伯努利朴素贝叶斯——稀疏计数型数据,如文本分类
...
- 优点:训练和预测的速度快;直接使用概率预测,很容易解释;可调参数非常少
- 缺点:假设分布函数与数据匹配(实际中很少见)
- 应用场景:分布函数与数据大体匹配;各种类型的区分度很高,模型复杂度不重要时
3.支持向量机(SVM)
- 基本思想:能通过一超平面(一维是线,二维是面),将两类样本清晰分开
- 注意:SVM对尺度变化敏感,各特征取值范围需大致相同(MiniMax缩放)。
- 优点:线性/非线性分类、回归都可,特别适用于中小型复杂数据集(高维度)
- 缺点:对样本规模的缩放表现不好。当样本数高达10万甚至更大时,计算资源面临挑战;
需要预处理数据,且调参需要十分小心。
4.决策树
- 基本思想:根据贪心策略,选用信息增益最大的一个特征𝒌 (如“性别”)对训练集进行划分,递归地,对划分后的各个子集使用同样的逻辑进行处理,如此重复,直到剩下的集合足够纯净,递归停止。
- 度量数据集不纯度的常用指标:信息熵(information entropy),基尼值(Gini Value)
- 优点:直观,易于理解;计算复杂度不高;算法不受数据尺度影响,不需特征规范化预处理。
- 缺点:易过拟合,泛化性能差(需要进行剪枝/树集成的操作)
——回归问题
1、基础方法:最小二乘法
缺点:对非线性的数据拟合不好;当样本数小于特征数时,不可逆,不能用最小二乘法求闭式解
2、机器学习:梯度下降法确定参数
- 为拟合非线性数据——基函数变换后回归
- 防止过拟合——泛化误差——>引入正则化项(岭回归,Lasso,弹性网络)