有关艺术画作分类的 Kaggle 比赛经验分享

有关艺术画作分类的 Kaggle 比赛经验分享_第1张图片

本文为 AI 研习社编译的技术博客,原标题 :

Classifying Artwork Images Kaggle Competition

作者 |  Terrance Whitehurst

翻译 |M惠M

校对 | 酱番梨        整理 | 菠萝妹

原文链接:

https://medium.com/@TerranceWhitehurst/classifying-artwork-images-kaggle-competition-8b3a98b4a341


有关艺术画作分类的 Kaggle 比赛经验分享_第2张图片

 源代码!

https://github.com/Terrance-Whitehurst/Keras-Art-Images-Classification/blob/master/Keras%20Artwork%20Classification.ipynb 

 概述!

在这个项目中,我将使用迁移学习和深度学习框架Keras对kaggle数据集中的不同艺术作品图像进行分类。

 你将学到什么!

使用Keras库进行分类任务

使用keras进行迁移学习

数据增强

有关艺术画作分类的 Kaggle 比赛经验分享_第3张图片

 我们开始吧!

#1

首先导入所有的依赖项。

有关艺术画作分类的 Kaggle 比赛经验分享_第4张图片

#2

加载了训练和验证集以及艺术图像的类别。

有关艺术画作分类的 Kaggle 比赛经验分享_第5张图片

还设置了一些hyper参数,以便在培训和加载模型时使用。

#3

按类别将训练图像进行可视化。

有关艺术画作分类的 Kaggle 比赛经验分享_第6张图片

#4

将来自不同类的一些图像进行可视化。

有关艺术画作分类的 Kaggle 比赛经验分享_第7张图片

#5

使用for循环创建训练数据和测试数据。

有关艺术画作分类的 Kaggle 比赛经验分享_第8张图片

#6

定义函数来加载数据集。

有关艺术画作分类的 Kaggle 比赛经验分享_第9张图片

#7

有关艺术画作分类的 Kaggle 比赛经验分享_第10张图片

使用keras的“ImageDataGenerator()”来增强数据。然后将训练数据与扩充相匹配。

#8

这是最终模型。它是一个两层网络,有两个密集的层和一个输出层。在我们完成模型架构之后,我们还必须在培训之前编译模型。

有关艺术画作分类的 Kaggle 比赛经验分享_第11张图片

#9

这使用数据增强创建一个生成器。接下来调用“fit_generator()”来训练模型,并添加“history”,这样就可以可视化之后的训练。

有关艺术画作分类的 Kaggle 比赛经验分享_第12张图片

#10

使用在“fit_generator()”之前调用的“history”来查看各个时代的损失和准确性。

有关艺术画作分类的 Kaggle 比赛经验分享_第13张图片

#11

创建一个测试集来获得预测

有关艺术画作分类的 Kaggle 比赛经验分享_第14张图片

#12

调用“predict()”来获得预测,然后创建一个分类报告和混淆矩阵,以查看模型做得有多好!

有关艺术画作分类的 Kaggle 比赛经验分享_第15张图片

#13

使用“plot_model()”来获得模型架构的图像,我将在下面显示。

 结论

下面是我在这个项目中使用的可视化模型

有关艺术画作分类的 Kaggle 比赛经验分享_第16张图片

学习快乐!

想要继续查看该篇文章相关链接和参考文献?

长按链接点击打开:

https://ai.yanxishe.com/page/TextTranslation/1283

AI研习社每日更新精彩内容,观看更多精彩内容:

这5种计算机视觉技术,刷新你的世界观

迁移学习:如何将预训练CNN当成特征提取器

新手必看:深度学习是什么?它的工作原理是什么?

Python高级技巧:用一行代码减少一半内存占用

等你来译:

预训练模型及其应用 

一文带你读懂线性分类器 

(Python)3D人脸处理工具face3d 

让你的电脑拥有“视力”,用卷积神经网络就可以!

你可能感兴趣的:(有关艺术画作分类的 Kaggle 比赛经验分享)