第二周<岭回归>
传统最小二乘法缺乏稳定性
额。就是曾加正则项
\( argmin||Xw-y||2+\alpha||w||2 \)
对应矩阵的求解方法为
\(w=(XTX+\alpha*I){-1}X^Ty\)
其实就是添加正则项
sklearn.linear_model.Ridge
主要参数####
- alpha
+fit_intercept
车流量分析
# -*- coding: utf-8 -*-
"""
Created on Sun May 28 12:05:23 2017
@author: sfzyk
"""
import numpy as np
from sklearn.linear_model import Ridge
from sklearn import cross_validation
import matplotlib.pyplot as plt
from sklearn.preprocessing import PolynomialFeatures
data=np.genfromtxt(r"岭回归.csv",delimiter=',',skip_header=1)
X=data[:,1:5]
y=data[:,5]
ploy=PolynomialFeatures(6)
X=ploy.fit_transform(X)
X_train,X_test,y_train,y_test=cross_validation.train_test_split(X,y,test_size=0.2,)
R=Ridge()
R.fit(X_train,y_train)
a=R.score(X_test,y_test)
手写数字识别##
利用 full connected nn完成任务
也叫做MLP multilayers perceptron MLP
神经网络实现手写数字识别
(sklearn 实现)
# -*- coding: utf-8 -*-
"""
Created on Sun May 28 12:30:11 2017
@author: sfzyk
"""
import os
import numpy as np
import sklearn.neural_network as sklnn
def img2vector(fileName):
retMat=np.zeros([1024],int)
fr=open(fileName)
lines=fr.readlines()
for i in range(32):
for j in range(32):
retMat[i*32+j]=lines[i][j]
return retMat
def readDataSet(path):
fileList=os.listdir(path)
#获取文件夹下的所有文件
numFiles=len(fileList)
dataSet=np.zeros([numFiles,1024],int)
#存放所有数字文件
#存放所有对应的标签
hwLabels=np.zeros([numFiles,10])
for i in range(numFiles):
filepath=fileList[i]
digit=int(filepath.split("_")[0])
hwLabels[i][digit]=1.0
dataSet[i]=img2vector(path+'/'+filepath)
return dataSet,hwLabels
train_dataSet,train_hwLabels=readDataSet(r"D:\mechine_learning\mooc_data\trainingDigits")
test_dataSet,test_hwLabels=readDataSet(r"D:\mechine_learning\mooc_data\testDigits")
clf=sklnn.MLPClassifier(hidden_layer_sizes=(100,),activation='logistic',learning_rate_init=0.0001,max_iter=2000,solver='adam',verbose=True)
#hidden_layer_sizes是一个元组,表示第i个隐藏层神经元个数
clf.fit(train_dataSet,train_hwLabels)
res=clf.predict(test_dataSet)
error_num=0
for i in range(len(test_hwLabels)):
if np.sum(res[i]==test_hwLabels[i])<10:
error_num+=1
print("%f"%(error_num/len(test_hwLabels)))
第二周<岭回归>的更多相关文章
- 第二周<线性回归>
可行性分析 略 sklearn.linear_model.linear_regression() 一些参数 fit_intercept 布尔型参数,表示是否计算该模型的截距 normalize 布尔型 ...
- Surprise团队第二周项目总结
Surprise团队第二周项目总结 项目进展 已实现五子棋人人模式部分 人人模式: 基本方式:采取黑棋先行,黑白交替的下棋顺序. 模式:通过鼠标点击相应棋盘中的"交叉点",在lay ...
- python课程第二周重点记录
python课程第二周重点记录 1.元组的元素不可被修改,元组的元素的元素可以被修改(字典在元组中,字典的值可以被修改) 2.个人感觉方便做加密解密 3.一些方法的使用 sb = "name ...
- 20145213《Java程序设计》第二周学习总结
20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...
- 20145304 刘钦令 Java程序设计第二周学习总结
20145304 <Java程序设计>第2周学习总结 教材学习内容总结 java可区分基本类型和类类型(即参考类型)两大类型系统. 基本类型主要可区分为整数.字节.浮点数.字符与布尔. 整 ...
- 20145330孙文馨 《Java程序设计》第二周学习总结
20145330孙文馨第二周学习总结 第二周相比于第一周对java语言有了深一点的了解,也意识到多敲代码才是学习计算机语言的最好方法. 教材内容总结 类型.变量与运算符 *基本类型 整数(short. ...
- 20145337 《Java程序设计》第二周学习总结
20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...
- Linux内核设计第二周——操作系统工作原理
Linux内核设计第二周 ——操作系统工作原理 作者:宋宸宁(20135315) 一.实验过程 图1 执行效果 从图中可以看出,每执行my_ start_ kernel函数两次或一次,my_ time ...
- 20169212《Linux内核原理与分析》第二周作业
<Linux内核原理与分析>第二周作业 这一周学习了MOOCLinux内核分析的第一讲,计算机是如何工作的?由于本科对相关知识的不熟悉,所以感觉有的知识理解起来了有一定的难度,不过多查查资 ...
- 20135328信息安全系统设计基础第二周学习总结(vim、gcc、gdb)
第三周学习笔记 学习计时:共8小时 读书:1 代码:5 作业:1 博客:7 一.学习目标 熟悉Linux系统下的开发环境 熟悉vi的基本操作 熟悉gcc编译器的基本原理 熟练使用gcc编译器的常用选项 ...
随机推荐
- ElasticSearch入门之花落红尘(三)
上篇文章散仙介绍了ElasticSearch的入门安装和使用,那么本篇我们来看下,如何使用java api来和ElasticSearch进行交互,简单点说,就是实现一个增删改查,来找找入门的感觉. 在 ...
- 2019-8-31-dotnet-手动解决-json-解析中不合法字符串
title author date CreateTime categories dotnet 手动解决 json 解析中不合法字符串 lindexi 2019-08-31 16:55:58 +0800 ...
- warning LNK4098: 默认库“MSVCRT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library
解决方法:是所有项目的这个"代码生成"属性设置保持一致. 项目——属性——配置属性——C/C++——代码生成:他有/MT,/MTd,/Md,/MDd四个选项,你必须让所有使用的库都 ...
- 关于vue项目报错:this relative module was not found
VScode编辑器增加了一行代码import func from './vue-temp/vue-editor-bridge'; 删除即可
- windows修改或删除已保存samba输入的用户名和密码
可在系统的"控制面板\用户帐户\凭据管理器\windows 凭据"中找到 可以在"开始菜单->运行",输入"control userpasswo ...
- 延迟对象deferred
Twisted 官方称,“Twisted is event-based, asynchronous framework ”.这个“异步”功能的代表就是 deferred. deferred 的作用类似 ...
- html常用标签详解3-a标签
a标签 1.a标签的属性 a标签属于行内元素标签,双标签<a></a> href:a标签的跳转地址 target:打开方式(_self自身:_blank:新窗口) title: ...
- C++继承相关知识点总结
1:派生类继承基类的成员并且可以定义自己的附加成员.每个派生类对象包含两个部分:从基类继承的成员和自己定义的成员. 每个派生类对象都有基类部分,包括基类的private成员.类可以访问共基类的publ ...
- 善用 NuGet 程序包管理器控制台
每种集成开发环境都会提供扩展包的下载与安装,VS (微软可视化集成开发环境) 下的叫程序包管理控制台,我们把他叫做<牛干 程序包管理控制台>. 在 工具=>NuGet 程序包管理器= ...
- centos yum 坏掉 db 损坏
#首先清除掉缓存,之后再重建就可以了 rm -f /var/lib/rpm/__db* rpm --rebuilddb 提示的错误应该是: error: rpmdb: BDB0113 Thread/p ...