昨日内容回顾
-
ssh配置
管理的机器比较多 需要频繁校验用户名密码的情况下 可以考虑使用ssh公钥私钥的方式 1.先生成自己的公钥私钥 2.将自己的公钥发送给目标机器 3.通过私钥直接完成链接交互
-
集群单点启动与集体启动
Hadoop所有的启动命令基本都在sbin目录下
-
定时任务
crontab # linux自带的 * * * * * 分时日月周 crontab -e # 添加定时任务 crontab -l # 查看定时任务 crontab -r # 删除定时任务
-
时间同步策略
当有多台机器需要协同工作的时候 一般都需要一个"老大" yum install -y ntp date # 查看当前系统时间 date -s 时间 # 修改当前系统时间
-
源码编译
可以在原有软件的基础之上添加额外的功能 但是编译过程需要消耗一定的时间
-
总结
作为一名数据分析师 面试的时候可能并不会问到Hadoop相关知识 需要你自己主动找机会透露出你了解Hadoop # 面试就是在推销自己
今日内容概要
主题:数学模型和算法(较难 枯燥 你们只需要记主要概览 python代码)
-
线性回归模型
一元线性回归 多元线性回归
-
岭回归与Lasso回归
线性回归模型的优化
-
python实现算法模型
今日内容详细
一元线性回归
公式: y = ax + b
查看两个变量之间是否存在线性关系
1.绘制散点图
看不出线性关系的不能说没有关系只能说没有线性关系
# matplotlib模块
2.公式计算求相关系数
相关系数公式
大于0.8 存在明显的线性关系
大于0.5 存在一定的线性关系
大于0.3 存在较弱的线性关系
小于0.3 基本没有线性关系
# numpy或者pandas模块
import numpy
import pandas
X = [52,19,7,33,2]
Y = [162,61,22,100,6]
#公式计算#均值
XMean = numpy.mean(X)
YMean = numpy.mean(Y)
#标准差
XSD = numpy.std(X)
YSD = numpy.std(Y)
#z分数
ZX = (X-XMean)/XSD
ZY = (Y-YMean)/YSD
# 相关系数
r = numpy.sum(ZX*ZY)/(len(X))
# 2.numpy中的corrcoef方法直接计算
t=numpy.corrcoef(X,Y)
# 3.pandas中的corr方法直接计算
data = pandas.DataFrame({'X':X,'Y':Y})
t2=data.corr()
# 绘制散点图
plt.scatter(X,Y)
plt.show()
多元线性回归
公式: y = ax + a1x + a2x + ... + b
测试集与训练集
训练集用来产生模型
测试集用来测试模型
# 一般情况下训练集占总数据的80% 测试集占总数据的20%
离散型变量
非连续性的变量一般指代的就是非数字类型的变量 字符串
针对离散型变量无法待遇数学公式计算 需要将离散型变量转换成数值型变量
再带入到公式中
转换的过程就称自己为构造哑变量
哑变量
先将离散型变量应用数字01表示
之后如果出现多重共线性则随机删除一个 之后带入公式
假设检验
F检验
检验模型的合理性
F统计量远远大于理论分布值则表示模型合理
T检验
检验参数的合理性
P>|t|越小表示对因变量的影响越大
线性回归模型的短板
1.自变量的个数多于样本量
列数比行数多
2.自变量之间存在多重共线性
自变量之间存在线性相关
# 解决线性回归模型短板的方式
1.岭回归模型
2.Lasso回归模型
上述两个模型都是解决线性回归模型短板问题而产生的
岭回归模型
做法:在线性回归模型的基础之上添加一个l2正则项(惩罚项) >>>: 平方项
λ与β平方的和项
Lasso回归模型
做法:在线性回归模型的基础之上添加一个l1正则项(惩罚项) >>>: 绝对值项
λ与β绝对值的和项
# 除了解决线性回归模型短板的问题之外还能够降低模型的复杂度
交叉验证法
将所有的样本都参与到模型的训练和测试中
得出多个模型 再选择最佳的模型最为最终结果
强调
1.只需要掌握基本理论 代码可以保存下来以后修改相关的变量名即可直接使用
2.周末一定不要再玩了 好好的复习一下 下周就准备面试工作!!!