আমি ওপেনএআই জিমের একটি গেমের জন্য একটি ডিকিউএল মডেল বাস্তবায়নের চেষ্টা করছি। কিন্তু এটি আমাকে নিম্নলিখিত ত্রুটি দিচ্ছে।
প্রকারের ত্রুটি: প্রতীকী টেনসারগুলির জন্য লেন ভালভাবে সংজ্ঞায়িত হয় না। (অ্যাক্টিভেশন 14 / পরিচয়: 0) আকৃতির তথ্যের
x.shape
চেয়ে কলlen(x)
করুন।
একটি জিম পরিবেশ তৈরি করা:
ENV_NAME = 'CartPole-v0'
env = gym.make(ENV_NAME)
np.random.seed(123)
env.seed(123)
nb_actions = env.action_space.n
আমার মডেলটি এমন দেখাচ্ছে:
model = Sequential()
model.add(Flatten(input_shape=(1,) + env.observation_space.shape))
model.add(Dense(16))
model.add(Activation('relu'))
model.add(Dense(nb_actions))
model.add(Activation('linear'))
print(model.summary())
নিম্নলিখিত হিসাবে কেরাল-আরএল থেকে ডিকিউএন মডেলটিতে সেই মডেলটিকে ফিট করা:
policy = EpsGreedyQPolicy()
memory = SequentialMemory(limit=50000, window_length=1)
dqn = DQNAgent(model=model, nb_actions=nb_actions, memory=memory, nb_steps_warmup=10, target_model_update=0.001, policy=policy)
dqn.compile(Adam(lr=1e-3), metrics=['mse', 'mae'])
dqn.fit(env, nb_steps=5000, visualize=False, verbose=3)
ত্রুটিটি এই লাইন থেকে:
dqn = DQNAgent(model=model, nb_actions=nb_actions, memory=memory, nb_steps_warmup=10, target_model_update=0.001, policy=policy)
আমি কেরাস-আরএল == 0.4.2 এবং টেনসরফ্লো == 2.1.0 ব্যবহার করছি। অন্যান্য উত্তরের উপর ভিত্তি করে, আমি টেনসরফ্লো == 2.0.0-বিটা0 চেষ্টা করেও এটি ত্রুটিটি সমাধান করে না।
কেউ দয়া করে আমাকে ব্যাখ্যা করতে পারেন যে আমি কেন এই ত্রুটির মুখোমুখি? এবং কিভাবে এটি সমাধান?
ধন্যবাদ.
env
আরএল মডেল প্রশিক্ষণের জন্য একটি জিম গেমের পরিবেশ। len
টেনসরফ্লো লাইব্রেরিতে কোথাও জায়গা নিচ্ছে। আমি আরও তথ্যের জন্য প্রশ্ন আপডেট করেছি।
env
? কোথায় হচ্ছেlen
? নাকি এটি কলব্যাকের অংশ?