Appscanner实验还原code1
import _pickle as pickle
from sklearn import svm, ensemble
import random
from sklearn.metrics import accuracy_score, f1_score, precision_score, recall_score, classification_report, confusion_matrix
import numpy as np ##########
########## TRAINTESTBOUNDARY = 0.75 #PICKLE_NAME = 'lg-new-new-65-withnoise-statistical.p'
PICKLE_NAME = 'trunc-dataset1-noisefree-statistical.p' print('Loading ' + PICKLE_NAME + '...')
flowlist = pickle.load(open(PICKLE_NAME, 'rb'),encoding='iso-8859-1')
print('Done...')
print('') print('Flows loaded: ' + str(len(flowlist))) p = []
r = []
f = []
a = [] for i in range(5):
########## PREPARE STUFF
examples = []
trainingexamples = []
testingexamples = [] #classifier = svm.SVC(gamma=0.001, C=100, probability=True)
classifier = ensemble.RandomForestClassifier() ########## GET FLOWS
for package, time, flow in flowlist:
examples.append((flow, package))
print('') ########## SHUFFLE DATA to ensure classes are "evenly" distributed
random.shuffle(examples) ########## TRAINING
trainingexamples = examples[:int(TRAINTESTBOUNDARY * len(examples))] X_train = []
y_train = [] for flow, package in trainingexamples:
X_train.append(flow)
y_train.append(package) print('Fitting classifier...')
classifier.fit(X_train, y_train)
print('Classifier fitted!')
print('') ########## TESTING
counter = 0
correct = 0 testingexamples = examples[int(TRAINTESTBOUNDARY * len(examples)):] X_test = []
y_test = []
y_pred = [] for flow, package in testingexamples:
X_test.append(flow)
y_test.append(package) ##### y_pred = classifier.predict(X_test)
print("########################")
print(precision_score(y_test, y_pred, average="macro"))
print(recall_score(y_test, y_pred, average="macro"))
print(f1_score(y_test, y_pred, average="macro"))
print(accuracy_score(y_test, y_pred))
print('') p.append(precision_score(y_test, y_pred, average="macro"))
r.append(recall_score(y_test, y_pred, average="macro"))
f.append(f1_score(y_test, y_pred, average="macro"))
a.append(accuracy_score(y_test, y_pred)) print(p)
print(r)
print(f)
print(a)
print('') print(np.mean(p))
print(np.mean(r))
print(np.mean(f))
print(np.mean(a))
Appscanner实验还原code1的更多相关文章
- Appscanner实验还原code3
		
# Author: Baozi #-*- codeing:utf-8 -*- import _pickle as pickle from sklearn import ensemble import ...
 - Appscanner实验还原code2
		
import _pickle as pickle from sklearn import svm, ensemble import random from sklearn.metrics import ...
 - 11.2.0.4rac service_name参数修改
		
环境介绍 )客户环境11. 两节点 rac,集群重启后,集群资源一切正常,应用cs架构,连接数据库报错,提示连接对象不存在 )分析报错原因,连接数据库方式:ip:Port/service_name方式 ...
 - RAC环境修改参数生效测试
		
本篇文档--目的:实验测试在RAC环境下,修改数据库参数与单实例相比,需要注意的地方 --举例说明,在实际生产环境下,以下参数很可能会需要修改 --在安装数据库完成后,很可能没有标准化,初始化文档,没 ...
 - vsftp -samba-autofs
		
摘要: 1.FTP文件传输协议,PAM可插拔认证模块,TFTP简单文件传输协议. 注意:iptables防火墙管理工具默认禁止了FTP传输协议的端口号 2.vsftpd服务程序三种认证模式?三种认证模 ...
 - 【故障处理】ORA-12162 错误的处理
		
[故障处理]ORA-12162: TNS:net service name is incorrectly specified 一.1 场景 今天拿到一个新的环境,可是执行sqlplus / as s ...
 - SDUT OJ 数据结构实验之二叉树四:(先序中序)还原二叉树
		
数据结构实验之二叉树四:(先序中序)还原二叉树 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Discuss Problem ...
 - SDUT 3343 数据结构实验之二叉树四:还原二叉树
		
数据结构实验之二叉树四:还原二叉树 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Problem Description 给定一棵 ...
 - SDUT-3343_数据结构实验之二叉树四:(先序中序)还原二叉树
		
数据结构实验之二叉树四:(先序中序)还原二叉树 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 给定一棵二叉树的先序遍历 ...
 
随机推荐
- centos7下安装docker(16.docker跨主机存储)
			
从业务数据的角度看,容器可以分为两类:无状态(stateless)容器和有状态(stateful)容器. 无状态:是指容器在运行的过程中不需要保存数据,每次访问的结果不依赖上一次的访问,比如提供静态页 ...
 - PHP 2 语句 数据类型 字符串函数 常量
			
在 PHP 中,有两种基本的输出方法:echo 和 print. 在本教程中,我们几乎在每个例子中都会用到 echo 和 print.因此,本节为您讲解更多关于这两条输出语句的知识. PHP echo ...
 - Mac OS 安装Wget
			
没有Wget的日子是非常难过的,强大的Mac OS 下安装Wget非常简单 下载一个Wget的源码包,http://www.gnu.org/software/wget/ 安装与配置 1. 首先下载一个 ...
 - django一般架构思维导图
			
本例已django项目名称为myblog,其下面有2个应用blog和comment介绍:
 - 在Sublime中配置JsFormat
			
JsFormat配置文件: { // exposed jsbeautifier options "indent_with_tabs": false, // 保留换行符 " ...
 - Linux kprobe调试技术使用
			
kprobe调试技术是为了便于跟踪内核函数执行状态所设计的一种轻量级内核调试技术. 利用kprobe技术,可以在内核绝大多数函数中动态插入探测点,收集调试状态所需信息而基本不影响原有执行流程. kpr ...
 - ORACLE存储过程中%TYPE和%ROWTYPE的区别
			
ORACLE存储过程中%TYPE和%ROWTYPE的区别 在存储过程中%TYPE和%ROWTYPE常用来在PL/SQL中定义变量 因为 t_emp emp%rowtype ;这个语句的意思是 定义一个 ...
 - Unity编辑器:清空控制台(Console)
			
static MethodInfo clearMethod = null; /// <summary> /// 清空log信息 /// </summary> private s ...
 - 圆角矩形shader
			
在游戏中,有时需要对一张矩形图片进行切割,绘制成圆角矩形. circelrect.vert attribute vec4 a_position; attribute vec4 a_normal; at ...
 - Netty入门(二)之PC聊天室
			
参看Netty入门(一):Netty入门(一)之webSocket聊天室 Netty4.X下载地址:http://netty.io/downloads.html 一:服务端 1.SimpleChatS ...