DataCastle猫狗大战参赛者需要从训练集里建立一个模型去识别测试集里的小狗来。谁能识别出最多的数量,谁的成绩就更好。

参赛者需要提交你识别出认为是小狗图片的图片名,不包括文件类型,例如:xabcd.jpg,则提交的uid为xabcd。详情参考示例提交文件。


import osimport globfrom keras.models import Sequentialfrom keras.layers.core import Flatten, Dense, Dropoutfrom keras.layers.convolutional import Convolution2D, MaxPooling2D, ZeroPadding2Dfrom keras.optimizers import SGDimport cv2, numpy as npdef VGG_16(weights_path=None):model = Sequential()model.add(ZeroPadding2D((1,1),input_shape=(3,224,224)))model.add(Convolution2D(64, 3, 3, activation='relu'))model.add(ZeroPadding2D((1,1)))model.add(Convolution2D(64, 3, 3, activation='relu'))model.add(MaxPooling2D((2,2), strides=(2,2)))model.add(ZeroPadding2D((1,1)))model.add(Convolution2D(128, 3, 3, activation='relu'))model.add(ZeroPadding2D((1,1)))model.add(Convolution2D(128, 3, 3, activation='relu'))model.add(MaxPooling2D((2,2), strides=(2,2)))model.add(ZeroPadding2D((1,1)))model.add(Convolution2D(256, 3, 3, activation='relu'))model.add(ZeroPadding2D((1,1)))model.add(Convolution2D(256, 3, 3, activation='relu'))model.add(ZeroPadding2D((1,1)))model.add(Convolution2D(256, 3, 3, activation='relu'))model.add(MaxPooling2D((2,2), strides=(2,2)))model.add(ZeroPadding2D((1,1)))model.add(Convolution2D(512, 3, 3, activation='relu'))model.add(ZeroPadding2D((1,1)))model.add(Convolution2D(512, 3, 3, activation='relu'))model.add(ZeroPadding2D((1,1)))model.add(Convolution2D(512, 3, 3, activation='relu'))model.add(MaxPooling2D((2,2), strides=(2,2)))model.add(ZeroPadding2D((1,1)))model.add(Convolution2D(512, 3, 3, activation='relu'))model.add(ZeroPadding2D((1,1)))model.add(Convolution2D(512, 3, 3, activation='relu'))model.add(ZeroPadding2D((1,1)))model.add(Convolution2D(512, 3, 3, activation='relu'))model.add(MaxPooling2D((2,2), strides=(2,2)))model.add(Flatten())model.add(Dense(4096, activation='relu'))model.add(Dropout(0.5))model.add(Dense(4096, activation='relu'))model.add(Dropout(0.5))model.add(Dense(1000, activation='softmax'))if weights_path:model.load_weights(weights_path)return modelif __name__ == "__main__":# Test pretrained modelmodel = VGG_16('vgg16_weights.h5')sgd = SGD(lr=0.1, decay=1e-6, momentum=0.9, nesterov=True)model.compile(optimizer=sgd, loss='categorical_crossentropy')dogs=[251, 268, 256, 253, 255, 254, 257, 159, 211, 210, 212, 214, 213, 216, 215, 219, 220, 221, 217, 218, 207, 209, 206, 205, 208, 193, 202, 194, 191, 204, 187, 203, 185, 192, 183, 199, 195, 181, 184, 201, 186, 200, 182, 188, 189, 190, 197, 196, 198, 179, 180, 177, 178, 175, 163, 174, 176, 160, 162, 161, 164, 168, 173, 170, 169, 165, 166, 167, 172, 171, 264, 263, 266, 265, 267, 262, 246, 242, 243, 248, 247, 229, 233, 234, 228, 231, 232, 230, 227, 226, 235, 225, 224, 223, 222, 236, 252, 237, 250, 249, 241, 239, 238, 240, 244, 245, 259, 261, 260, 258, 154, 153, 158, 152, 155, 151, 157, 156]cats=[281,282,283,284,285,286,287]path = os.path.join('imgs', 'test', '*.jpg')files = glob.glob(path)result=[]for fl in files:flbase = os.path.basename(fl)im = cv2.resize(cv2.imread(fl), (224, 224)).astype(np.float32)im[:,:,0] -= 103.939im[:,:,1] -= 116.779im[:,:,2] -= 123.68im = im.transpose((2,0,1))im = np.expand_dims(im, axis=0)out = model.predict(im)p = np.sum(out[0,dogs]) / (np.sum(out[0,dogs]) + np.sum(out[0,cats]))result.append((flbase,p))result=sorted(result, key=lambda x:x[1], reverse=True)for x in result:#print x[0],x[1]print x[0]

在DataCastle查看原文


