预测模型

寄存器模型中的预测机制

☆樱花仙子☆ 提交于 2019-12-19 05:04:44
在操作UVM寄存器模型时,模型中mirror值是如何更新的呢,在RAL机制中,有两种方式可以实现mirror值得更新。 (1)自动预测:所有的后门访问均是自动预测,对于前门访问,需要在map中进行设置 map.set_auto_predict(1); 这个时候,前门访问之后,会调用do_predict进行预测 (2)显示预测 自动预测有弊端,如果在系统中,一组寄存器除了可以总线驱动之外,也可以使用别的方式进行驱动,比如跳过寄存器模型,直接使用seq对reg进行操作或者其他总线来访问寄存器,这个时候自动预测是无法正确工作的,这个时候就需要使用显示预测。 显示预测核心类时候uvm_reg_predictor#(bus_transtion); 这个类是一个component类型 uvm_reg_predictor#(bus_transtion) predictor; predictor=uvm_reg_predictor#(bus_transtion) ::type_id::create::("predictor",this); predictor.map=blobk.map; predictor.adapter=adapter; monitor.uvm_analysis_port.connect(predictor.bus_in); 那么uvm_reg

PointNet 中文翻译

旧时模样 提交于 2019-12-19 02:34:45
Deep Learning on Point Sets for 3D Classification and Segmentation https://github.com/charlesq34/pointnet PointNet 摘要(Abstract) 点云是一种非常重要的几何数据结构类型。因为它的格式不规则,许多的研究人员通常会将点云数据转换为规则的3D体素网格或者图像集合。然而,这会造成大量的不必要的数据,并且很容易带来问题。在本文中,我们设计了一个直接以点云为输入的神经网络模型,这一模型很好的遵循了输入点的排列不变性。我们的网络模型叫做PointNet,它提供了一种从目标分类、零件分割到场景语义分析的通用模型结构。虽然它很简单,但PointNet非常高效而且有效。从经验上讲,它的效果甚至超过了目前最先进的水平。我们从理论上分析了PointNet学到了什么和为什么PointNet在输入有所干扰和损坏时有很强的鲁棒性。 1.引言(Introduction) 在本文中,我们探讨了能够处理点云或者网格等3D几何数据的深度学习结构。通常,为了实现权重共享和内核优化,卷积结构对输入数据的格式有非常高的要求。由于点云或网格的格式不规则,大多数研究人员通常在将这些数据输入到深度网络之前,会将其转换为规则的3D体素网格或图像集合(如视图)。然而,这种数据表示转换会导致大量不必要的数据

SSD算法的实现

一曲冷凌霜 提交于 2019-12-15 20:26:52
本文目的:介绍一个超赞的项目—— 用Keras来实现SSD算法 。 本文目录: 0 前言 1 如何训练SSD模型 2 如何评估SSD模型 3 如何微调SSD模型 4 其他注意点 0 前言 我在学习完SSD算法之后,对具体细节有很多的疑惑,记录如下: SSD的网络是怎么实现的? 已有的数据是什么样子的? 如何把一张图像打散成anchors? 如何根据标注把各anchors打上标签? 正负样本是如何定义的?匹配策略是咋回事? 困难负样本挖掘是怎么实现的? 数据是怎么喂进去的?出来的又是什么? L2 Normalization在哪,如何实现的? Atrous层在哪? SSD的损失函数是怎么实现的? 数据在模型中是怎么流动的? 数据增强是怎么实现的? 预测的结果如何在原图上画框? 如何计算模型在Pascal VOC或MS COCO上的mAP? 在github上搜索时,发现了这个超赞的项目—— 用Keras来实现SSD算法 ,非常适合那些学习了SSD算法,但具体细节有些模糊的同学(主要是我自己)。文档注释非常详细,且提供非常清晰的操作指导,比如如何训练SSD模型,如何评估模型的性能,如何在自己的数据集上微调预训练的模型等等。 为了便于快速理解,现以其中一个简单版本的SSD网络为例(ssd7_training.ipynb文件)来记录总结,具体细节可参考项目文档注释。 1 如何训练SSD模型

PixelNet: Representation of the pixels, by the pixels, and for the pixels----2017论文翻译解读

