🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Python

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

Q&A

解決済

1回答

14181閲覧

tensorflow版cycleganでエラーが出て困っています

RyotaYamada

総合スコア6

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Python

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

1グッド

0クリップ

投稿2019/10/17 09:58

前提・実現したいこと

pythonで、tensorflow版Cycleganを用いて声質変換を行うAIを作っているのですが、以下のようなエラーが出て困っています。

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

2019-10-17 18:12:10.651625: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudart64_100.dll Traceback (most recent call last): File "main.py", line 4, in <module> tf.set_random_seed(19) AttributeError: module 'tensorflow' has no attribute 'set_random_seed'

該当のソースコード

python

1import argparse 2import os 3import tensorflow as tf 4tf.set_random_seed(19) 5from model import cyclegan 6 7parser = argparse.ArgumentParser(description='') 8parser.add_argument('--dataset_dir', dest='dataset_dir', default='horse2zebra', help='path of the dataset') 9parser.add_argument('--epoch', dest='epoch', type=int, default=200, help='# of epoch') 10parser.add_argument('--epoch_step', dest='epoch_step', type=int, default=100, help='# of epoch to decay lr') 11parser.add_argument('--batch_size', dest='batch_size', type=int, default=1, help='# images in batch') 12parser.add_argument('--train_size', dest='train_size', type=int, default=1e8, help='# images used to train') 13parser.add_argument('--load_size', dest='load_size', type=int, default=286, help='scale images to this size') 14parser.add_argument('--fine_size', dest='fine_size', type=int, default=256, help='then crop to this size') 15parser.add_argument('--ngf', dest='ngf', type=int, default=64, help='# of gen filters in first conv layer') 16parser.add_argument('--ndf', dest='ndf', type=int, default=64, help='# of discri filters in first conv layer') 17parser.add_argument('--input_nc', dest='input_nc', type=int, default=3, help='# of input image channels') 18parser.add_argument('--output_nc', dest='output_nc', type=int, default=3, help='# of output image channels') 19parser.add_argument('--lr', dest='lr', type=float, default=0.0002, help='initial learning rate for adam') 20parser.add_argument('--beta1', dest='beta1', type=float, default=0.5, help='momentum term of adam') 21parser.add_argument('--which_direction', dest='which_direction', default='AtoB', help='AtoB or BtoA') 22parser.add_argument('--phase', dest='phase', default='train', help='train, test') 23parser.add_argument('--save_freq', dest='save_freq', type=int, default=1000, help='save a model every save_freq iterations') 24parser.add_argument('--print_freq', dest='print_freq', type=int, default=100, help='print the debug information every print_freq iterations') 25parser.add_argument('--continue_train', dest='continue_train', type=bool, default=False, help='if continue training, load the latest model: 1: true, 0: false') 26parser.add_argument('--checkpoint_dir', dest='checkpoint_dir', default='./checkpoint', help='models are saved here') 27parser.add_argument('--sample_dir', dest='sample_dir', default='./sample', help='sample are saved here') 28parser.add_argument('--test_dir', dest='test_dir', default='./test', help='test sample are saved here') 29parser.add_argument('--L1_lambda', dest='L1_lambda', type=float, default=10.0, help='weight on L1 term in objective') 30parser.add_argument('--use_resnet', dest='use_resnet', type=bool, default=True, help='generation network using reidule block') 31parser.add_argument('--use_lsgan', dest='use_lsgan', type=bool, default=True, help='gan loss defined in lsgan') 32parser.add_argument('--max_size', dest='max_size', type=int, default=50, help='max size of image pool, 0 means do not use image pool') 33 34args = parser.parse_args() 35 36 37def main(_): 38 if not os.path.exists(args.checkpoint_dir): 39 os.makedirs(args.checkpoint_dir) 40 if not os.path.exists(args.sample_dir): 41 os.makedirs(args.sample_dir) 42 if not os.path.exists(args.test_dir): 43 os.makedirs(args.test_dir) 44 45 tfconfig = tf.ConfigProto(allow_soft_placement=True) 46 tfconfig.gpu_options.allow_growth = True 47 with tf.Session(config=tfconfig) as sess: 48 model = cyclegan(sess, args) 49 model.train(args) if args.phase == 'train' \ 50 else model.test(args) 51 52if __name__ == '__main__': 53 tf.app.run() 54

試したこと

恐らく、set_random_seedという関数が見つからないということだと思うのですが、具体的にどこをどう直せば良いのかが分かりません。

補足情報

tensorflowのバージョンは1.14.0です

ryuii👍を押しています

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ryuii

2019/10/17 16:51

Python3.7・tensorflow 1.40.1で、以下のコードを実行したところ正常に動作しました。 import tensorflow as tf tf.set_random_seed(19) tensorflow2以降では、tf.set_random_seedは名前が変わっているようです。print(tf.__version__)とPythonスクリプトを起動して、バージョンは1.40.1になっておりますでしょうか。
RyotaYamada

2019/10/18 07:20

申し訳ありません。確認してみたところ、tensorflowのバージョンは2.0.0でした。
ryuii

2019/10/18 07:26

回答に返信を書いておきました。
guest

回答1

0

ベストアンサー

tensorflowのバージョンを確認してみてください。

tf.set_random_seedはtensorflow2.0以降は、
tf.random.set_seed(seed)に変わりました。

以下のコードでtensorflowのバージョンを確認してみてください。

python

1import tensorflow as tf 2print(tf.__version__)

pip installで1.14.0をインストールするときは、以下のコマンドを入力します。numpyなど依存パッケージがあるので、バージョンを合わせてください。

pip install tensorflow==1.14.0

投稿2019/10/18 07:26

ryuii

総合スコア438

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

RyotaYamada

2019/10/18 08:35 編集

お忙しい中、本当にありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問