一文看尽2018全年AI技术大突破

2023-11-12

安妮 夏乙 发自 凹非寺
量子位 出品 | 公众号 QbitAI

640?wx_fmt=jpeg

2018,仍是AI领域激动人心的一年。

这一年成为NLP研究的分水岭,各种突破接连不断;CV领域同样精彩纷呈,与四年前相比GAN生成的假脸逼真到让人不敢相信;新工具、新框架的出现,也让这个领域的明天特别让人期待……

近日,Analytics Vidhya发布了一份2018人工智能技术总结与2019趋势预测报告,原文作者PRANAV DAR。量子位在保留这个报告架构的基础上,对内容进行了重新编辑和补充。

这份报告总结和梳理了全年主要AI技术领域的重大进展,同时也给出了相关的资源地址,以便大家更好的使用、查询。

报告共涉及了五个主要部分:

  • 自然语言处理(NLP)

  • 计算机视觉

  • 工具和库

  • 强化学习

  • AI道德

下面,我们就逐一来盘点和展望,嘿喂狗~

自然语言处理(NLP)

640?wx_fmt=jpeg

2018年在NLP历史上的特殊地位,已经毋庸置疑。

这份报告认为,这一年正是NLP的分水岭。2018年里,NLP领域的突破接连不断:ULMFiT、ELMo、最近大热的BERT……

迁移学习成了NLP进展的重要推动力。从一个预训练模型开始,不断去适应新的数据,带来了无尽的潜力,甚至有“NLP领域的ImageNet时代已经到来”一说。

■ ULMFiT

这个缩写,代表“通用语言模型的微调”,出自ACL 2018论文:Universal Language Model Fine-tuning for Text Classification。

640?wx_fmt=png

正是这篇论文,打响了今年NLP迁移学习狂欢的第一枪。

论文两名作者一是Fast.ai创始人Jeremy Howard,在迁移学习上经验丰富;一是自然语言处理方向的博士生Sebastian Ruder,他的NLP博客几乎所有同行都在读。

两个人的专长综合起来,就有了ULMFiT。想要搞定一项NLP任务,不再需要从0开始训练模型,拿来ULMFiT,用少量数据微调一下,它就可以在新任务上实现更好的性能。

640?wx_fmt=png

他们的方法,在六项文本分类任务上超越了之前最先进的模型。

详细的说明可以读他们的论文:

https://arxiv.org/abs/1801.06146

Fast.ai网站上放出了训练脚本、模型等:

http://nlp.fast.ai/category/classification.html

■ ELMo

这个名字,当然不是指《芝麻街》里那个角色,而是“语言模型的词嵌入”,出自艾伦人工智能研究院和华盛顿大学的论文Deep contextualized word representations,NLP顶会NAACL HLT 2018的优秀论文之一。

640?wx_fmt=png

ELMo用语言模型(language model)来获取词嵌入,同时也把词语所处句、段的语境考虑进来。

这种语境化的词语表示,能够体现一个词在语法语义用法上的复杂特征,也能体现它在不同语境下如何变化。

当然,ELMo也在试验中展示出了强大功效。把ELMo用到已有的NLP模型上,能够带来各种任务上的性能提升。比如在机器问答数据集SQuAD上,用ELMo能让此前最厉害的模型成绩在提高4.7个百分点。

640?wx_fmt=png

这里有ELMo的更多介绍和资源:

https://allennlp.org/elmo

■ BERT

说BERT是2018年最火的NLP模型,一点也不为过,它甚至被称为NLP新时代的开端。

640?wx_fmt=png

它由Google推出,全称是Bidirectional Encoder Representations from Transformers,意思是来自Transformer的双向编码器表示,也是一种预训练语言表示的方法。

从性能上来看,没有哪个模型能与BERT一战。它在11项NLP任务上都取得了最顶尖成绩,到现在,SQuAD 2.0前10名只有一个不是BERT变体:

640?wx_fmt=png

如果你还没有读过BERT的论文,真的应该在2018年结束前补完这一课:

https://arxiv.org/abs/1810.04805

