旨在简化数据处理以进行深度学习的轻量级包
melon的Python项目详细描述
甜瓜
Melon是一个轻量级软件包,旨在简化数据处理以进行深入学习。
它消除了在(模型)训练、测试和推理之前对数据进行预处理的样板代码的需要。
它旨在标准化数据序列化和操作方法。
默认格式与框架(如tensorflow/pytorch/keras的需求保持一致
该工具还根据用例提供不同级别的定制。
示例
图像
默认情况下options:
frommelonimportImageReaderdeftrain():source_dir="resources/images"reader=ImageReader(source_dir)X,Y=reader.read()...withtf.Session()ass:s.run(...,feed_dict={X_placeholder:X,Y_placeholder:Y})
source_dir目录应包含需要读取的图像。参考sample directory。
在示例目录中有一个可选的labels.txt文件,如Labeling所述。
由于图像的数量可能太大,无法装入内存,因此该工具支持批处理。
frommelonimportImageReaderdeftrain():source_dir="resources/images"options={"batch_size":32}reader=ImageReader(source_dir,options)whilereader.has_next():X,Y=reader.read()...
这将读取32批图像,直到读取所有图像。如果未指定batch_size,则reader.read()将读取所有图像。
自定义options:
frommelonimportImageReaderdeftrain():source_dir="resources/images"options={"data_format":"channels_last","normalize":False}reader=ImageReader(source_dir,options)...
这会将数据格式更改为channels-last(每个示例都是Height x Width x Channel),并且不会规范化数据。有关可用选项,请参见options。
选项
图像
- width
- Width of the output (pixels). default: ^{tt7}$
- height
- Height of the output (pixels). default: ^{tt7}$
- batch_size
- Batch size of each read. default: All images in a directory
- data_format
Format of the images data
^{tt9}$ - Channel x Height x Width (default)^{tt10}$ - Height x Width x Channel- 标签格式 标签数据的格式
^{tt11}$ - as a matrix, with one-hot vector per image (default)^{tt12}$ - as a vector, with a single label per image- 规格化
- 规范化数据。默认值:True
- num_threads-并行处理的线程数
- 默认值:机器的核心数
标记
在监督学习中,每个图像都需要映射到一个标签。
虽然该工具支持读取不带标签的图像(例如用于推断),但它也提供了一种标记图像的方法。
生成标签文件
要生成labels文件,请使用以下命令:
$ melon generate > Source dir:
#legend pedestrian:0 cat:1 parrot:2 car:3 apple tree:4 #map img275.jpg:1 img324.jpg:2 img551.jpg:3 img928.jpg:1 img999.png:0 img736.png:4
#legend节是可选的,但是#map节是将标签映射到图像所必需的。
标签格式
标签的输出格式可以在Custom options中指定。它默认为one-hot格式。
路线图
- 支持视频数据(2019年第1季度)
- 支持阅读AWS S3(2019年第2季度)
推荐PyPI第三方库
- 热门话题
- java为什么我不能从ObjectInputStream读取ArrayList? linux如何设置java时区? java是一种拥有系统的方法。出来在循环中打印不同的内容? scala Apache Spark:在Java中有效地使用mapPartitions java Maven对com的依赖性。白天利用率 java将多个数据映射到单个id的表的正式名称是什么? java如何在Android应用程序中隐藏FulterWave API键 SeleniumWebDriverJava:如何使用行号和列号单击表中的特定单元格 java Springbatch将数据从写入程序或处理器传递到RestConroller java在Android TextView中一次换行两行,并带有跨距 java如何使这个rxjava zip并行运行? JAVAutil。登录中。记录器不尊重java。util。登录中。数量 java无法将参数发布到服务器 java Eclipse:在自定义透视图/视图的状态行上显示作业进度 java在调用findAll()时,找到了多个具有给定标识符的行,但如果我使用findById()遍历所有条目,则可以工作; Java中的正则表达式问题 Java中的实例变量 java如何在安卓中逐字搜索 java如何计算百分比