我刚到咖啡馆。文件不清楚我的问题的主题。在
在为Caffe在LMDB中创建训练/测试数据库时,数据库中的键是否有意义?在
换句话说,Caffe是使用来自LMDB键的任何信息,还是只使用关联值而忽略键?在
我发现的所有示例都建立了一些数据项的枚举,并在数据库中放入了成对的(数字转换为字符串、数据)。Example:
# create database,
# open transaction
# ...
for i in range(N):
datum = caffe.proto.caffe_pb2.Datum()
# add other attributes to datum
str_id = '{:08}'.format(i)
txn.put(str_id.encode('ascii'), datum.SerializeToString())
如果我给str_id
赋值,而不是一个转换成字符串的数字并提交给txn.put
,会怎么样?在
培训结果会改变吗?在
事实上,它也可以使用没有键的HDF5格式,这表明Caffe忽略了它们,但我想确定一下。在
更新我认为在LMDB中建立这样的枚举是为了模拟LMDB中的行索引,因为LMDB是一个键值存储,而神经网络需要表格数据?在
任何钥匙都可以:
“LMDB将任意密钥/数据对存储为字节数组”
Source: Wikipedia
相关问题 更多 >
编程相关推荐