本文整理匯總了Python中tensorflow.python.keras.layers.Input方法的典型用法代碼示例。如果您正苦於以下問題:Python layers.Input方法的具體用法?Python layers.Input怎麽用?Python layers.Input使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類tensorflow.python.keras.layers
的用法示例。
在下文中一共展示了layers.Input方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: get_input
# 需要導入模塊: from tensorflow.python.keras import layers [as 別名]
# 或者: from tensorflow.python.keras.layers import Input [as 別名]
def get_input(region_feature_dim_dict, base_feature_dim_dict, bias_feature_dim_dict, same_flag):
region_sparse_input = [Input(shape=(1,), name='region_sparse_' + str(i)+"-"+feat.name)
for i, feat in enumerate(region_feature_dim_dict["sparse"])]
region_dense_input = [Input(shape=(1,), name='region_dense_' + str(i)+"-"+feat.name)
for i, feat in enumerate(region_feature_dim_dict["dense"])]
if same_flag == True:
base_sparse_input = []
base_dense_input = []
else:
base_sparse_input = [Input(shape=(1,), name='base_sparse_' + str(i) + "-" + feat.name) for i, feat in
enumerate(base_feature_dim_dict["sparse"])]
base_dense_input = [Input(shape=(1,), name='base_dense_' + str(i) + "-" + feat.name) for i, feat in
enumerate(base_feature_dim_dict['dense'])]
bias_sparse_input = [Input(shape=(1,), name='bias_cate_' + str(i) + "-" + feat.name) for i, feat in
enumerate(bias_feature_dim_dict['sparse'])]
bias_dense_input = [Input(shape=(1,), name='bias_continuous_' + str(i) + "-" + feat.name) for i, feat in
enumerate(bias_feature_dim_dict['dense'])]
return region_sparse_input, region_dense_input, base_sparse_input, base_dense_input, bias_sparse_input, bias_dense_input
示例2: create_model
# 需要導入模塊: from tensorflow.python.keras import layers [as 別名]
# 或者: from tensorflow.python.keras.layers import Input [as 別名]
def create_model(node_size, hidden_size=[256, 128], l1=1e-5, l2=1e-4):
A = Input(shape=(node_size,))
L = Input(shape=(None,))
fc = A
for i in range(len(hidden_size)):
if i == len(hidden_size) - 1:
fc = Dense(hidden_size[i], activation='relu',
kernel_regularizer=l1_l2(l1, l2), name='1st')(fc)
else:
fc = Dense(hidden_size[i], activation='relu',
kernel_regularizer=l1_l2(l1, l2))(fc)
Y = fc
for i in reversed(range(len(hidden_size) - 1)):
fc = Dense(hidden_size[i], activation='relu',
kernel_regularizer=l1_l2(l1, l2))(fc)
A_ = Dense(node_size, 'relu', name='2nd')(fc)
model = Model(inputs=[A, L], outputs=[A_, Y])
emb = Model(inputs=A, outputs=Y)
return model, emb
示例3: GCN
# 需要導入模塊: from tensorflow.python.keras import layers [as 別名]
# 或者: from tensorflow.python.keras.layers import Input [as 別名]
def GCN(adj_dim,feature_dim,n_hidden, num_class, num_layers=2,activation=tf.nn.relu,dropout_rate=0.5, l2_reg=0, feature_less=True, ):
Adj = Input(shape=(None,), sparse=True)
if feature_less:
X_in = Input(shape=(1,), )
emb = Embedding(adj_dim, feature_dim,
embeddings_initializer=Identity(1.0), trainable=False)
X_emb = emb(X_in)
h = Reshape([X_emb.shape[-1]])(X_emb)
else:
X_in = Input(shape=(feature_dim,), )
h = X_in
for i in range(num_layers):
if i == num_layers - 1:
activation = tf.nn.softmax
n_hidden = num_class
h = GraphConvolution(n_hidden, activation=activation, dropout_rate=dropout_rate, l2_reg=l2_reg)([h,Adj])
output = h
model = Model(inputs=[X_in,Adj], outputs=output)
return model
示例4: build_input_features
# 需要導入模塊: from tensorflow.python.keras import layers [as 別名]
# 或者: from tensorflow.python.keras.layers import Input [as 別名]
def build_input_features(feature_columns, prefix=''):
input_features = OrderedDict()
for fc in feature_columns:
if isinstance(fc, SparseFeat):
input_features[fc.name] = Input(
shape=(1,), name=prefix + fc.name, dtype=fc.dtype)
elif isinstance(fc, DenseFeat):
input_features[fc.name] = Input(
shape=(fc.dimension,), name=prefix + fc.name, dtype=fc.dtype)
elif isinstance(fc, VarLenSparseFeat):
input_features[fc.name] = Input(shape=(fc.maxlen,), name=prefix + fc.name,
dtype=fc.dtype)
if fc.weight_name is not None:
input_features[fc.weight_name] = Input(shape=(fc.maxlen, 1), name=prefix + fc.weight_name,
dtype="float32")
if fc.length_name is not None:
input_features[fc.length_name] = Input((1,), name=prefix + fc.length_name, dtype='int32')
else:
raise TypeError("Invalid feature column type,got", type(fc))
return input_features
示例5: get_input
# 需要導入模塊: from tensorflow.python.keras import layers [as 別名]
# 或者: from tensorflow.python.keras.layers import Input [as 別名]
def get_input(feature_dim_dict, seq_feature_list, seq_max_len):
sparse_input,dense_input = create_singlefeat_dict(feature_dim_dict)
user_behavior_input = OrderedDict()
for i,feat in enumerate(seq_feature_list):
user_behavior_input[feat] = Input(shape=(seq_max_len,), name='seq_' + str(i) + '-' + feat)
user_behavior_length = Input(shape=(1,), name='seq_length')
return sparse_input, dense_input, user_behavior_input, user_behavior_length
示例6: create_model
# 需要導入模塊: from tensorflow.python.keras import layers [as 別名]
# 或者: from tensorflow.python.keras.layers import Input [as 別名]
def create_model(numNodes, embedding_size, order='second'):
v_i = Input(shape=(1,))
v_j = Input(shape=(1,))
first_emb = Embedding(numNodes, embedding_size, name='first_emb')
second_emb = Embedding(numNodes, embedding_size, name='second_emb')
context_emb = Embedding(numNodes, embedding_size, name='context_emb')
v_i_emb = first_emb(v_i)
v_j_emb = first_emb(v_j)
v_i_emb_second = second_emb(v_i)
v_j_context_emb = context_emb(v_j)
first = Lambda(lambda x: tf.reduce_sum(
x[0]*x[1], axis=-1, keep_dims=False), name='first_order')([v_i_emb, v_j_emb])
second = Lambda(lambda x: tf.reduce_sum(
x[0]*x[1], axis=-1, keep_dims=False), name='second_order')([v_i_emb_second, v_j_context_emb])
if order == 'first':
output_list = [first]
elif order == 'second':
output_list = [second]
else:
output_list = [first, second]
model = Model(inputs=[v_i, v_j], outputs=output_list)
return model, {'first': first_emb, 'second': second_emb}
示例7: __conv_block
# 需要導入模塊: from tensorflow.python.keras import layers [as 別名]
# 或者: from tensorflow.python.keras.layers import Input [as 別名]
def __conv_block(ip, nb_filter, bottleneck=False, dropout_rate=None, weight_decay=1e-4):
''' Apply BatchNorm, Relu, 3x3 Conv2D, optional bottleneck block and dropout
Args:
ip: Input keras tensor
nb_filter: number of filters
bottleneck: add bottleneck block
dropout_rate: dropout rate
weight_decay: weight decay factor
Returns: keras tensor with batch_norm, relu and convolution2d added (optional bottleneck)
'''
concat_axis = 1 if K.image_data_format() == 'channels_first' else -1
x = BatchNormalization(axis=concat_axis, epsilon=1.1e-5)(ip)
x = Activation('relu')(x)
if bottleneck:
inter_channel = nb_filter * 4 # Obtained from https://github.com/liuzhuang13/DenseNet/blob/master/densenet.lua
x = Conv2D(inter_channel, (1, 1), kernel_initializer='he_normal', padding='same', use_bias=False,
kernel_regularizer=l2(weight_decay))(x)
x = BatchNormalization(axis=concat_axis, epsilon=1.1e-5)(x)
x = Activation('relu')(x)
x = Conv2D(nb_filter, (3, 3), kernel_initializer='he_normal', padding='same', use_bias=False)(x)
if dropout_rate:
x = Dropout(dropout_rate)(x)
return x
示例8: loadFullModel
# 需要導入模塊: from tensorflow.python.keras import layers [as 別名]
# 或者: from tensorflow.python.keras.layers import Input [as 別名]
def loadFullModel(self, prediction_speed="normal", num_objects=10):
"""
'loadFullModel()' function is used to load the model structure into the program from the file path defined
in the setModelPath() function. As opposed to the 'loadModel()' function, you don't need to specify the model type. This means you can load any Keras model trained with or without ImageAI and perform image prediction.
- prediction_speed (optional), Acceptable values are "normal", "fast", "faster" and "fastest"
- num_objects (required), the number of objects the model is trained to recognize
:param prediction_speed:
:param num_objects:
:return:
"""
self.numObjects = num_objects
if (prediction_speed == "normal"):
self.__input_image_size = 224
elif (prediction_speed == "fast"):
self.__input_image_size = 160
elif (prediction_speed == "faster"):
self.__input_image_size = 120
elif (prediction_speed == "fastest"):
self.__input_image_size = 100
if (self.__modelLoaded == False):
image_input = Input(shape=(self.__input_image_size, self.__input_image_size, 3))
model = load_model(filepath=self.modelPath)
self.__model_collection.append(model)
self.__modelLoaded = True
self.__modelType = "full"
示例9: test_mnist_unet_with_shape_valid
# 需要導入模塊: from tensorflow.python.keras import layers [as 別名]
# 或者: from tensorflow.python.keras.layers import Input [as 別名]
def test_mnist_unet_with_shape_valid(self):
num_subsamples = 100
(x_train, y_train), (x_test, y_test) = TestUtil.get_mnist(flattened=False, num_subsamples=num_subsamples)
explained_model_builder = MLPModelBuilder(num_layers=2, num_units=64, activation="relu", p_dropout=0.2,
verbose=0, batch_size=256, learning_rate=0.001, num_epochs=2,
early_stopping_patience=128)
input_shape = x_train.shape[1:]
input_layer = Input(shape=input_shape)
last_layer = Flatten()(input_layer)
last_layer = explained_model_builder.build(last_layer)
last_layer = Dense(y_train.shape[-1], activation="softmax")(last_layer)
explained_model = Model(input_layer, last_layer)
explained_model.compile(loss="categorical_crossentropy",
optimizer="adam")
explained_model.fit(x_train, y_train)
masking_operation = ZeroMasking()
loss = categorical_crossentropy
downsample_factors = [(2, 2), (4, 4), (4, 7), (7, 4), (7, 7)]
with_bns = [True if i % 2 == 0 else False for i in range(len(downsample_factors))]
for downsample_factor, with_bn in zip(downsample_factors, with_bns):
model_builder = UNetModelBuilder(downsample_factor, num_layers=2, num_units=64, activation="relu",
p_dropout=0.2, verbose=0, batch_size=256, learning_rate=0.001,
num_epochs=2, early_stopping_patience=128, with_bn=with_bn)
explainer = CXPlain(explained_model, model_builder, masking_operation, loss,
downsample_factors=downsample_factor)
explainer.fit(x_train, y_train)
eval_score = explainer.score(x_test, y_test)
train_score = explainer.get_last_fit_score()
median = explainer.predict(x_test)
self.assertTrue(median.shape == x_test.shape)
示例10: test_nlp_erroneous_rnn_args_invalid
# 需要導入模塊: from tensorflow.python.keras import layers [as 別名]
# 或者: from tensorflow.python.keras.layers import Input [as 別名]
def test_nlp_erroneous_rnn_args_invalid(self):
num_words = 1024
(x_train, y_train), (x_test, y_test) = TestUtil.get_random_variable_length_dataset(max_value=num_words)
explained_model = RandomForestClassifier(n_estimators=64, max_depth=5, random_state=1)
counter = CountVectoriser(num_words)
tfidf_transformer = TfidfTransformer()
explained_model = Pipeline([('counts', counter),
('tfidf', tfidf_transformer),
('model', explained_model)])
explained_model.fit(x_train, y_train)
with self.assertRaises(ValueError):
_ = RNNModelBuilder(with_embedding=True, verbose=0) # Must also specify the embedding_size argument.
model_builder = RNNModelBuilder(embedding_size=num_words, with_embedding=True, verbose=0)
input_layer = Input(shape=(10, 2))
with self.assertRaises(ValueError):
model_builder.build(input_layer)
input_layer = Input(shape=(10, 3))
with self.assertRaises(ValueError):
model_builder.build(input_layer)
示例11: trivial_model
# 需要導入模塊: from tensorflow.python.keras import layers [as 別名]
# 或者: from tensorflow.python.keras.layers import Input [as 別名]
def trivial_model(num_classes):
"""Trivial model for ImageNet dataset."""
input_shape = (224, 224, 3)
img_input = layers.Input(shape=input_shape)
x = layers.Lambda(lambda x: backend.reshape(x, [-1, 224 * 224 * 3]),
name='reshape')(img_input)
x = layers.Dense(1, name='fc1')(x)
x = layers.Dense(num_classes, name='fc1000')(x)
x = layers.Activation('softmax', dtype='float32')(x)
return models.Model(img_input, x, name='trivial')
開發者ID:ShivangShekhar,項目名稱:Live-feed-object-device-identification-using-Tensorflow-and-OpenCV,代碼行數:15,代碼來源:trivial_model.py
示例12: GraphSAGE
# 需要導入模塊: from tensorflow.python.keras import layers [as 別名]
# 或者: from tensorflow.python.keras.layers import Input [as 別名]
def GraphSAGE(feature_dim, neighbor_num, n_hidden, n_classes, use_bias=True, activation=tf.nn.relu,
aggregator_type='mean', dropout_rate=0.0, l2_reg=0):
features = Input(shape=(feature_dim,))
node_input = Input(shape=(1,), dtype=tf.int32)
neighbor_input = [Input(shape=(l,), dtype=tf.int32) for l in neighbor_num]
if aggregator_type == 'mean':
aggregator = MeanAggregator
else:
aggregator = PoolingAggregator
h = features
for i in range(0, len(neighbor_num)):
if i > 0:
feature_dim = n_hidden
if i == len(neighbor_num) - 1:
activation = tf.nn.softmax
n_hidden = n_classes
h = aggregator(units=n_hidden, input_dim=feature_dim, activation=activation, l2_reg=l2_reg, use_bias=use_bias,
dropout_rate=dropout_rate, neigh_max=neighbor_num[i], aggregator=aggregator_type)(
[h, node_input, neighbor_input[i]]) #
output = h
input_list = [features, node_input] + neighbor_input
model = Model(input_list, outputs=output)
return model
示例13: GAT
# 需要導入模塊: from tensorflow.python.keras import layers [as 別名]
# 或者: from tensorflow.python.keras.layers import Input [as 別名]
def GAT(adj_dim,feature_dim,num_class,num_layers=2,n_attn_heads = 8,att_embedding_size=8,dropout_rate=0.0,l2_reg=0.0,use_bias=True):
X_in = Input(shape=(feature_dim,))
A_in = Input(shape=(adj_dim,))
h = X_in
for _ in range(num_layers-1):
h = GATLayer(att_embedding_size=att_embedding_size, head_num=n_attn_heads, dropout_rate=dropout_rate, l2_reg=l2_reg,
activation=tf.nn.elu, use_bias=use_bias, )([h, A_in])
h = GATLayer(att_embedding_size=num_class, head_num=1, dropout_rate=dropout_rate, l2_reg=l2_reg,
activation=tf.nn.softmax, use_bias=use_bias, reduction='mean')([h, A_in])
model = Model(inputs=[X_in, A_in], outputs=h)
return model
示例14: get_input
# 需要導入模塊: from tensorflow.python.keras import layers [as 別名]
# 或者: from tensorflow.python.keras.layers import Input [as 別名]
def get_input(feature_dim_dict, seq_feature_list, seq_max_len):
sparse_input, dense_input = create_singlefeat_inputdict(feature_dim_dict)
user_behavior_input = OrderedDict()
for i, feat in enumerate(seq_feature_list):
user_behavior_input[feat] = Input(shape=(seq_max_len,), name='seq_' + str(i) + '-' + feat)
return sparse_input, dense_input, user_behavior_input
示例15: build
# 需要導入模塊: from tensorflow.python.keras import layers [as 別名]
# 或者: from tensorflow.python.keras.layers import Input [as 別名]
def build(self, lambda_u=0.0001, lambda_v=0.0001, optimizer='rmsprop',
loss='mse', metrics='mse', initializer='uniform'):
"""
Init session and create model architecture.
:param lambda_u: lambda value of l2 norm for user embeddings.
:param lambda_v: lambda value of l2 norm for item embeddings.
:param optimizer: optimizer type.
:param loss: loss type.
:param metrics: evaluation metrics.
:param initializer: initializer of embedding
:return:
"""
# init session on first time ref
sess = self.session
# user embedding
user_input_layer = Input(shape=(1,), dtype='int32', name='user_input')
user_embedding_layer = Embedding(
input_dim=self.user_num,
output_dim=self.embedding_dim,
input_length=1,
name='user_embedding',
embeddings_regularizer=l2(lambda_u),
embeddings_initializer=initializer)(user_input_layer)
user_embedding_layer = Flatten(name='user_flatten')(user_embedding_layer)
# item embedding
item_input_layer = Input(shape=(1,), dtype='int32', name='item_input')
item_embedding_layer = Embedding(
input_dim=self.item_num,
output_dim=self.embedding_dim,
input_length=1,
name='item_embedding',
embeddings_regularizer=l2(lambda_v),
embeddings_initializer=initializer)(item_input_layer)
item_embedding_layer = Flatten(name='item_flatten')(item_embedding_layer)
# rating prediction
dot_layer = Dot(axes=-1,
name='dot_layer')([user_embedding_layer,
item_embedding_layer])
self._model = Model(
inputs=[user_input_layer, item_input_layer], outputs=[dot_layer])
# compile model
optimizer_instance = getattr(
tf.keras.optimizers, optimizer.optimizer)(**optimizer.kwargs)
losses = getattr(tf.keras.losses, loss)
self._model.compile(optimizer=optimizer_instance,
loss=losses, metrics=metrics)
# pick user_embedding for aggregating
self._trainable_weights = {v.name.split(
"/")[0]: v for v in self._model.trainable_weights}
self._aggregate_weights = {
"user_embedding": self._trainable_weights["user_embedding"]}