如何鍷eras加速康复外科模型

2075人阅读
Deep Learning(74)
python 工具包(103)
我们不推荐使用pickle或cPickle来保存Keras模型
你可以使用model.save(filepath)将Keras模型和权重保存在一个HDF5文件中,该文件将包含:
模型的结构,以便重构该模型模型的权重训练配置(损失函数,优化器等)优化器的状态,以便于从上次训练中断的地方开始
使用keras.models.load_model(filepath)来重新实例化你的模型,如果文件中存储了训练配置的话,该函数还会同时完成模型的编译
from keras.models import load_model
model.save('my_model.h5')
model = load_model('my_model.h5')
如果你只是希望保存模型的结构,而不包含其权重或配置信息,可以使用:
json_string = model.to_json()
yaml_string = model.to_yaml()
这项操作将把模型序列化为json或yaml文件,这些文件对人而言也是友好的,如果需要的话你甚至可以手动打开这些文件并进行编辑。
当然,你也可以从保存好的json文件或yaml文件中载入模型:
from keras.models import model_from_json
model = model_from_json(json_string)
model = model_from_yaml(yaml_string)
如果需要保存模型的权重,可通过下面的代码利用HDF5进行保存。注意,在使用前需要确保你已安装了HDF5和其Python库h5py
model.save_weights('my_model_weights.h5')
如果你需要在代码中初始化一个完全相同的模型,请使用:
model.load_weights('my_model_weights.h5')
如果你需要加载权重到不同的网络结构(有些层一样)中,例如fine-tune或transfer-learning,你可以通过层名字来加载模型:
model.load_weights('my_model_weights.h5', by_name=True)
假如原模型为:
model = Sequential()
model.add(Dense(2, input_dim=3, name=&dense_1&))
model.add(Dense(3, name=&dense_2&))
model.save_weights(fname)
model = Sequential()
model.add(Dense(2, input_dim=3, name=&dense_1&))
model.add(Dense(10, name=&new_dense&))
model.load_weights(fname, by_name=True)
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:197631次
积分:4382
积分:4382
排名:千里之外
原创:177篇
转载:391篇
评论:16条
(24)(28)(34)(41)(48)(25)(49)(36)(30)(2)(8)(29)(15)(1)(18)(13)(25)(25)(31)(48)(28)(30)正文内容 >
《文明6》单位模型大小修改方法一览
发布时间: 18:47
来源:游侠
作者:未知
不少玩家都有吐槽过文明6里模型比例的问题,比如导弹巡洋舰居然比驱逐舰小好多跟个渔船一样,轰炸机停在航母上比例也好不和谐。今天小编就为大家带来玩家ffss0927分享的文明6单位模型大小修改方法一览,教大家来修
  不少玩家都有吐槽过文明6里模型比例的问题,比如导弹巡洋舰居然比驱逐舰小好多跟个渔船一样,轰炸机停在航母上比例也好不和谐。今天小编就为大家带来玩家&ffss0927&分享的文明6单位模型大小修改方法一览,教大家来修改一下游戏里模型显示,快来看看吧!
  单位模型大小修改方法一览
  用导弹巡洋舰举例,如图是导弹巡洋舰放大10倍的效果。
  打开Sid Meier's Civilization VI\Base\ArtDefs下的Units.ARTDEF
  搜索UNIT_MISSILE_CRUISER
  会发现如下段落:
