




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、先来上两张图看看那种猫是暹罗?那种猫是英短?第一张暹罗第二张英短此电脑 办公(H:) image名卷修改日期大小test2018/1/23 16:48文件夫train2018/1/23 21:40文件夹test的文件:(x指暹罗,y指英短,这样命名是为了代码里给测试图片区分猫 咪类型)y5y6x1x2x3x4x5y1y2y3y5y6test_data label = test_data path .apply(lambda path:/xianluo, if x in path else yingduan)第一次结果如下:Iteration | Passes | Step size | Ela
2、psed Time | Training-accuracy | Validation-accuracy |丁1 11| 7r| 0.000074| 0.1419121| 0.589286| 0.500000| 2| 10| 5.000000| 0.279866| 0.946429| 0.875000| 3| 11| 5.000000| 0.322158| 0.937500| 0.750000| 4| 13| 1.000000| 0.382155| 0.955357| 0.750000| 5| 14| 1.000000| 0.4145471 0.928571I 0.750000| 6 | 151
3、| 1.0000001| 0.4685521| 0.955357| 0.750000|t-1-TERMINATED: Iteration limit reached.This model may not be optimal. To improve it, consider increasing max_iterations .In 43 : predictions = model, predict(test_data)In 44 : metrics = model, evaluate(test_data) print (me tri cs accuracy)0.5hI IterationHI
4、 Passes-1I Step sizeH111-1 Elapsed Time | Training-accuracy | Validation-accuracy | 1| 7I 0.000074| 0.141912I 0.589286| 0.500000| 2I 10| 5.000000| 0.279866| 0.946429| 0.875000| 3| 11| 5.000000I 0.322158| 0.937500| 0.750000| 4I 13I 1.000000I 0.382155I 0.955357| 0.750000| 5| 14| 1.000000I 0.4145471 0.
5、928571I 0.750000| 6 4| 15H| 1.000000HI 0.468552H| 0.955357| 0.7500001 FTERMINATED: Iteration limit reached.This model may not be optimal. To improve it, consider increasing max_iterations .In 43 : predictions = model, predict(test_data)In 44 : metrics = model, evaluate(test_data) print (me tri cs ac
6、curacy)0.5训练精度0.955验证精度才0.75正确率才0.5。好吧,看来是学习得太少,得上三年高考五年模拟版,将暹罗和英短的图片都增加到100张。在看结果。Iteration | Passes | Step size | Elapsed Time | Training-accuracy | Validation-accuracy |1| 7I 0.000052| 0.094025I 0.740260| 1.0000002| 9I 1.000000| 0.133494| 0.740260| 1.0000003I 10I 1.000000I 0.161135I 0.967532| 1.0
7、000004I 11I 1.000000I 0.187226I 0.961039I 1.00000051 12I 1.000000I 0.213877| 0.967532I 1.0000006I 13I 1.000000I 0.244935| 0.987013I 1.000000TERMINATED: Iteration limit reached.This model may not be optimal. To improve it, consider increasing max_iterations .In 79 : predictions = model, predict(test_
8、data)In 80: metrics = model, evaluate(test_data) print (metricsf accuracy )Iteration | Passes | Step size | Elapsed Time | Training-accuracy | Validation-accuracy |1| 7I 0.000052| 0.094025I 0.740260| 1.0000002| 9I 1.000000| 0.133494| 0.740260| 1.0000003I 10I 1.000000I 0.161135I 0.967532| 1.0000004I
9、11I 1.000000I 0.187226I 0.961039I 1.00000051 12I 1.000000I 0.213877| 0.967532I 1.0000006I 13I 1.000000I 0.244935| 0.987013I 1.000000TERMINATED: Iteration limit reached.This model may not be optimal. To improve it, consider increasing max_iterations .In 79 : predictions = model, predict(test_data)In
10、80: metrics = model, evaluate(test_data) print (metricsf accuracy )这次训练精度就到达0.987 了,验证精度1.0 ,正确率1.0牛逼了。看下turicreate识别的结果:In 79: predictions = model.predict(test_data)In 80: metrics = model, evaluate(test_data) print (metrics * accuracy)1.0In 81 : predictionsOut81: dtype: strRows: 10L xisuluo , yingd
11、u3n ) yingcK13rl ) yingdu3n ) xi3nliuo , xi3nJLuo xionluo , yingdu3n , yingdudn , xidnluo JIn 79: predictions = model, predict(test_data)In 80: metrics = model, evaluate(test_data) print (metrics accuracy)1.081: predictionsOut81dtype: strRows: 10L xisuluo , yingdu3n ) yingdv13rl ) yingdusn ) xz3nluo
12、 , xi3nluo xionluo , yingdu3n , yingdudn , xidnluo J我们实际图片上猫是:(红色为真实的猫的类型-在代码里根据图片名称标记的,绿色为识别出来的猫的类型)Rows: 10U xianluo, yingduan, yingduan), yingduan, xianluo), xianluo, xianluo, yingduan, yingduan, xianluo)Rows: 10U xianluo, yingduan, yingduan), yingduan, xianluo), xianluo, xianluo, yingduan, yingd
13、uan, xianluo)In 82 : test_dataJ label,h 821: dtype: strRows: 10 xianluo, yingduan5 yingduan, yingduan5, xianluo, xianluo, xianluo, yingduan, yingduan, xianluo5In 80:In 81:Out 81:dtype: strRows: 10 xianluo1 yingduan5, yingduan5, yingduan, xianluo, xianluo, xianluo5, yingduan, yingduan xianluo5 In 82
14、: test_data labeli;: 82 : dtype: stiRows: 10 xianluo1, yingduan5, yingduan, yingduan, xianluo, xianluo, xianluo, yingduan5, yingduan, xianluo5 可以看到两者是一致的。牛逼了训练数据才两百张图片,就可以到达这种效 果。 你以后是不是可以识别了暹罗和英短了 ?大概能,好像又不能。这是因为素材 太少了,我们看这两张图能分别提取出来短特征太少了。那如果我们暹罗短放 100张图,英短放100张图给大家参考,再给一张暹罗或者英短短照片是不是 就能识别出来是那种猫了,
15、即使不能完全认出来,是不是也有90%可能是可以 猜猜对。那么如果提供500张暹罗500张英短短图片呢,是不是猜对的概率可 以更高?我们是怎么识别暹罗和英短的呢?当然是先归纳两种猫的特征如面部颜色分 布、眼睛的颜色等等,当再有一张要识别短图片时,我们就看看面部颜色分 布、眼睛颜色是不是可暹罗的特征一致。同样把识别暹罗和英短的方法教给计算机后,是不是计算机也可以识别这两种 猫?那么计算机是怎么识别图像的呢?先来看一下计算机是怎么存储图像的。图像在计算机里是一堆按顺序排列的数字,1到255 ,这是一个只有黑白色的图,但是颜色千变万化离不开三原色红绿蓝。width这样,一张图片在计算机里就是一个长方体
16、! depth为3的长方体。每一层都 是1到255的数字。让计算机识别图片,就要先让计算机了解它要识别短图片有那些特征。提取图 片中的特征就是识别图片要做的主要工作。下面就该主角出场了,卷及神经网 络(Convolutional Neural Network, CNN).最简单的卷积神经网络就长下面的样子。InputLayerConvolutionalLayerPooling Fully Connected OutputLayerLayerLayerConvolutionalConvolutionalInputLayerLayer Layer LayerPooling Fully Connec
17、ted Output分为输入、卷积层、池化层(采样层)、全连接和输出。每一层都将最重要的识 别信息进行压缩,并传导至下一层。卷积层:帮助提取特征,越深(层数多)的卷积神经网络会提取越具体的特征, 越浅的网络提取越浅显的特征。池化层:减少图片的分辨率,减少特征映射。全连接:扁平化图片特征,将图 片当成数组,并将像素值当作预测图像中数值的特征。卷积层卷积层从图片中提取特征,图片在计算机中就上按我们上面说的格式 存储的(长方体),先取一层提取特征,怎么提取?使用卷积核(权值)。做 如下短操作:185451239244188551217578958835242041131092213154104235
18、25130152532251597823368851802142450INPUT IMAGEWEIGHT观察左右两个矩阵,矩阵大小从6x6变成了 4x4,但数字的大小分布好像还是一致的。看下真实图片:Original ImageOriginal Image图片好像变模糊了,但这两个图片大小没变是怎么回事呢?其实是用了如下的方式:same padding000000000185451239244188005512175789588003524204113109221003154104235251300015253225159782330068851802142450000000000WEIGHT
19、叵在6x6的矩阵周围加了一圈0 ,再做卷积的时候得到的还是一个6x6的矩阵,为什么加一圈0这个和卷积核大小、步长和边界有关。自己算吧。上面是在一个6x6的矩阵上使用3X3的矩阵做的演示。在真实的图片上做卷积是什么样的呢?如下列图:28rn叩 slaked对一个32x32x3的图使用10个5x5x3的filter做卷积得到一个28x28x10的激活图(激活图是卷积层的输出).池化层减少图片的分辨率,减少特征映射。怎么减少的呢?池化在每一个纵 深维度上单独完成,因此图像的纵深保持不变。池化层的最常见形式是最大池 化。可以看到图像明显的变小了。如图:4295056868562617924126406
20、33653851751608913713657在激活图的每一层的二维矩阵上按2 x2提取最大值得到新的图。真实效果如下:650 WO ISO250Convoluted linage0 |20 IIc I20 O 080 tOO 120MAX Pooling20 O 080 tOO 120MAX Pooling00204080 tooMAX Pooling随着卷积层和池化层的增加,对应滤波器检测的特征就更加复杂。随着累积,就可以检测越来越复杂的特征。这里还有一个卷积核优化的问题,屡次训练优 化卷积核。下面使用apple的卷积神经网络框架TuriCreate实现区分暹罗和英短。冼说一下我是在win
21、lO下装的熬夜把电脑重装了不下3次,系统要有wls,不要用企业版,mac系统和ubuntu系统下安装turicreae比拟方便) 首先准备训练用图片暹罗50张,英短50长。测试用图片10张。上代码:(开发工具 anaconda , python 2.7 )coding: utf-8ln51:import turicreate as tG!n52:train_datajath = 7m nt/h/i mage/tra i n11n 画:ktrain data = tcJmage analysis.loadJmagesCtrain datajjatK withj?ath = True)in(54:
22、:二二train dataflabel* = trainjdata,path,.apply(lambda path: xianluo if xianluo in path else yingduan)ln56:train_data!n57:1)二 二data_path = 7mnt/h/i mageAest/1Sln59:test data = tc.image_analysis.loadjmages(testjdata_path, withjjath = True)ln1601:一一一testjdataflaber = test_data path,.apply(lambda path: ,xianluo* if *x* in pathelse yingduan1)testdata后62:model = tcjmage_dassifier.create(train_dataf target=1aber)ln631: 一一predictions 三# ln64:metrics = modeLevaluate(testjdata) print(metrics,accuracy,):ln65J:predictionsln66
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小企业劳动用工合同
- 夏令营代理商合作协议新
- 买卖合作协议合同
- 产品销售数据类表格
- 美甲店装修施工方案模板
- TCSG 13-2024 高纯工业品氟化锂
- 《大数据技术导论》-课程标准
- 布帘施工方案
- 水利水电施工方案
- 预制桩钢平台基础施工方案
- 2025年山东省科创集团有限公司招聘笔试参考题库含答案解析
- GB/T 44993-2024电动汽车非车载充电机现场检测仪
- 小学语文文学阅读与创意表达学习任务群教学实践研究
- 人教A版(2019)高二数学-圆与圆的位置关系-【课件】
- 2025年临床医师定期考核试题中医知识复习题库及答案(280题)
- 港珠澳大桥及背后的故事中国建造课程组30课件讲解
- 2025年吉林长白朝鲜族自治县事业单位招聘16人历年高频重点提升(共500题)附带答案详解
- 初中历史七年级上册第8课 百家争鸣
- 中国教育史课件
- 幼儿园小班美术欣赏《漂亮的糖纸》课件
- 中职学校主题班会教育课件
评论
0/150
提交评论