淺唱寂寞╮ 提交于 2019-12-15 04:38:42
PixelNet: Representation of the pixels, by the pixels, and for the pixels. 图1.我们的框架通过对架构(最后一层)和训练过程(历元)的微小修改,将其应用于三个不同的像素预测问题。 请注意,我们的方法为分割(左),表面法线估计(中)和边缘检测(右)的语义边界恢复精细的细节。 Abstract 我们探索了一般像素级预测问题的设计原理,从低级边缘检测到中级表面法线估计到高级语义分割。诸如全卷积网络(FCN)之类的卷积预测因子通过通过卷积处理利用相邻像素的空间冗余而获得了非凡的成功。尽管计算效率高,但我们指出,由于 空间冗余限制了从相邻像素学习的信息 ,因此这些方法在学习过程中在统计上并不是有效的。 我们证明了像素的分层采样可以使(1)在批量更新过程中增加多样性,从而加快学习速度; (2)探索复杂的非线性预测因子,提高准确性; (3)有效地训练最先进的模型tabula rasa(即“从头开始”)以完成各种像素标记任务。 我们的单一体系结构可为PASCAL-Context数据集上的语义分割,NYUDv2深度数据集上的表面法线估计以及BSDS上的边缘检测提供最新结果。 1.Introduction 许多计算机视觉问题可以表述为密集的逐像素预测问题。 其中包括边缘检测[21、64、94]和光流[5、30、86]等低级任务

论文翻译-语音合成:Tacotron 2

北战南征 提交于 2019-12-14 09:10:34
原论文地址:https://arxiv.org/abs/1712.05884 摘要 这篇论文描述了Tacotron 2, 一个直接从文本合成语音的神经网络架构。系统由两部分构成,一个循环seq2seq结构的特征预测网络,把字符向量映射到梅尔声谱图,后接一个WaveNet模型的修订版,把梅尔声谱图合成为时域波形。我们的模型得到了4.53的平均意见得分(MOS),而专业录制语音的MOS得分是4.58。为了验证模型设计,我们对系统的关键组件作了剥离实验研究,并且评估了使用梅尔频谱替代语言学、音长和F0特征作为WaveNet输入带来的影响。我们进一步展示了使用紧凑的声学中间表征可以显著地简化WaveNet架构。 索引词: Tacotron 2, WaveNet, text-to-speech 1. 介绍 从文本生成自然语音(语音合成,TTS)研究了几十年[1]仍然是一项有挑战的任务。这一领域的主导技术随着时代的发展不断更迭。单元挑选和拼接式合成方法,是一项把预先录制的语音波形的小片段缝合在一起的技术[2, 3],过去很多年中一直代表了最高水平。统计参数语音合成方法[4, 5, 6, 7],是直接生成语音特征的平滑轨迹,然后交由声码器来合成语音,这种方法解决了拼接合成方法中出现的边界人工痕迹的很多问题。然而由这些方法构造的系统生成的语音与人类语音相比,经常模糊不清并且不自然。 WaveNet

一文让你彻底理解准确率,精准率,召回率,真正率,假正率,ROC/AUC

馋奶兔 提交于 2019-12-12 21:13:05
参考资料: https://zhuanlan.zhihu.com/p/46714763 ROC/AUC作为机器学习的评估指标非常重要,也是面试中经常出现的问题(80%都会问到)。其实,理解它并不是非常难,但是好多朋友都遇到了一个相同的问题,那就是:每次看书的时候都很明白,但回过头就忘了,经常容易将概念弄混。还有的朋友面试之前背下来了,但是一紧张大脑一片空白全忘了,导致回答的很差。 我在之前的面试过程中也遇到过类似的问题,我的面试经验是:一般笔试题遇到选择题基本都会考这个率,那个率,或者给一个场景让你选用哪个。面试过程中也被问过很多次,比如什么是AUC/ROC?横轴纵轴都代表什么?有什么优点?为什么要使用它? 我记得在我第一次回答的时候,我将准确率,精准率,召回率等概念混淆了,最后一团乱。回去以后我从头到尾梳理了一遍所有相关概念,后面的面试基本都回答地很好。现在想将自己的一些理解分享给大家,希望读完本篇可以彻底记住ROC/AUC的概念。 ▌什么是性能度量? 我们都知道机器学习要建模,但是对于模型性能的好坏(即模型的泛化能力),我们并不知道是怎样的,很可能这个模型就是一个差的模型,泛化能力弱,对测试集不能很好的预测或分类。那么如何知道这个模型是好是坏呢?我们必须有个评判的标准。为了了解模型的泛化能力,我们需要用某个指标来衡量,这就是性能度量的意义。有了一个指标,我们就可以对比不同模型了

CRF可以应用于数值型数据吗?

