首页 文章 精选 留言 我的

精选列表

搜索[产业分析],共10007篇文章
优秀的个人博客,低调大师

Giraph源码分析(六)——Edge 分析

1.在Vertex类中,顶点的存储方式采用邻接表形式。每个顶点有 VertexId、VertexValue、OutgoingEdges和Halt,boolean型的halt变量用于记录顶点的状态,false时表示active,true表示inactive状态。 片段代码如下。 2.org.apache.giraph.edge.Edge 接口,用于存储顶点的边,每条边包含targetVertexId和edgeValue两个属性。类关系图如下: Giraph默认使用DefaultEdge类存储边,该类中有两个变量: I targetVertexId和 E value,I为顶点ID的类型,E为边的类型。注意,DefaultEdge类同时继承ReusableEdge接口,在ReusableEdge类的定义中,有如下说明文字:A complete edge, the target vertex and the edge value. Can only be one edge with a destination vertex id per edge map. This edge can be reused, that is you can set it's target vertex ID and edge value. Note: this class is useful for certain optimizations, but it's not meant to be exposed to the user. Look at MutableEdge instead. 从上述说明文字可知,edge可以被重用,只需要修改targetVertexId和value的值就行。即每个Vertex若有多条出边,只会创建一个DefaultEdge对象来存储边。3.org.apache.giraph.edge.OutEdges 用于存储每个顶点的out-edges。从Vertex类的定义可知,顶点的每条边都被存储在OutEdges类型的edge对象中,OutEdges接口的关系图如下: Giraph默认的使用ByteArrayEdges,每个顶点的所有边都被存储在byte[ ]中。当顶点向它的出边发送消息时,需要遍历Vertex类中的edges对象。示例代码如下: 注意:由DefaultEdge的定义可知,遍历getEdges时,返回的Edge对象时同一个对象,只是该对象中值改变了。下面继续查看代码来证明此观点。查看ByteArrayEdges类的iterator()方法,如下: 返回的是内部类ByteArrayEdgeIterator对象,定义如下: 总结:当顶点的出度很大时,此优化甚好,能很好的节约内存。如UK-2005数据中,顶点的最大出度为 5213。假设顶点1的出度顶点有<2 , 0.4>,<3 , 7.8> ,<5 , 6.4> 。如下代码: 输出结果为:[ 2 ][ 3 , 3 ][ 5 , 5 , 5 ]并非是希望的 [ 2 , 3 , 5 ]

优秀的个人博客,低调大师

kaldi 源码分析(七) - HCLG 分析

