在Keras中加载模型时如何使用fit_generator?

时间:2019-03-30 12:33:47

标签: python tensorflow keras

我训练了一个二进制分类器,然后将模型另存为.h5文件。

最初,我一直在使用fit_generator对其进行训练。

import pandas as pd
import numpy as np

# create some random dates
start = pd.to_datetime('2018-01-01')
end = pd.to_datetime('2019-12-31')

start_u = start.value//10**9
end_u = end.value//10**9

date_range = pd.to_datetime(np.random.randint(start_u, end_u, 30), unit='s')

# convert to DF
df = pd.DataFrame(date_range, columns=["Date"])
# Add random data
df['Data'] = np.random.randint(0, 100, size=(len(date_range)))

# Format to y-m-d
df['Date'] = pd.to_datetime(df['Date'].dt.strftime('%Y-%m-%d'))

print(df)

# group by month
grouped_df = df.groupby(pd.Grouper(key="Date", freq="M"))

# query the groups
print("\n\ngrouped data for feb 2018\n")
#print(grouped_df.get_group('2018-02-28'))

dict_of_list = dict(list(grouped_df))

feb_2018 = pd.Timestamp('2018-02-28')

if feb_2018 in dict_of_list:
    print(dict_of_list[feb_2018])

当我调用load_model并再次加载它以继续从上次中断的地方继续训练时,是否对fit_generator使用完全相同的代码,请参考旧的train_generator和validation_generator?

Keras文档对此非常稀疏,几乎没有在线一起使用load_model和fit_generator的示例。

1 个答案:

答案 0 :(得分:1)

是的。你为什么不呢?负载将加载砝码。生成器将生成新的训练样本。当然,它可能不会完全从结束处开始,但只要改组就可以了。