def from_config(cls, config): blocks = [ blocks_module.deserialize(block) for block in config['blocks'] ] nodes = { int(node_id): nodes_module.deserialize(node) for node_id, node in config['nodes'].items() } override_hps = [ kerastuner.engine.hyperparameters.deserialize(config) for config in config['override_hps'] ] inputs = [nodes[node_id] for node_id in nodes] for block_id, block in enumerate(blocks): input_nodes = [ nodes[node_id] for node_id in config['block_inputs'][str(block_id)] ] output_nodes = nest.flatten(block(input_nodes)) for output_node, node_id in zip( output_nodes, config['block_outputs'][str(block_id)]): nodes[node_id] = output_node outputs = [nodes[node_id] for node_id in config['outputs']] return cls(inputs=inputs, outputs=outputs, override_hps=override_hps)
def test_time_series_input_node_deserialize_build_no_error(): node = nodes.TimeseriesInput(lookback=2, shape=(32, )) node = nodes.deserialize(nodes.serialize(node)) hp = keras_tuner.HyperParameters() input_node = node.build_node(hp) node.build(hp, input_node)
def test_time_series_input_node(): # TODO. Change test once TimeSeriesBlock is added. node = ak.TimeseriesInput(shape=(32, ), lookback=2) output = node.build() assert isinstance(output, tf.Tensor) node = nodes.deserialize(nodes.serialize(node)) output = node.build() assert isinstance(output, tf.Tensor)
def test_time_series_input_node_deserialize_build_to_tensor(): node = nodes.TimeseriesInput(lookback=2, shape=(32, )) node = nodes.deserialize(nodes.serialize(node)) hp = kerastuner.HyperParameters() input_node = node.build_node(hp) output = node.build(hp, input_node) assert isinstance(output, tf.Tensor)
def from_config(cls, config): blocks = [ blocks_module.deserialize(block) for block in config["blocks"] ] nodes = { int(node_id): nodes_module.deserialize(node) for node_id, node in config["nodes"].items() } inputs = [nodes[node_id] for node_id in nodes] for block_id, block in enumerate(blocks): input_nodes = [ nodes[node_id] for node_id in config["block_inputs"][str(block_id)] ] output_nodes = nest.flatten(block(input_nodes)) for output_node, node_id in zip( output_nodes, config["block_outputs"][str(block_id)]): nodes[node_id] = output_node outputs = [nodes[node_id] for node_id in config["outputs"]] return cls(inputs=inputs, outputs=outputs)
def test_time_series_input_node_deserialize_build_to_tensor(): node = ak.TimeseriesInput(shape=(32, ), lookback=2) node = nodes.deserialize(nodes.serialize(node)) node.shape = (32, ) output = node.build(kerastuner.HyperParameters()) assert isinstance(output, tf.Tensor)