亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

keras輸出預(yù)測(cè)值和真實(shí)值方式

 更新時(shí)間:2020年06月27日 10:14:53   作者:超級(jí)學(xué)渣渣  
這篇文章主要介紹了keras輸出預(yù)測(cè)值和真實(shí)值方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

在使用keras搭建神經(jīng)網(wǎng)絡(luò)時(shí),有時(shí)需要查看一下預(yù)測(cè)值和真是值的具體數(shù)值,然后可以進(jìn)行一些其他的操作。這幾天查閱了很多資料。好像沒(méi)辦法直接access到訓(xùn)練時(shí)的數(shù)據(jù)。所以我們可以通過(guò)回調(diào)函數(shù),傳入新的數(shù)據(jù),然后查看預(yù)測(cè)值和真是值。

參考這篇解決:

https://stackoverflow.com/questions/47079111/create-keras-callback-to-save-model-predictions-and-targets-for-each-batch-durin

我的解決方法是這樣的:

from keras.callbacks import Callback
import tensorflow as tf
import numpy as np
class my_callback(Callback):
 def __init__(self,dataGen,showTestDetail=True):
  self.dataGen=dataGen
  self.showTestDetail=showTestDetail
  self.predhis = []
  self.targets = []
 def mape(self,y,predict):
  diff = np.abs(np.array(y) - np.array(predict))
  return np.mean(diff / y)
 def on_epoch_end(self, epoch, logs=None):
  x_test,y_test=next(self.dataGen)
  prediction = self.model.predict(x_test)
  self.predhis.append(prediction)
  #print("Prediction shape: {}".format(prediction.shape))
  #print("Targets shape: {}".format(y_test.shape))
  if self.showTestDetail:
   for index,item in enumerate(prediction):
    print(item,"=====",y_test[index],"====",y_test[index]-item)
  testLoss=self.mape(y_test,prediction)
  print("test loss is :{}".format(testLoss))

畫(huà)一下知識(shí)點(diǎn),我們?cè)诶^承的callback中實(shí)現(xiàn) on_epoch_end方法:

x_test,y_test=next(self.dataGen)

這個(gè)數(shù)據(jù)生成方法是這樣的

import numpy as np
def shuffleDatas(x,y):

 shuffleIndex=np.arange(len(x))
 np.random.shuffle(shuffleIndex)
 x=x[shuffleIndex]
 y=y[shuffleIndex]
 return x,y
def dataGen(x,y,batchsize=8,shuffle=True):
 assert len(x) == len(y)
 while True:
  if shuffle:
   x,y=shuffleDatas(x,y)
  index=0
  while index+batchsize<len(x):
   yield (x[index:index+batchsize],y[index:index+batchsize])
   index=index+batchsize

使用yield可以減少內(nèi)存的使用,而且顯得很高級(jí)。

補(bǔ)充知識(shí):keras從訓(xùn)練到預(yù)測(cè),函數(shù)的選擇:fit,fit_generator, predict,predict_generator

如下所示:

留下回調(diào)函數(shù)和如何通過(guò)預(yù)處理來(lái)建立生成輸入的函數(shù)這兩個(gè)問(wèn)題

以上這篇keras輸出預(yù)測(cè)值和真實(shí)值方式就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • pytorch中的廣播語(yǔ)義

    pytorch中的廣播語(yǔ)義

    這篇文章主要介紹了pytorch中的廣播語(yǔ)義,pytorch的廣播語(yǔ)義即broadcasting semantics,和numpy的很像,下面文章介紹更多相關(guān)內(nèi)容的介紹,需要的小伙伴可以參考一下
    2022-03-03
  • python多進(jìn)程操作實(shí)例

    python多進(jìn)程操作實(shí)例

    這篇文章主要介紹了python多進(jìn)程操作實(shí)例,本文講解了multiprocessing類的相關(guān)方法,然后給出了一個(gè)綜合實(shí)例和運(yùn)行效果,需要的朋友可以參考下
    2014-11-11
  • python變量前面加星(*)的含義及說(shuō)明

    python變量前面加星(*)的含義及說(shuō)明

    這篇文章主要介紹了python變量前面加星(*)的含義及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • python3+mysql查詢數(shù)據(jù)并通過(guò)郵件群發(fā)excel附件

    python3+mysql查詢數(shù)據(jù)并通過(guò)郵件群發(fā)excel附件

    這篇文章主要為大家詳細(xì)介紹了python3+mysql查詢數(shù)據(jù),并通過(guò)郵件群發(fā)excel附件,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-02-02
  • 解決Python復(fù)雜zip文件的解壓?jiǎn)栴}

    解決Python復(fù)雜zip文件的解壓?jiǎn)栴}

    這篇文章主要介紹了Python復(fù)雜zip文件的解壓,通過(guò)配合 shutil 與 os 標(biāo)準(zhǔn)庫(kù)中的相關(guān)功能,實(shí)現(xiàn)將指定任意 zip 壓縮包,完好地解壓到指定的目錄中,需要的朋友可以參考下
    2021-12-12
  • python numpy實(shí)現(xiàn)文件存取的示例代碼

    python numpy實(shí)現(xiàn)文件存取的示例代碼

    這篇文章主要介紹了python numpy實(shí)現(xiàn)文件存取的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • Python?SDK實(shí)現(xiàn)私服上傳下載的示例

    Python?SDK實(shí)現(xiàn)私服上傳下載的示例

    本文主要介紹了Python?SDK實(shí)現(xiàn)私服上傳下載的示例,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下<BR>
    2021-11-11
  • pycharm如何中導(dǎo)入本地下載好的庫(kù)

    pycharm如何中導(dǎo)入本地下載好的庫(kù)

    這篇文章主要介紹了pycharm如何中導(dǎo)入本地下載好的庫(kù)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • YOLOv5車牌識(shí)別實(shí)戰(zhàn)教程(一)引言與準(zhǔn)備工作

    YOLOv5車牌識(shí)別實(shí)戰(zhàn)教程(一)引言與準(zhǔn)備工作

    這篇文章主要介紹了YOLOv5車牌識(shí)別實(shí)戰(zhàn)教程(一)引言與準(zhǔn)備工作,在這個(gè)教程中,我們將一步步教你如何使用YOLOv5進(jìn)行車牌識(shí)別,幫助你快速掌握YOLOv5車牌識(shí)別技能,需要的朋友可以參考下
    2023-04-04
  • python使用pynput庫(kù)操作、監(jiān)控你的鼠標(biāo)和鍵盤(pán)

    python使用pynput庫(kù)操作、監(jiān)控你的鼠標(biāo)和鍵盤(pán)

    這篇文章主要介紹了python使用pynput庫(kù)操作、監(jiān)控你的鼠標(biāo)和鍵盤(pán),幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下
    2021-03-03

最新評(píng)論