另外,Google官方开源了训练代码和预训练模型

https://github.com/google-research/bert

如果你是PyTorch党,也不怕。这里还有官方推荐的PyTorch重实现和转换脚本

https://github.com/huggingface/pytorch-pretrained-BERT

■ PyText

BERT之后,NLP圈在2018年还能收获什么惊喜?答案是,一款新工具。

640?wx_fmt=png

就在上周末,Facebook开源了自家工程师们一直在用的NLP建模框架PyText。这个框架,每天要为Facebook旗下各种应用处理超过10亿次NLP任务,是一个工业级的工具包。

(Facebook开源新NLP框架:简化部署流程,大规模应用也OK)

PyText基于PyTorch,能够加速从研究到应用的进度,从模型的研究到完整实施只需要几天时间。框架里还包含了一些预训练模型,可以直接拿来处理文本分类、序列标注等任务。

想试试?开源地址在此:

https://github.com/facebookresearch/pytext

■ Duplex

如果前面这些研究对你来说都太抽象的话,Duplex则是NLP进展的最生动例证。

名字有点陌生?不过这个产品你一定听说过,它就是Google在2018年I/O开发者大会上展示的“打电话AI”。

640?wx_fmt=png

它能主动打电话给美发店、餐馆预约服务,全程流畅交流,简直以假乱真。Google董事长John Hennessy后来称之为“非凡的突破”,还说:“在预约领域,这个AI已经通过了图灵测试。”

Duplex在多轮对话中表现出的理解能力、合成语音的自然程度,都是NLP目前水平的体现。

如果你还没看过它的视频……

■ 2019年展望

NLP在2019年会怎么样?我们借用一下ULMFiT作者Sebastian Ruder的展望:

  • 预训练语言模型嵌入将无处不在:不用预训练模型,从头开始训练达到顶尖水平的模型,将十分罕见。

  • 能编码专业信息的预训练表示将会出现,这是语言模型嵌入的一种补充。到时候,我们就能根据任务需要,把不同类型的预训练表示结合起来。

  • 在多语言应用、跨语言模型上,将有更多研究。特别是在跨语言词嵌入的基础上,深度预训练跨语言表示将会出现。

计算机视觉

今年,无论是图像还是视频方向都有大量新研究问世,有三大研究曾在CV圈掀起了集体波澜。

■ BigGAN

今年9月,当搭载BigGAN的双盲评审中的ICLR 2019论文现身,行家们就沸腾了:简直看不出这是GAN自己生成的

640?wx_fmt=png

640?wx_fmt=png

在计算机图像研究史上,BigGAN的效果比前人进步了一大截。比如在ImageNet上进行128×128分辨率的训练后,它的Inception Score(IS)得分166.3,是之前最佳得分52.52分3倍

除了搞定128×128小图之外,BigGAN还能直接在256×256、512×512的ImageNet数据上训练,生成更让人信服的样本。

640?wx_fmt=png

在论文中研究人员揭秘,BigGAN的惊人效果背后,真的付出了金钱的代价,最多要用512个TPU训练,费用可达11万美元,合人民币76万元。

不止是模型参数多,训练规模也是有GAN以来最大的。它的参数是前人的2-4倍,批次大小是前人的8倍。

相关地址

研究论文:
https://openreview.net/pdf?id=B1xsqj09Fm

延伸阅读

惊!史上最佳GAN现身,超真实AI假照片,行家们都沸腾了

训练史上最佳GAN用了512块TPU,一作自述:这不是算法进步,是算力进步

史上最强GAN:训练费10万起,现在免费体验,画风鬼畜又逼真

■ Fast.ai 18分钟训练整个ImageNet

在完整的ImageNet上训练一个模型需要多久?各大公司不断下血本刷新着记录。

不过,也有不那么烧计算资源的平民版。

今年8月,在线深度学习课程Fast.ai的创始人Jeremy Howard和自己的学生,用租来的亚马逊AWS的云计算资源,18分钟在ImageNet上将图像分类模型训练到了93%的准确率。

640?wx_fmt=png

前前后后,Fast.ai团队只用了16个AWS云实例,每个实例搭载8块英伟达V100 GPU,结果比Google用TPU Pod在斯坦福DAWNBench测试上达到的速度还要快40%。

这样拔群的成绩,成本价只需要40美元,Fast.ai在博客中将其称作人人可实现。

640?wx_fmt=png

相关地址:

Fast.ai博客介绍:
https://www.fast.ai/2018/08/10/fastai-diu-imagenet/

延伸阅读

40美元18分钟训练整个ImageNet!人人可实现

224秒!ImageNet上训练ResNet-50最佳战绩出炉,索尼下血本破纪录

■ vid2vid技术

今年8月,英伟达和MIT的研究团队高出一个超逼真高清视频生成AI。

只要一幅动态的语义地图,就可获得和真实世界几乎一模一样的视频。换句话说,只要把你心中的场景勾勒出来,无需实拍,电影级的视频就可以自动P出来:

640?wx_fmt=gif

除了街景,人脸也可生成:

640?wx_fmt=gif

这背后的vid2vid技术,是一种在生成对抗性学习框架下的新方法:精心设计的生成器和鉴别器架构,再加上时空对抗目标。

这种方法可以在分割蒙版、素描草图、人体姿势等多种输入格式上,实现高分辨率、逼真、时间相干的视频效果。

好消息,vid2vid现已被英伟达开源。

相关地址

研究论文:
https://tcwang0509.github.io/vid2vid/paper_vid2vid.pdf

GitHub地址
https://github.com/NVIDIA/vid2vid

延伸阅读

真实到可怕!英伟达MIT造出马良的神笔

一文看尽深度学习这半年

■ 2019趋势展望

Analytics Vidhya预计,明年在计算机视觉领域,对现有方法的改进和增强的研究可能多于创造新方法。

在美国,政府对无人机的限令可能会稍微“松绑”,开放程度可能增加。而今年大火的自监督学习明年可能会应用到更多研究中。

Analytics Vidhya对视觉领域也有一些期待,目前来看,在CVPR和ICML等国际顶会上公布最新研究成果,在工业界的应用情况还不乐观。他希望在2019年,能看到更多的研究在实际场景中落地。

Analytics Vidhya预计,视觉问答(Visual Question Answering,VQA)技术和视觉对话系统可能会在各种实际应用中首次亮相。

640?wx_fmt=gif

工具和框架

哪种工具最好?哪个框架代表了未来?这都是一个个能永远争论下去的话题。

没有异议的是,不管争辩的结果是什么,我们都需要掌握和了解最新的工具,否则就有可能被行业所抛弃。

今年,机器学习领域的工具和框架仍在快速的发展,下面就是这方面的总结和展望。

■ PyTorch 1.0

640?wx_fmt=png

根据10月GitHub发布的2018年度报告,PyTorch在增长最快的开源项目排行上,名列第二。也是唯一入围的深度学习框架。

作为谷歌TensorFlow最大的“劲敌”,PyTorch其实是一个新兵,2017年1月19日才正式发布。2018年5月,PyTorch和Caffe2整合,成为新一代PyTorch 1.0,竞争力更进一步。

相较而言,PyTorch速度快而且非常灵活,在GitHub上有越来越多的开码都采用了PyTorch框架。可以预见,明年PyTorch会更加普及。

至于PyTorch和TensorFlow怎么选择?在我们之前发过的一篇报道里,不少大佬站PyTorch。

实际上,两个框架越来越像。前Google Brain深度学习研究员,Denny Britz认为,大多数情况下,选择哪一个深度学习框架,其实影响没那么大。

相关地址

PyTorch官网:
https://pytorch.org/

延伸阅读

PyTorch还是TensorFlow?这有一份新手指南

尝鲜PyTorch 1.0必备伴侣

TensorFlow王位不保?ICLR投稿论文PyTorch出镜率快要反超了

■ AutoML

很多人将AutoML称为深度学习的新方式,认为它改变了整个系统。有了AutoML,我们就不再需要设计复杂的深度学习网络。

