Advertisement
Guest User

Untitled

a guest
Jun 17th, 2019
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.26 KB | None | 0 0
  1. from flask import Flask, jsonify, request
  2. from keras.models import load_model
  3. from keras.preprocessing.text import Tokenizer
  4.  
  5. app = Flask(__name__)
  6.  
  7. def get_model():
  8. global model
  9. model = load_model('E:/faculta/Anul 3/LICENTA/SentimentModel/model_weights.h5')
  10.  
  11. print("Model loaded!")
  12.  
  13. def preprocess_text(tweet_list):
  14.  
  15. tokenizer = Tokenizer(num_words=3000)
  16. tokenizer.fit_on_texts(tweet_list)
  17.  
  18. tweet_list = tokenizer.texts_to_sequences(tweet_list)
  19. tweet_list = tokenizer.sequences_to_matrix(tweet_list, mode='binary')
  20.  
  21. return tweet_list
  22.  
  23.  
  24. print("Loading model...")
  25. get_model()
  26.  
  27. @app.route('/predict', methods=['POST', 'OPTIONS'])
  28. def post_result():
  29. message = request.get_json(force=True)
  30. tweets = []
  31.  
  32. for tweet in message:
  33. tweets.append(tweet)
  34.  
  35. processed_tweets = preprocess_text(tweets)
  36.  
  37. prediction = model.predict(processed_tweets).tolist()
  38.  
  39. avg_neg = 0
  40. avg_pos = 0
  41. for pr in prediction:
  42. avg_neg += pr[0]
  43. avg_pos += pr[1]
  44.  
  45. response = {
  46. 'prediction': {
  47. 'negative': avg_neg / len(prediction),
  48. 'positive': avg_pos / len(prediction)
  49. }
  50. }
  51.  
  52. return jsonify(response)
  53.  
  54. if __name__ == '_main_':
  55. app.run()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement