第三章 原型网络对字符集分类

本文探讨了原型网络如何展示对Omniglot字符集的泛化能力,通过学习度量空间创建类别的原型表示,对新样本进行分类。这种网络结构类似于孪生网络,强调距离测量在分类中的作用。
摘要由CSDN通过智能技术生成

原型网络对训练集中不存在的类别也具有泛化能力,与孪生网络一样,也试图学习度量空间来进行分类,基本思想是创建每个类的原型表示,并根据类原型与查询点之间的距离对查询点(新点)进行分类。

使用原型网络对Omniglot字符集分类

import os
import glob
from PIL import Image

import numpy as np
import tensorflow as tf

root_dir = 'data/'

# 该文件包括语言名称、旋转信息和字符数量
train_split_path = os.path.join(root_dir, 'splits', 'train.txt')


with open(train_split_path, 'r') as train_split:
    train_classes = [line.rstrip() for line in train_split.readlines()]

# 类的数量
no_of_classes = len(train_classes)

# 样本数量
num_examples = 20

img_width = 28

img_height = 28
channels = 1

#初始化数据集的类的数量、样本数量、图像高度和宽度
train_dataset = np.zeros([no_of_classes, num_examples, img_height, img_width], dtype=np.float32)

# 读取所有图像,转换为numpy数组࿰
  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值