今年1月17日,谷歌推出Cloud AutoML服务,把自家的AutoML技术通过云平台对外发布,即便你不懂机器学习,也能训练出一个定制化的机器学习模型。

不过AutoML并不是谷歌的专利。过去几年,很多公司都在涉足这个领域,比方国外有RapidMiner、KNIME、DataRobot和H2O.ai等等。

除了这些公司的产品,还有一个开源库要介绍给大家:

Auto Keras!

这是一个用于执行AutoML任务的开源库,意在让更多人即便没有人工智能的专家背景,也能搞定机器学习这件事。

640?wx_fmt=png

这个库的作者是美国德州农工大学(Texas A&M University)助理教授胡侠和他的两名博士生:金海峰、Qingquan Song。Auto Keras直击谷歌AutoML的三大缺陷:

  • 第一,还得付钱。

  • 第二,因为在云上,还得配置Docker容器和Kubernetes。

  • 第三,服务商(Google)保证不了你数据安全和隐私。

相关地址

官网:
https://autokeras.com/

GitHub:
https://github.com/jhfjhfj1/autokeras

延伸阅读

一文看懂深度学习新王者「AutoML」

开源的“谷歌AutoML杀手”来了

谷歌放大招!全自动训练AI无需写代码,全靠刚发布的Cloud AutoML

■ TensorFlow.js

今年3月底的TensorFlow开发者会峰会2018上,TensorFlow.js正式发布。

这是一个面向JavaScript开发者的机器学习框架,可以完全在浏览器中定义和训练模型,也能导入离线训练的TensorFlow和Keras模型进行预测,还对WebGL实现无缝支持。

在浏览器中使用TensorFlow.js可以扩展更多的应用场景,包括展开交互式的机器学习、所有数据都保存在客户端的情况等。

640?wx_fmt=png

实际上,这个新发布的TensorFlow.js,就是基于之前的deeplearn.js,只不过被整合进TensorFlow之中。

谷歌还给了几个TensorFlow.js的应用案例。比如借用你的摄像头,来玩经典游戏:吃豆人(Pac-Man)。

相关地址

官网:
https://js.tensorflow.org/

延伸阅读

有笔记本就能玩的体感游戏!TensorFlow.js实现体感格斗教程

谷歌AI魔镜:看你手舞足蹈,就召唤出8万幅照片学你跳

我不是偷拍的变态,只是在找表情包的本尊

■ 2019趋势展望

在工具这个主题中,最受关注的就是AutoML。因为这是一个真正会改变游戏规则的核心技术。在此,引用H2O.ai的大神Marios Michailidis(KazAnova)对明年AutoML领域的展望。

  • 以智能可视化、提供洞见等方式,帮助描述和理解数据

  • 为数据集发现、构建、提取更好的特征

  • 快速构建更强大、更智能的预测模型

  • 通过机器学习可解释性,弥补黑盒建模带来的差距

  • 推动这些模型的产生

强化学习

640?wx_fmt=png

强化学习还有很长的路要走。

除了偶尔成为头条新闻之外,目前强化学习领域还缺乏真正的突破。强化学习的研究非常依赖数学,而且还没有形成真正的行业应用。

希望明年可以看到更多RL的实际用例。现在我每个月都会特别关注一下强化学习的进展,以期看到未来可能会有什么大事发生。

■ OpenAI的强化学习入门教程

全无机器学习基础的人类,现在也可以迅速上手强化学习。

11月初,OpenAI发布了强化学习 (RL) 入门教程:Spinning Up。从一套重要概念,到一系列关键算法实现代码,再到热身练习,每一步都以清晰简明为上,全程站在初学者视角。

640?wx_fmt=png

团队表示,目前还没有一套比较通用的强化学习教材,RL领域只有一小撮人进得去。这样的状态要改变啊,因为强化学习真的很有用。

相关地址

教程入口:
https://spinningup.openai.com/en/latest/index.html

GitHub传送门:
https://github.com/openai/spinningup

延伸阅读

强化学习如何入门?看这篇文章就够了

人人能上手:OpenAI发射初学者友好的强化学习教程 | 代码简约易懂

