1.分类预测算法:
回归分析 | 线性回归,非线性回归,Logistic回归,岭回归,主成分回归,偏最小二乘回归 |
决策树 | 自顶向下递归,节点属性值比较 |
人工神经网络 | 模仿大脑结构的信息处理系统 |
贝叶斯网络 | 信度网络,不确定知识表达、推理领域有效的理论模型 |
支持向量机 | 通过非线性映射,将低维非线性转为高维线性可分,在高维空间进行线性分析 |
1.1Logistic回归(线性相关分析)
模型:y取1和0概率比为p/1-p
#-*- coding: utf-8 -*-
#逻辑回归
import pandas as pd
#参数初始化
filename = 'math_model_data.xls'
data = pd.read_excel(filename)
x = data.iloc[:,:3].as_matrix()
y = data.iloc[:,3].as_matrix()
from sklearn.linear_model import LogisticRegression as LR
from sklearn.linear_model import RandomizedLogisticRegression as RLR
rlr = RLR() #建立随机逻辑回归模型
rlr.fit(x, y) #训练模型
rlr.get_support() #获取特征筛选结果
print rlr.scores_ #得分
print('%s'% ','.join(data.columns[rlr.get_support()]))
x = data[data.columns[rlr.get_support()]].as_matrix() #筛选好特征
lr = LR() #建立逻辑模型
lr.fit(x, y) #用筛选后的特征数据来训练模型
print('correct_point:%s' % lr.score(x, y)) #给出模型的平均正确率