質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.59%
Google Colaboratory

Google Colaboratoryとは、無償のJupyterノートブック環境。教育や研究機関の機械学習の普及のためのGoogleの研究プロジェクトです。PythonやNumpyといった機械学習で要する大方の環境がすでに構築されており、コードの記述・実行、解析の保存・共有などが可能です。

PyTorch

PyTorchは、オープンソースのPython向けの機械学習ライブラリ。Facebookの人工知能研究グループが開発を主導しています。強力なGPUサポートを備えたテンソル計算、テープベースの自動微分による柔軟なニューラルネットワークの記述が可能です。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

14761閲覧

Google Colaboratory でFileNotFoundErrorが出る。

yama_kazu

総合スコア5

Google Colaboratory

Google Colaboratoryとは、無償のJupyterノートブック環境。教育や研究機関の機械学習の普及のためのGoogleの研究プロジェクトです。PythonやNumpyといった機械学習で要する大方の環境がすでに構築されており、コードの記述・実行、解析の保存・共有などが可能です。

PyTorch

PyTorchは、オープンソースのPython向けの機械学習ライブラリ。Facebookの人工知能研究グループが開発を主導しています。強力なGPUサポートを備えたテンソル計算、テープベースの自動微分による柔軟なニューラルネットワークの記述が可能です。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2019/11/20 03:19

前提・実現したいこと

GPUを使いたいので、Google Colaboratoryを使って、PyTorchを動かして、Transformerの訓練を行います。
Torchtextで、辞書オブジェクトにまとめます。

発生している問題・エラーメッセージ

FileNotFoundError Traceback (most recent call last) <ipython-input-18-fa41015bca5e> in <module>() 1 train_dl, val_dl, TEXT = get_csv2_torch( ----> 2 max_length=256, batch_size=24) 3 4 # 辞書オブジェクトにまとめる 5 dataloaders_dict = {"train": train_dl, "val": val_dl} 1 frames /usr/local/lib/python3.6/dist-packages/torchtext/data/dataset.py in __init__(self, path, format, fields, skip_header, csv_reader_params, **kwargs) 249 'tsv': Example.fromCSV, 'csv': Example.fromCSV}[format] 250 --> 251 with io.open(os.path.expanduser(path), encoding="utf8") as f: 252 if format == 'csv': 253 reader = unicode_csv_reader(f, **csv_reader_params) FileNotFoundError: [Errno 2] No such file or directory: 'centiment_ch-ABSA_two2.csv'

該当のソースコード

Python

1(final.ipynb) 2import pandas as pd 3import numpy as np 4import urllib.request 5import torchtext 6import math 7import random 8import torch 9import torch.nn as nn 10from torchtext.vocab import Vectors 11from janome.tokenizer import Tokenizer 12import torch.nn.functional as F 13import torch.optim as optim 14 15def get_csv2_torch(max_length=256, batch_size=24): 16 j_t = Tokenizer() 17 18 def tokenizer_janome(text): 19 return [tok for tok in j_t.tokenize(text, wakati=True)] 20 21 def tokenizer_with_preprocessing(text): 22 ret = tokenizer_janome(text) # Janomeの単語分割 23 return ret 24 25 TEXT = torchtext.data.Field(sequential=True, tokenize=tokenizer_with_preprocessing, 26 use_vocab=True, lower=True, include_lengths=True, batch_first=True, fix_length=max_length,init_token="<cls>", eos_token="<eos>") 27 LABEL = torchtext.data.Field(sequential=False, use_vocab=False) 28 #LABEL2= torchtext.data.Field(sequential=False, use_vocab=False) 29 #LABEL3= torchtext.data.Field(sequential=False, use_vocab=False) 30 31 train_val_ds2= torchtext.data.TabularDataset( 32 path='centiment_ch-ABSA_two2.csv', 33 format='csv', 34 fields=[('Text', TEXT),('Label', LABEL) ], skip_header=True) 35 train_ds, val_ds = train_val_ds2.split(split_ratio= 0.8, random_state=random.seed(1234)) 36 37 japanese_fastText_vectors = Vectors(name='model.vec') 38 39 TEXT.build_vocab(train_ds, vectors=japanese_fastText_vectors, min_freq=10) 40 41 train_dl = torchtext.data.Iterator(train_ds, batch_size=24, train=True) 42 val_dl = torchtext.data.Iterator(val_ds, batch_size=24, train=False, sort=False) 43 44 return train_dl, val_dl, TEXT 45 46torch.manual_seed(1234) 47np.random.seed(1234) 48random.seed(1234) 49 50# 読み込み 51train_dl, val_dl, TEXT = get_csv2_torch( 52 max_length=256, batch_size=24) 53 54# 辞書オブジェクトにまとめる 55dataloaders_dict = {"train": train_dl, "val": val_dl}

