图像分类:数据驱动方法
图像分类任务是计算机视觉中的主要任务,当你做图像分类的时候分类系统接收了一些输入图像,比如可爱的猫,并且系统已经清楚了一些确定了分类或者标签的集合,这些标签可能是一只狗狗或者一只猫咪,也有可能是一辆卡车,还有一些固定类别的标签集合,那么计算机的工作就是看图片,但是它肯定没有人对猫的那样一种概念,电脑看到的只是一些像素,所以对于计算机来说这是一个巨大的数字矩阵,很难从中提取出猫的特性,我们把这个称为语义鸿沟。对于猫咪的概念或者它的标签是我们赋予特性的一个语义标签,一个猫的语义标签和计算机实际上看到的像素值之间有着巨大的差距。一旦图片发生了微妙的变化,这将导致像素网路整个发生变化,虽然两个矩阵中的数据完全不同,但是它们仍然都是代表猫,因此我们的算法需要对这些变化鲁棒。还不仅仅是视角的问题,还有光照条件不同的问题,目标对象还有变形的问题,还有遮挡的问题以及类内差异的问题,我们的算法应该是在这些条件下都是鲁棒的。
我们可以用Python写一个图像分类器,输入是图像,输出为图像的标签。
比如:
def classify_image(image):