DataCastle[猫狗大战] ——Yinjh比赛全部代码相关推荐

  1. DataCastle[猫狗大战]冠军——Kuhung 思路及代码

    我是参加DataCastle猫狗大战的选手,kuhung.在测评中,我提交的数据集最后评分0.98639.以下是我的备战过程及心得体会.(最后有完整代码及较全面的注释) 在猫狗大战中参赛者需要从训练集 ...

  2. [APP]- 找回Xcode7的代码折叠功能

    为什么80%的码农都做不了架构师?>>>    原 找回Xcode7的代码折叠功能 升级到Xcode7后,会发现代码折叠功能不见了,这是怎么回事? 其实这个功能还在的,只是苹果默认把 ...

  3. DataCastle[猜你喜欢]推荐系统竞赛——Kuhung思路及代码

    概况介绍 我是参加DataCastle[猜你喜欢]推荐系统的kuhung.在截止竞赛日期的测评榜中,我的团队--猜你不喜欢,以7.86565的最终成绩,位居第二.接下来我将分享我的比赛心得及才赛代码. ...

  4. Linux RCU机制详解[转]

    一:前言 RCU机制出现的比较早,只是在linux kernel中一直到2.5版本的时候才被采用.关于RCU机制,这里就不做过多的介绍了,网上有很多有关RCU介绍和使用的文档.请自行查阅.本文主要是从 ...

  5. i27岁转行java,JavaTM I/O 性能分析[转]

    JavaTM I/O 性能分析[转] 上一篇 / 下一篇  2008-07-30 13:04:44 / 个人分类:Zee的生活 这篇文章讨论和阐明了提供 JavaTM I/O 性能的多种设计问题,例如 ...

  6. 中专生计算机教案,[定稿]计算机基础教案中专V8.1(全文完整版)

    <[定稿]计算机基础教案(中专).doc>由会员分享,可免费在线阅读全文,更多与<[定稿]计算机基础教案(中专)(V8.1)>相关文档资源请在帮帮文库(www.woc88.co ...

  7. svn在linux下的使用(svn命令)[转]

    svn在linux下的使用(svn命令)[转] 原地址:http://www.rjgc.net/control/content/content.php?nid=4418 1.将文件checkout到本 ...

  8. 网络产品用户体验优化系列[一]概要

    网络产品用户体验优化系列[一]概要 很高兴能在这里和大家专门沟通用户体验方面的话题,特别是能够收集大家对网络产品用户体验的反馈,以及网络产品团队在用户体验方面的优化和更新.这个系列我们只谈用户体验. ...

  9. IOS仿[自选股]项目开发

    [自选股]手机客户端致力于通过先进的移动互联技术,让广大投资者尊享更便捷的证券投资服务.其简约易用 功能特点 一:界面简洁 登录人性化 用户可通过QQ账户登录软件,无需注册登录.登录后,软件会自动同步 ...

最新文章

  1. 记录一下vlfeat视觉库配置
  2. c语言 自动包含头文件,C语言不要重复包含.h头文件和.c文件
  3. python k线合成_手把手教你写一个Python版的K线合成函数
  4. Vue 第九天学习
  5. 用自己的ID在appstore中更新app-黑苹果之路
  6. IOS多线程任务(综述篇)
  7. DevExpress 用户控件 分页(中)
  8. 【报告分享】2020年618直播带货数据报告.pdf(附下载链接)
  9. 详解CSS的Flex布局
  10. 常用idea快捷键大全
  11. 美赛O奖论文翻译-2015埃博拉病毒
  12. PS去除图片白底制作微信表情包
  13. linux运行程音乐软件,在Linux系统下用Wine 5.0运行酷狗音乐的使用体验
  14. 无线网络通信技术完全介绍
  15. Python代码规范之---代码不规范,亲人两行泪
  16. 12.2版本数据库ORA-20001: Statistics Advisor: Invalid task name for the current user
  17. Dreammaker水疗流行的Eclipse从他们的加州系列,审议
  18. linux下自动删除文件夹,如何在Linux中自动删除或清理/tmp文件夹内容?
  19. canvas--putImageData--(灰色滤镜、黑白滤镜、反色滤镜、模糊滤镜、马赛克滤镜)
  20. 李兴华内部JAVA培训视频 (难找啊)

热门文章

  1. 自我介绍html模板王,自我介绍模板600字
  2. 地基基础检测远程监控系统 易云系统 中易云
  3. 详细版申请2022年安庆市商标注册所需材料
  4. 2021年电工(中级)考试题库及电工(中级)最新解析
  5. 十进制与二进制的相互转换
  6. Flash/Flex与外部对象或数据交互的几种方式
  7. matlab仿真 调频立体声广播,调频立体声广播系统的建模与仿真.doc
  8. matlab 理想低通滤波器函数,理想滤波器、原型模拟滤波器和窗函数的特性matlab6...
  9. 2013多校第一场 - from lanshui_Yang
  10. proteus 与 keil 的安装及联调