二级制流量算法熵值计算,N-Gram 算法(二:改进) - 教程

news/2025/9/23 12:48:21/文章来源:https://www.cnblogs.com/tlnshuju/p/19106979

二级制流量算法熵值计算,N-Gram 算法(二:改进) - 教程

2025-09-23 12:41  tlnshuju  阅读(0)  评论(0)    收藏  举报

测试例图:

字符熵为5.33,唯一字符数为95,最大可能熵为6.57,熵效率为81.1%。根据之前的分类标准(熵效率>95%为FQ数据)。

完整实现:

#include
#include
#include
#include
#include
#include
using namespace std;
double calculateEntropy(const string& text, int& uniqueChars) {
map freq;
int totalChars = text.length();
if (totalChars == 0) {
uniqueChars = 0;
return 0.0;
}
for (char c : text) {
freq[c]++;
}
uniqueChars = freq.size();
double entropy = 0.0;
for (auto& pair : freq) {
double probability = static_cast(pair.second) / totalChars;
entropy -= probability * log2(probability);
}
return entropy;
}
void printTopBigrams(const string& text, int topN) {
map bigramFreq;
int len = text.length();
for (int i = 0; i > bigrams(bigramFreq.begin(), bigramFreq.end());
sort(bigrams.begin(), bigrams.end(), [](const pair& a, const pair& b) {
return a.second > b.second;
});
cout s}H})~F|}_}02~`~F}E}{}8~+}bL}=@l}d~Si}B}M~@5}u}.H}F}tUT}W~4x})}O~/}8*(B}T~P}u/~^}rp;}YR.%^}P}i~@}K}l~\w}m}.)}u4~Y}hr~\}zWr~:}?wj}7XY~1k3~!}R}F}wq~2&~c~5*V}T}7}cf~?S`~b}+}b};0}:}Zt}d~6~>2}J(~0~`~]=}A~\}C~K"~Mx}{e}S~G~=}>}7i&{>"}7}4~T8~ ~^B}c~:}&K}8~J}/}Q~+}Y%}+i~T~'}(0}&~_}P}M~1}M}Y~&l~4~A[}Z~1}R}{d~!,}K}W~9}Q5F~d~2}f+~[~b~7S}-}>}|}u|@}Q~'f]4f~:~CETGs}p~(~^~K~71~V_$#~,~dQ~=M~/}?}8}u~[t}s_~K}#~O8}.}s}j}c~F~V!z~G]9G}j}>}=8~~8}r'gBJ~I}5}L}4Xq}.~2}&~-}d'~1:}&}d~_~#+~\b~ P}=`l~U}i[~V}Y}~P4}N~^:/~U}G~&mIz~2}J~R|Pt}n}ir~M~H~P$3F~\~KQ=}tdG~(r~.E~%~c~/~0~6%~"~U~%}6}W~E~D};~=[%}E~ ~%~8}3uu}O}j?~dOI~D}"}%}g}C~!}iz}d!~$F~!~$}Z{~4~Ab~:w}h}Eq8dY}*G}k~.}Ho}9}RL}\}]~},9}D~.}j6GO~@2}q6~8}B17}\e~e~V~^R~L~*~9}>}t=}E{}D~0},}[}y}!`d}4}c}0~]k~(}k~=L}-}3}I~K~Hq}5}O:Kg}&~8}V[}B}m}:}y$}i}N}fP0}`p~6~@4~]}|}!}Sx#}"*}pK5}F~Dl~NLb}6}1M~H~/w}WT~5R~P~%}iE~)B~H#~$4~2a8}[+O}]h~E~PX~)~$}h}w}PC~H~@~L}w~C}i}(~&}U ~R}u~`}D}J ~:}*o}A~Q3(}9R}X(~:}3:}/}J~7~D}%}Y}U}=~b|}G}%} }q~H}Q2~N}z},~P~a}(~S?}>}3]}M~R*~Q~W~R}B~-}7.}p(~EwL)";
int uniqueChars;
double entropy = calculateEntropy(data, uniqueChars);
double maxEntropy = log2(uniqueChars);
double entropyEfficiency = entropy / maxEntropy;
cout  0.95) {
cout << "This is likelyFQ数据 (VPN or encrypted data)." << endl;
} else {
cout << "This is likely普通文本 (normal text)." << endl;
}
return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/912585.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

