tao

java 泛型的内部原理:类型擦除以及类型擦除带来的问题

笑着哭i 提交于 2020-12-21 04:57:57
一、Java泛型的实现方法:类型擦除 前面已经说了,Java的泛型是伪泛型。为什么说Java的泛型是伪泛型呢?因为,在编译期间,所有的泛型信息都会被擦除掉。正确理解泛型概念的首要前提是理解类型擦出(type erasure)。 Java中的泛型基本上都是在编译器这个层次来实现的。在生成的Java字节码中是不包含泛型中的类型信息的。使用泛型的时候加上的类型参数,会在编译器在编译的时候去掉。这个过程就称为类型擦除。 如在代码中定义的List<object>和List<String>等类型,在编译后都会编程List。JVM看到的只是List,而由泛型附加的类型信息对JVM来说是不可见的。Java编译器会在编译时尽可能的发现可能出错的地方,但是仍然无法避免在运行时刻出现类型转换异常的情况。类型擦除也是Java的泛型实现方法与C++模版机制实现方式之间的重要区别。 可以通过两个简单的例子,来证明java泛型的类型擦除。 例1、 public class Test4 { public static void main(String[] args) { ArrayList <String> arrayList1= new ArrayList<String> (); arrayList1.add( "abc" ); ArrayList <Integer> arrayList2= new

2020 ICML 全部论文

∥☆過路亽.° 提交于 2020-12-01 11:33:20
All Papers 38 - ShapeCaptioner: Generative Caption Network for 3D Shapes by Learning a Mapping from Parts Detected in Multiple Views to Sentences "Zhizhong Han (University of Maryland, College Park); Chao Chen (Tsinghua University); Yu-Shen Liu (Tsinghua University)*; Matthias Zwicker (University of Maryland)" 46 - VideoIC: A Video Interactive Comments Dataset and Multimodal Multitask Learning for Comments Generation Weiying Wang (Renmin University of China)*; Jieting Chen (Renmin University of China); Qin Jin (Renmin University of China) 53 - Image Inpainting Based on Multi-frequency

协议确认机制TACK的通俗解析

随声附和 提交于 2020-11-29 10:47:44
在SIGCOMM的众多研究方向中,传输协议TCP优化是一个经典的课题,与TCP优化相关的工作必须达到一个极高的“阈值”才可能被录用。笔者论文“TACK: Improving Wireless Transport Performance by Taming Acknowledgments”作为传输协议方向的文章成功入围,多年苦心钻研没有白费,努力有被看到,不禁备感幸运。这篇文章除了得到网络界大佬谭焜博士和郑凯博士的指导外,还受到了清华大学徐恪教授也就是我博士导师的财力(支持我实习的房租)和学术上的大力支持,感激无法言表。这篇文章也受到了斯坦福大学大牛Keith Winstein的指导和支持,Keith在自己的 个人主页 是这么介绍我们的合作过程的: 今天给大家简单地对文章进行通俗化的解析,算作导读。 进入正题。 TACK技术背景:无线网络干扰难题 作为万物互联 “最后100米”的通信网络技术,无线局域网(WLAN)技术催生了各式各样新型的移动应用。无论是通过无线路由器把手机、平板、电脑和电视等智能化设备接入到互联网,还是通过WiFi直连技术架起设备与设备之间的捷径,WLAN为生活数字化和新型应用(如4K无线投屏、AR/VR交互式游戏等)的涌现,提供了无限可能。​ WLAN最常用的技术就是WiFi。WiFi通常工作在非授权公共频段(2.4GHz或5GHz),非常容易受到“外部干扰”

人像抠图已经满足不了研究者了,这个研究专门给动物抠图,毛发根根分明

心不动则不痛 提交于 2020-11-21 15:13:02
相比于人像抠图,长相各异、浑身毛茸茸的动物似乎难度更大。IEEE 会士 Jizhizi Li、陶大程等人开发了一个专门处理动物抠图的端到端抠图技术 GFM。 选自arXiv,作者:Jizhizi Li、Dacheng Tao等。机器之心编译,编辑:魔王。 在这个图像和视频逐渐成为主流媒介的时代,大家早已对「抠图」习以为常,说不定还看过几部通过「抠图」拍摄的电视剧呢。然而,相比于人像抠图,长相各异、浑身毛茸茸的动物似乎难度更大。 那么,是否有专用于动物的抠图技术呢?IEEE 会士 Jizhizi Li、陶大程等人就开发了一个专门处理动物抠图的端到端抠图技术。 动物的外观和毛皮特征给现有的方法带来了挑战,这些方法通常要求额外的用户输入(如 trimap)。 为了解决这些问题,陶大程等人研究了语义和抠图细节,将 任务分解为两个并行的子任务:高级语义分割和低级细节抠图 。具体而言,该研究提出了新型方法——Glance and Focus Matting network (GFM),使用共享编码器和两个单独的解码器以协作的方式学习两项子任务,完成端到端动物图像抠图。 研究人员还创建了一个新型动物抠图数据集 AM-2k,它包含 20 个类别的 2000 张高分辨率自然动物图像,并且具备手动标注的前景蒙版。 此外,该研究通过对前景和背景图像之间的不同差异进行综合分析

String、StringBuild、StringBuffer

笑着哭i 提交于 2020-11-19 10:47:52
String、StringBuild、StringBuffer   String、StringBuild、StringBuffer在java中都是可以操作字符串的对象,让我们来看看它们之间的区别和联系。 从结构分析   从结构上来看,它们都是final类,并且都是用char数组来存储内容的,不过StringBuild、StringBuffer没有用final和private来修饰这个数组。   StringBuild、StringBuffer都是继承AbstractStringBuilder,但StringBuffer为了解决线程安全问题,在对应的方法加上了关键字。 从线程是否安全分析   从线程安全方面来讲,String是不可变的,所以是线程安全的,因为多个线程调用String的方法都会去产生一个新的String,不会改变最初的内容。(之前我总是认为String做拼接的时候,是线程不安全的,所以String是线程不安全的,其实他指的线程安全并不是这个意思,因为拼接已经不是原子操作了,它只是指Sring调String的方法不会发生线程安全问题。)   StringBuild是非线程安全的,StringBuild也是用char数组去存储的,它其中某些方法是直接去操作这个数组的,比如append方法所以在多线程情况下是不安全的。   StringBuffer是线程安全的

「自然语言处理(NLP)」神经机器翻译(NMT)论文整理(一)

泪湿孤枕 提交于 2020-11-07 09:35:00
喜欢我们,点击上方 AINLPer ,关注一下,极品干货即刻送达! 祝大家周末愉快~~ 引言 下面是作者整理的关于神经机器翻译(NMT)相关的论文,下面这10篇文章都顶会ICLR发表的文章,能找到源码的作者也直接贴出来了,如果你对NMT感兴趣或者也在找一些相关的文章,希望能够帮助你 ~ 关于本次分享得十篇NMT文章,后台回复: NMT001 可见下载链接。 最后,帮作者点个 在 看 吧,谢谢~~ 正文开始 1 First Blood TILE: Multilingual Neural Machine Translation with Knowledge Distillation Author: Xu Tan, Yi Ren, Di He, Tao Qin, Zhou Zhao, Tie-Yan Liu Paper: openreview.net/pdf? 论文简述: 多语言机器翻译以其离线训练和在线服务的效率而备受关注。 然而,由于语言多样性和模型容量的限制,传统的多语言翻译通常会产生较低的准确性。 在本文提出了一种基于提取的方法来提高多语言机器翻译的准确性。 TILE: Mirror-Generative Neural Machine Translation Author: Zaixiang Zheng, Hao Zhou, Shujian Huang, Lei Li, Xin

2020 IJCAI 接受论文 list 分类排列(一)

风格不统一 提交于 2020-10-02 06:52:26
2020 IJCAI 接受论文 list 分类排列(一) 2020 IJCAI 接受论文 list 分类排列(二) 2020 IJCAI 接受论文 list 分类排列(三) 目录 Main track (Agent-based and Multi-agent Systems) Main track (AI Ethics) Main track (Computer Vision) Main track (Constraints and SAT) Main track (Data Mining) Main track (Heuristic Search and Game Playing) Main track (Humans and AI) Main track (Agent-based and Multi-agent Systems) A Deep Reinforcement Learning Approach to Concurrent Bilateral Negotiation Pallavi Bagga, Nicola Paoletti, Bedour Alrayes, Kostas Stathis A Multi-Objective Approach to Mitigate Negative Side Effects Sandhya Saisubramanian, Ece

2020 IJCAI 接受论文 list 分类排列(三)

隐身守侯 提交于 2020-10-02 05:51:55
2020 IJCAI 接受论文 list 分类排列(一) 2020 IJCAI 接受论文 list 分类排列(二) 2020 IJCAI 接受论文 list 分类排列(三) 目录 Main track (Machine Learning Applications) Main track (Multidisciplinary Topics and Applications) Main track (Natural Language Processing) Main track (Planning and Scheduling) Main track (Robotics) Main track (Uncertainty in AI) Special track on AI for CompSust and Human well-being Special Track on AI in FinTech Main track (Machine Learning Applications) A Label Attention Model for ICD Coding from Clinical Text Thanh Vu, Dat Quoc Nguyen, Anthony Nguyen Adversarial Mutual Information Learning for Network

《命名实体识别 NER 论文综述:那些年,我们一起追过的却仍未知道的花名 (一)》,2020-05,龚俊民(昵称: 除夕)

我是研究僧i 提交于 2020-08-20 07:06:02
原文链接: https://mp.weixin.qq.com/s/rf17rA0tBkD9elqF8nHhaw 本文介绍了NER的难点以及相应的解决方案,人机对话系统中的槽位标注也是NER任务,介绍的一些方法还是很有指导意义的。 难点1: 如何命名“命名实体” 何晗在《自然语言处理入门》一书中的总结如下: 数量无穷。比如宇宙中恒星名称、生物界中的蛋白质名称,即便是人名,也是会随着新生儿的命名不断出现新的组合。 构词灵活。比如中国工商银行,既可以称为工商银行,也可以简称为工行。一些机构名甚至存在嵌套现象,比如“联合国销毁伊拉克大规模杀伤性武器特别委员会”内部就嵌套了地名和另一个机构名。 类别模糊。一些命名实体之间的区别比较模糊,比如地名和机构名。有一些地名本身也是机构,比如“国家博物馆”,从地址角度来看属于地名,但从博物馆工作人员来看则是一个机构。 难点2: 实体的无穷 实体命名识别要面对的是排列组合可能无穷的词表。模型对 OOV 的泛化能力远低于我们的预期,所以通常做法是以统计为主,规则词典为辅。 关于基于规则和词典的方法,何晗在《自然语言处理入门》一书中将适于这种方法的实体分为两类 对于结构性较强的命名实体,比如网址、E-mail、ISBN、商品编号,电话,网址,日期,淘宝或拼多多口令等,都可以用正则表达式来处理。 对于较短的命名实体,如人名,完全可以用分词方法去确定边界