Kaldi 语音识别主流程: 语音识别过程 解码网络使用 HCLG.fst 的方式, 它由 4 个 fst 经过一系列算法组合而成。分别是 H.fst、C.fst、L.fst 和 G.fst 4 个 fst 文件: 1. G:语言模型,输入输出类型相同,实际是一个WFSA(acceptor接受机),为了方便与其它三个WFST进行操作,将其视为一个输入输出相同的WFST。 2. L:发音词典,输入:monophone,输出:词; 3. C:上下文相关,输入:triphone(上下文相关),输出:monophnoe; 4. H:HMM声学模型,输入:HMM transitions-ids (对 pdf-id 和 其它信息编码后的 id),输出:triphone。 通过如下组合方式来计算最终输出结果: HCLG = asl(min(rds(det(H' o min(det(C o min(det(Lo G)))))))) 上面的o表示组合,det表示确定化,min表示最小化,rds表示去除消岐符号,asl表示增加自环。 其训练顺序为 G -> L -> C -> H (因 G 语法模型基于统计生成,L 则是在 G 生成过程中使用的基础,而 C 则是基于 L 生成的 phone 上下文关系依据决策树生成的结果) 解码过程中使用 Lattice 来保存识别的候选序列,通过遍历得到得分最靠前的多条候选路径,即 N-best,即为输出文本。Lattice 本质是一个有向无环图( directed acyclic graph )。 图上的每个节点代表一个词的结束时间点,每条边代表一个可能的词,以及该词发生的声学得分和语言模型得分。 参考 语音识别中的lattice与confusion networkkaldi lattice

优秀的个人博客,低调大师

产业化:勒索软件集体发力RaaS

近半年来,RaaS(勒索软件即服务)正在成为勒索软件的一个热门趋势。大量勒索软件团伙正在积极拓展RaaS业务,寻找“加盟机构”,分工协作并分享勒索软件攻击获得的利润。 很多人认为RaaS就是一种勒索软件租赁服务,攻击实施者会付费使用RaaS团伙提供的恶意软件。事实上,租赁服务只是RaaS的冰山一角,而且以这种方式出租或出售的通常都是质量最差的勒索软件。 比较著名的勒索软件团伙通常会采用私人会员计划,外围攻击者可以在会员论坛中提交简历以申请会员资格。 对于被接纳的会员,每次成功的勒索软件攻击后,可以分得赎金的70%-80%, 勒索软件开发人员则可获得20%至30%的佣金。(编者:类似REvil这样的“大牌”勒索软件团伙甚至会在会员论坛的加密货币钱包地址中打入高达上百万美元的“保证金”) REvil的私人会员计划条款 为了对受害者的系统进行加密,会员组织会雇佣黑客提供服务,这些黑客可以访问目标网络、获得域管理员特权、收集并窃取文件,然后将获得访问所需的所有信息传递给会员组织并对其进行加密。 每次攻击后,赎金利润通常会平均分配给RaaS小组,入侵网络的黑客和勒索软件会员。 勒索软件RaaS的三大集团 目前,有超过二十个活跃的RaaS团伙帮派正在积极寻求将勒索攻击外包给勒索软件“加盟”公司。 正如威胁情报公司Intel 471在近日发布的一份报告中所言,“一些知名的勒索软件团伙结成了紧密而秘密的犯罪圈子,通过直接和私密的通讯方式联系,外人难以觉察。” 根据过去一年中对勒索软件团伙的监测,Intel 471按照知名度和活跃时间长度,将勒索软件团伙分为三大集团(层级): 已经成为勒索软件代名词的主流团伙; 老树开新花,复活的变体; 具备“篡位”潜力的全新变体。 第一集团的勒索软件团伙都是在过去几年中成功获得数亿勒索赎金的组织。 他们中的绝大多数还使用了除加密数据外的其他勒索方法,例如从受害者的网络中窃取敏感信息,并威胁要泄漏这些信息。(编者:甚至有安全专家指出,企业删除泄露数据缴纳的勒索赎金有可能超过解密数据的赎金,成为勒索软件团伙的主要收入。) 第一集团的RaaS团伙包括: DopplePaymer(用于攻击Pemex、BretagneTélécom、纽卡斯尔大学、杜塞尔多夫大学)、Egregor(Crytek、Ubisoft、Barnes&Noble); Netwalker/Mailto(Equinix、UCSF、密歇根州立大学、收费小组); REvil/Sodinokibi(Travelex、纽约机场、德克萨斯州地方政府)。 Ryuk在排名中名列前茅,在去年,大约有三分之一的勒索软件攻击中检测到了其有效载荷。 Ryuk还因使用Trickbot、Emotet和BazarLoader感染媒介将其有效载荷作为多阶段攻击的一部分而闻名,可以轻松地进入目标网络。 此外,Ryuk的分支机构还长期对美国医疗保健系统发起大规模攻击,并要求巨额赎金支付,今年初已从一名受害者那里收割了3400万美元赎金。 第二集团(复活组)的RaaS组织在2020年逐渐发展为数量更多的会员制连锁组织,并参与了多起攻击。 属于第二集团的勒索软件包括:SunCrypt、Conti、Clop、Ragnar Locker、Pysa/Mespinoza、Avaddon、DarkSide(可能是来自REvil的一个分支)等等。 正如第一集团的勒索软件团伙一样,他们也将数据泄露勒索用作辅助勒索方法。 第三集团(新兴组)的RaaS团伙向会员分发全新开发的勒索软件,但是根据Intel 471的说法,“目前安全业界对于此类勒索软件的成功攻击、攻击数量、斩获赎金金额以及缓解成本知之甚少。” 第三集团勒索软件团伙包括Nemty、Wally、XINOF、Zeoticus、CVartek.u45、Muchlove、Rush、Lolkek、Gothmog和Exorcist。 其他活跃的RaaS团体 除了英特尔471关注的勒索软件团伙外,还有很多其他新兴的RaaS团队。 例如,Dharma是一款资深RaaS,自2017年以来就一直存在,不少业界人士认为它是Crysis的勒索软件的分支,后者于2016年开始运行。 Dharma不使用数据泄漏站点,也没有关于数据被盗的广泛报道。他们的会员收取的赎金从数千美元到数十万美元不等。 于2019年9月出现的LockBit是另一个备受瞩目的RaaS业务,针对私营企业,后来又被Microsoft观察到攻击医疗和关键服务。 值得注意的是,LockBit团伙与Maze联手创建了一个勒索卡特尔组织,在攻击过程中共享数据泄漏平台并交换战术和情报,大大提高了攻击效率。LockBit勒索软件参与者在获得对受害者网络的访问权限后,只需花费五分钟即可部署有效负载。 其他Intel 471报告中没有提及的勒索软件还包括:Ragnarok、CryLock、ProLock、Nefilim和Mount Locker,这些都是活跃的勒索软件,参与过近期的一些攻击。

资源下载

更多资源
Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册