问题标签 [fast-ai]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 我无法加载我的模型,因为我无法放置 PosixPath
我正在设置一个脚本,我需要使用 package.json 中的一些函数fast-ai
。事实是我在 Windows 上,当我定义路径时,fast-ai
named的函数load_learner
无法加载模型。
我试图将函数更改为包:
state = pickle.load(open(str(path) + '/' + str(fname), 'rb'))
代替:
state = pickle.load(open(path/fname, 'rb'))
但我收到此错误:
我的路径定义为:
我把这个函数称为:
model = load_learner(folder_path, fname)
如何在此函数中使用 Windows 路径?
更新 1
发布的答案仅在 Linux 上是正确的。我在 Windows 上仍然有这个问题。我没有找到在 Windows 上通过 PosixPath 的方法。我发现的唯一解决方案是从我的模块中更改内部包,但这不是解决此类问题的安全方法。
提前致谢。
python - 使用 Python 3.6 的 GCP 和 Datalab,需要在 GCP 上使用 Jupyter
我正在尝试使用 fastai 的库,但是这些库中内置的一些数据访问工具依赖于 HTML 对象。例如,DataBunch.show_batch 属性生成一个在 Jupyter 中最容易使用的 HTML 对象。我需要在 GCP(或其他云)上运行测试,问题如下:
- fastai 有一些依赖于 Python3.6 或更高版本的库(新的字符串格式)
- GCP 没有与 Jupyter NB 交互的好方法。我设置它时遇到了一些麻烦,但后来我的电脑需要重新格式化,现在我在质疑是否应该重新设置。之前的方法主要是基于此。
- GCP 显然有一些东西可以在它和 Jupyter NB 之间提供一个接口,称为 Datalab。但是,根据此链接,Datalab 不支持 Py3.6 或更高版本。
我看到几个选项:
- 通过继承 fastai 的库并完全跳过 Jupyter 来开发我自己的数据可视化技术
- 以不同的方式创建 Jupyter-to-GCP 接口,基本上是重做上面第二个要点中链接中的步骤。
- 使用我在 Datalab 上经常听到的一个容器 ( docker ),它允许我使用我自己的 Python 版本
有没有人有其他选择我可以如何建立这种联系?如果没有,任何人都可以提供如何完成 1、2 或 3 的其他链接吗?
machine-learning - 如何从 Fastai 学习器语言模型中的编码器获取句子嵌入
我能够使用快速人工智能微调语言模型。我想从用于句子相似性的微调模型中提取句子嵌入。如何获得编码器模型嵌入?嵌入也可以与其他模型(如 USE)中的其他嵌入进行比较吗?
我的代码在上面我如何从学习中获取编码?
python - 不同尺寸图像的预测
是否可以对尺寸与训练数据不同的图像进行预测?我已经在一定尺寸(1000*1000)的图片上训练了一个 unet_learner 并将其导出以供以后使用。
然后我用以下内容加载它:
但是如果输入图像的大小不同会怎样呢?
python - 尝试在自定义 LearnerCallback 中应用_tfms 时如何修复“后端 CUDA 的预期对象”
对机器学习、fastai、pytorch 和 python 来说非常陌生,我试图在手动修改图像后调整 LearnerCallback 来进行转换。当我开始我的 learn.fit_one_cycle 时,它会立即中断,如下所示:
我试过坚持.to(torch.device('cuda'))
我能想到的所有地方
倒数第二行中的“apply_tfms”是回溯中的罪魁祸首,其结尾为:
有没有一种方法可以在 LearnerCallback 中应用转换而不会出现该错误,或者有一种替代方法可以在 apply_tfms 在修改后的输入和目标图像上运行相同的转换之前添加我的 LearnerCallbacklearn.callback_fns.append
以运行?我需要来自目标图像的像素信息来修改输入图像。我还需要在培训和验证期间应用此过程。
如果它有任何区别,即使我没有在 apply_tfms 之前修改克隆的图像,我也会得到相同的错误。
python - GCP 实例中的 jupyter 笔记本无法导入 wget 或 fastai
我有一个在谷歌云平台上运行的 VM 实例。我按照此处的说明操作:https : //towardsdatascience.com/running-jupyter-notebook-in-google-cloud-platform-in-15-min-61e16da34d52 为实例设置 Jupyter 笔记本。如果我打开 python3 笔记本,我可以导入某些包(等,matplotlib),但由于某种原因,如果我尝试导入 wget 或 fastai,我会收到
ImportError:没有名为“fastai”的模块
或者
ImportError:没有名为“wget”的模块
该实例是一个预构建的 pytorch 深度学习设置,它应该与 fastai 一起提供,并且 wget 在任何类型的安装之前都可以在 SSH 终端中运行。无论如何,我已经尝试使用 conda 和 pip 命令安装 wget 和 fastai,但都没有使这些模块在 jupyter 中可访问。我假设因为这些模块是在这种情况下预先构建的,所以我需要以不同的方式访问/导入它们?
如果在 SSH 终端(没有任何 conda/pip 安装)我问whereis wget
,我收到:
wget: /usr/bin/wget /opt/anaconda3/bin/wget /usr/share/man/man1/wget.1.gz /usr/share/info/wget.info.gz
如果在 SSH 终端(没有任何 conda/pip 安装)我问whereis fastai
,我收到:
法泰:
我怎样才能让导入工作?
如果在我的 Jupyter 笔记本中运行:
我得到:
/home/me/anaconda3/lib/python3.5/site-packages/pip/_vendor/requests/init .py :83:RequestsDependencyWarning:旧版本的密码学([1, 3])可能会导致速度变慢。warnings.warn(warning, RequestsDependencyWarning) 要求已经满足:wget in /home/me/anaconda3/lib/python3.5/site-packages (3.2) ----------------- -------------------------------------------------- -------- ImportError Traceback (最近一次调用最后一次) in 4 import yaml 5 get_ipython().system('pip install wget') ----> 6 import wget
ImportError:没有名为“wget”的模块
快速更新:已经安装了 wget 和 fastai 似乎确实存在一些问题。我无法导入,但我可以使用我的 jupyter 笔记本中的模块。所以wget.download(stuff)
提出了一个
NameError:名称'wget'未定义错误
但!wget.download(stuff)
有效。
仍然希望能够导入。但是,有没有办法引用 fastai 基类?现在如果我尝试
我得到:
NameError:未定义名称“LearnerCallback”
我认为这是由于未进口的fastai。我该如何解决这个问题?
python - fastai error predicting with exported/reloaded model: "Input type and weight type should be the same"
Whenever I export a fastai model and reload it, I get this error (or a very similar one) when I try and use the reloaded model to generate predictions on a new test set:
#xA;Minimal reprodudeable code example below, you just need to update your FILES_DIR
variable to where the MNIST data gets deposited on your system:
Output:
"RuntimeError: Input type (torch.cuda.FloatTensor) and weight type (torch.cuda.HalfTensor) should be the same"
Stepping through the code statement by statement, everything works fine until the last line pred = ...
which is where the torch error above pops up.
Relevant software versions:
Python 3.7.3
fastai 1.0.57
torch 1.2.0
torchvision 0.4.0
python - 导出 FastAI 文本分类器模型时出错
我在 Kaggle 上使用 FastAi 构建了一个文本分类器,在尝试导出经过训练的模型时出现以下错误 - TypeError: unsupported operand type(s) for /: 'str' and 'str'
我尝试设置更精简的模型目录和工作目录的路径。
我得到的错误是 -
python - 如何使用 fastai 实现 sklearns StratifiedKfold?
我参加了 APTOS 2019 kaggle 比赛,并试图在 5 折上合奏,但我在正确实施 StratifiedKFold 时遇到问题。
我曾尝试在 fastai 讨论上进行谷歌搜索,但我没有看到任何解决方案。我正在使用 fastai 库并有一个预训练的模型。
我想使用从 skf.split 获得的折叠来训练我的模型,但我不知道该怎么做。