猫和狗区分的迁移学习实践

我正在尝试自己练习迁移学习。

我试图统计猫和狗文件的数量(每个类别有12500张图片,总共25000张图片)。

这是我的代码。代码

这是我的图片文件夹路径输入图片描述

我以为这是一个简单的代码,但还是搞不明白为什么我的代码结果一直是(0,0)(应该是(12500个猫文件,12500个狗文件)):(。


回答:

glob.glob()中使用os.path.join()。另外,如果你的所有图片都是特定扩展名(比如,jpg),你可以将'*.*'替换为'*.jpg*'

解决方案

import os, globfiles = glob.glob(os.path.join(path,'train/*.*'))

事实上,既然你没有选择特定文件扩展类型,你也可以只使用os库来做如下操作。

import osfiles = os.listdir(os.path.join(path,'train'))

一些解释

这里的os.path.join()方法帮助你将多个文件夹连接起来以创建路径。这在Windows/Mac/Linux系统上都有效。但是,对于Windows来说,路径分隔符是\,对于Mac/Linux是/。所以,不使用os.path.join()可能会为操作系统创建一个无法解析的路径。当我对获取特定类型的文件(扩展名)感兴趣时,我会使用glob.glob。但glob.glob(path)需要一个有效的路径才能工作。在我的解决方案中,os.path.join()从路径组件创建路径,并将其输入到glob.glob()中。

为了更清楚,我建议你查看os.path.joinglob.glob的文档,分别是os.path.joinglob.glob

另外,还可以查看pathlib模块作为os.path.join()的路径操作替代方案,文档见pathlib

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注