#Python3组数据挖掘实战总结 4、5章#

2018-01-21  本文已影响0人  DrBear_smile

数据挖掘实战课程

简单线性回归

研究自变量与因变量直接的关系形式的分析方法,建立因变量y与自变量x_i之间的回归模型,来预测因变量y的发展趋势。

分类

简单线性回归

暨 y = a + bx + e(残差,随机误差)

对回归模型进行检验

回归方程的精度就是用来表示实际观测点和回归方程的拟合程度的指标,使用判定系数来度量。
判定系数为$jc $,相关系数$R$

jc= R^2 = \frac{ESS}{TSS}=1-\frac{RSS}{TSS}

其中,

$TSS=\Sigma(Y_i-\overline{Y})^2$总离差平方和

$ESS=\Sigma(\overline{Y_i}-\overline{Y})^2$回归平方和

$RSS=\Sigma(Y_i-\overline{Y_i})^2$残差平方和

总结

多重线性回归

Multiple Linear Regression

y = \alpha + \beta_1 x_1 + \beta_2 x_2 + ... + + \beta_n x_n + e

$\beta_n$偏回归系数,
$e$随机误差

步骤与简单线性回归一致

判定系数$R$

R^2 = \frac{ESS}{TSS}=1-\frac{RSS}{TSS}

修正为

\bar{R}^2 = 1-\frac{RSS/(n-k-1)}{TSS/(n-1)}

$TSS=\Sigma(Y_i-\overline{Y})^2$总离差平方和

$ESS=\Sigma(\overline{Y_i}-\overline{Y})^2$回归平方和

$RSS=\Sigma(Y_i-\overline{Y_i})^2$残差平方和

$n$ 样本个数,
$K$ 自变量个数

pandas.tools.plotting.scatter_matrix(matrix,figsize,diagonal)

一元非线性回归

Univariate Nonlinear Regression

即一元N次方程,一般转换为多元一次回归方程

pf = sklearn.preprocessing.PolynomialFeatures(degree = 2)
x_2_fit = pf.fit_transform(x)

逻辑回归

Logistic Regression

分类变量的回归分析,概率型非线性回归

Sigmoid函数

g(x) = \frac{1}{1+e^{-x}}

Logistic Regression Equation

g(y) = \frac{1}{1+e^{-y}}

g(x_1,x_2,x_n) = \frac{1}{1+e^{-f(x_1,x_2,x_n)}}
 = \frac{1}{1+e^{-(\alpha_1 x_1+\alpha_2 x_2+...+\alpha_n x_n)}}

虚拟变量

dummy variables, 也叫哑变量和离散特征编码,可用来表示分类变量、非数量因素可能产生的影响

有大小意义的,利用dict处理

pandas.Series.map(dict)

神经网络

Aritificial Neural Network
人工神经网络,数学模型or计算模型

非线性统计建模

$x_i$ -> $w_i$ ->
$g(\Sigma^n_{i=0} x_i w_i)$
->$y$

f(x_0,x_1,x_2,...,x_n) = \Sigma^{n}_{i=0}{x_i w_i}

g(f(x_0,x_1,x_2,...,x_n)) 
= g(\Sigma^{n}_{i=0}{x_i w_i})
= \frac{1}{1+e^{-(\Sigma^{n}_{i=0}{x_i w_i})}}

复杂神经网络:多层

sklearn.neural_network.MLPClassifier

activation 激活函数

分类

KNN

K Nearest Neighbors

交叉验证(cross validation)

K-fold Cross Validation
综合得分为$\frac{\Sigma^{10}_{i=1}S_i}{10}$

iris数据集:多重变量数据集,花卉

测试、训练 一般三七分

neighbors.KNeighborsClassifier

贝叶斯分类算法

Bayes Theorem

P(A|B) = \frac{P(A \cap B)}{P(B)} = \frac{P(B|A)P(A)}{P(B)}

朴素贝叶斯分类:以生病预测来说明

sklearn.naive_bayes

决策树

Decision Tree

有监督学习,可处理数值型和非数值型

pydot,graphviz-2.38

树结构的规模:由叶子数量来控制

sklearn.tree.export_graphviz()

随机森林

RandomForest

包含多个决策树的分类器

优点:

rfcModel = RandomForestClassifier(
n_estimators = 10,
max_leaf_nodes = None
)

SVM

Support Vector Machine

svm.SVC(), svm.NuSVC(), svm.LinearSVC()

上一篇下一篇

猜你喜欢

热点阅读