强化学习算法Q-learning入门:教电脑玩“抓住芝士”小游戏

■ 谷歌的强化学习新框架「多巴胺」

Dopamine(多巴胺),这是谷歌今年8月发布的强化学习开源框架,基于TensorFlow。

640?wx_fmt=png

新框架在设计时就秉承着清晰简洁的理念,所以代码相对紧凑,大约是15个Python文件,基于Arcade Learning Environment (ALE)基准,整合了DQN、C51、 Rainbow agent精简版和ICML 2018上的Implicit Quantile Networks。

为了让研究人员能快速比较自己的想法和已有的方法,该框架提供了DQN、C51、 Rainbow agent精简版和Implicit Quantile Networks的玩ALE基准下的那60个雅达利游戏的完整训练数据。

另外,还有一组Dopamine的教学colab。

相关地址

Dopamine谷歌博客:
https://ai.googleblog.com/2018/08/introducing-new-framework-for-flexible.html

Dopamine github下载:
https://github.com/google/dopamine/tree/master/docs#downloads

colabs:
https://github.com/google/dopamine/blob/master/dopamine/colab/README.md

游戏训练可视化网页:
https://google.github.io/dopamine/baselines/plots.html

■ 2019趋势展望

DataHack Summit 2018发言人、ArxivInsights创始人Xander Steenbrugge,也是一名强化学习专家,以下是来自他的总结和展望。

1、由于辅助学习任务越来越多,增加了稀疏的外在奖励,样本的复杂性将继续提高。在非常稀疏的奖励环境中,效果非常好。

2、正因如此,直接在物理世界训练将越来越可行,替代当前大多先在虚拟环境中训练的方法。我预测2019年,会出现第一个只由深度学习训练,没有人工参与而且表现出色的机器人demo出现。

3、在DeepMind把AlphaGo的故事延续到生物领域之后(AlphaFold),我相信强化学习将逐步在学术领域外创造实际的商业价值。例如新药探索、电子芯片架构优化、车辆等等……

4、强化学习会有一个明显的转变,以前在训练数据上测试智能体的行为将不再视为“允许”。泛化指标将成为核心,就像监督学习一样。

AI道德

AI被滥用事故在2018年被频频爆出:Facebook AI助特朗普当选美国总统、Goggle与美国军方联手开发AI武器、微软为移民和海关执法局(ICE)提供云计算和人脸识别服务……

每一次事故都会重新掀起一波对AI道德准则的讨论高潮,一些硅谷科技公司也再次期间制定了企业AI准则。

Analytics Vidhya认为,AI道德现在还是一个灰色地带,目前还没有所有人可以遵循的框架,2019年将有更多企业和政府制定相关条例。

AI道德规范的制定,现在才刚刚起步。

640?wx_fmt=png

延伸阅读

谷歌将禁止AI用于武器,李飞飞等“反对与军方合作”事件始末

刚刚,Google发布AI七原则:不开发武器,但会继续与军方合作

AI助特朗普当选?FB史上最大数据滥用曝光,牵出ACL终身奖得主

作者系网易新闻·网易号“各有态度”签约作者



活动报名

640?wx_fmt=jpeg

加入社群

量子位AI社群开始招募啦,欢迎对AI感兴趣的同学,在量子位公众号(QbitAI)对话界面回复关键字“交流群”,获取入群方式;


此外,量子位专业细分群(自动驾驶、CV、NLP、机器学习等)正在招募,面向正在从事相关领域的工程师及研究人员。


进专业群请在量子位公众号(QbitAI)对话界面回复关键字“专业群”,获取入群方式。(专业群审核较严,敬请谅解)

诚挚招聘

量子位正在招募编辑/记者,工作地点在北京中关村。期待有才气、有热情的同学加入我们!相关细节,请在量子位公众号(QbitAI)对话界面,回复“招聘”两个字。

640?wx_fmt=jpeg

量子位 QbitAI · 头条号签约作者

վ'ᴗ' ի 追踪AI技术和产品新动态


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

