有什么办法,我可以在PyTorch中添加简单的L1/L2正则化吗?我们可以通过简单地添加data_loss
with 来计算正则化损失reg_loss
但是有没有明确的方法,PyTorch库的任何支持都可以更轻松地完成它而不需要手动执行它?
ipdb> outputs.size()
torch.Size([10, 100])
ipdb> print sum(outputs,0).size(),sum(outputs,1).size(),sum(outputs,2).size()
(100L,) (100L,) (100L,)
Run Code Online (Sandbox Code Playgroud)
如何对列进行求和?
在 fastai 编码人员的前沿深度学习课程第 7 课中。
self.conv1 = nn.Conv2d(3,10,kernel_size = 5,stride=1,padding=2)
Run Code Online (Sandbox Code Playgroud)
10 是否意味着过滤器的数量或过滤器将提供的激活数量?
我正在处理文本分类问题,我想使用 BERT 模型作为基础,然后使用密集层。我想知道这 3 个参数是如何工作的?例如,如果我有 3 个句子:
'My name is slim shade and I am an aspiring AI Engineer',
'I am an aspiring AI Engineer',
'My name is Slim'
Run Code Online (Sandbox Code Playgroud)
那么这 3 个参数会做什么呢?我的想法如下:
max_length=5
将严格保留长度为 5 之前的所有句子padding=max_length
将为第三句添加 1 的填充truncate=True
将截断第一句和第二句,使其长度严格为 5。如果我错了,请纠正我。
下面是我使用过的代码。
! pip install transformers==3.5.1
from transformers import BertTokenizerFast
tokenizer = BertTokenizerFast.from_pretrained('bert-base-uncased')
tokens = tokenizer.batch_encode_plus(text,max_length=5,padding='max_length', truncation=True)
text_seq = torch.tensor(tokens['input_ids'])
text_mask = torch.tensor(tokens['attention_mask'])
Run Code Online (Sandbox Code Playgroud) python deep-learning pytorch bert-language-model huggingface-tokenizers
我正在使用 google colab 免费 Gpu 进行实验,并想知道有多少 GPU 内存可用于播放,torch.cuda.memory_allocated() 返回当前占用的 GPU 内存,但我们如何使用 PyTorch 确定总可用内存。
我使用这里的代码来训练一个模型来预测从0
到的打印样式编号9
:
idx_to_class = {0: "0", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7:"7", 8: "8", 9:"9"}
def predict(model, test_image_name):
transform = image_transforms['test']
test_image = Image.open(test_image_name)
plt.imshow(test_image)
test_image_tensor = transform(test_image)
if torch.cuda.is_available():
test_image_tensor = test_image_tensor.view(1, 3, 224, 224).cuda()
else:
test_image_tensor = test_image_tensor.view(1, 3, 224, 224)
with torch.no_grad():
model.eval()
# Model outputs log probabilities
out = model(test_image_tensor)
ps = torch.exp(out)
topk, topclass = ps.topk(1, dim=1)
# print(topclass.cpu().numpy()[0][0])
print("Image class: ", idx_to_class[topclass.cpu().numpy()[0][0]]) …
Run Code Online (Sandbox Code Playgroud) 我一直Compiled slug size: 789.8M is too large (max is 500M)
从 Heroku收到 slug size too large 警告 ( ),我不知道为什么,因为我的模型大小(下面的 cnn.pth)相当小,我的文件目录总共只有 1.1mb:截图目录。
大小增加似乎是由运行引起的pipenv install torch
,因为安装前的 slug 大小为 89.1mb,安装torch
后为 798.8mb 。
我的 Pipfile 目前安装了这些软件包:
[packages]
flask = "*"
flask-sqlalchemy = "*"
psycopg2 = "*"
psycopg2-binary = "*"
requests = "*"
numpy = "*"
gunicorn = "*"
pillow = "*"
torch = "*"
Run Code Online (Sandbox Code Playgroud)
有什么解决方法吗?
编辑:我正在运行 Mac OSX 10.10.5,使用Flask
和pipenv
。
我正在尝试在 Windows 10 上进行 Pytorch/Torchvision 的基本安装和导入。我安装了 Anaconda 并创建了一个名为 photo 的新虚拟环境。我打开 Anaconda prompt,激活环境,然后运行:
(photo) C:\Users\<user>\anaconda3\envs>conda install pytorch torchvision cudatoolkit=10.2 -c pytorch**
Run Code Online (Sandbox Code Playgroud)
这样就成功安装了pytorch。运行conda list我看到:
pytorch pytorch/win-64::pytorch-1.5.0-py3.7_cuda102_cudnn7_0
torchvision pytorch/win-64::torchvision-0.6.0-py37_cu102
Run Code Online (Sandbox Code Playgroud)
然后我在虚拟环境中打开一个 python 命令提示符,然后输入:
import torch
打印以下错误:
回溯(最近一次调用):文件“”,第 1 行,在文件“C:\Users\njord\anaconda3\envs\photo\lib\site-packages\torch__init__.py”中,第 81 行,在 ctypes.CDLL( dll) File "C:\Users\njord\anaconda3\envs\photo\lib\ctypes__init__.py", line 364, in init self._handle = _dlopen(self._name, mode) OSError: [WinError 126] 指定的模块找不到
我已经卸载/重新安装了 python 和 anaconda,但仍然遇到同样的问题。建议表示赞赏。
我正在尝试在我拥有的笔记本电脑上运行 Pytorch。这是一款较旧的型号,但确实配备了 Nvidia 显卡。我意识到它可能不足以用于真正的机器学习,但我正在尝试这样做,以便我可以学习安装 CUDA 的过程。
我遵循了Ubuntu 18.04安装指南中的步骤(我的特定发行版是 Xubuntu)。
我的显卡是 GeForce 845M,经验证lspci | grep nvidia
:
01:00.0 3D controller: NVIDIA Corporation GM107M [GeForce 845M] (rev a2)
01:00.1 Audio device: NVIDIA Corporation Device 0fbc (rev a1)
Run Code Online (Sandbox Code Playgroud)
我还安装了 gcc 7.5,通过验证 gcc --version
gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0
Copyright (C) 2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Run Code Online (Sandbox Code Playgroud)
我安装了正确的标头,通过尝试安装它们来验证sudo …