Python 神经网络ipynb文件中的错误
我有点像个傻瓜,所以请容忍我。我一直在youtube上观看Siraj Raval,并尝试使用他在视频中创建的神经网络。我有两个单独的图像文件夹,一个是含有疟疾的细胞,另一个是健康细胞。我不确定验证数据使用什么。在包含图像的路径上使用Python 神经网络ipynb文件中的错误,python,tensorflow,neural-network,deep-learning,jupyter-notebook,Python,Tensorflow,Neural Network,Deep Learning,Jupyter Notebook,我有点像个傻瓜,所以请容忍我。我一直在youtube上观看Siraj Raval,并尝试使用他在视频中创建的神经网络。我有两个单独的图像文件夹,一个是含有疟疾的细胞,另一个是健康细胞。我不确定验证数据使用什么。在包含图像的路径上使用load_data函数后,我遇到了一个错误,我不知道如何解决这个问题。似乎我使用的其中一个应该具有该功能的软件包工作不正常 我已经将每个单元格的代码(我正在使用jupyter笔记本)复制到这个文本文件中。文本之间的长空格表示它们位于不同的单元格中。我不知道这是否重要
load_data
函数后,我遇到了一个错误,我不知道如何解决这个问题。似乎我使用的其中一个应该具有该功能的软件包工作不正常
我已经将每个单元格的代码(我正在使用jupyter笔记本)复制到这个文本文件中。文本之间的长空格表示它们位于不同的单元格中。我不知道这是否重要
再次检查
你失踪了
from parser import load_data
但这似乎是一个未提供的自定义模块。您需要的是将文件夹中的所有文件读取到数组/列表中。下面是一段代码,可以帮助您开始:
import os
from PIL import Image
import cv2
images = []
images2 = []
folder="somepics"
for filename in os.listdir(folder):
if not filename.startswith('.'):
print(filename)
#read with PIL
img = Image.open("{0}/{1}".format(folder, filename))
print(type(img))
images.append(img)
#read with cv2
img2 = cv2.imread(filename)
print(type(img2))
images2.append(img)
请记住,图像的大小必须相同。您可能需要重塑它们。您需要一个发电机。请参阅,或者最好使用ImageDataGenerator
。下一段代码将从以下位置复制和粘贴:
目录结构
data/
train/
dogs/ ### 1024 pictures
dog001.jpg
dog002.jpg
...
cats/ ### 1024 pictures
cat001.jpg
cat002.jpg
...
validation/
dogs/ ### 416 pictures
dog001.jpg
dog002.jpg
...
cats/ ### 416 pictures
cat001.jpg
cat002.jpg
# used to rescale the pixel values from [0, 255] to [0, 1] interval
datagen = ImageDataGenerator(rescale=1./255)
# automagically retrieve images and their classes for train and validation sets
train_generator = datagen.flow_from_directory(
train_data_dir,
target_size=(img_width, img_height),
batch_size=16,
class_mode='binary')
validation_generator = datagen.flow_from_directory(
validation_data_dir,
target_size=(img_width, img_height),
batch_size=32,
class_mode='binary')
代码
data/
train/
dogs/ ### 1024 pictures
dog001.jpg
dog002.jpg
...
cats/ ### 1024 pictures
cat001.jpg
cat002.jpg
...
validation/
dogs/ ### 416 pictures
dog001.jpg
dog002.jpg
...
cats/ ### 416 pictures
cat001.jpg
cat002.jpg
# used to rescale the pixel values from [0, 255] to [0, 1] interval
datagen = ImageDataGenerator(rescale=1./255)
# automagically retrieve images and their classes for train and validation sets
train_generator = datagen.flow_from_directory(
train_data_dir,
target_size=(img_width, img_height),
batch_size=16,
class_mode='binary')
validation_generator = datagen.flow_from_directory(
validation_data_dir,
target_size=(img_width, img_height),
batch_size=32,
class_mode='binary')
请参阅中的原始代码。我再次删除了我的答案。您缺少“从解析器导入加载数据”,但这似乎是Siraj未提供的自定义模块。我有一个加载图像的项目。我会回来的