零基础AI你需要知道的第一件利器!

如前文所述,采用海量数据训练出来的神经网络模型,可以保存和下载。

你所需要的,仅仅是类似这样一段指令:

fromkeras.applications.resnet50importResNet50

并不复杂,对吗?很多时候,难与易的分水岭,往往在于多一点点的好奇心。

指令中的Keras,便是本专栏为你推荐的第一件“AI利器”。

简单科普:

Keras是一个神经网络工具集,底层支持包括谷歌的Tensorflow、微软的CNTK等工具,它可以帮助我们更直观地构建神经网络,进行AI应用的快速验证。

ResNet是Google提出的多层神经网络模型之一,曾获ImageNet挑战赛冠军。

“工欲善其事,必先利其器”,有了工具与模型,你已经可以像百度AI开放平台一样,实现自己的图像识别!

我们把《零基础AI-揭秘图像识别》中的车图片作为输入x,用ResNet50作为识别模型,看看得到什么样的输出y。

核心指令也非常简单:

model = ResNet50(weights='imagenet')

y = model.predict(x)

识别结果如下:

该模型以37.57%的置信度认为是运动轿车,35.98%的置信度认为是跑车,22.45%的置信度认为图片中有轮胎!

后文中,我们将介绍如何用Keras搭建神经网络,并训练自己的模型。

附赠示例源码test.py

$ python test.py 可运行结果(有问题可私信)

from keras.applications.resnet50 import ResNet50

from keras.preprocessing import image

from keras.applications.resnet50 import preprocess_input, decode_predictions

import numpy as np

model = ResNet50(weights='imagenet')

img_path = './Lykan.jpeg'

img = image.load_img(img_path, target_size=(224, 224))

x = image.img_to_array(img)

x = np.expand_dims(x, axis=0)

x = preprocess_input(x)

preds = model.predict(x)

# decode the results into a list of tuples (class, description, probability)

# (one such list for each sample in the batch)

print('Predicted:', decode_predictions(preds, top=3)[0])

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181204G0Z62N00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券