一文看尽2018全年AI技术大突破 的相关文章

  • SQL 查询优化之 WHERE 和 LIMIT 使用索引的奥秘

    奇怪的慢sql 我们先来看2条sql 第一条 select from acct trans log WHERE acct id 1000000000009000757 order by create time desc limit 0 10
  • 为什么Java源文件中的public类 必须与文件名相同

    每个编译单元 文件 只能有一个public类 这么做的意思是 每个编译单元只能有一个公开的接口 而这个接口就由其public类来表示 而非public修饰的类都是为了给public修饰的类所做支撑的 从软件架构设计和安全性设计上得出的结论
  • 最新Mysql8.0.27安装配置基本使用

    目录 下载MySQL 配置目录文件 初始化Mysql 安装Mysql 配置环境 基本使用 下载MySQL 官方下载地址 https dev mysql com downloads 下载后解压 路径自定义 并新建文件夹data 配置目录文件
  • Vulkan教程翻译之十 创建 Descriptor Set

    原文链接 https vulkan lunarg com doc sdk 1 2 131 2 windows tutorial html 09 init descriptor set html 创建 Descriptor Set 这一章节的
  • haproxy搭建web集群

    目录 HAProxy HAProxy的主要特性 HAProxy负载均衡调度策略 HAProxy的配置文件解读 HAProxy部署 1 安装环境 2 下载haproxy安装包 并安装 3 新建haproxy用户 并在 etc 下创建hapro
  • linux 目录创建与删除 centos7

    root wyflinux tmp cd tmp 进入 tmp 目录 选择在tmp联系目录创建 root wyflinux tmp mkdir p test1 test2 test3 test4 mkdir p 直接创建多级目录 递回 ro
  • 【数据库系统概论】第四、五章:数据库安全性、完整性

    视频 参考资料 内容来自参考链接和视频 文章目录 第四章 数据库安全性 安全性概述 安全性控制 试图机制 审计 数据加密 第五章 数据库完整性 正确性 相容性 三大完整性 第四章 数据库安全性 安全性概述 不安全因素 非授权用户对数据库的恶
  • 用Unity3D实现太阳系仿真

    用Unity3D模拟太阳系仿真 模拟要求 写一个程序 实现一个完整的太阳系 其他星球围绕太阳的转速必须不一样 且不在一个法平面上 操作步骤 1 创建如下结构 sun 里包括8大行星 并且设置好距离和大小 建立结构 建议用2D显示来直观设置距
  • 收藏

    点击上方 小白学视觉 选择加 星标 或 置顶 重磅干货 第一时间送达 本文转自 视觉算法 图片来源于网络 语义分割在自然数据集的分割效果不断进步 有研究逐步应用到了遥感领域 尤其是高分辨率遥感影像 由于遥感图像具有海量数据 尺度依赖 空间相
  • 《Kubernetes部署篇:Ubuntu20.04基于containerd部署kubernetes1.24.17集群(多主多从)》

    一 架构图 如下图所示 二 环境信息 1 部署规划 主机名 K8S版本 系统版本 内核版本 IP地址 备注 k8s master 63 1 24 17 Ubuntu 20 04 5 LTS 5 15 0 69 generic 192 168
  • 两个数的简单计算器

    两个数的简单计算器 本题要求编写一个简单计算器程序 可根据输入的运算符 对2个整数进行加 减 乘 除或求余运算 题目保证输入和输出均不超过整型范围 方法一 include
  • 13.网络爬虫—多进程详讲(实战演示)

    网络爬虫 多进程详讲 一 进程的概念 二 创建多进程 三 进程池 四 线程池 五 多进程和多线程的区别 六 实战演示 北京新发地线程池实战 前言 个人简介 以山河作礼 Python领域新星创作者 CSDN实力新星认证 第一篇文章 1 认识网
  • iso文件添加服务器,服务器挂载本地iso文件

    RHEL6 3配置文件共享 2 autofs服务 在上篇博文中我们介绍了利用NFS服务设置文件共享 在客户端必须要先将服务器端的NFS共享目录挂载到本地 然后才能使用 其实在Linux系统中还为我们提供了另外一种更为简单的使用NFS共享的方
  • Java对象深拷贝的几种方式

    对象拷贝 项目开发过程中很多时候需要进行对象复制 可是有的时候会发生复制后的对象 在原对象改变后也相应发生改变 这种时候就有问题了 所以很有必要了解对象的深拷贝 以及深拷贝的几种方式 new 对象 手动 new 新的对象 一个属性一个属性的
  • 掌财社:Flask怎么实现注册登录项目?

    注册和登录功能是绝大多数web应用都需要实现的功能 是相当基础的功能模块 注册登录功能实现需要注意的地方也有很多 今天小编带来了一篇flask实现注册登录功能的项目的简单实现的文章 希望能给正在学习flask的小伙伴一点帮助 本文主要介绍了
  • 调试共享几何图形池

    没有这一节的资料 但是代码该调试到这里了 随意调试着玩吧 环境变量本机都没有设置 看这个意思 似乎是只需要一个几何体 所有的瓦片用类似于matrixTransform gt addChild node 的方式 看看创建 上一层 为什么是第0
  • 买卖股票的最佳时机含手续费--贪心算法

    LeetCode 买卖股票的最佳时机含手续费 给定一个整数数组 prices 其中第 i 个元素代表了第 i 天的股票价格 非负整数 fee 代表了交易股票的手续费用 你可以无限次地完成交易 但是你每笔交易都需要付手续费 如果你已经购买了一
  • 利用Google翻译实现网站国际化——js插件

    文章描述了很多作者的思路 显得繁琐和冗余 若无兴趣请直接下载资源 查阅最终解决方案 最终解决方案 代码静态化已经全部完成 包括面板语言文件 已添加完备的注释 请直接查阅 下载插件js谷歌翻译插件 示例请使用 本地静态资源 html 需要修改
  • Spring AutowireCapableBeanFactory

    Spring AutowireCapableBeanFactory接口的使用小结 Spring的ioc容器中有一个接口叫AutowireCapableBeanFactory 我们从名字中可以看出 具有自动装配Bean的能力 而且这里笔者先透
  • 刷脸支付是万亿级支付模式新趋势

    随着5G时代的到来 互联网 AI智能 云计算 物联网等技术的成熟 一种连手机都不需要的新型支付方式诞生了 那就是刷脸支付 扫码支付较现金支付无需找零 无需携带钱包 只需要扫码就可以完成支付 对于商家和顾客来说 支付变得简单多了 如果说 扫码

