12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- import os
- from keras import models
- import numpy as np
- from module.Utils import *
- current_path = os.path.dirname(__file__)
- class ListpageContentPredictor():
-
- def __init__(self,file=""):
- if file=="":
- self.model_file = current_path+"/listpage/content/model/ep005-acc0.970-loss0.047-val_acc0.944-val_loss0.077.h5"
- else:
- self.model_file = current_path+"/listpage/content/model/"+file
- self.model = None
- self.getModel()
- self.graph = tf.get_default_graph()
-
- def getModel(self):
- if self.model is None:
- self.model = models.load_model(self.model_file, custom_objects={"acc":acc,"precision":precision,"recall":recall,"f1_score":f1_score,"my_loss":my_loss})
- self.model.load_weights(self.model_file)
-
- return self.model
-
- def predict(self,x):
- with self.graph.as_default():
- pre= self.getModel().predict(x)
- max_index = np.argmax(pre,1)[0][1]
- return max_index
- class DetailContentPredictor():
-
- def __init__(self,file=""):
- if file=="":
- self.model_file = current_path+"/detail/content/model/ep011-loss0.160-val_acc0.900-val_loss0.156-f10.4536.h5"
- else:
- self.model_file = current_path+"/detail/content/model/"+file
- self.model = None
- self.getModel()
- self.graph = tf.get_default_graph()
-
-
-
- def getModel(self):
- if self.model is None:
- self.model = models.load_model(self.model_file, custom_objects={"acc":acc,"precision":precision,"recall":recall,"f1_score":f1_score,"my_loss":my_loss})
- self.model.load_weights(self.model_file)
- return self.model
-
- def predict(self,x):
- with self.graph.as_default():
- pre= self.getModel().predict(x)
- max_index = np.argmax(pre,1)[0][1]
- return max_index
-
- class DetailTitlePredictor():
-
- def __init__(self,file=""):
- if file=="":
- self.model_file = current_path+"/detail/title/model/ep009-acc0.995-loss0.006-val_acc0.986-val_loss0.018.h5"
- else:
- self.model_file = current_path+"/detail/title/model/"+file
- self.model = None
- self.getModel()
- self.graph = tf.get_default_graph()
-
-
- def getModel(self):
- if self.model is None:
- self.model = models.load_model(self.model_file, custom_objects={"acc":acc,"precision":precision,"recall":recall,"f1_score":f1_score,"my_loss":my_loss})
- self.model.load_weights(self.model_file)
- return self.model
-
- def predict(self,x):
- with self.graph.as_default():
- pre= self.getModel().predict(x)
- max_index = np.argmax(pre,1)[0][1]
- return max_index
-
|