《Python深度学习》3.6预测房价:回归问题

回归问题,预测一个连续值而不是离散的标签

  • 资料也别少,只有506个,分别为404个训练样本和102个测试样本。因为样本数少,书上讲了K折验证及相关代码,将训练样本分为若*分,依次选取一块作为验证数据。
  • 由于数据中不同指标有着差异性的数值选取,需要做标准化。首先让所有数据减去平均值,则整个数列的和为0。然后除以标准差(标准差是依次减去平均值平方,除以项数,再整体开方),这样能保证数列平方和为1,从而构造和为0,平方和也为1的数列。
  • mean=train_data.mean(axis=0)axis=0表示沿y轴,axis=1表示沿x轴,axis没写表示全部数平均。
  • 进行运算时候,verbose=0为不输出运算进程,verbose=1或2都输出,2更详细,感觉1就够了。
  • mae_history=history.history['val_mean_absolute_error'] 始终会报错,搜索别人的答案,改为val_mae确实不再报错。
  • 程序在运行时每一个epoch会记录一下数据
  • 本节程序书写很精彩,很值得学习,如k折的代码写法,以及只数移动平均值的写法。[np.mean([x[i] for x in all_mae_histories]) for i in range(num_epochs)],ipython里经常有这样的写法产生列表,应该这样读。1.for i in range(num_epochs)主循环,首先产生0-499的数,第一次是0。2[x[i] for x in all_mae_histories],然后是这个主循环下的语句块,all_mae_histories产生的是4*500的张量,每一行代表一次K折验证,500带表500个epoch。x依次迭代4行,x[i]每次循环提取对应的元素,如x[0]可以将第一个epoch中经过K折验证的四次,第一个epoch提取出来,然后mean计算之后存储下来。
  • a=[],则bool(a)是flase。a=[1,2],则bool(a)是true。
上一篇:Pytorch模型保存与加载,并在加载的模型基础上继续训练


下一篇:【Kafka中文社区】Kafka核心组件之Controller选举机制(3)