def post(): title = u"Train" if request.method == 'POST': mongo_server_ip = request.form['mongo_server_ip'] mongo_server_port = request.form['mongo_server_port'] jubatus_server_ip = request.form['jubatus_server_ip'] jubatus_server_port = request.form['jubatus_server_port'] db_name = request.form['db_name'] collection_name = request.form['collection_name'] # POSTで得られる値はstr型なのでintに変換する jubatus_server_port = int(jubatus_server_port) mongo_server_port = int(mongo_server_port) # jubaclassifierのtrainの実行および表示 client = jubatus.Classifier(jubatus_server_ip, jubatus_server_port, name) lux_classifier = LuxClassifier() result_list = lux_classifier.train(client, mongo_server_ip, mongo_server_port, db_name, collection_name) # データフレームの取得 convert_mongo = convertMongo() train_sensors_dic = convert_mongo.getTrainSensorsDic( mongo_server_ip, mongo_server_port, db_name, collection_name) data_frame = convert_mongo.getTable(train_sensors_dic) # とりあえずターミナル上に表示 print data_frame return render_template('index.html', title=title, jubatus_server_ip=jubatus_server_ip, jubatus_server_port=jubatus_server_port, mongo_server_ip=mongo_server_ip, mongo_server_port=mongo_server_port, result_list=result_list) else: # エラーなどでリダイレクトしたい場合はこんな感じで print train_sensor_data return redirect(url_for('hello'))
def post(): title = u"Train" if request.method == 'POST': mongo_server_ip = request.form['mongo_server_ip'] mongo_server_port = request.form['mongo_server_port'] jubatus_server_ip = request.form['jubatus_server_ip'] jubatus_server_port = request.form['jubatus_server_port'] db_name = request.form['db_name'] collection_name = request.form['collection_name'] # POSTで得られる値はstr型なのでintに変換する jubatus_server_port = int(jubatus_server_port) mongo_server_port = int(mongo_server_port) # jubaclassifierのtrainの実行および表示 client = jubatus.Classifier(jubatus_server_ip, jubatus_server_port, name) lux_classifier = LuxClassifier() result_list = lux_classifier.train(client, mongo_server_ip, mongo_server_port, db_name, collection_name) # データフレームの取得 convert_mongo = convertMongo() train_sensors_dic = convert_mongo.getTrainSensorsDic(mongo_server_ip, mongo_server_port, db_name, collection_name) data_frame = convert_mongo.getTable(train_sensors_dic) # とりあえずターミナル上に表示 print data_frame return render_template('index.html', title = title, jubatus_server_ip = jubatus_server_ip, jubatus_server_port = jubatus_server_port, mongo_server_ip = mongo_server_ip, mongo_server_port = mongo_server_port, result_list = result_list) else: # エラーなどでリダイレクトしたい場合はこんな感じで print train_sensor_data return redirect(url_for('hello'))
#!/usr/bin/env python # coding: utf-8 host = '127.0.0.1' port = 9199 name = 'test2' import sys import json import random import jubatus from jubatus.common import Datum from getmongo import convertMongo from getpre import preMongo getmongo = convertMongo() def train(client): train_sensors_dic = getmongo.getTrainSensorsDic() train_sensor_data = [] value = 0 for line in train_sensors_dic: value = train_sensors_dic[line]['Value'] result = train_sensors_dic[line]['Result'] train_sensor_data.append((result, Datum({'Value': value}))) # training data must be shuffled on online learning! random.shuffle(train_sensor_data) # run train
from pymongo import MongoClient from getmongo import convertMongo NAME = "lux"; if __name__ == '__main__': con = MongoClient('172.16.4.84', 27017) db = con.sensordb col = db.anomaly # 1.Jubatus Serverへの接続設定 anom = client.Anomaly("127.0.0.1",9199,NAME) # 2.学習用データの準備 mongo_dic = convertMongo() dic = mongo_dic.getDic() name = '' value = 0 for line in dic: name = dic[line]['name'] value = dic[line]['value'] datum = Datum() # for (k, v) in [ # ['name', name], # ]: # datum.add_string(k, v) for (k, v) in [ ['value', value],
# coding: utf-8 # host = '192.168.33.10' host = '127.0.0.1' port = 9199 name = 'test2' import sys import json import random import jubatus from jubatus.common import Datum from getmongo import convertMongo from getpre import preMongo getmongo = convertMongo() class LuxClassifier(): def train(self, client, mongo_ip, mongo_port, db_name, collection_name): train_sensors_dic = getmongo.getTrainSensorsDic(mongo_ip, mongo_port, db_name, collection_name) train_sensor_data = [] value = 0 for line in train_sensors_dic: value = train_sensors_dic[line]['Value'] result = train_sensors_dic[line]['Result'] train_sensor_data.append((result, Datum({'Value': value}))) # training data must be shuffled on online learning!