以下是Java技术栈微信公众号发布的所有关于 Java 的技术干货,2021最新更新版,本文会长期更新。
估算的基础是用户需求,但往往我们就是在用户需求不明确的情况下盲目估算。对于企业信息化相关软件系统,对于全新启动和开发的产品估算往往是最不准确的,因为缺乏相关的历史数据,经验积累,估算参与人员也缺乏对业务和需求的深入理解。对于PSP个体软件过程的推广有利于提升估算能力,因为可以让开发人员更加准确的认识到自我的开发生产率。对于技术架构的完善和技术的积累有利于提高估算水平,因为技术越完善后期的技术研究任务越少,而技术研究往往是具有高度不确定性的任务。开发人员对所属业务领域的深入理解有利于提高估算水平,任何一个需求功能点中对规模和工作量影响最大的是业务规则的复杂性,而不是该需求所涉及到的UI界面和基本流程。
自从 Apache Spark 2009 年在 U.C. Berkeley 的 AMPLab 默默诞生以来,它已经成为这个世界上最重要的分布式大数据框架之一。Spark 可以用多种方式部署,它为 Java、Scala、Python,和 R 编程语言提供了本地绑定,并且支持 SQL、流数据、机器学习,和图处理。你将会发现它被银行、电信公司、游戏公司、政府,和所有如 Apple、Facebook、IBM,和 Microsoft 等主要的科技巨头公司使用。
自从 Apache Spark 2009 年在 U.C. Berkeley 的 AMPLab 默默诞生以来,它已经成为这个世界上最重要的分布式大数据框架之一。Spark 可以用多种方式部署,它为 Java、Scala、Python,和 R 编程语言提供了本地绑定,并且支持 SQL、流数据、机器学习,和图处理。你将会发现它被银行、电信公司、游戏公司、政府,和所有如 Apple、Facebook、IBM,和 Microsoft 等主要的科技巨头公司使用。 📷 非常好,Spark 可以运行在一个只需要在你集群中的
本文介绍了Apache Spark的四个主要应用场景,包括大数据处理、机器学习、图计算和流处理。Spark可以处理批量数据和流数据,并且提供了简单易用的API。同时,Spark还支持多种编程语言,包括Python、Java和Scala等,使得开发人员可以更加便捷地开发复杂的数据处理应用。
自从 Apache Spark 2009 年在 U.C. Berkeley 的 AMPLab 默默诞生以来,它已经成为这个世界上最重要的分布式大数据框架之一。Spark 可以用多种方式部署,它为 Java、Scala、Python,和 R 编程语言提供了本地绑定,并且支持 SQL、流数据、机器学习,和图处理。你将会发现它被银行、电信公司、游戏公司、政府,和所有如 Apple、Facebook、IBM,和 Microsoft 等主要的科技巨头公司使用。 非常好,Spark 可以运行在一个只需要在你集群中的
以下是Java技术栈微信公众号发布的所有关于 Java 的技术干货,会从以下几个方面汇总,本文会长期更新。
链接:https://pan.baidu.com/s/1q_S2URG8mWKI1nTvPVvDzg 密码:2als
选自Google Blog 机器之心编译 参与:Jane W、吴攀 近日,谷歌开发者博客发布了一篇文章,介绍了用于 TensorFlow 的编译器 XLA(Accelerated Linear Algebra/加速线性代数)的原理和能力。 TensorFlow 的设计目标和核心优势之一是其灵活性。TensorFlow 被设计成一个灵活和可扩展的系统,可用于定义任意数据流图(data flow graph)并使用异构计算设备(如 CPU 和 GPU)以分布式方式有效地执行它们。 但是灵活性通常与性能不能兼得。
编译器是每个软件工程师每天都要用到的东西。令人惊讶的是,即使是那些自认为远离代码编写的人,每天也会大量使用编译器。这是因为大多数网络依赖于客户端代码的执行,而许多客户端程序都是以源代码的形式传递给浏览器的。
简介 CSS-in-JS是什么,看到这个词就能大概猜到是在JavaScript里写CSS,那为什么要在JavaScript里写CSS呢,像之前一样写在css文件里哪里不好么? (图片来自:http:/
Stream 流是 Java 8 新提供给开发者的一组操作集合的 API,将要处理的元素集合看作一种流,流在管道中传输,并且可以在管道的节点上进行处理,比如筛选、排序、聚合等。元素流在管道中经过中间操作(intermediate operation)的处理,最后由终端操作 (terminal operation) 得到前面处理的结果。Stream 流可以极大的提高开发效率,也可以使用它写出更加简洁明了的代码。我自从接触过 Stream 流之后,可以说对它爱不释手。本文将由浅及深带您体验 Stream 流的使用。那么就让我们从流的简单使用来开启体验之旅。
作者:Bharath Raj 机器之心编译 参与:路、刘晓坤 本文简要介绍了 Inception 家族的主要成员,包括 Inception v1、Inception v2 和 Inception v3、Inception v4 和 Inception-ResNet。它们的计算效率与参数效率在所有卷积架构中都是顶尖的,且根据 CS231n 中所介绍的,Inception V4 基本上是当前在 ImageNet 图像分类任务 Top-1 正确率最高的模型。 Inception 网络是 CNN 分类器发展史上一
这篇文章写的算法是高斯消元,是数值计算里面基本且有效的算法之一:是求解线性方程组的算法。
原生云的崛起 软件正在吞噬这个世界——马克.安德森(Mark Andreessen) 近年来,一直被拥有根深蒂固的传统思想的大佬们统治的企业正在被快速打乱,他们正在被以软件为核心的企业所破坏。例如S
论文: Rethinking Bottleneck Structure for Efficient Mobile Network.pdf
今天和大家聊聊推荐系统,说到推荐,很多人的第一反应就是协同过滤。协同过滤曾经也的确很出色,几乎是主流推荐系统的做法。只是后来架不住时代的演变,现在已经几乎成了老黄历了。
用人月来衡量一项工作的规模是一个危险和带有欺骗性的神话,因为它暗示了人员数量和时间是可以相互替换的。(注:人月是用来衡量工作量的,规模是通过功能点或代码行等方式来衡量的,规模除以个体生产率后可以得到人月数据)。
数据库(Database,简称DB)是长期储存在计算机内、有组织的、可共享的大量数据的集合。
错用并行流而产生错误的首要原因,就是使用的算法改变了某些共享状态。下面是另一种实现对前n个自然数求和的方法,但这会改变一个共享累加器:
Inception 网络是CNN分类器发展史上一个重要的里程碑。在 Inception 出现之前,大部分流行 CNN 仅仅是把卷积层堆叠得越来越多,使网络越来越深,以此希望能够得到更好的性能。
Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,绿色无需安装,数据抽取高效稳定。
和前面两篇文章一起服用,效果会更佳。通过对流API的基础体验Demo和关键知识点的讲解,相信大家对流API都有一定的认识了,但是流API强大的功能,可不仅仅像前面两篇文章中说的那样简单,大家应该注意到,在第二篇中,我对Stream接口进行介绍的时候,并没有把他的全部方法都进行了解析说明。
深度学习在计算机图像识别上的应用非常成功。利用深度学习,我们能够对图片进行高精度识别,实现这一功能的,主要依靠神经网络中的一种分支,名为卷积网络。卷积网络与我们前面实现的网络不通之处在于,它可以直接接受多维向量,而我们以前实现的网络只能接收一维向量。 我们在开始时,实现了一个能够识别手写数字图片的网络,网络接收数据时,必须把一张28*28的灰度图转换为784长的一维向量。在深入解析卷积网络前,我们直接用代码将其实现出来,通过卷积网络实现手写数字识别功能,先获得一个感性认识,为后续的深入研究打下基础,我们看看
我刚毕业的时候在一家创业公司,leader讲的对多的话是:要想做好且成为一名优秀的程序员,你得具备产品思维。不要产品给你什么需求你都去接,你得判断是否合理,是否在已有的功能上的重复,是否有其他更加合理的方案可以解决问题,还有产生的价值有多少,是否开发后会没有人用的情况等等(又出现了过这种情况)。这不是针对谁,只是提防那些不专业的产品经理,我们的产品经理可以不专业,但是我们不能不专业。
在分解复杂的软件系统时,分层是我们最常用的手段之一。然而,在领域驱动设计中,层次和包的划分看起来与我们的结构又有一定区别,本文主要讨论DDD中的分层架构及每层的意义,以及与传统的三层架构的区别。
而 parallelStream() 是并行流方法,能够让数据集执行并行操作,后面会更详细地讲解
网络回忆:在《循环神经网络——介绍》中提到循环神经网络用相同的方式处理每个时刻的数据。
编译器:可以阅读以某一种语言(源语言)编写的程序,并把该程序翻译成为一个等价的、用另一种语言(目标语言)编写的程序,即能够完成编译程序的软件系统。
尺度,顾名思义就是说图像的尺寸和分辨率。在我们进行图像处理的时候,会经常对源图像的尺寸进行放大或者缩小的变换,进而转换为我们指定尺寸的目标图像。在对图像进行放大和缩小的变换的这个过程,我们称为尺度调整。
去年,云原生公司的一群高级可观测性领导人开会时,我要求每个人告诉我他们最不喜欢的遥测类型:指标、事件、日志、跟踪或其他。我非常确信主要的答案会是日志。没什么反对日志,但我最近听到这个组表达的热门观点是“事件期间,如果查看了日志,就已经失败了”。
2014 年我们发布了 Lambda 服务,掀起了 Serverless 革命。现在越来越多的人谈论 Serverless 的未来。事实上,我们自己构建的应用程序中有一半以上是基于 Lambda 的,Serverless 能够最大限度地利用云计算的价值。现在,越来越多的客户正在决定采用 Serverless。这里,我们不只是在谈论 Lambda、API Gateway、Step Functions 或 EventBridge 等 Serverless 服务,而是如何使用 Serverless 实现快速原型设计、成本可控、高可用、自动扩展以及高效运维,这些都是用户在选择初始应用架构时需要考虑的关键设计因素。
React是一个为数据提供渲染为HTML视图的开源JavaScript库。拥有虚拟DOM、组件化设计模式、声明式代码、单向数据流、使用JSX描述UI信息等特点。
第3章 SQL处理过程 练习 3.1 为SQL3.7中所示的查询设计尽可能好的索引:
这是卷积神经网络的第十七篇文章,Google 2017年发表的MobileNet V1,其核心思想就是提出了深度可分离卷积来代替标准卷积,将标准卷积分成Depthwise+Pointwise两部分,来构建轻量级的深层神经网络,这一网络即使现在也是非常常用的。论文原文地址和代码实现见附录。
很多人一直唠叨着并发中的新概念。然而,许多开发人员还没有机会把过多的注意力都放在上面。在这篇文章中,我们将带您了解Java 8 streams、 Hadoop、 Apache Spark、 Quasar fibers以及响应式编程,让你迅速入门。尤其是如果你不经常用它们的话。一句话,它并不遥远,它就在我们身边。
“不懂得日志,你就不可能完全懂得数据库”Jay Kreps说道,Jay Kreps是LinkedIn公司首席工程师,本文介绍他本人对于日志的心得体会,包括日志是什么,如何在数据集成、实时处理和系统构建中使用日志等。 ◆ ◆ ◆ 我们最后要讨论的是在线数据系统设计中日志的角色。 在分布式数据库数据流中日志的角色和在大型组织机构数据完整中日志的角色是相似的。在这两个应用场景中,日志是对于数据源是可靠的,一致的和可恢复的。组织如果不是一个复杂的分布式数据系统呢,它究竟是什么? 如果换个角度,你可以看到把整个组织系
在软件设计的世界里,分析是解决问题的首要步骤。分析阶段为开发人员定义了需求、界限以及约束条件。通过本文,我们将深入了解三种主要的分析方法:抽象分析、结构化分析和面向对象分析,揭示它们之间的区别和联系。
而接下来这个定理,名字上虽然已经没有了基本(fundamental)二字,但是其名——主定理(main theorem)的响度一点也不压于基本定理的声音。想讲它还有一个原因是,它是难得的一个在离散数学为主导的计算机科学中,用分析的思想来解决的问题的例子。而且还是那么的基础和优雅,说它是整个计算机理论的基石之一也不为过。
数据流图也称为气泡图。它通常用作创建系统概述的初步步骤,而不需要详细介绍,以后可以将其作为自上而下的分解方式进行详细说明。DFD显示将从系统输入和输出的信息类型,数据如何流经系统以及数据将存储在何处。与传统的结构化流程图不同,它不显示有关流程时序的信息,也不显示流程是按顺序还是并行运行的。
语义分割可以看作是一种按像素分类的任务,它将特定的预定义类别分配给图像中的每个像素。该任务在自动驾驶和图像编辑等方面具有广泛的应用前景。近年来,轻量化神经网络的发展促进了资源约束的深度学习应用和移动应用。其中许多应用都需要使用轻量化网络对语义分割进行实时、高效的预测。为了实现高效、实时的分割,本文提出了一种基于精简非局部模块(LRNNet)的轻量级网络。为了实现更轻、更高效、更强大的特征提取,在resnet-style的编码器中提出了分解卷积块。同时,提出的非局部缩减模块利用空间区域的奇异向量来实现更有代表性的非局部特征缩减集成,计算量和存储成本都大大降低。实验证明了模型在轻量级、速度快、灵敏度和准确度之间的优势权衡。LRNNet在没有额外处理和预训练的情况下,仅使用精细标注的训练数据,在GTX 1080Ti卡上参数为0.68M和71FPS,在Cityscapes测试数据集上达到72.2%mIoU。
业务流程图(TFD)是一种描述管理系统内各单位、人员之间的业务关系,作业顺序和管理信息流向的图表。
译自 Stream Processing 101: What’s Right for You? 。
我们正带领大家开始阅读英文的《CUDA C Programming Guide》,今天是第70天,我们正在讲解CUDA 动态并行,希望在接下来的30天里,您可以学习到原汁原味的CUDA,同时能养成英文阅读的习惯。
主动推理代理的理论性质令人印象深刻,但我们如何在边缘设备上实现有效的硬件和软件工作的代理?这是一个有趣的问题,因为策略探索的计算负载呈指数级增长,而边缘设备的计算资源非常有限。在本文中,我们讨论了支持一个有能力的非专家工程师开发工作的主动推理代理的软件工具箱的必要特征。我们引入了一个正在开发的工具箱,旨在以类似于TensorFlow推动的深度学习技术应用的方式,加速主动推理代理的民主化。
随着 OKR 在国外英特尔、谷歌等公司,国内字节跳动、华为等公司的成功实践,越来越多的企业意识到 OKR 对于组织发展的重要性,开始纷纷引入 OKR。引入 OKR 企业文化,一款强大的 OKR 工具必不可少,CODING OKR 可以为企业提供丰富的过程实践和协作提醒,提升员工敬业度并促进公司运营和产研运维一体化的成功。下文将以 CODING OKR 为例,阐述大多数企业在推行 OKR 时会遇到的问题以及一些思考。
经过了前面四篇文章的学习,相信大家对Stream流已经是相当的熟悉了,同时也掌握了一些高级功能了,如果你之前有阅读过集合框架的基石 Collection 接口,是不是在经过前面的学习,以前看不懂的东西,突然之间就恍然大悟了呢?
选自facebook research 机器之心编译 机器之心编辑部 今天,Facebook 人工智能实验室宣布发布 Tensor Comprehensions,这是一个 C++库和数学语言,它能帮助缩小使用数学运算的研究人员和专注在各种硬件后端运行大规模模型的工程师之间的距离。Tensor Comprehensions 的主要区别特征是它使用一种独特的准时化(Just-In-Time)编译来自动、按需生成高性能的代码,这正是机器学习社区所需要的。 生产力的数量级增长 创造全新高性能机器学习模型的典型工作流
三分技术,七分管理,十二分基础数据。十二分基础数据强调了数据的收集、入库、更新维护是数据库建设中的重要环节。
领取专属 10元无门槛券
手把手带您无忧上云