18

I tried to load pre-trained model by using BertModel class in pytorch.

I have _six.py under torch, but it still shows module 'torch' has no attribute '_six'

import torch
from pytorch_pretrained_bert import BertTokenizer, BertModel, BertForMaskedLM
# Load pre-trained model (weights)
model = BertModel.from_pretrained('bert-base-uncased')
model.eval()
~/anaconda3/lib/python3.7/site-packages/torch/nn/modules/module.py in __setattr__(self, name, value)
    551                                     .format(torch.typename(value), name))
    552                 modules[name] = value
--> 553             else:
    554                 buffers = self.__dict__.get('_buffers')
    555                 if buffers is not None and name in buffers:

~/anaconda3/lib/python3.7/site-packages/torch/nn/modules/module.py in register_parameter(self, name, param)
    140             raise KeyError("parameter name can't be empty string \"\"")
    141         elif hasattr(self, name) and name not in self._parameters:
--> 142             raise KeyError("attribute '{}' already exists".format(name))
    143 
    144         if param is None:

AttributeError: module 'torch' has no attribute '_six'
Marco Cerliani
  • 21,233
  • 3
  • 49
  • 54
Ruitong LIU
  • 181
  • 1
  • 1
  • 3

6 Answers6

10

In jupyter notebook/lab simply restarting the kernel works fine

Marco Cerliani
  • 21,233
  • 3
  • 49
  • 54
7

I was getting this erro when I was trying to load CIFAR10 dataset. Simple restart didn't solved it! I found that for some (conda) environment it was working fine.

Updating torch and torchvision helped:

pip install --upgrade torch torchvision
user1953366
  • 1,341
  • 2
  • 17
  • 27
2

I solved this error by commenting the following lines of code in vision.py

if isinstance(root, torch._six.string_classes):
            root = os.path.expanduser(root)
        self.root = root
endive1783
  • 827
  • 1
  • 8
  • 18
1

I also had the same issue on macOS, and as Mark mentioned, it works fine after restarting my mac!

fitfall
  • 27
  • 2
0

I faced the same issue under Apple M1 using conda and I solved it after creating a new conda environment with the latest version of python and then installing torch and torchvision again.

0

Works for me

From: https://discuss.pytorch.org/t/attributeerror-module-torch-has-no-attribute-utils/176733/7

Downgrading to torchvision 0.14.0 or upgrading torchvision to 0.15.1 both resolve this error

Coder
  • 1,129
  • 10
  • 24