ctr

C# 多任务之 Task

我的未来我决定 提交于 2020-04-02 15:34:05
Task 是什么 ? Task 是一个类, 它表示一个操作不返回一个值,通常以异步方式执行。 Task 对象是一个的中心思想 基于任务的异步模式 首次引入.NET Framework 4 中。 继承层次结构 System.Object    System.Threading.Tasks.Task      System.Threading.Tasks.Task<TResult> 因为由执行工作 Task 对象通常以异步方式执行在线程池线程上而不是以同步方式在主应用程序线程,您可以使用 Status 属性,以及 IsCanceled , , IsCompleted , ,和 IsFaulted 属性,以确定任务的状态。 大多数情况下,lambda 表达式用于指定的任务是执行的工作。 Task 怎么用 ? 创建和执行任务 Task 可以多种方式创建实例。 最常用的方法,它位于开头 .NET Framework 4.5, ,是调用静态 Run 方法。 Run 方法提供了简单的方法来启动任务使用默认值,并且无需额外的参数。 下面的示例使用 Run(Action) 方法来启动循环,然后显示循环迭代数的任务︰ using System; using System.Threading.Tasks; public class Example { public static void Main()

AES五种加密模式(CBC、ECB、CTR、OCF、CFB)

折月煮酒 提交于 2020-03-18 14:07:26
分组密码有五种工作体制:1. 电码本模式(Electronic Codebook Book (ECB));2.密码分组链接模式(Cipher Block Chaining (CBC));3.计算器模式(Counter (CTR));4.密码反馈模式(Cipher FeedBack (CFB));5.输出反馈模式(Output FeedBack (OFB))。 以下逐一介绍一下: 1.电码本模式( Electronic Codebook Book (ECB) 这种模式是将整个明文分成若干段相同的小段,然后对每一小段进行加密。 2.密码分组链接模式(Cipher Block Chaining (CBC)) 这种模式是先将明文切分成若干小段,然后每一小段与初始块或者上一段的密文段进行异或运算后,再与密钥进行加密。 3.计算器模式(Counter (CTR)) 计算器模式不常见,在CTR模式中, 有一个自增的算子,这个算子用密钥加密之后的输出和明文异或的结果得到密文,相当于一次一密。这种加密方式简单快速,安全可靠,而且可以并行加密,但是 在计算器不能维持很长的情况下,密钥只能使用一次 。CTR的示意图如下所示: 4.密码反馈模式(Cipher FeedBack (CFB)) 这种模式较复杂。 5.输出反馈模式(Output FeedBack (OFB)) 这种模式较复杂。 以下附上C+

Mac Android Studio 快捷键汇总

久未见 提交于 2020-03-18 13:41:58
mac上按键符号 ⌥ : option / alt ⇧ : shift ⌃ : control ⌘ : command ⎋ : esc (一)查找/查看相关 搜索任意内容 双击 sft 当前文件查找/替换 cmd + F / cmd + R 使用cmd + G,sft + cmd + G,跳到下一个/上一个高亮的变量 全局查找/替换 sft + cmd + F / sft + cmd + R 全局搜索类 cmd + O 全局搜索类/方法/参数 opt + cmd + O 打开最近访问的文件列表 cmd + E 类/方法在全局项目中引用情况 opt + fn + F7 / cmd + 鼠标点击 类/方法在当前文件中引用情况 cmd + fn + F7 方法被调用层级结构 ctr + opt + H 查看接口的实现 opt + cmd + B 跳转至超类的方法 cmd + U 跳转至第几行 cmd + L 返回到上次编辑位置 cmd + [ / ] opt + cmd + ← / → 当前编辑的文件中结构快速导航 cmd + fn + F12 列出函数方法一系列的有效参数 cmd + P 跳转至错误或警告 fn + F2 查看类/方法的注释文档 fn + F1 (二)控制操作相关 Surround with快速调出if,for,try…catch,while等环绕代码 opt +

AES五种加密模式

微笑、不失礼 提交于 2020-03-04 07:20:51
分组密码在加密时明文分组的长度是固定的,而实用中待加密消息的数据量是不定的,数据格式可能是多种多样的。为了 能在各种应用场合安全地使用分组密码 ,通常对不同的使用目的运用不同的工作模式。 一、电码本模式(ECB) 将整个明文分成若干段相同的小段,然后对每一小段进行加密。 优:操作简单,易于实现;分组独立,易于并行;误差不会被传送。——简单,可并行,不传送误差。 缺:掩盖不了明文结构信息,难以抵抗统计分析攻击。——可对明文进行主动攻击。 二、密码分组链模式(CBC) 先将明文切分成若干小段,然后每一小段与初始块或者上一段的密文段进行异或运算后,再与密钥进行加密。 优点 :能掩盖明文结构信息,保证相同密文可得不同明文,所以不容易主动攻击,安全性好于ECB,适合传输长度长的报文,是SSL和IPSec的标准。 缺点 :(1)不利于并行计算;(2)传递误差——前一个出错则后续全错;(3)第一个明文块需要与一个初始化向量IV进行抑或,初始化向量IV的选取比较复杂。 初始化IV的选取方式 :固定IV,计数器IV,随机IV(只能得到伪随机数,用的最多),瞬时IV(难以得到瞬时值) 三、输出反馈模式(OFB) 密码算法的输出(指密码key而不是密文)会反馈到密码算法的输入中,OFB模式并不是通过密码算法对明文直接加密,而是通过将明文分组和密码算法的输出进行XOR来产生密文分组。 优点

AES CFB/OFB/ECB/CBC/CTR优缺点

不想你离开。 提交于 2020-02-28 17:18:21
AES CFB/OFB/ECB/CBC/CTR优缺点 摘自:http://www.metsky.com/archives/418.html 发表时间:2010年05月11 分类: 网络日志 作者: 天缘 AES常见加密模式有CFB/OFB/ECB/CBC/CTR,本文概述这些算法特点,让大家更快的了解AES,当然天缘也不是专业做算法的,工作中也只是使用到才会学习一点,如有错误,欢迎指出。 一、Cipher feedback(CFB) CFB算法优点: 同明文不同密文,分组密钥转换为流密码。 CFB算法缺点: 串行运算不利并行,传输错误可能导致后续传输块错误。 二、Output feedback(OFB) OFB算法优点: 同明文不同密文,分组密钥转换为流密码。 OFB算法缺点: 串行运算不利并行,传输错误可能导致后续传输块错误。 三、Electronic codebook(ECB) ECB算法优点: 简单、孤立,每个块单独运算。适合并行运算。传输错误一般只影响当前块。 ECB算法缺点: 同明文输出同密文,可能导致明文攻击。我们平时用的AES加密很多都是ECB模式的,此模式加密不需要向量IV。 四、Cipher-block chaining(CBC) CBC算法优点: 串行化运算,相同明文不同密文 CBC算法缺点: 需要初始向量,不过这其实不算缺点,下文的CTR也是需要随机数的

Task 和 ThreadPool

点点圈 提交于 2020-02-04 08:18:14
在C#中 TASK 和 ThreadPool 都可以完成多任务并行的工作。但是 TASK实际上是微软定义好的,基于 ThreadPool 的一个类。这里面微软做了很多优化工作。 Task Parallelism (Task Parallel Library) 任务并行库,又被称为TPL,本质上是一个高级版本的.NET线程池。 1、系统资源的使用效率更高,可伸缩性更好。 自动调整线程数,提供负载平衡以实现吞吐量最大化,使用资源更少。效率更高 2、对于线程或工作项,可以使用更多的编程控件。 任务和围绕它们生成的框架提供了一组丰富的 API,这些 API 支持等待、取消、继续、可靠的异常处理、详细状态、自定义计划等功能。 出于这两个原因,在 .NET Framework 中,TPL 是用于编写多线程、异步和并行代码的首选 API。 Parallel.Invoke 方法提供了一种简便方式,可同时运行任意数量的任意语句。只需为每个工作项传入 Action 委托即可。创建这些委托的最简单方式是使用 lambda 表达式。lambda 表达式可调用指定的方法,或提供内联代码。下面的示例演示一个基本的 Invoke 调用,该调用创建并启动同时运行的两个任务。 隐式创建和运行任务 Parallel.Invoke(() => { }, () => AA());    显式创建和运行任务

【论文阅读笔记】faster rcnn 代码阅读细节

[亡魂溺海] 提交于 2020-02-01 01:41:26
faster rcnn细节 bounding box regression原理 理论 faster rcnn 代码 box_coder.py 参考: https://zhuanlan.zhihu.com/p/31426458 https://www.cnblogs.com/dudumiaomiao/p/6560841.html bounding box regression原理 如图所示绿色框为飞机的Ground Truth(GT),红色为提取的positive anchors,即便红色的框被分类器识别为飞机,但是由于红色的框定位不准,这张图相当于没有正确的检测出飞机。所以我们希望采用一种方法对红色的框进行微调,使得positive anchors和GT更加接近。 理论 对于窗口一般使用四维向量 ( x , y , w , h ) (x,y,w,h) ( x , y , w , h ) 表示,分别表示窗口的中心点坐标和宽高。 对下图,红色的框A代表原始的positive Anchors,绿色的框G代表目标的GT,我们的目标是寻找一种关系,使得输入原始的anchor A经过映射得到一个跟真实窗口G更接近的回归窗口G’,即: 给定anchor A = ( A x , A y , A w , A h ) A=(A_x,A_y,A_w,A_h) A = ( A x ​ , A y ​ ,

推荐算法—ctr预估

妖精的绣舞 提交于 2020-01-27 07:54:16
文章目录 总览 传统CTR模型演化的关系图 深度学习CTR模型的演化图谱 算法比对与总结 LR——CTR模型的核心和基础 FM模型——因子分解和特征交叉 LR+GBDT——特征工程模型化的开端 FTRL——在线实时训练模型 LS-PLM(MLR)——阿里曾经的主流CTR模型 Deep Neural Network (DNN) ——多层感知机器模拟特征组合 Deep Crossing(2016年)——DNN中deep加了resnet FNN(2016年)——用FM的隐向量完成Embedding初始化 PNN (2016年)——丰富特征交叉的方式 Google Wide&Deep(2016年)——记忆能力和泛化能力的综合权衡 华为 DeepFM (2017年)——用FM代替Wide部分 Google Deep&Cross(2017年)——使用Cross网络代替Wide部分 NFM(2017年)——对Deep部分的改进 AFM(2017年)——引入Attention机制的FM 阿里DIN(2018年)——阿里加入Attention机制的深度学习网络 阿里DIEN(2018年)——DIN的“进化” 参考 总览 传统CTR模型演化的关系图 向下为了解决特征交叉的问题,演化出PLOY2,FM,FFM等模型; 向右为了使用模型化、自动化的手段解决之前特征工程的难题

计算广告丨《互联网广告算法和系统实践》读书笔记

故事扮演 提交于 2020-01-25 23:29:26
引言 这是我阅读《互联网广告算法和系统实践》的笔记,作者王勇睿,在百度阅读上可以购买,书的篇幅很短,一天就能看完。 本书主要介绍了搜索广告算法、非搜索(定向)广告算法和实时竞价广告算法,为读者梳理了广告中的常用概念如CTR、ECPM,一个广告系统如何组成,实践中还会考虑什么问题,没有涉及多的数学和算法模型。本书适合入门,但作为小白,很多内容读完后没有具体的案例消化,理解深度上有所欠缺。我想当具备了一定的实践经验后再来翻阅此书,才能融会贯通。之后的计划是继续阅读刘鹏老师的《计算广告学》。 互联网广告算法和系统实践 第一部分 互联网广告简介 1.1 广告简介 广告是由已确定的出资人通过各种媒介进行的有关产品(商品、服务和观点)的、有偿的、有组织的、综合的、劝服性的非人员的信息传播活动。 传统广告业务包括三方角色:广告主、媒体、普通受众 广告历史 1.2 互联网广告 显示广告、合约广告、定向广告、受众定向技术 担保式投放 竞价广告、广义二阶拍卖GSP、广义一阶拍卖GSP 搜索广告、上下文广告、实时竞价 广告交易平台、需求方平台、提供方平台 计费方式:点击付费CPC、销售付费CPS、千次展现付费CPM 1.3 互联网广告类型 条幅广告 邮件直接营销广告 富媒体广告 视频广告 文字链广告 社交广告 移动端广告 1.4 有效性模型 曝光:位置很重要。 关注:广告创意吸引人,借助算法定向精准投放

Faster-RCNN 解析

↘锁芯ラ 提交于 2020-01-25 23:15:34
参考文档:读懂Faster RCNN - 白裳的文章 - 知乎 https://zhuanlan.zhihu.com/p/31426458 一 :目标检测发展概述 如上图所示,目标检测在2012年之前还是使用传统的方法。之后深度学习在计算机视觉的应用,使得各种框架涌现出来,这里我们挑选最经典的进行解析,领悟其中的思想。 在之前的经验基础上,2016年提出faster-rcnn,将特征抽取,候选框选定,框位置的确定,分类都整合在一个网络中。使得综合性能有较大的提高。网络结构如下: 大体上包含四个部分: 1 Conv layer ,包含卷积,池化,激活三种层,值得注意的是这一部分的卷积不会改变输入矩阵的大小,只有pool会,经过四个pooling ,原图像变成(M/16 * N/16),这样固定尺寸以便特征图和原图对应起来。 2 RPN 抛弃了传统的滑动窗口和SS方法,使用RPN快速生成检测框和预测框的坐标系数,架构如下图所示: 3 特征图和预测框通过ROI pooling 获取固定尺寸的预测目标特征图,即利用预测框,从特征图把目标抠出来 4 分类和坐标回归 从代码的角度解释训练步骤: step 1: 初始化所有anchor,并找出有效的anchor和对应的index,anchor的个数是特征图的WxH个 def init_anchor(img_size=800, sub_sample