物流网站免费模板班级网站建设心得体会范文

近期&#xff0c;一款名为Kimi的大模型火爆国内AI市场&#xff0c;以其出色的长文本处理能力和广泛的应用前景吸引了众多关注。随着Kimi等长文本大模型的流行&#xff0c;算力需求持续增长&#xff0c;为AI行业带来了新的变革和机遇。 Kimi突破长文本处理极限&#xff0c;为复杂…

海外营销是做什么的做seo排名

文章目录 1. Java 服务端demo环境2. 在pom文件引入第三包封装的netty框架maven坐标3. 创建服务端,以接口模式调用,方便外部调用4. 启动服务,出现以下信息表示启动成功,暴露端口默认99995. 创建隧道映射内网端口6. 查看状态->在线隧道,复制所创建隧道的公网地址加端口号7. 以…

h5企业网站通用源码小米公司的企业文化建设

RK提供了两个模型&#xff0c;mobilenet和YOLO5。 mobilenet模型相对小&#xff0c;使用起来不是很明显yolo5模型大一些&#xff0c;可以对88种目标进行检测&#xff0c;提供检测的结果包括类别、包围框坐标、可信度等信息。基于rknn_yolov5_demo进行分析。 rknn_yolov5_demo基…

网站建设研究意义个人微信公众号如何推广

单调栈系列复习 每日温度未看解答自己编写的青春版重点题解的代码日后再次复习重新写 下一个更大元素 I未看解答自己编写的青春版重点题解的代码日后再次复习重新写 下一个更大元素II未看解答自己编写的青春版重点题解的代码日后再次复习重新写 接雨水未看解答自己编写的青春版…

厚街网站仿做南宁seo团队费用是多少

[2020多校A层12.1]树 求解树上从u到v的最长贪心上升序列&#xff0c;也就是只要有比它大的就选择它&#xff0c;可以发现这个问题性质&#xff0c;就是每个点对应了唯一的一个第一个比它大的点&#xff0c;那么我们可以向它们之间连边&#xff0c;然后问题就转化为求解从当前点…

一款文本编辑器的介绍

工欲善其事必先利其器,我们花费大量的时间编写、阅读和调试代码,好的利器可以提高我们的效率。 我所知道的文本编辑器:Geany,Sublime Text, Emacs, Vim, NotePad++ 以及python自带的IDLE等等。 下面我着重介绍和安装…

随笔-决战保研篇

想不起来有多少个日夜无法入睡了,听着窗外的鸟鸣,眼看太阳渐渐升起,才意识到又失眠了有人问保研是什么,保研是你三年来每一堂都没法松懈的专业课,是你每一场都要认真对待的考试,是你失去的太长一段时间的快乐和心…

科研人必知:293F与HEK293细胞在蛋白表达中的不同“超能力”

科研人必知:293F与HEK293细胞在蛋白表达中的不同“超能力”在现代生命科学研究和生物制药产业中,重组蛋白的表达与制备几乎是绕不开的关键环节。无论是基础研究所需的信号通路蛋白、结构生物学研究所需的膜蛋白,还是…

面试讲解