& && && && && && && && &&Element&
& && && && && && && && && && &&&&m_Fields&
& && && && && && && && && && && && && & &m_Values&
& && && && && && && && && && && && && && && && &&Element class=&AssetObjects::ArtDefReferenceValue&&
& && && && && && && && && && && && && && && && && && &&&&m_ElementName text=&SingleUnitCentered&/&
& && && && && && && && && && && && && && && && && && &&&&m_RootCollectionName text=&UnitFormationTypes&/&
& && && && && && && && && && && && && && && && && && &&&&m_ArtDefPath text=&Units.artdef&/&
& && && && && && && && && && && && && && && && && && &&&&m_CollectionIsLocked&true&/m_CollectionIsLocked&
& && && && && && && && && && && && && && && && && && &&&&m_TemplateName text=&Units&/&
& && && && && && && && && && && && && && && && && && &&&&m_ParamName text=&Formation&/&
& && && && && && && && && && && && && && && && &&/Element&
& && && && && && && && && && && && && && && && &&Element class=&AssetObjects::ArtDefReferenceValue&&
& && && && && && && && && && && && && && && && && && &&&&m_ElementName text=&&/&
& && && && && && && && && && && && && && && && && && &&&&m_RootCollectionName text=&UnitCombat&/&
& && && && && && && && && && && && && && && && && && &&&&m_ArtDefPath text=&Units.artdef&/&
& && && && && && && && && && && && && && && && && && &&&&m_CollectionIsLocked&true&/m_CollectionIsLocked&
& && && && && && && && && && && && && && && && && && &&&&m_TemplateName text=&&/&
& && && && && && && && && && && && && && && && && && &&&&m_ParamName text=&UnitCombat&/&
& && && && && && && && && && && && && && && && &&/Element&
& && && && && && && && && && && && && && && && &&Element class=&AssetObjects::ArtDefReferenceValue&&
& && && && && && && && && && && && && && && && && && &&&&m_ElementName text=&&/&
& && && && && && && && && && && && && && && && && && &&&&m_RootCollectionName text=&UnitFormationTypes&/&
& && && && && && && && && && && && && && && && && && &&&&m_ArtDefPath text=&Units.artdef&/&
& && && && && && && && && && && && && && && && && && &&&&m_CollectionIsLocked&true&/m_CollectionIsLocked&
& && && && && && && && && && && && && && && && && && &&&&m_TemplateName text=&&/&
& && && && && && && && && && && && && && && && && && &&&&m_ParamName text=&EscortFormation&/&
& && && && && && && && && && && && && && && && &&/Element&
& && && && && && && && && && && && && && && && &&Element class=&AssetObjects::ArtDefReferenceValue&&
& && && && && && && && && && && && && && && && && && &&&&m_ElementName text=&&/&
& && && && && && && && && && && && && && && && && && &&&&m_RootCollectionName text=&Units&/&
& && && && && && && && && && && && && && && && && && &&&&m_ArtDefPath text=&Units.artdef&/&
& && && && && && && && && && && && && && && && && && &&&&m_CollectionIsLocked&true&/m_CollectionIsLocked&
& && && && && && && && && && && && && && && && && && &&&&m_TemplateName text=&&/&
& && && && && && && && && && && && && && && && && && &&&&m_ParamName text=&EmbarkedUnit&/&
& && && && && && && && && && && && && && && && &&/Element&
& && && && && && && && && && && && && && && && &&Element class=&AssetObjects::BoolValue&&
& && && && && && && && && && && && && && && && && && &&&&m_bValue&false&/m_bValue&
& && && && && && && && && && && && && && && && && && &&&&m_ParamName text=&DoNotDisplayCharges&/&
& && && && && && && && && && && && && && && && &&/Element&
& && && && && && && && && && && && && && && && &&Element class=&AssetObjects::ArtDefReferenceValue&&
& && && && && && && && && && && && && && && && && && &&&&m_ElementName text=&&/&
& && && && && && && && && && && && && && && && && && &&&&m_RootCollectionName text=&UnitCulture&/&
& && && && && && && && && && && && && && && && && && &&&&m_ArtDefPath text=&Cultures.artdef&/&
& && && && && && && && && && && && && && && && && && &&&&m_CollectionIsLocked&true&/m_CollectionIsLocked&
& && && && && && && && && && && && && && && && && && &&&&m_TemplateName text=&&/&
& && && && && && && && && && && && && && && && && && &&&&m_ParamName text=&Culture&/&
& && && && && && && && && && && && && && && && &&/Element&
& && && && && && && && && && && && && && && && &&Element class=&AssetObjects::ArtDefReferenceValue&&
& && && && && && && && && && && && && && && && && && &&&&m_ElementName text=&&/&
& && && && && && && && && && && && && && && && && && &&&&m_RootCollectionName text=&Era&/&
& && && && && && && && && && && && && && && && && && &&&&m_ArtDefPath text=&Eras.artdef&/&
& && && && && && && && && && && && && && && && && && &&&&m_CollectionIsLocked&true&/m_CollectionIsLocked&
& && && && && && && && && && && && && && && && && && &&&&m_TemplateName text=&&/&
& && && && && && && && && && && && && && && && && && &&&&m_ParamName text=&Era&/&
& && && && && && && && && && && && && && && && &&/Element&
& && && && && && && && && && && && && && && && &&Element class=&AssetObjects::ArtDefReferenceValue&&
& && && && && && && && && && && && && && && && && && &&&&m_ElementName text=&&/&
& && && && && && && && && && && && && && && && && && &&&&m_RootCollectionName text=&Units&/&
& && && && && && && && && && && && && && && && && && &&&&m_ArtDefPath text=&Units.artdef&/&
& && && && && && && && && && && && && && && && && && &&&&m_CollectionIsLocked&true&/m_CollectionIsLocked&
& && && && && && && && && && && && && && && && && && &&&&m_TemplateName text=&&/&
& && && && && && && && && && && && && && && && && && &&&&m_ParamName text=&roxyUnit&/&
& && && && && && && && && && && && && && && && &&/Element&
& && && && && && && && && && && && && && && && &&Element class=&AssetObjects::BoolValue&&
& && && && && && && && && && && && && && && && && && &&&&m_bValue&false&/m_bValue&
& && && && && && && && && && && && && && && && && && &&&&m_ParamName text=&layDeathOnDestroy&/&
& && && && && && && && && && && && && && && && &&/Element&
& && && && && && && && && && && && && && && && &&Element class=&AssetObjects::IntValue&&
& && && && && && && && && && && && && && && && && && &&&&m_nValue&0&/m_nValue&
& && && && && && && && && && && && && && && && && && &&&&m_ParamName text=&DisplayLevel&/&
& && && && && && && && && && && && && && && && &&/Element&
& && && && && && && && && && && && && & &/m_Values&
& && && && && && && && && && &&&&/m_Fields&
& && && && && && && && && && &&&&m_ChildCollections&
& && && && && && && && && && && && && &&&Element&
& && && && && && && && && && && && && && && && &&m_CollectionName text=&Members&/&
& && && && && && && && && && && && && && && && &&Element&
& && && && && && && && && && && && && && && && && && &&&&m_Fields&
& && && && && && && && && && && && && && && && && && && && && & &m_Values&
& && && && && && && && && && && && && && && && && && && && && && && && &&Element class=&AssetObjects::FloatValue&&
& && && && && && && && && && && && && && && && && && && && && && && && && && &&&&m_fValue&1.000000&/m_fValue&
& && && && && && && && && && && && && && && && && && && && && && && && && && &&&&m_ParamName text=&Scale&/&
& && && && && && && && && && && && && && && && && && && && && && && && &&/Element&
& && && && && && && && && && && && && && && && && && && && && && && && &&Element class=&AssetObjects::IntValue&&
& && && && && && && && && && && && && && && && && && && && && && && && && && &&&&m_nValue&1&/m_nValue&
& && && && && && && && && && && && && && && && && && && && && && && && && && &&&&m_ParamName text=&Count&/&
& && && && && && && && && && && && && && && && && && && && && && && && &&/Element&
& && && && && && && && && && && && && && && && && && && && && && && && &&Element class=&AssetObjects::ArtDefReferenceValue&&
& && && && && && && && && && && && && && && && && && && && && && && && && && &&&&m_ElementName text=&MissileCruiser&/&
& && && && && && && && && && && && && && && && && && && && && && && && && && &&&&m_RootCollectionName text=&UnitMemberTypes&/&
& && && && && && && && && && && && && && && && && && && && && && && && && && &&&&m_ArtDefPath text=&Units.artdef&/&
& && && && && && && && && && && && && && && && && && && && && && && && && && &&&&m_CollectionIsLocked&true&/m_CollectionIsLocked&
& && && && && && && && && && && && && && && && && && && && && && && && && && &&&&m_TemplateName text=&Units&/&
& && && && && && && && && && && && && && && && && && && && && && && && && && &&&&m_ParamName text=&Type&/&
& && && && && && && && && && && && && && && && && && && && && && && && &&/Element&
& && && && && && && && && && && && && && && && && && && && && & &/m_Values&
& && && && && && && && && && && && && && && && && && &&&&/m_Fields&
& && && && && && && && && && && && && && && && && && &&&&m_ChildCollections/&
& && && && && && && && && && && && && && && && && && &&&&m_Name text=&Members001&/&
& && && && && && && && && && && && && && && && &&/Element&
& && && && && && && && && && && && && & &/Element&
& && && && && && && && && && && && && & &Element&
& && && && && && && && && && && && && && && && &&m_CollectionName text=&Audio&/&
& && && && && && && && && && && && && && && && &&Element&
& && && && && && && && && && && && && && && && && && &&&&m_Fields&
& && && && && && && && && && && && && && && && && && && && && & &m_Values&
& && && && && && && && && && && && && && && && && && && && && && && && &&Element class=&AssetObjects::StringValue&&
& && && && && && && && && && && && && && && && && && && && && && && && && && &&&&m_Value text=&MissileCruiser&/&
& && && && && && && && && && && && && && && && && && && && && && && && && && &&&&m_ParamName text=&XrefName&/&
& && && && && && && && && && && && && && && && && && && && && && && && &&/Element&
& && && && && && && && && && && && && && && && && && && && && & &/m_Values&
& && && && && && && && && && && && && && && && && && &&&&/m_Fields&
& && && && && && && && && && && && && && && && && && &&&&m_ChildCollections/&
& && && && && && && && && && && && && && && && && && &&&&m_Name text=&MISSILECRUISER&/&
& && && && && && && && && && && && && && && && &&/Element&
& && && && && && && && && && && && && & &/Element&
& && && && && && && && && && &&&&/m_ChildCollections&
& && && && && && && && && && &&&&m_Name text=&UNIT_MISSILE_CRUISER&/&
& && && && && && && && &&/Element&
  上面一整段就是定义导弹巡洋舰模型的段落。
  红字段落就是定义一般的模型引用,其中蓝色数字的数值就是模型大小,默认为1,需要大一点就改的大一点,这里是成正比的,改成2的话大小为原来的2倍。
  绿色段落的数字是定义模型数量的,现代海军单位大多为1,如果改成复数将和陆军一样出现复数单位的模型,改成几就会出现几只船。
  橙色部分的数字是引用的模型文件名称,如果你手头有别的模型文件可以在这里替换掉,也可以使用游戏自带的模型,比如把&m_ElementName text=&MissileCruiser&/&改成&m_ElementName text=&Destroyer&/&就可以把巡洋舰的模型替换成驱逐舰。