随机推荐

  • Feign接口Get请求自动转化成POST

    原因 在入参的时候如果没有通过注解指定 此时的参数会自动封装到body中 feign检测到body里面有请求参数就会默认使用post请求 解决方法 解决方法也很简单 只需要在参数前加 SpringQueryMap即可 GetMapping
  • vue模块化

    vue模块化 模块化开发 不使用模块化带来的问题 CommonJS es6的模块化的导出和导入 export的基本使用 export default导出 统一全部导出 模块化开发 不使用模块化带来的问题 初始模块化思想 CommonJS e
  • 拖延症解药

    拖延症解药 完美主义 情绪问题 原谅过去的自己 与自己和解 不做准备工作 在不充分条件下启动 计划 死线 是第一生产力 将 死线 提前 将它分段 分解为几个阶段性 死线 一个一个完成 更易启动 降低不确定性 完成一个小目标后奖励自己 顺序
  • 电影下载资源总结

    电驴电骡 donkey4u com emul软件 BT kickass to kat ph isohunt com www torrentkitty com thepiratebay sx thepiratebay ee 论坛 cmct c
  • python绘制三维图

    一 初始化 假设已经安装了matplotlib工具包 利用matplotlib figure Figure创建一个图框 1 2 3 4 import matplotlib pyplot as plt from mpl toolkits mp
  • Elasticsearch 5.6.5 基础笔记(一) - 概念和安装

    概念 Elasticsearch 分布式 可扩展 实时的搜索与数据分析引擎 建立在全文搜索引擎库 Apache Lucene 基础之上 能胜任上百个服务节点的扩展 并支持 PB 级别的结构化或者非结构化数据 将所有的功能打包成一个单独的服务
  • 动态数组的创建与维护

    说是动态数组 其实就是在满容量时 再创建创建一个一定容量的数组 实例代码中是原数组容量的一倍 并将对数组的引用指向新的数组 而当数组容量比较小时 则创建一个一定容量的数组 示例代码中是原数组容量的1 4 并将对数组的引用指向新的数组 示例代
  • Vulkan-程序结构

    程序结构 一般来说 完整的Vulkan程序包含 创建Vulkan实例 获取物理设备列表创建逻辑设备 创建命令缓冲 获取设备中支持图形工作的队列 初始化交换链 创建深度缓冲 创建渲染通道 创建帧缓冲 创建绘制对象 初始化渲染管线 创建栅栏和初
  • Qt获取wifi列表,连接wifi后获取IP地址

    环境win7 qt5 13 MinGW32 台式机 直接上步骤了 网上看到的略显啰嗦 就是这么简单直接 1 头文件 include windows h include wlanapi h 2 pro设置连接路径 需要根据自己安装路径加载 L
  • 要成为一名成功的网络爬虫开发者,需要了解哪些知识点?

    要成为一名成功的网络爬虫开发者 您需要掌握以下一些关键知识 编程语言 Python 是最常用的编程语言之一 特别适合网络爬虫开发 您需要掌握 Python 的基础语法 数据结构和面向对象编程 HTTP 和网络基础知识 了解 HTTP 请求和
  • React之条件渲染(学习和总结)

    在实际开发中经常会遇到条件渲染 一般都是通过if else 语句 三元运算符 switch case 语句来实现 这里记录并学习一下 1 条件渲染之 IF const users id 1 firstName Robin lastName
  • 高精度加法c语言,C语言实现高精度加法

    免费资源网 https freexyz cn 本篇为高精度加法的计算 接下来我还会去写高精度乘法的计算 一 高精度运算的概念 高精度运算其实就是参与运算的数完全超出基本数据类型所能表示的范围的运算 例如int型范围就是 2147483648
  • 深度卷积神经网络(CNN)

    CNN简述 卷积神经网络 Convolutional Neural Network CNN 它是属于前馈神经网络的一种 其特点是每层的神经元节点只响应前一层局部区域范围内的神经元 全连接网络中每个神经元节点则是响应前一层的全部节点 一个深度
  • 信号完整性分析基础知识之有损传输线、上升时间衰减和材料特性(三):耗散因子Df

    在低频下 介电材料的漏电阻是恒定的 用体积电导率来描述材料的电性能 这种体积电导率与材料中离子的密度和迁移率有关 在高频下 由于偶极子的运动增加 电导率随频率增加 材料中可以旋转的偶极子越多 材料的体积电导率就越高 偶极子可以随着施加的场移
  • C++类成员函数可以访问同类不同对象的私有成员

    example 如下例 class Test public Test int v val v Test const Test t val 100 cout lt lt t val lt lt endl void show Test a co
  • Ubuntu识别USB设备

    参考 如何解决Ubuntu无法识别USB设备 作者 一只青木呀 发布时间 2020 08 28 21 02 00 网址 https blog csdn net weixin 45309916 article details 10828682
  • border-style的outset属性在导航中的应用

    代码如下
  • JAVA生成二维码

    一 引入依赖
  • Linux进程管理

    一 Linux下的进程 每个用户均可同时运行多个程序 为了区分每一个运行的程序 Linux给每个进程都做了标识 称为进程号 process ID 每个进程的进程号是唯一的 Linux 给每个进程都打上了运行者的标志 用户可以控制自己的进程
  • 一文看尽2018全年AI技术大突破

    安妮 夏乙 发自 凹非寺量子位 出品 公众号 QbitAI 2018 仍是AI领域激动人心的一年 这一年成为NLP研究的分水岭 各种突破接连不断 CV领域同样精彩纷呈 与四年前相比GAN生成的假脸逼真到让人不敢相信 新工具 新框架的出现 也