numpy - 在 Deepnote 中运行 ImageDataBunch 的问题
问题描述
我在 Deepnote 中运行这行代码时遇到问题,有人知道为什么吗?
data = ImageDataBunch.from_folder(path, train="train", valid ="test",ds_tfms=get_transforms(), size=(256,256), bs=32, num_workers=4).normalize()
错误说:
NameError: name 'ImageDataBunch' is not defined
之前,我已经导入了 Fastai 库。所以我不明白!
解决方案
Deepnote 中的 FastAI 设置并不是那么简单。最好使用自定义环境,您可以在其中设置内容,Dockerfile
然后在笔记本中进行所有操作。我不确定ImageDataBunch
您尝试执行的操作在 FastAI v1 和 v2 中是否以相同的方式工作,但这里是 v1 的详细信息。
这是一个通过 conda 设置 FastAI 环境的 Dockerfile:
# This is Dockerfile
FROM deepnote/python:3.9
RUN wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda.sh
RUN bash ~/miniconda.sh -b -p $HOME/miniconda
ENV PATH $HOME/miniconda/bin:$PATH
ENV PYTONPATH $HOME/miniconda
RUN $HOME/miniconda/bin/conda install python=3.9 ipykernel -y
RUN $HOME/miniconda/bin/conda install -c fastai -c pytorch fastai -y
RUN $HOME/miniconda/bin/python -m ipykernel install --user --name=conda
ENV DEFAULT_KERNEL_NAME "conda"
之后,您可以fastai
在 notebook 中测试导入:
import fastai
from fastai.vision import *
print(fastai.__version__)
ImageDataBunch
如果您下载并解压此示例 MNIST 数据集,您应该能够按照您的建议加载数据:
data = ImageDataBunch.from_folder(path, train="train", valid ="test",ds_tfms=get_transforms(), size=(256,256), bs=32, num_workers=4).normalize()
随意查看或克隆我的 Deepnote 项目以继续进行此工作。
推荐阅读
- python - 通过 Cython 到 Python 的基本 C++ 函数
- python - 我是网络抓取的新手,
- python - 为什么显示这些图形时我的 pygame 窗口会冻结?
- javascript - 获取字符串 Javascript 中的单词
- sql - 计算多次出现并将总和写入其他表
- c# - 在不更改现有代码的情况下添加 Post Sharp Aspect
- swiftui - SwiftUI:当我从 firstView 转移到 secondView 时,如何让 secondView 全屏显示
- python - 如何使用 Python 更改文件格式而不损坏文件?
- mysql - 将表格的行关联到组中,每个组中都有特殊元素
- react-native - ReactNative - Android 在可能的图像视图中非常慢