試したこと

パスが通っているのか確かめてみました。

python

1from google.colab import drive 2drive.mount('/content/drive/')

python

1!ls "/content/drive/My Drive/Colab Notebooks/"

結果は、
centiment_ch-ABSA_two2.csv test.ipynb
'Colaboratory へようこそ のコピー' 'Transformer (1).py'
csv.py Transformer.py
final.ipynb vector_neologd
pycache
read_csv.py

となり、ファイルのところに置かれています。

補足情報(FW/ツールのバージョンなど)

パスはちゃんと通っていると思うのです、何が原因で上手くいかないのでしょうか。
よろしくお願いいたします。
Windows8.1を使っています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

また依頼した内容が修正された場合は、修正依頼を取り消すようにしましょう。

guest

回答1

1

ベストアンサー

カレントディレクトリが別の場所になっているのかもしれません。os.getcwd()で確認してみてください。
別の場所にいるようだったらos.chdir()で移動すれば解決できるのではないでしょうか。

投稿2019/11/20 05:10

mistn

総合スコア1191

yama_kazu👍を押しています

下記のような回答は推奨されていません。

  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

また依頼した内容が修正された場合は、修正依頼を取り消すようにしましょう。

回答へのコメント

yama_kazu

2019/11/20 07:16

import os path = os.getcwd() print(path) で動かしてみたら、 /content のみが出てきました。
fiveHundred

2019/11/20 07:29

> 別の場所にいるようだったらos.chdir()で移動すれば解決できるのではないでしょうか。 と思いっきり書いているのに、なんでそれに従わないのでしょうか?
yama_kazu

2019/11/20 08:09

ただ今、それに従って実行中です。
yama_kazu

2019/11/20 08:44

os.chdir('/content/drive/My Drive/Colab Notebooks') print(os.getcwd()) で動かしてみたのですが、 FileNotFoundError Traceback (most recent call last) <ipython-input-15-b044b535144c> in <module>() ----> 1 os.chdir('/content/drive/My Drive/Colab Notebooks') 2 print(os.getcwd()) FileNotFoundError: [Errno 2] No such file or directory: '/content/drive/My Drive/Colab Notebooks' が出てしまいました。もう少し、調べてみたいと思います。
mistn

2019/11/20 09:18

ドライブを再マウントしたらどうですか?
yama_kazu

2019/11/20 10:13

家のPCからアクセスした結果、最初にいただいた回答でエラーが消えました。 2つ目のやり方もありがとうございます。どちらも参考にいたします。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.59%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

同じタグがついた質問を見る

Google Colaboratory

Google Colaboratoryとは、無償のJupyterノートブック環境。教育や研究機関の機械学習の普及のためのGoogleの研究プロジェクトです。PythonやNumpyといった機械学習で要する大方の環境がすでに構築されており、コードの記述・実行、解析の保存・共有などが可能です。

PyTorch

PyTorchは、オープンソースのPython向けの機械学習ライブラリ。Facebookの人工知能研究グループが開発を主導しています。強力なGPUサポートを備えたテンソル計算、テープベースの自動微分による柔軟なニューラルネットワークの記述が可能です。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。