最新热点资讯
单机游戏美女
单机下载排行19351人阅读
Keras随笔(18)
原地址:可以查看更多文章
介绍完了优化器和目标函数,那么剩下的就是训练模型了。这一小节,我们来看一下Keras的Models是如何使用的。Keras可以建立两种模型,一种是线性叠加的,层与层之间是全连接的方式,一个输入,一个输出;另外一种是图型的,输入与输出数量任意,并且可以指定层与层之间的部分连接方式。
一、Sequential(线性叠加模型)方法及属性介绍
model = keras.models.Sequential()
线性叠加模型就是把每一层按照次序叠加起来,每层之间采用全连接方式。下面看一下对象model都有哪些方法。
add(layer):往model里边增加一层&
compile(optimizer, loss, class_model=”categorical”):
optimizer:指定模型训练的优化器;loss:目标函数;class_mode: ”categorical”和”binary”中的一个,只是用来计算分类的精确度或using the predict_classes methodtheano_mode: Apile.mode.Mode instance
controllingspecifying compilation options&
fit(X, y, batch_size=128, nb_epoch=100, verbose=1, validation_split=0,validation_data=None,shuffle=True,show_accuracy=False,callbacks=[],class_weight=Noe,
sample_weight=None):用于训练一个固定迭代次数的模型
返回:记录字典,包括每一次迭代的训练误差率和验证误差率;
X:训练数据y : 标签batch_size : 每次训练和梯度更新块的大小。nb_epoch: 迭代次数。verbose : 进度表示方式。0表示不显示数据,1表示显示进度条,2表示用只显示一个数据。callbacks : 回调函数列表。就是函数执行完后自动调用的函数列表。validation_split : 验证数据的使用比例。validation_data : 被用来作为验证数据的(X, y)元组。会代替validation_split所划分的验证数据。shuffle : 类型为boolean或 str(‘batch’)。是否对每一次迭代的样本进行shuffle操作(可以参见博文)。’batch’是一个用于处理HDF5(keras用于存储权值的数据格式)数据的特殊选项。show_accuracy:每次迭代是否显示分类准确度。class_weigh : 分类权值键值对。原文:dictionary mapping classes to a weight value, used for scaling the lossfunction (during training only)。键为类别,值为该类别对应的权重。只在训练过程中衡量损失函数用。sample_weight : list or numpy array with1:1 mapping to the training samples, used for scaling the loss function (duringtraining only).
For time-distributed data, there is one weight per sample pertimestep, i.e. if your output data is shaped(nb_samples, timesteps, output_dim), your mask should be of shape
(nb_samples, timesteps, 1). This allows you to maskout or reweight individual output timesteps, which is useful in sequence tosequence learning.
evalute(X, y, batch_size=128, show_accuracy=False,verbose=1, sample_weight=None):
展示模型在验证数据上的效果
返回:误差率或者是(误差率,准确率)元组(if show_accuracy=True)
参数:和fit函数中的参数基本一致,其中verbose取1或0,表示有进度条或没有
predict(X, batch_size=128, verbose=1): 用于对测试数据的预测
返回:对于测试数据的预测数组
参数:和fit函数中的参数一样。
predict_classes(X, batch_size=128, verbose=1): 用于对测试数据的分类预测
返回:对于测试数据的预测分类结果数组
参数:和evaluate函数中的参数一样。&
train_on_batch(X, y, accuracy=False, class_weight=None, sample_weight=None): 对数据块进行计算并梯度更新
返回:数据块在现有模型中的误差率或者元组(if show_accuracy=True)
参数:和evaluate函数中的参数一样。&
test_on_batch(X, y, accuracy=False, sample_weight=None): 用数据块进行性能验证
返回:数据块在现有模型中的误差率或者元组(误差率,准确率)(if show_accuracy=True)
参数:和evaluate函数中的参数一样。&
save_weights (fname, overwrite=False): 将所有层的权值保存为HDF5文件
返回:如果overwrite=False并且fname已经存在,则会抛出异常。
fname: 文件名overwrite : 如果已经存在,是否覆盖原文件。&
load_weights(fname):
加载已经存在的权值数据到程序中的模型里面。文件中的模型和程序中的模型结构必须一致。在compile之前或之后都可以调用load_ weights函数。
参数: fname文件名
二、Sequential(线性叠加模型)举例说明
from keras.models import Sequential
from keras.layers.core import Dense, Dropout, Activation
from keras.optimizers import SGD
model = Sequential()
model.add(Dense(2, init='uniform', input_dim=64))
model.add(Activation('softmax'))
pile(loss='mse', optimizer='sgd')
'''
Verbose=1或2的结果演示
'''
model.fit(X_train, y_train, nb_epoch=3, batch_size=16, verbose=1)
# 输出信息
'''
Train on 37800 samples, validate on 4200 samples
[==============================] - 7s - loss: 0.0385
[==============================] - 8s - loss: 0.0140
[=======&......................] - ETA: 4s - loss: 0.0109
'''
model.fit(X_train, y_train, nb_epoch=3, batch_size=16, verbose=2)
# 输出信息
'''
Train on 37800 samples, validate on 4200 samples
loss: 0.0190
loss: 0.0146
loss: 0.0049
'''
'''
show_accuracy=True的演示,会输出误差率-正确率
'''
model.fit(X_train, y_train, nb_epoch=3, batch_size=16, verbose=2, show_accuracy=True)
# 输出信息
'''
Train on 37800 samples, validate on 4200 samples
loss: 0.0190 - acc.: 0.8750
loss: 0.0146 - acc.: 0.8750
loss: 0.0049 - acc.: 1.0000
'''
'''
validation_split=0.1表示总样本的10%用来进行验证。比如下方实例,样本总数42000,则验证数据占10%,即4200,剩余的37800为训练数据。
'''
model.fit(X_train, y_train, nb_epoch=3, batch_size=16, validation_split=0.1, show_accuracy=True, verbose=1)
'''
Train on 37800 samples, validate on 4200 samples
[==============================] - 7s - loss: 0.0385 - acc.:0.7258 - val. loss: 0.0160 - val. acc.: 0.9136
[==============================] - 8s - loss: 0.0140 - acc.:0.9265 - val. loss: 0.0109 - val. acc.: 0.9383
[=======&......................] - ETA: 4s - loss: 0.0109 -acc.: 0.9420
'''
三、Graph(任意连接图模型)方法及属性介绍
任意连接图可以有任意数量的输入和输出,每一个输出都由专门的代价函数进行训练。图模型的最优化取决于所有代价函数的总和。看过代码就,就会感觉很清晰,完全就是一张节点连接图。可以很清晰的画出该有向图。适用于部分连接的模型。
model = keras.models.Graph()
下面看一下对象model都有哪些方法。
add_input (name, input_shape, dtype='float'):往model里边增加一输入层
name: 输入层的唯一字符串标识input_shape: 整数元组,表示新增层的shape。例如(10,)表示10维向量;(None,
128)表示一个可变长度的128维向量;(3, 32, 32) 表示一张3通道(RGB)的32*32的图片。dtype:float或者int;输入数据的类型。&
add_output (name, input=None, inputs=[], merge_mode=’concat’):增加一个连接到input或inputs的输出层
name: 输出层的唯一字符串标识input: 输出层要连接到的隐层的名字。只能是input或inputs中的一个。inputs:新增层要连接到的多个隐层的名字列表。merge_mode: “sum”或”concat”。在指定inputs时有效,将不同的输入合并起来。
add_node (layer, name, input=None,inputs=[], merge_mode='concat'):增加一个连接到input或inputs的输出层(就是除去输入输出之外的隐层)
layer: Layer实例(Layer后边会介绍到)name:隐层的唯一字符串标识input: 新增隐层要连接到的某隐层或输入层的名字。只能是input或inputs中的一个。inputs:新增隐层要连接到的多个隐层的名字列表。merge_mode: “sum”或”concat”。在指定inputs时有效,将不同的输入合并起来。&
compile (optimizer, loss):往input或inputs里边增加一输出层
optimizer: 优化器名或者优化器对象loss: 字典键值对。键为输出层的name,值为该层对应的目标函数名或目标函数对象。&
fit(data, batch_size=128, nb_epoch=100, verbose=1, validation_split=0,validation_data=None,
shuffle=True, callbacks=[]):用于训练一个固定迭代次数的模型
返回:记录字典,包括每一次迭代的训练误差率和验证误差率;
data:字典。键为输入层或输出层的名,值为具体的输入数据或输出数据。可见下方的示例。batch_size : 每次训练和梯度更新的数据块大小nb_epoch: 迭代次数verbose : 进度表示方式。0表示不显示数据,1表示显示进度条,2表示用只显示一个数据。callbacks : 回调函数列表validation_split : 验证数据的使用比例。validation_data : 被用来作为验证数据的(X, y)元组。Will override validation_split.shuffle : 类型为boolean或 str(‘batch’)。是否对每一次迭代的样本进行shuffle操作(可以参见博文)。’batch’是一个用于处理HDF5(keras用于存储权值的数据格式)数据的特殊选项。
&evalute(data, batch_size=128, verbose=1): 展示模型在验证数据上的效果
返回:误差率
参数:和fit函数中的参数基本一致,其中verbose取1或0,表示有进度条或没有
&predict(data, batch_size=128, verbose=1): 用于对测试数据的预测
返回:键值对。键为输出层名,值为对应层的预测数组
参数:和fit函数中的参数一样。输入层需要在data中声明。
&train_on_batch(data): 对数据块进行计算并梯度更新
返回:数据块在现有模型中的误差率
参数:和evaluate函数中的参数一样。
&test_on_batch(data): 用数据块对模型进行性能验证
返回:据块在现有模型中的误差率
参数:和evaluate函数中的参数一样。
&save_weights (fname, overwrite=False): 将所有层的权值保存为HDF5文件
返回:如果overwrite=False并且fname已经存在,则会抛出异常。
fname: 文件名overwrite : 如果已经存在,是否覆盖原文件。&
load_weights (fname): 加载已经存在的权值数据到程序中的模型里面。文件中的模型和程序中的模型结构必须一致。在compile之前或之后都可以调用load_
weights函数。
四、Graph(任意连接图模型)举例说明
# 含一输入,两输出的graph model
graph = Graph()
graph.add_input(name='input', input_shape=(32,))
graph.add_node(Dense(16), name='dense1', input='input')
graph.add_node(Dense(4), name='dense2', input='input')
graph.add_node(Dense(4), name='dense3', input='dense1')
graph.add_output(name='output1', input='dense2')
graph.add_output(name='output2', input='dense3')
pile('rmsprop', {'output1':'mse', 'output2':'mse'})
history = graph.fit({'input':X_train, 'output1':y_train, 'output2':y2_train}, nb_epoch=10)
# 含两输入,两输出的graph model
graph = Graph()
graph.add_input(name='input1', input_shape=(32,))
graph.add_input(name='input2', input_shape=(32,))
graph.add_node(Dense(16), name='dense1', input='input1')
graph.add_node(Dense(4), name='dense2', input='input2')
graph.add_node(Dense(4), name='dense3', input='dense1')
graph.add_output(name='output', inputs=['dense2', 'dense3'], merge_mode='sum')
pile('rmsprop', {'output':'mse'})
history = graph.fit({'input1':X_train, 'input2':X2_train, 'output':y_train}, nb_epoch=10)
predictions = graph.predict({'input1':X_test, 'input2':X2_test}) # {'output':...}
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:277064次
积分:3180
积分:3180
排名:第9618名
原创:38篇
评论:159条
欢迎关注微博,微博主要关注神经网络、大数据处理及技术
(1)(1)(4)(1)(3)(2)(3)(26)(1)(5)

我要回帖

更多关于 erasitc 的文章

 

随机推荐