«Нет такого файла» при загрузке данных CSV, хранящихся на диске G, в формат torchtext с использованием torchtext.data.TabularDataset, - PullRequest
0 голосов
/ 06 апреля 2020

Я сохранил CSV-файл на диске G и попытался загрузить его в данные torchtext.TabularDataset. Сообщение об ошибке: "FileNotFoundError: [Errno 2] Нет такого файла или каталога: 'https://.....'"

Невозможно загрузить файл csv с диска g напрямую в torchtext TabularDataset?

Вот код. Я также сделал ноутбук c colab с общедоступными данными.

import torch
from torchtext import data, datasets

!pip install -U -q PyDrive
from pydrive.auth import GoogleAuth
from pydrive.drive import GoogleDrive
from google.colab import auth
from oauth2client.client import GoogleCredentials

auth.authenticate_user()
gauth = GoogleAuth()
gauth.credentials = GoogleCredentials.get_application_default()
drive = GoogleDrive(gauth)

TEXT = data.Field(tokenize = 'spacy', batch_first = True, lower=False)  
LABEL = data.LabelField(sequential=False, dtype = torch.float) 

train = data.TabularDataset(path = 'https://drive.google.com/open?id=1eWMjusU3H34m0uml5SdJvYX6gQuB8zta', 
                            format = 'csv', 
                            fields = [('Insult', LABEL), (None, None), ('Comment', TEXT)], 
                            skip_header=False)

1 Ответ

0 голосов
/ 07 апреля 2020

Предположим, вы можете позволить себе скачать этот CSV-файл. Я бы посоветовал вам использовать функционально встроенный в torchtext: download_from_url.

import os
import torch
from torchtext import data, datasets
from torchtext.utils import download_from_url

# download the file
CSV_FILENAME = 'data.csv'
CSV_GDRIVE_URL = 'https://drive.google.com/uc?export=download&id=1eWMjusU3H34m0uml5SdJvYX6gQuB8zta'
download_from_url(CSV_GDRIVE_URL, CSV_FILENAME)

TEXT = data.Field(tokenize = 'spacy', batch_first = True, lower=False)  #from torchtext import data
LABEL = data.LabelField(sequential=False, dtype = torch.float) 

# if you're on Colab, you'll need this /content
train = data.TabularDataset(path=os.path.join('/content', CSV_FILENAME),
                            format='csv',
                            fields = [('Insult', LABEL), (None, None), ('Comment', TEXT)],
                            skip_header=False )

Обратите внимание, что ссылка на Google Диске не должна быть ссылкой с open?id, но измените ее на uc?export=download&id .

...