Python tensorflow.keras.layers.Dense() Examples
The following are 30
code examples of tensorflow.keras.layers.Dense().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
tensorflow.keras.layers
, or try the search function
.
Example #1
Source File: test_continuous.py From keras-rl2 with MIT License | 6 votes |
def test_ddpg(): # TODO: replace this with a simpler environment where we can actually test if it finds a solution env = gym.make('Pendulum-v0') np.random.seed(123) env.seed(123) random.seed(123) nb_actions = env.action_space.shape[0] actor = Sequential() actor.add(Flatten(input_shape=(1,) + env.observation_space.shape)) actor.add(Dense(16)) actor.add(Activation('relu')) actor.add(Dense(nb_actions)) actor.add(Activation('linear')) action_input = Input(shape=(nb_actions,), name='action_input') observation_input = Input(shape=(1,) + env.observation_space.shape, name='observation_input') flattened_observation = Flatten()(observation_input) x = Concatenate()([action_input, flattened_observation]) x = Dense(16)(x) x = Activation('relu')(x) x = Dense(1)(x) x = Activation('linear')(x) critic = Model(inputs=[action_input, observation_input], outputs=x) memory = SequentialMemory(limit=1000, window_length=1) random_process = OrnsteinUhlenbeckProcess(theta=.15, mu=0., sigma=.3) agent = DDPGAgent(nb_actions=nb_actions, actor=actor, critic=critic, critic_action_input=action_input, memory=memory, nb_steps_warmup_critic=50, nb_steps_warmup_actor=50, random_process=random_process, gamma=.99, target_model_update=1e-3) agent.compile([Adam(lr=1e-3), Adam(lr=1e-3)]) agent.fit(env, nb_steps=400, visualize=False, verbose=0, nb_max_episode_steps=100) h = agent.test(env, nb_episodes=2, visualize=False, nb_max_episode_steps=100) # TODO: evaluate history
Example #2
Source File: sageconv.py From dgl with Apache License 2.0 | 6 votes |
def __init__(self, in_feats, out_feats, aggregator_type, feat_drop=0., bias=True, norm=None, activation=None): super(SAGEConv, self).__init__() self._in_src_feats, self._in_dst_feats = expand_as_pair(in_feats) self._out_feats = out_feats self._aggre_type = aggregator_type self.norm = norm self.feat_drop = layers.Dropout(feat_drop) self.activation = activation # aggregator type: mean/pool/lstm/gcn if aggregator_type == 'pool': self.fc_pool = layers.Dense(self._in_src_feats) if aggregator_type == 'lstm': self.lstm = layers.LSTM(units=self._in_src_feats) if aggregator_type != 'gcn': self.fc_self = layers.Dense(out_feats, use_bias=bias) self.fc_neigh = layers.Dense(out_feats, use_bias=bias)
Example #3
Source File: atari_model.py From tf2rl with MIT License | 6 votes |
def __init__(self, state_shape, action_dim, units=None, name="AtariCategoricalActorCritic"): tf.keras.Model.__init__(self, name=name) self.dist = Categorical(dim=action_dim) self.action_dim = action_dim self.conv1 = Conv2D(32, kernel_size=(8, 8), strides=(4, 4), padding='valid', activation='relu') self.conv2 = Conv2D(64, kernel_size=(4, 4), strides=(2, 2), padding='valid', activation='relu') self.conv3 = Conv2D(64, kernel_size=(3, 3), strides=(1, 1), padding='valid', activation='relu') self.flat = Flatten() self.fc1 = Dense(512, activation='relu') self.prob = Dense(action_dim, activation='softmax') self.v = Dense(1, activation="linear") self(tf.constant( np.zeros(shape=(1,)+state_shape, dtype=np.float32)))
Example #4
Source File: test_nn.py From dgl with Apache License 2.0 | 6 votes |
def test_gin_conv(aggregator_type): g = dgl.DGLGraph(sp.sparse.random(100, 100, density=0.1), readonly=True) gin = nn.GINConv( tf.keras.layers.Dense(12), aggregator_type ) feat = F.randn((100, 5)) gin = gin h = gin(g, feat) assert h.shape == (100, 12) g = dgl.bipartite(sp.sparse.random(100, 200, density=0.1)) gin = nn.GINConv( tf.keras.layers.Dense(12), aggregator_type ) feat = (F.randn((100, 5)), F.randn((200, 5))) h = gin(g, feat) assert h.shape == (200, 12)
Example #5
Source File: global_pool.py From spektral with MIT License | 6 votes |
def build(self, input_shape): super().build(input_shape) layer_kwargs = dict( kernel_initializer=self.kernel_initializer, bias_initializer=self.bias_initializer, kernel_regularizer=self.kernel_regularizer, bias_regularizer=self.bias_regularizer, kernel_constraint=self.kernel_constraint, bias_constraint=self.bias_constraint ) self.features_layer = Dense(self.channels, name='features_layer', **layer_kwargs) self.attention_layer = Dense(self.channels, activation='sigmoid', name='attn_layer', **layer_kwargs) self.built = True
Example #6
Source File: edge_conv.py From spektral with MIT License | 6 votes |
def build(self, input_shape): assert len(input_shape) >= 2 layer_kwargs = dict( kernel_initializer=self.kernel_initializer, bias_initializer=self.bias_initializer, kernel_regularizer=self.kernel_regularizer, bias_regularizer=self.bias_regularizer, kernel_constraint=self.kernel_constraint, bias_constraint=self.bias_constraint ) self.mlp = Sequential([ Dense(channels, self.mlp_activation, **layer_kwargs) for channels in self.mlp_hidden ] + [Dense(self.channels, self.activation, use_bias=self.use_bias, **layer_kwargs)]) self.built = True
Example #7
Source File: atari_model.py From tf2rl with MIT License | 6 votes |
def __init__(self, state_shape, action_dim, units=None, name="QFunc", enable_dueling_dqn=False, enable_noisy_dqn=False, enable_categorical_dqn=False, n_atoms=51): self._enable_dueling_dqn = enable_dueling_dqn self._enable_noisy_dqn = enable_noisy_dqn self._enable_categorical_dqn = enable_categorical_dqn if enable_categorical_dqn: self._action_dim = action_dim self._n_atoms = n_atoms action_dim = (action_dim + int(enable_dueling_dqn)) * n_atoms # Build base layers super().__init__(name, enable_noisy_dqn) DenseLayer = NoisyDense if enable_noisy_dqn else Dense self.fc2 = DenseLayer(action_dim, activation='linear') if self._enable_dueling_dqn and not enable_categorical_dqn: self.fc3 = DenseLayer(1, activation='linear') input_shape = (1,) + state_shape with tf.device("/cpu:0"): self(inputs=tf.constant(np.zeros(shape=input_shape, dtype=np.float32)))
Example #8
Source File: test_dqn.py From keras-rl2 with MIT License | 6 votes |
def test_single_continuous_dqn_input(): nb_actions = 2 V_model = Sequential() V_model.add(Flatten(input_shape=(2, 3))) V_model.add(Dense(1)) mu_model = Sequential() mu_model.add(Flatten(input_shape=(2, 3))) mu_model.add(Dense(nb_actions)) L_input = Input(shape=(2, 3)) L_input_action = Input(shape=(nb_actions,)) x = Concatenate()([Flatten()(L_input), L_input_action]) x = Dense(((nb_actions * nb_actions + nb_actions) // 2))(x) L_model = Model(inputs=[L_input_action, L_input], outputs=x) memory = SequentialMemory(limit=10, window_length=2) agent = NAFAgent(nb_actions=nb_actions, V_model=V_model, L_model=L_model, mu_model=mu_model, memory=memory, nb_steps_warmup=5, batch_size=4) agent.compile('sgd') agent.fit(MultiInputTestEnv((3,)), nb_steps=10)
Example #9
Source File: seqtoseq.py From deepchem with MIT License | 6 votes |
def _create_encoder(self, n_layers, dropout): """Create the encoder as a tf.keras.Model.""" input = self._create_features() gather_indices = Input(shape=(2,), dtype=tf.int32) prev_layer = input for i in range(len(self._filter_sizes)): filter_size = self._filter_sizes[i] kernel_size = self._kernel_sizes[i] if dropout > 0.0: prev_layer = Dropout(rate=dropout)(prev_layer) prev_layer = Conv1D( filters=filter_size, kernel_size=kernel_size, activation=tf.nn.relu)(prev_layer) prev_layer = Flatten()(prev_layer) prev_layer = Dense( self._decoder_dimension, activation=tf.nn.relu)(prev_layer) prev_layer = BatchNormalization()(prev_layer) return tf.keras.Model(inputs=[input, gather_indices], outputs=prev_layer)
Example #10
Source File: model.py From cloudml-samples with Apache License 2.0 | 6 votes |
def keras_estimator(model_dir, config, learning_rate, vocab_size): """Creates a Keras Sequential model with layers. Args: model_dir: (str) file path where training files will be written. config: (tf.estimator.RunConfig) Configuration options to save model. learning_rate: (int) Learning rate. vocab_size: (int) Size of the vocabulary in number of words. Returns: A keras.Model """ model = models.Sequential() model.add(Embedding(vocab_size, 16)) model.add(GlobalAveragePooling1D()) model.add(Dense(16, activation=tf.nn.relu)) model.add(Dense(1, activation=tf.nn.sigmoid)) # Compile model with learning parameters. optimizer = tf.train.AdamOptimizer(learning_rate=learning_rate) model.compile( optimizer=optimizer, loss='binary_crossentropy', metrics=['accuracy']) estimator = tf.keras.estimator.model_to_estimator( keras_model=model, model_dir=model_dir, config=config) return estimator
Example #11
Source File: test_discrete.py From keras-rl2 with MIT License | 6 votes |
def test_dqn(): env = TwoRoundDeterministicRewardEnv() np.random.seed(123) env.seed(123) random.seed(123) nb_actions = env.action_space.n # Next, we build a very simple model. model = Sequential() model.add(Dense(16, input_shape=(1,))) model.add(Activation('relu')) model.add(Dense(nb_actions)) model.add(Activation('linear')) memory = SequentialMemory(limit=1000, window_length=1) policy = EpsGreedyQPolicy(eps=.1) dqn = DQNAgent(model=model, nb_actions=nb_actions, memory=memory, nb_steps_warmup=50, target_model_update=1e-1, policy=policy, enable_double_dqn=False) dqn.compile(Adam(lr=1e-3)) dqn.fit(env, nb_steps=2000, visualize=False, verbose=0) policy.eps = 0. h = dqn.test(env, nb_episodes=20, visualize=False) assert_allclose(np.mean(h.history['episode_reward']), 3.)
Example #12
Source File: test_discrete.py From keras-rl2 with MIT License | 6 votes |
def test_double_dqn(): env = TwoRoundDeterministicRewardEnv() np.random.seed(123) env.seed(123) random.seed(123) nb_actions = env.action_space.n # Next, we build a very simple model. model = Sequential() model.add(Dense(16, input_shape=(1,))) model.add(Activation('relu')) model.add(Dense(nb_actions)) model.add(Activation('linear')) memory = SequentialMemory(limit=1000, window_length=1) policy = EpsGreedyQPolicy(eps=.1) dqn = DQNAgent(model=model, nb_actions=nb_actions, memory=memory, nb_steps_warmup=50, target_model_update=1e-1, policy=policy, enable_double_dqn=True) dqn.compile(Adam(lr=1e-3)) dqn.fit(env, nb_steps=2000, visualize=False, verbose=0) policy.eps = 0. h = dqn.test(env, nb_episodes=20, visualize=False) assert_allclose(np.mean(h.history['episode_reward']), 3.)
Example #13
Source File: test_generator_evaluator.py From deepchem with MIT License | 6 votes |
def test_compute_model_performance_multitask_classifier(self): n_data_points = 20 n_features = 1 n_tasks = 2 n_classes = 2 X = np.ones(shape=(n_data_points // 2, n_features)) * -1 X1 = np.ones(shape=(n_data_points // 2, n_features)) X = np.concatenate((X, X1)) class_1 = np.array([[0.0, 1.0] for x in range(int(n_data_points / 2))]) class_0 = np.array([[1.0, 0.0] for x in range(int(n_data_points / 2))]) y1 = np.concatenate((class_0, class_1)) y2 = np.concatenate((class_1, class_0)) y = np.stack([y1, y2], axis=1) dataset = NumpyDataset(X, y) features = layers.Input(shape=(n_data_points // 2, n_features)) dense = layers.Dense(n_tasks * n_classes)(features) logits = layers.Reshape((n_tasks, n_classes))(dense) output = layers.Softmax()(logits) keras_model = tf.keras.Model(inputs=features, outputs=[output, logits]) model = dc.models.KerasModel( keras_model, dc.models.losses.SoftmaxCrossEntropy(), output_types=['prediction', 'loss'], learning_rate=0.01, batch_size=n_data_points) model.fit(dataset, nb_epoch=1000) metric = dc.metrics.Metric( dc.metrics.roc_auc_score, np.mean, mode="classification") scores = model.evaluate_generator( model.default_generator(dataset), [metric], per_task_metrics=True) scores = list(scores[1].values()) # Loosening atol to see if tests stop failing sporadically assert np.all(np.isclose(scores, [1.0, 1.0], atol=0.50))
Example #14
Source File: test_discrete.py From keras-rl2 with MIT License | 6 votes |
def test_cem(): env = TwoRoundDeterministicRewardEnv() np.random.seed(123) env.seed(123) random.seed(123) nb_actions = env.action_space.n # Next, we build a very simple model. model = Sequential() model.add(Dense(16, input_shape=(1,))) model.add(Activation('relu')) model.add(Dense(nb_actions)) model.add(Activation('linear')) memory = EpisodeParameterMemory(limit=1000, window_length=1) dqn = CEMAgent(model=model, nb_actions=nb_actions, memory=memory) dqn.compile() dqn.fit(env, nb_steps=2000, visualize=False, verbose=1) h = dqn.test(env, nb_episodes=20, visualize=False) assert_allclose(np.mean(h.history['episode_reward']), 3.)
Example #15
Source File: keras_model.py From code2vec with MIT License | 6 votes |
def _get_vocab_embedding_as_np_array(self, vocab_type: VocabType) -> np.ndarray: assert vocab_type in VocabType vocab_type_to_embedding_layer_mapping = { VocabType.Target: 'target_index', VocabType.Token: 'token_embedding', VocabType.Path: 'path_embedding' } embedding_layer_name = vocab_type_to_embedding_layer_mapping[vocab_type] weight = np.array(self.keras_train_model.get_layer(embedding_layer_name).get_weights()[0]) assert len(weight.shape) == 2 # token, path have an actual `Embedding` layers, but target have just a `Dense` layer. # hence, transpose the weight when necessary. assert self.vocabs.get(vocab_type).size in weight.shape if self.vocabs.get(vocab_type).size != weight.shape[0]: weight = np.transpose(weight) return weight
Example #16
Source File: test_discrete.py From keras-rl2 with MIT License | 6 votes |
def test_duel_dqn(): env = TwoRoundDeterministicRewardEnv() np.random.seed(123) env.seed(123) random.seed(123) nb_actions = env.action_space.n # Next, we build a very simple model. model = Sequential() model.add(Dense(16, input_shape=(1,))) model.add(Activation('relu')) model.add(Dense(nb_actions, activation='linear')) memory = SequentialMemory(limit=1000, window_length=1) policy = EpsGreedyQPolicy(eps=.1) dqn = DQNAgent(model=model, nb_actions=nb_actions, memory=memory, nb_steps_warmup=50, target_model_update=1e-1, policy=policy, enable_double_dqn=False, enable_dueling_network=True) dqn.compile(Adam(lr=1e-3)) dqn.fit(env, nb_steps=2000, visualize=False, verbose=0) policy.eps = 0. h = dqn.test(env, nb_episodes=20, visualize=False) assert_allclose(np.mean(h.history['episode_reward']), 3.)
Example #17
Source File: utils.py From CVPR2019-DeepTreeLearningForZeroShotFaceAntispoofing with MIT License | 6 votes |
def __init__(self, filters, size=3, apply_batchnorm=True): super(SFL, self).__init__() self.apply_batchnorm = apply_batchnorm # depth map self.cru1 = CRU(filters, size, stride=1) self.conv1 = Conv(2, size, activation=False, apply_batchnorm=False) # class self.conv2 = Downsample(filters*1, size) self.conv3 = Downsample(filters*1, size) self.conv4 = Downsample(filters*2, size) self.conv5 = Downsample(filters*4, 4, padding='VALID') self.flatten = layers.Flatten() self.fc1 = Dense(256) self.fc2 = Dense(1, activation=False, apply_batchnorm=False) self.dropout = tf.keras.layers.Dropout(0.3)
Example #18
Source File: common_utils.py From interpret-text with MIT License | 6 votes |
def create_keras_multiclass_classifier(X, y): batch_size = 128 epochs = 12 num_classes = len(np.unique(y)) model = _common_model_generator(X.shape[1], num_classes) model.add(Dense(units=num_classes, activation=Activation("softmax"))) model.compile( loss=keras.losses.categorical_crossentropy, optimizer=keras.optimizers.Adadelta(), metrics=["accuracy"], ) y_train = keras.utils.to_categorical(y, num_classes) model.fit( X, y_train, batch_size=batch_size, epochs=epochs, verbose=1, validation_data=(X, y_train), ) return model
Example #19
Source File: td3.py From tf2rl with MIT License | 6 votes |
def __init__(self, state_shape, action_dim, units=[400, 300], name="Critic"): super().__init__(name=name) self.l1 = Dense(units[0], name="L1") self.l2 = Dense(units[1], name="L2") self.l3 = Dense(1, name="L3") self.l4 = Dense(units[0], name="L4") self.l5 = Dense(units[1], name="L5") self.l6 = Dense(1, name="L6") dummy_state = tf.constant( np.zeros(shape=(1,)+state_shape, dtype=np.float32)) dummy_action = tf.constant( np.zeros(shape=[1, action_dim], dtype=np.float32)) with tf.device("/cpu:0"): self([dummy_state, dummy_action])
Example #20
Source File: test_dqn.py From keras-rl2 with MIT License | 5 votes |
def test_multi_continuous_dqn_input(): nb_actions = 2 V_input1 = Input(shape=(2, 3)) V_input2 = Input(shape=(2, 4)) x = Concatenate()([V_input1, V_input2]) x = Flatten()(x) x = Dense(1)(x) V_model = Model(inputs=[V_input1, V_input2], outputs=x) mu_input1 = Input(shape=(2, 3)) mu_input2 = Input(shape=(2, 4)) x = Concatenate()([mu_input1, mu_input2]) x = Flatten()(x) x = Dense(nb_actions)(x) mu_model = Model(inputs=[mu_input1, mu_input2], outputs=x) L_input1 = Input(shape=(2, 3)) L_input2 = Input(shape=(2, 4)) L_input_action = Input(shape=(nb_actions,)) x = Concatenate()([L_input1, L_input2]) x = Concatenate()([Flatten()(x), L_input_action]) x = Dense(((nb_actions * nb_actions + nb_actions) // 2))(x) L_model = Model(inputs=[L_input_action, L_input1, L_input2], outputs=x) memory = SequentialMemory(limit=10, window_length=2) processor = MultiInputProcessor(nb_inputs=2) agent = NAFAgent(nb_actions=nb_actions, V_model=V_model, L_model=L_model, mu_model=mu_model, memory=memory, nb_steps_warmup=5, batch_size=4, processor=processor) agent.compile('sgd') agent.fit(MultiInputTestEnv([(3,), (4,)]), nb_steps=10)
Example #21
Source File: categorical_actor.py From tf2rl with MIT License | 5 votes |
def __init__(self, state_shape, action_dim, units=[256, 256], name="CategoricalActor"): super().__init__(name=name) self.dist = Categorical(dim=action_dim) self.action_dim = action_dim self.l1 = Dense(units[0], activation='relu') self.l2 = Dense(units[1], activation='relu') self.prob = Dense(action_dim, activation='softmax') self(tf.constant( np.zeros(shape=(1,)+state_shape, dtype=np.float32)))
Example #22
Source File: gaussian_actor.py From tf2rl with MIT License | 5 votes |
def __init__(self, state_shape, action_dim, max_action, units=[256, 256], hidden_activation="relu", fix_std=False, const_std=0.1, state_independent_std=False, squash=False, name='GaussianPolicy'): super().__init__(name=name) self.dist = DiagonalGaussian(dim=action_dim) self._fix_std = fix_std self._const_std = const_std self._max_action = max_action self._squash = squash self._state_independent_std = state_independent_std self.l1 = Dense(units[0], name="L1", activation=hidden_activation) self.l2 = Dense(units[1], name="L2", activation=hidden_activation) self.out_mean = Dense(action_dim, name="L_mean") if not self._fix_std: if self._state_independent_std: self.out_log_std = tf.Variable( initial_value=-0.5*np.ones(action_dim, dtype=np.float32), dtype=tf.float32, name="logstd") else: self.out_log_std = Dense( action_dim, name="L_sigma") self(tf.constant( np.zeros(shape=(1,)+state_shape, dtype=np.float32)))
Example #23
Source File: test_dqn.py From keras-rl2 with MIT License | 5 votes |
def test_single_dqn_input(): model = Sequential() model.add(Flatten(input_shape=(2, 3))) model.add(Dense(2)) memory = SequentialMemory(limit=10, window_length=2) for double_dqn in (True, False): agent = DQNAgent(model, memory=memory, nb_actions=2, nb_steps_warmup=5, batch_size=4, enable_double_dqn=double_dqn) agent.compile('sgd') agent.fit(MultiInputTestEnv((3,)), nb_steps=10)
Example #24
Source File: test_util.py From keras-rl2 with MIT License | 5 votes |
def test_clone_sequential_model(): seq = Sequential() seq.add(Dense(8, input_shape=(3,))) seq.compile(optimizer='sgd', loss='mse') clone = clone_model(seq) clone.compile(optimizer='sgd', loss='mse') ins = np.random.random((4, 3)) y_pred_seq = seq.predict_on_batch(ins) y_pred_clone = clone.predict_on_batch(ins) assert y_pred_seq.shape == y_pred_clone.shape assert_allclose(y_pred_seq, y_pred_clone)
Example #25
Source File: mpc_trainer.py From tf2rl with MIT License | 5 votes |
def __init__(self, input_dim, output_dim, units=[32, 32], name="MLP", gpu=0): self.device = "/gpu:{}".format(gpu) if gpu >= 0 else "/cpu:0" super().__init__(name=name) self.l1 = Dense(units[0], name="L1", activation="relu") self.l2 = Dense(units[1], name="L2", activation="relu") self.l3 = Dense(output_dim, name="L3", activation="linear") with tf.device(self.device): self(tf.constant(np.zeros(shape=(1, input_dim), dtype=np.float32)))
Example #26
Source File: atari_model.py From tf2rl with MIT License | 5 votes |
def __init__(self, name, enable_noisy_dqn=False): super().__init__(name=name) DenseLayer = NoisyDense if enable_noisy_dqn else Dense self.conv1 = Conv2D(32, kernel_size=(8, 8), strides=(4, 4), padding='valid', activation='relu') self.conv2 = Conv2D(64, kernel_size=(4, 4), strides=(2, 2), padding='valid', activation='relu') self.conv3 = Conv2D(64, kernel_size=(3, 3), strides=(1, 1), padding='valid', activation='relu') self.flat = Flatten() self.fc1 = DenseLayer(512, activation='relu')
Example #27
Source File: sac.py From tf2rl with MIT License | 5 votes |
def __init__(self, state_shape, action_dim, critic_units=[256, 256], name='qf'): super().__init__(name=name) self.l1 = Dense(critic_units[0], name="L1", activation='relu') self.l2 = Dense(critic_units[1], name="L2", activation='relu') self.l3 = Dense(1, name="L2", activation='linear') dummy_state = tf.constant( np.zeros(shape=(1,)+state_shape, dtype=np.float32)) dummy_action = tf.constant( np.zeros(shape=[1, action_dim], dtype=np.float32)) self([dummy_state, dummy_action])
Example #28
Source File: sac.py From tf2rl with MIT License | 5 votes |
def __init__(self, state_shape, critic_units=[256, 256], name='vf'): super().__init__(name=name) self.l1 = Dense(critic_units[0], name="L1", activation='relu') self.l2 = Dense(critic_units[1], name="L2", activation='relu') self.l3 = Dense(1, name="L3", activation='linear') dummy_state = tf.constant( np.zeros(shape=(1,)+state_shape, dtype=np.float32)) self(dummy_state)
Example #29
Source File: vail.py From tf2rl with MIT License | 5 votes |
def __init__( self, state_shape, action_dim, units=[32, 32], n_latent_unit=32, lr=5e-5, kl_target=0.5, reg_param=0., enable_sn=False, enable_gp=False, name="VAIL", **kwargs): """ :param enable_sn (bool): If true, add spectral normalization in Dense layer :param enable_gp (bool): If true, add gradient penalty to loss function """ IRLPolicy.__init__( self, name=name, n_training=10, **kwargs) self.disc = Discriminator( state_shape=state_shape, action_dim=action_dim, units=units, n_latent_unit=n_latent_unit, enable_sn=enable_sn) self.optimizer = tf.keras.optimizers.Adam(learning_rate=lr) self._kl_target = kl_target self._reg_param = tf.Variable(reg_param, dtype=tf.float32) self._step_reg_param = tf.constant(1e-5, dtype=tf.float32) self._enable_gp = enable_gp
Example #30
Source File: vpg.py From tf2rl with MIT License | 5 votes |
def __init__(self, state_shape, units, name='critic_v', hidden_activation='relu'): super().__init__(name=name) self.l1 = Dense(units[0], name="L1", activation=hidden_activation) self.l2 = Dense(units[1], name="L2", activation=hidden_activation) self.l3 = Dense(1, name="L2", activation='linear') with tf.device('/cpu:0'): self(tf.constant( np.zeros(shape=(1,)+state_shape, dtype=np.float32)))