萝らか妹 提交于 2019-12-10 11:54:39
最近在做车辆的轨迹预测,采用的LSTM,seq2seq的网络结构,训练的结果显示,总体的Loss曲线是收敛的,问题在于,预测的轨迹数值有跳动,了解到CEF可以学习到标签之间的依赖关系。所以想请教一下各位,可不可以将CRF模型应用于数值型的数据?有没有哪位遇到过相似的问题? 来源: CSDN 作者: 国服程咬金 链接: https://blog.csdn.net/weixin_40548480/article/details/103470766

XGBoost 引入 - 提升树

坚强是说给别人听的谎言 提交于 2019-12-09 22:55:45
认识提升树 这个boosting 跟 Adaboost 不同. Adaboost 是通过 上一轮的误差率来动态给定一下轮样本不同的权重 来学习不同的模型. 现在的方式, 更多是基于 残差 的方式来训练. 一个比较现实的栗子是, 我训练了一个模型 m1, 但发现, 效果不怎么好, 得到的残差比较大. 但是呢, 我又不想将 m1 废弃掉. 如何才能改进呢? 这是一个非常现实的问题. 解决的方案可以是, 基于m1 的基础上再做训练...就这样, 通过一个个的模型进行训练, 下一个模型来弥补上一个模型的"不足" 就以决策树而言, 提升树的模型可以写为: \(f_M(x) = \sum \limits _{m}^M T(x, \Theta_m)\) M 表示树的棵树 T( ) 表示决策树, \(\Theta\) 是 "\Theta" 它的基本思想是, 通过已知前一棵树的情况下, 来决定下一棵树的形状 \(f_m(x) = f_{m-1}(x) + T(x, \Theta_m)\) 而参数的求解: \(\hat \Theta = arg \ min _{\Theta_m} \sum \limits _{i=1}^N L(y_i, f_{m-1}(x) + T(x_i; \Theta_m))\) 以回归问题为栗子,当损失函数用误差的平方来衡量时: \(L(y, f(x)) = (y-f(x))

CTR预估-GBDT与LR实现

天大地大妈咪最大 提交于 2019-12-09 20:05:03
1.来源   本质上 GBDT+LR 是一种具有 stacking 思想的二分类器模型,所以可以用来解决二分类问题。这个方法出自于 Facebook 2014 年的论文 Practical Lessons from Predicting Clicks on Ads at Facebook 。 2.使用场景   GBDT+LR 使用最广泛的场景是 CTR 点击率预估,即预测当给用户推送的广告会不会被用户点击。点击率预估模型涉及的训练样本一般是上亿级别,样本量大,模型常采用速度较快的 LR。但 LR 是线性模型,学习能力有限,此时特征工程尤其重要。现有的特征工程实验,主要集中在寻找到有区分度的特征、特征组合,折腾一圈未必会带来效果提升。GBDT 算法的特点正好可以用来发掘有区分度的特征、特征组合,减少特征工程中人力成本。 3.CTR的流程   主要包括两大部分:离线部分、在线部分,其中离线部分目标主要是训练出可用模型,而在线部分则考虑模型上线后,性能可能随时间而出现下降,若出现这种情况,可选择使用 Online-Learning 来在线更新模型: 3.1离线部分 数据收集:主要收集和业务相关的数据,通常会有专门的同事在 app 位置进行埋点,拿到业务数据 预处理:对埋点拿到的业务数据进行去脏去重; 构造数据集:经过预处理的业务数据,构造数据集,在切分训练、测试

Community structure enhanced cascade prediction 笔记

本小妞迷上赌 提交于 2019-12-09 14:41:02
目录 一、摘要 二、杂记 三、模型思想 四、实验 五、其他 六、参考文献 一、摘要 深度学习不用去手工提取特征,但是现有深度模型没有在传播预测任务中使用社区结构。所以提出一个CS-RNN框架,把社区在传播中的影响考虑在内,做传播预测。 二、杂记 贡献: ①引入community structure information;②CS-RNN模型包含社区结构标签预测层(community structure labels prediction layer),可以预测下一个活跃节点的社区结构标签;③参数健壮、结果好;(PS:原文中3、4点被总结到此处第3点了,单从此处来看创新并不是很吸引人。) 参考文献结论: strong community 通过加强局部和社区内部的传播,有利于信息进行全局传播。 文章缺点: 参考文献列举了随着神经网络发展产生的一些深度模型,但是并没有描述这些深度模型的侧重点或者缺点。(PS:那如何突出自己工作的重要性) 三、模型思想 3.1 问题定义: Network: \(G=(V,E)\) , \(V\) 是顶点代表用户, \(E\) 是边代表用户间关系; Cascade: \(S=\{\left(t_{i}, v_{i}\right) | v_{i} \in V, t_{i} \in[0,+\infty), t_i \le t_{i+1}, i=1,2,...,N