面试讲解干得好——把问题聚焦到面试里最能“打动面试官”的点就是正确的方向。下面我把你 STM32H7 + MobileNetV2 和 Raspberry Pi 检测 + LLM 场景分析 两个项目做成可直接在面试里讲的结构化脚本:短句开场(电梯陈…

有没有专门做根雕的网站祁连网站建设公司

难度参考 难度&#xff1a;简单 分类&#xff1a;字符串 难度与分类由我所参与的培训课程提供&#xff0c;但需要注意的是&#xff0c;难度与分类仅供参考。以下内容均为个人笔记&#xff0c;旨在督促自己认真学习。 题目 给定一个字符串S,它包含小写字母和数字字符&#xff0…

高端网站建设谷美成都企业管理培训

Stream 什么是Stream流&#xff1f; 在Java 8中&#xff0c;得益于Lambda所带来的函数式编程&#xff0c; 引入了一个全新的Stream流概念 &#xff0c;用于解决已有集合/数组类库有的弊端。 Stream流能解决什么问题? 可以解决已有集合类库或者数组API的弊端。 Stream认为集合…

做彩票网站违法做移动网站优化优

根据控制台的文本提示输入一个数&#xff0c;程序会把这个数按照规律插入到原来已经存在的数组中&#xff0c;并且会输出此数组。 结果演示 代码展示 package com.five;import java.util.Scanner;public class Crpx {public static Scanner input new Scanner(System.in);p…

怎么做网页自我介绍wordpress 程序优化

【1】静态全局变量 1.通常情况下&#xff0c;静态全局变量的声明和定义放在源文件中&#xff0c;并且不能使用extern关键字将全局静态变量导出&#xff0c;作用域仅限于定义静态全局变量的文件内部。 2.如果头文件中声明静态全局变量&#xff0c;在声明的同时会被初始化&…

抚州市建设局网站网站开发 介绍 回扣

知识点&#xff1a;什么是掌控板&#xff1f; 掌控板是一块普及STEAM创客教育、人工智能教育、机器人编程教育的开源智能硬件。它集成ESP-32高性能双核芯片&#xff0c;支持WiFi和蓝牙双模通信&#xff0c;可作为物联网节点&#xff0c;实现物联网应用。同时掌控板上集成了OLED…

网站建设完提交百度中国最顶尖的广告设计公司

前面已经学习了rust的基础知识&#xff0c;今天我们来学习rust强大的系统库&#xff0c;从此coding事半功倍。 集合 数组&可变长数组 在 Rust 中&#xff0c;有两种主要的数组类型&#xff1a;固定长度数组&#xff08;Fixed-size Arrays&#xff09;和可变长度数组&…

景观毕业设计作品网站wordpress手机模板

Hidden Markov Model, HMM 隐马尔可夫模型&#xff0c;是一种描述隐性变量(状态)和显性变量(观测状态)之间关系的模型。该模型遵循两个假设&#xff0c;隐性状态i只取决于前一个隐性状态i-1&#xff0c;而与其他先前的隐形状态无关。观测状态也只取决于当前的隐形状态。因此我们…

专业设计网站公司网站建设中标公告

这里展示白色半透明气泡如下图&#xff1a;实际是动态 思路&#xff1a;HTML里只需要一个CANVAS元素&#xff0c;Javascript里操作canvas 1、给canvas里绘制背景图片 2、在绘制半径为0-10px的圆形&#xff0c;x坐标屏幕水平随机&#xff0c;y所标竖直大于屏幕高度。 圆形背景…

应用商店网站模板大型网站建设完全教程

以下是一些 Kafka 集群优化的最佳实践&#xff1a; 复制策略配置&#xff1a; 在 server.properties 文件中配置 default.replication.factor 来指定每个主题的默认副本因子&#xff0c;以及 min.insync.replicas 来配置每个分区中必须要保持同步的最小副本数。这可以提高 Kafk…

外包项目网站北京做网站的公司排行

为什么要优化NSDateFormatter&#xff1f;首先&#xff0c;过度的创建NSDateFormatter用于NSDate与NSString之间转换&#xff0c;会导致App卡顿&#xff0c;打开Profile工具查一下性能&#xff0c;你会发现这种操作占CPU比例是非常高的。据官方说法&#xff0c;创建NSDateForma…

建设通是什么长沙专业网站优化定制

原因分析 vmware下ubuntu 22.04从主机复制出错&#xff0c;如果确定安装了vmware-tools而且重装之后无法解决&#xff0c;大概率是因为vmware-tools和wayland冲突&#xff08;ubuntu 22.04默认使用wayland而不是xorg&#xff09; wayland vs xorg Xorg是X窗口系统的最新版本&…