❶ CNN可解释性从入门到放弃
Kuo 是机器学习的前辈,看不惯几年来的调参浪潮,因此自己开疆拓土提出了一套不用反向传播(用传统方法 PCA)的 CNN。虽然我不敢苟同,但是一代人有一代人熟悉的方法,这个世界需要弄潮儿,也需要摆渡人。
尽管 CNN 已经取得了 state-of-the-art 的地位,但是仍然存在一些问题:over-parameters:大量的参数进行反向传播,数学上难以解释;numerous tricks:复杂的网络结构、Dropout 等让网络变得难以理解;sensitivitity:受到攻击时鲁棒性差。
针对这些问题 Kuo 搞了一个新的 CNN 模型 FF CNN,模型有三个 优点 :不需要反向传播,因此速度更快,资源占用少;每一个 layer 可解释,layer 也不多,没有深度学习的黑箱;是一个半监督(甚至可以是无监督)模型,不依赖于 label。
Kuo 正在改进的 缺点 有:准确率目前略低于带有 BP CNN,但是仍有提升空间;虽然没有明确说明,但是模型应该是 problem special 的,需要根据数据集特点手动调整。
此外,Kuo 设计了两个方面的实验对比 FF CNN 和 BP CNN:分类问题的准确率、受到攻击时的鲁棒性。
CNN 的含义
CNN 是一系列的特征映射。这些特征映射可以分为升维和降维两类。
大多数时候都是在降维,少数时候是在升维。其中,升维是在扫描整个图像,得到尽可能多的有效特征。降维则是从当前特征中选择最有效的特征。升维的方法有卷积。降维的方法有PCA、pooling。保持维度,增强特征的方法有激活函数、全连接(也可以用于降维)。
卷积的含义
对于卷积公式我们可以这样理解训练参数 [图片上传失败...(image-281cf0-1572431090839)]
:对于传统的 BP CNN,它是过滤器的权重(需要优化的参数),求过滤器的权重与输入数据的内积即为匹配过滤器的过程。我们还可以这样考虑,将它当作一组线性空间的基,求基与输入数据的积即为特征在低维空间的近似。
池化的含义
卷积帮助我们得到猫的模式,池化帮助我们选择猫的模式。池化会帮助我们选择众多模式中共有的部分。
比如,所有的 9 张猫都有相似的脸,池化就会抹掉其他信息,提取公共的猫脸。我们可以用统计分析模拟这个过程。
这里 Kuo 解释了为何 max pooling 比 average pooling 更有效。这是因为 max pooling 能够提取窗格内较远的信息,从而更好的表征位置不同而形状相同的信息。比如,图中的猫脸位置稍有不同,但是在 pooling 的作用下都回到了画面中心。
多层感知器的含义
多层感知器在 CNN 中充当的是分类器的角色,每一个隐藏层都是一次映射,将输入降维。我们可以这样理解,每一次映射是从 intra-class 到 class 的过程,多次映射后获得所需维度的 class。
比如,第一次映射区分了蟒蛇、眼镜蛇、加菲猫、波斯猫,第二次映射区分了蛇和猫。多次映射后得到了在我们所需维度上的分类。
我们可以使用 K-Means 模拟这一过程,对于一个 40 -> 20 -> 10 的多层感知器,我们可以使用 K-Means 聚 40 类、20 类、10 类,模拟每一个隐藏层的输入和输出。
有了每一层的输入和输出,我们可以使用最小平方回归(如上图),求解 intra-class 到 class 的映射过程。从而,将反向传递计算 [图片上传失败...(image-401532-1572431249509)]
变成了解方程计算 [图片上传失败...(image-f088c1-1572431249509)]
。
集成与叠加
我们都知道,多层的 PCA 效果较差,因此 FF CNN 无法像 BP CNN 一样通过叠加 layer 提高对特征的表征能力。但是 Kuo 认为,可以通过集成(ensemble)多种 FF CNN 来提高 FF CNN 的性能。FF CNN 就像一个简单的小机器人,BP CNN 则是一个复杂的大机器人。FF CNN 通过量取胜,BP CNN 通过复杂性取胜。
在上图中,Kuo 构建了 3 种 FF CNN,在受到攻击时,可以采用多数投票制进行集成。一个小机器人被打倒,其他的机器人仍能存活下来。此外,Kuo 还列举了根据 RGB 设计 FF CNN 集成的方法。
虽然 Kuo 没有阐述 FF CNN 在并行等领域的应用,这个模型效率高、能耗低,比 BP CNN 具有更大的并行可能,未来或许会在嵌入式等领域大放光彩。
FF CNN 与 BP CNN 的应用场景抽象
Kuo 最后的总结很正经,前辈客观地阐述了 FF 和 BP 的应用场景,批评了一些人(也就是我们这届差生 233)不分 data collection 青红皂白就上 BP 的做法。他说:
FF 是一种 data-independent 模型,因此它高效,适合解简单问题。BP 是一种 data-driven 模型,因此它耗时,适合解复杂问题。
我们拿到一个 dataset 的时候,没有人会跟你说这个 dataset 是简单还是复杂的,你的 dataset 可能不是 pure 的。
如果你用 data-driven 模型,复杂的 data 可能会覆盖简单的 data 造成过拟合。如果你用 data-independent 模型,可能会因为无法表征复杂的 data 而效果较差。
一切设计都要因 dataset 制宜。
Kuo 发表了一篇论文“ Interpretable Convolutional Neural Networks via Feedforward Design ”,表述严谨清晰,感兴趣可以了解一下。
我很佩服这位前辈,手动把消耗大量算力的训练参数自己 “解” 了出来。现在,我们不止能对结果求交叉熵,对比预测结果和实际 label 的差异,还能在每一步计算 FF CNN 求得的参数和 BP CNN 训练的参数的差异。
从上图我们可以看出,这个解和BP求得的解仍有一定距离。
https://zhuanlan.hu.com/p/51673309
❷ 求宝贝坦克通用公式!!!力和度的!如题 谢谢了
观赏价值:8 技术难度:9.5 打法7:逆风满力算角 价值:逆风攻击最实用的打法,盲点小,对手感要求小. 技术要求:半屏13度.一屏30度.1.5屏43度. 90-距离度数-逆风度数X图中系数=开炮角度 http://photo.viafriend.com/photo ... 33728/840093501.JPG 开炮力量:满力 图内注:此风因为后作用力过大,视大小要加上1-5度,注意是"加"不是减,也就是把公式改成90-距离度数+(1-5不等) (打法8参照此注) 观赏价值:8.5 技术难度:7 打法8:逆风3.0力算角 价值:逆风上风大时打用满力算法会折回,用3.0算法能解决这一问题,并且3.0算法比起满力算法盲点更小,几乎不存在. 技术要求:0.8屏40度.一屏50度. 90-距离度数-逆风度数X图中系数=开炮角度 http://photo.viafriend.com/photo ... 33728/840093501.JPG 开炮力量:3.0 观赏价值:7 技术难度7.5 打法9:89度算力 价值:右攻左木镖所特有的优势所在,在深坑中照样能发起强大攻势. 技术要求:这种打发与其说是算,不如说是背. 右风: →风5度:半屏1.75力量;一屏2.75力量.左89开炮. →风10度:半屏1.9力量;一屏3力量.左89开炮. →风15度:半屏2.1力量;一屏3.2力量.左89开炮. →风20度:半屏2.25力量;一屏3.45力量.左89开炮. +30度的→风把风力X0.5 +20度的→风把风力X0.75 +10度的→风把风力X0.9 -30度的→风把风力X1.2 -45度的→风把风力X1.25 -60度的→风把风力X1 -85度的→风把风力X0.8 左风: ←风5度:0.6屏2力量;一屏2.5力量.右89开炮. 对于左风资料不多,在这里给大家说声抱歉.特别左上风力量甚至存在盲点,所以左风的89更多的是需要玩家自身的熟练. 观赏价值:9.5 技术难度:10
❸ 2018年全球最值得关注的AI芯片初创公司
Wave Computing
Wave Computing在2018取得了不少进展,推出其第一个DataFlow处理单元,收购MIPS,创建MIPS Open,并将首批系统交付给少数客户。虽然Wave架构有一些非常有趣的功能,但我们更期待用户的大规模真实体验反馈。
Wave不是插入到服务器的加速器,它是用于图形计算的独立处理器。这种方法有利有弊。从积极的方面看,Wave不会受到GPU等加速器面临的内存瓶颈影响。从消极方面来说,安装Wave设备将是新的升级,需要完全替换传统的X86服务器,也让其成为所有服务器制造商的竞争对手。
我不认为Wave能从某个点击败NVIDIA,但该架构的设计的非常好,该公司已经表示它很快就会有客户的反馈。
图1:Wave是从上面显示的4节点“DPU”构建的系统。Wave Computing
Graphcore
Graphcore是一家资金雄厚(融资3.1亿美元,目前估值为17亿美元)的英国独角兽创业公司,拥有全球化的团队。它正在构建一种新型的图形处理器架构,其内存与其逻辑单元位于同一芯片上,这应该能够实现更高的性能。该团队产品的发布时间暂不明确,不过他们去年四月表示“几乎准备好发布”了,12月的最新信息表明它将很快开始生产。
Graphcore的投资者名单令人印象深刻,包括红杉资本、宝马、微软、博世和戴尔 科技 。
我了解了该公司的架构,它非常令人印象深刻。从边缘设备扩展到用于数据中心的训练和推理的“Colossus”双芯片封装。在最近的NeurIPS活动中,Graphcore展示了其RackScale IPU Pod,它在一个32台服务器的机架中提供超过16 petaflops的算力。虽然该公司经常声称它将提供比同类最好GPU强100倍的性能。
Graphcore表示,4“Colossus”GC2(8芯片)服务器可提供500 TFlops(每秒数万亿次操作)的混合精度性能。单个NVIDIA V100可提供125 TFlops,因此理论上4 个V100就可提供与其相同的性能。
与往常一样,细节更能发现差别,V100峰值性能仅在重构代码执行TensorCore的4x4矩阵乘法时才可用,这是Graphcore架构巧妙避免的限制。更不用说V100消耗了300瓦的电能和大量现金这一事实。
此外,Graphcore支持片上互连和“处理器内存”(片上存储器)方法,可以得到超出TFlops基准所认可的优秀性能。在一些神经网络中,如Generative Adversarial Networks,内存是瓶颈。
再次强调,我们将不得不等待真实的用户用实际应用程序来评估此体系结构。尽管如此,Graphcore的投资者名单、专家名单和台天价估值告诉我,这可能是一件好事。
图2:GraphCore展示了ImageNet数据集处理的照片。 可视化可帮助开发人员了解其训练处理占用处理周期的位置。
Habana Labs
Habana Labs是一家以色列创业公司,去年9月在第一次AI硬件峰会上宣布它已经准备好推出其首款用于推理的芯片,其创纪录的性能用于卷积神经网络图像处理。结果显示在Resnet50图像分类数据库中该处理器每秒分类15,000张图像,比NVIDIA的T4高出约50%,功耗仅为100瓦。
在2018年12月,Habana Labs的最新一轮融资由英特尔风险投资(Intel Venture Capital)领投,WRV Capital,Bessemer Venture Partners和Battery Ventures跟投,该公司的融资也由此前的4500万美元增加了7500万美元。
据悉,Habana Labs新的融资将部分用于流片其名为“Gaudi“的第二款芯片,该芯片将专注于训练市场,据称可扩展到1000多个处理器。
其它创业公司
我知道世界上有超过40家公司在为人工智能设计训练和推理芯片。我发现大多数公司都在进行简单的FMA(浮点乘法累加)和混合精度数学(整型8位和浮点16位和32位)。对此我不会感到惊讶,因为这种方法相对容易实现并且会获得一些成果,但它不会为像NVIDIA,英特尔以及少数初创公司做出不一样的架构提供持久的架构优势。
以下是一些引起我注意的公司:
中国AI芯片初创公司
中国一直试图找到一条摆脱美国半导体的方式,人工智能加速器可能会提供它一直在寻求的机会。中国设定了2030年要建立一个价值数万亿美元的人工智能产业的目标,自2012年以来,投资者已经向创业公司投入了超过40亿美元的资金。
寒武纪 科技 估值为25亿美元,是已经发布了第三代AI芯片的中国独角兽公司。寒武纪称它可以用更低的功耗提供比NVIDIA V100更好的AI性能,他们还销售其AI IP,搭载在华为麒麟970和麒麟980的处理器当中,作为AI加速硬件。
商汤 科技 也许是估值最高的AI创业公司,以在中国推广智能监控摄像头而闻名。这些安防摄像头数量超过1.75亿,包括其他公司生产的摄像头。商汤 科技 在香港成立,最近一轮融资数额达6亿美元,由阿里巴巴领投。据报道,这家初创公司的价值目前为45亿美元。
商汤 科技 与阿里巴巴、高通、本田甚至NVIDIA等主要公司建立了战略合作伙伴关系。该公司今天拥有一台超级计算机,运行大约8000块(可能是NVIDIA提供?)GPU,并计划再建造5台超级计算机来处理数百万个摄像头采集的面部识别数据。
雷锋网编译,via forbes
❹ 大学生用什么电脑合适
推荐华硕天选,
天选以二次元的活力和多元的灵魂,打造出新时代动感出位的科技产品。
搭载新一代AMD 锐龙标压处理器 Ryzen™ 5 4600H/Ryzen™ 7 4800H,
全新图灵架构独显,选配Nvidia Geforce GTX1650Ti,4GB GDDR6显存 /
GTX1660Ti,6GB GDDR6显存 /RTX2060,6GB GDDR6显存
拥有突破性的图形性能,游戏畅玩完全没有问题。正因为是高配比的游戏本,所以玩转各类游戏各种当下的热门游戏,都可以轻松运行,采用144Hz IPS电竞屏幕,高刷新率带来流畅的游戏体验,支持Adaptive-sync技术,消除画面撕裂,可以带来最为沉浸式的游戏新体验
*产品规格可能会依国家地区而有所变动,我们诚挚的建议您与当地的经销商或零售商确认目前销售产品的规格。
❺ POA(Proof of Activity)区块链共识算法
POA(Proof of Activity)算法是一个区块链的共识算法,基本原理是结合POW(Proof of work)和POS(Proof of stake)算法的特点进行工作,POW算法和POS算法的具体内容可以参考:
POW算法 : https://www.jianshu.com/p/b23cbafbbad2
POS算法 : https://blog.csdn.net/wgwgnihao/article/details/80635162
POA算法相比于其他算法可以改进网络拓扑,维持在线节点比例,需求更少的交易费同时减少共识算法过程中的能量损耗。
POA算法需求的网络中同样包含两类节点,矿工和普通参与者,其中普通参与者不一定一直保持在线。POA算法首先由矿工构造区块头,由块头选出N个币,这N个币的所有者参与后续的校验和生成块的过程。
从这里可以看到POA算法不仅与算力有关,后续的N个参与者的选举则完全由参与者在网络中所拥有的币的总数量决定。拥有越多币的参与者越有机会被选为N个后续的参与者。而后续N个参与者参与的必要条件是这N个参与者必须在线,这也是POA命名的由来,POA算法的维护取决于网络中的活跃节点(Active)。
POA算法的一个理想的基本流程是,类似于POW协议,矿工构造出一个符合难度要求的块头,通过矿工得到的块头计算衍生出N个币的编号,从区块链中追溯可以得到这几个币目前所述的参与者。矿工将这个块头发送给这N个参与者,其中前N-1个参与者对这个块进行校验和签名,最后第N个参与者校验并将交易加入到该块中,将这个区块发布出去,即完成一个区块的出块。
一个理想过程如下图所示:
在实际运行中,无法保证网络上所有参与者都在线,而不在线的参与者则无法进行校验和签名,这个无法被校验和签名的块头则会被废弃。
即在实际运行中,应该是一个矿工构造出块头后广播给各个参与者签名,同时继续重新构造新的块头,以免上一个块头衍生的N个参与者存在有某一个没有在线,而导致块头被废弃。
因此,在这种情况下,一个块是否被确认不仅与矿工的计算能力有关同时也与网络上的在线比例有关。
与纯POW相比,在与比特币(POW)同样10分钟出一个块的情况下,POA由于会有参与者不在线而产生的损耗,因此,10分钟内矿工可以构造的块的数量会更多,即块头的难度限制会降低,那么矿工在挖矿过程中会造成的能量损耗也会降低。
与纯POS相比,可以看到POA的出块流程并不会将构造区块过程中的相关信息上链,可以明显减少区块链上用于维护协议产生的冗余信息的量。
本节对上诉协议中一些参数设置进行分析
在矿工构造出块头后对块头进行校验和区块构造的N个参与者的数量选定比较类似于比特币中每一个块的出块时间的选取。比特币中选择了10分钟作为每一个块的期望出块时间并通过动态调节难度来适应。
这里N的取值同样可以选择选定值或者动态调节。动态调节需要更加复杂的协议内容,同时可能会带来区块链的数据膨胀,而复杂的协议也增加了攻击者攻击的可能性。另外暂时没有办法证明动态调节可以带来什么好处。静态调节在后续的分析(4 安全分析)中可以得到N=3的取值是比较合适的。
从上面的描述可以看到,构造新的区块的除了矿工还有从块头中衍生出来的N个币所有者。在构造出一个新的区块后,这些参与者同样应该收到一定的激励,以维持参与者保持在线状态。
矿工与参与者之间的非配比例与参与者的在线状态相关。给予参与者的激励与参与者保持在线状态的热情密切相关,越多参与者保持在线状态,能更好地维持网络的稳定。因此,可以在网络上在线参与者不够多的时候,提高参与者得到的激励分成比例,从而激发更多的参与者上线。
如何确定当前参与者的在线情况呢?可以最后第N个参与者构造区块时,将构造出来但是被废弃的块头加入到区块中,如果被丢弃的块头数量过多,说明在线人数过低,应当调节分成比例。
同时最后第N个参与者与其他参与者的分成同样需要考虑,第N个参与者需要将交易加入区块中,即需要维护UTXO池,同时第N个参与者还需要将被丢弃的块头加入新构建的区块中。
为了激励其将废弃区块头加入新构建的区块中,可以按照加入的区块头,适当增加一点小的激励。虽然加入更多的区块头,可以在下一轮的时候增加分成的比例,应当足够激励参与者往区块中加入未使用的块头了(这里参与者不可能为了增加分成而更多地加入区块头,每一个区块头都意味着一位矿工的工作量)。
一个参与者如果没有维护UTXO池则无法构造区块,但是可以参与前N-1个的签名,因此为了激励参与者维护UTXO池,作为最后一个构造区块的参与者,必须给予更多的激励,比如是其他参与者的两倍。
从3.2的描述中可以知道一个用户必须在线且维护UTXO池才可能尽可能地获得利益。这种机制势必会导致一些用户将自己的账户托管给一个中心化的机构。这个机构一直保持在线,并为用户维护其账户,在被选为构造区块的参与者时参与区块的构建并获取利益。最后该机构将收益按照某种形式进行分成。
上面说到参与者必须用自己的密钥进行签名,而托管给某个机构后,这个机构在可以用这个密钥签名构造区块的同时,也有可能使用这个密钥消费用户的财产。这里可以采用一种有限花销的密钥,这个密钥有两个功能,一个是将账户中的部分财产消费出去,另一个是将所有财产转移到一个指定账户。在托管的时候可以使用这个密钥,在被通知部分财产被花费后可以立即将所有财产转移到自己的另一个账户下,以保证财产的安全。
从上面的分析可以看到,POA的安全性与攻击者所拥有的算力和攻击者所拥有的股权有关。假设攻击者拥有的在线股权占比为 ,则攻击者的算力需要达到其他所有算力的 倍才能达成分叉。假设攻击者股权总占比为 ,网络中诚实用户的在线比例为 ,则攻击者的算力需要达到其他所有算力的 倍才能达成攻击。
攻击的分析表格如下:
从上文的分析可以看到,POA算法相比于其他算法可以改进网络拓扑,维持在线节点比例,需求更少的交易费同时减少共识算法过程中的能量损耗。同时,PoA协议的攻击成本要高于比特币的纯PoW协议。
参考文献:Proof of Activity: Extending Bitcoin’s Proof of Work via Proof of Stake
❻ 国产CPU命名为什么
现在国产处理器有6种,分别为飞腾、鲲鹏、海光、龙芯、兆芯、申威。
❼ 电脑挖矿是什么意思
电脑挖矿是用矿机(电脑)对加密货币(比如比特币Bitcoin)开采的一个过程。开采比特币就像是求解一道数学题,最先得到答案,就获得相应的奖励。 所以整个求解并验证的过程就叫做挖矿,而协助破解数字答案的设备就称为矿机,由此,运行矿机,获得收益的人群就被成为矿工。
一、比特币诞生之初,普通的计算机就可以进行挖矿操作,同时很容易由个人挖出一个块,但是随着比特币的发展、每10分钟出一个块的难度调节机制以及全网算力的不断提高,普通的计算机的计算能力已不足以挖出区块了,由此衍生出了算力更强的专业矿机,也就是ASIC矿机矿机越集中。但是单台ASIC矿机的算力依旧是有限的,面对不断提高的全网算力,矿池作为集中矿工算力的运营商也逐步的出现。比如币印矿池、viapool等等矿池。
二、如何挖矿得到收益矿机越集中? 矿工挖矿的过程就是通过运行比特币节点,同步历史账本,将最新交易记录到账本,并获得比特币区块奖励的一个过程矿机越集中。对比特币网络而言,矿工通过挖矿维护比特币网络安全。对矿工而言,通过挖矿分得比特币奖励。当前比特币爆块/出块奖励为12.5个比特币(编辑日期:2019年9月2日)。 挖矿即工作量证明PoW(Proof of Work)矿机越集中。工作量证明通过计算一个数值( nonce ),使得拼凑上交易数据后计算出的 Hash 值满足规定的上限。在节点成功找到满足的Hash值之后,会马上对全网进行广播,告知全网自己已打包到了新的区块,网络的节点收到广播打包区块后,会立刻对其进行验证。如果验证通过,则表明已经有节点成功解迷,自己就不再竞争当前区块打包,而是选择接受这个区块,记录到自己的账本中,然后进行下一个区块的竞争猜谜。网络中只有最快解谜的区块,才会添加的账本中,其他的节点进行复制,这样就保证了整个账本的唯一性。
三、算力与挖矿收益成正比吗矿机越集中?算力和收益之间的关系:
1)同难度的情况下矿机越集中,算力越高,收益越高;
2)比特币每2016个区块,约两周的时间进行一次难度调整矿机越集中。可能会因为全网难度调整,而出现算力增加,但收益反而减少的情况
3)比特币每4年奖励减半一次,在奖励减半的收益,用户挖矿的收益也随之减半矿机越集中。 算力和收益之间的计算公式: 您一天的挖矿收益=您的算力*一天的时间(86400秒)*块奖励(12.5个比特币)/(全网难度*2^32)