Download pretrained model

Crophone: <pre><code class="lang-auto">model = torchvision.models.detection.fasterrcnn_resnet50_fpn(pretrained=True)
</code></pre>
<p>when I try to this line of code to download pretrained fasterrcnn model, I got the following error message. I can’t figure out what’s wrong with it, and there is no related solution after I search, Is there someone can help me?</p>
<pre><code class="lang-auto">Downloading: "https://download.pytorch.org/models/fasterrcnn_resnet50_fpn_coco-258fb6c6.pth" to /root/.cache/torch/hub/checkpoints/fasterrcnn_resnet50_fpn_coco-258fb6c6.pth
---------------------------------------------------------------------------
gaierror                                  Traceback (most recent call last)
/opt/conda/lib/python3.7/urllib/request.py in do_open(self, http_class, req, **http_conn_args)
   1349                 h.request(req.get_method(), req.selector, req.data, headers,
-&gt; 1350                           encode_chunked=req.has_header('Transfer-encoding'))
   1351             except OSError as err: # timeout error

/opt/conda/lib/python3.7/http/client.py in request(self, method, url, body, headers, encode_chunked)
   1276         """Send a complete request to the server."""
-&gt; 1277         self._send_request(method, url, body, headers, encode_chunked)
   1278 

/opt/conda/lib/python3.7/http/client.py in _send_request(self, method, url, body, headers, encode_chunked)
   1322             body = _encode(body, 'body')
-&gt; 1323         self.endheaders(body, encode_chunked=encode_chunked)
   1324 

/opt/conda/lib/python3.7/http/client.py in endheaders(self, message_body, encode_chunked)
   1271             raise CannotSendHeader()
-&gt; 1272         self._send_output(message_body, encode_chunked=encode_chunked)
   1273 

/opt/conda/lib/python3.7/http/client.py in _send_output(self, message_body, encode_chunked)
   1031         del self._buffer[:]
-&gt; 1032         self.send(msg)
   1033 

/opt/conda/lib/python3.7/http/client.py in send(self, data)
    971             if self.auto_open:
--&gt; 972                 self.connect()
    973             else:

/opt/conda/lib/python3.7/http/client.py in connect(self)
   1438 
-&gt; 1439             super().connect()
   1440 

/opt/conda/lib/python3.7/http/client.py in connect(self)
    943         self.sock = self._create_connection(
--&gt; 944             (self.host,self.port), self.timeout, self.source_address)
    945         self.sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)

/opt/conda/lib/python3.7/socket.py in create_connection(address, timeout, source_address)
    706     err = None
--&gt; 707     for res in getaddrinfo(host, port, 0, SOCK_STREAM):
    708         af, socktype, proto, canonname, sa = res

/opt/conda/lib/python3.7/socket.py in getaddrinfo(host, port, family, type, proto, flags)
    751     addrlist = []
--&gt; 752     for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
    753         af, socktype, proto, canonname, sa = res

gaierror: [Errno -3] Temporary failure in name resolution

During handling of the above exception, another exception occurred:

URLError                                  Traceback (most recent call last)
&lt;ipython-input-47-bfd4a803a437&gt; in &lt;module&gt;
      3 
      4 # load a model pre-trained pre-trained on COCO
----&gt; 5 model = torchvision.models.detection.fasterrcnn_resnet50_fpn(pretrained=True)
      6 
      7 # replace the classifier with a new one, that has

/opt/conda/lib/python3.7/site-packages/torchvision/models/detection/faster_rcnn.py in fasterrcnn_resnet50_fpn(pretrained, progress, num_classes, pretrained_backbone, trainable_backbone_layers, **kwargs)
    360     if pretrained:
    361         state_dict = load_state_dict_from_url(model_urls['fasterrcnn_resnet50_fpn_coco'],
--&gt; 362                                               progress=progress)
    363         model.load_state_dict(state_dict)
    364     return model

/opt/conda/lib/python3.7/site-packages/torch/hub.py in load_state_dict_from_url(url, model_dir, map_location, progress, check_hash, file_name)
    553             r = HASH_REGEX.search(filename)  # r is Optional[Match[str]]
    554             hash_prefix = r.group(1) if r else None
--&gt; 555         download_url_to_file(url, cached_file, hash_prefix, progress=progress)
    556 
    557     if _is_legacy_zip_format(cached_file):

/opt/conda/lib/python3.7/site-packages/torch/hub.py in download_url_to_file(url, dst, hash_prefix, progress)
    423     # certificates in older Python
    424     req = Request(url, headers={"User-Agent": "torch.hub"})
--&gt; 425     u = urlopen(req)
    426     meta = u.info()
    427     if hasattr(meta, 'getheaders'):

/opt/conda/lib/python3.7/urllib/request.py in urlopen(url, data, timeout, cafile, capath, cadefault, context)
    220     else:
    221         opener = _opener
--&gt; 222     return opener.open(url, data, timeout)
    223 
    224 def install_opener(opener):

/opt/conda/lib/python3.7/urllib/request.py in open(self, fullurl, data, timeout)
    523             req = meth(req)
    524 
--&gt; 525         response = self._open(req, data)
    526 
    527         # post-process response

/opt/conda/lib/python3.7/urllib/request.py in _open(self, req, data)
    541         protocol = req.type
    542         result = self._call_chain(self.handle_open, protocol, protocol +
--&gt; 543                                   '_open', req)
    544         if result:
    545             return result

/opt/conda/lib/python3.7/urllib/request.py in _call_chain(self, chain, kind, meth_name, *args)
    501         for handler in handlers:
    502             func = getattr(handler, meth_name)
--&gt; 503             result = func(*args)
    504             if result is not None:
    505                 return result

/opt/conda/lib/python3.7/urllib/request.py in https_open(self, req)
   1391         def https_open(self, req):
   1392             return self.do_open(http.client.HTTPSConnection, req,
-&gt; 1393                 context=self._context, check_hostname=self._check_hostname)
   1394 
   1395         https_request = AbstractHTTPHandler.do_request_

/opt/conda/lib/python3.7/urllib/request.py in do_open(self, http_class, req, **http_conn_args)
   1350                           encode_chunked=req.has_header('Transfer-encoding'))
   1351             except OSError as err: # timeout error
-&gt; 1352                 raise URLError(err)
   1353             r = h.getresponse()
   1354         except:

URLError: &lt;urlopen error [Errno -3] Temporary failure in name resolution&gt;

</code></pre>

ptrblck: <p>The error indicates that the download failed due to an issue in the name resolution.<br>
I’ve just re-downloaded the pretrained model and cannot reproduce the issue so could you just rerun the code and check, if it was just a temporal issue?</p>

Crophone: <p>I use this line of code in kaggle competition, I  have tried several times re-downloaded the pretrained model, but still get the same error message.Here is my kaggle <a href="https://www.kaggle.com/crophone/covid19" rel="noopener nofollow ugc">notebook</a> where the code is in.<br>
ps: maybe you can run this notebook to reproduce the issue, most of the code is copied from other notebooks.</p>

Crophone: <p>Maybe there is something wrong with my notebook or some constrains with kaggle notebook, but I can’t figure out why. And even though I try the code in a new notebook, I still wouldn’t make it work.</p>

Crophone: <p>Oh, I find the reason why it happened, I turned off the internet option in settings of the notebook, it should be turned on.</p>