07
2022.05

九、实际示例——建立一个静态服务器

发布 查看回复
九、实际示例——建立一个静态服务器 在过去的几章中,我们已经研究了 Node.js 及其提供的功能。 虽然我们还没有研究 Node.js 提供的每个模块或所有内容,但我们已经有了将一个静态内容/生成器站点整合在一起的所有组件。 这意味着我们将设置一个服务器来侦听请求并根据该请求构建页面。 要实现这个服务器,我们需要了解站点生成是如何工作的,以及如何将其实现为动态操作。 在此基础上,我们将研究缓存,
详细
07
2022.05
八、数据格式——查看 JSON 之外的不同数据类型 我们几乎已经完成了关于服务器端 JavaScript 的讨论。 有一个话题似乎不太引人注目,但在与其他系统交互或甚至提高速度时却经常出现,那就是以不同的格式传输数据。 最常见(如果不是最常见的话)的格式之一是 JSON。 JSON 是最容易使用的数据格式之一,特别是在 JavaScript 中。 在 JavaScript 中,我们不必担心与类不匹
详细
07
2022.05

七、流——理解流和非阻塞 I/O

发布 查看回复
七、流——理解流和非阻塞 I/O 我们几乎涉及了所有帮助我们用 JavaScript 为服务器编写高性能代码的主题。 最后两个应该讨论的主题是流和数据格式。 虽然这两个主题可以携手并进(因为大多数数据格式都是通过读/写流实现的),但我们将在本章重点讨论流。 流使我们能够编写能够处理数据而不占用大量工作内存和不阻塞事件队列的系统。 对于那些按顺序阅读本书的读者来说,这听起来可能与生成器的概念很熟悉,
详细
07
2022.05

六、消息传递——了解不同类型

发布 查看回复
六、消息传递——了解不同类型 在前一章中,我们讨论了 Node.js 和创建服务器端应用所需的基本环境。 现在,我们将看看如何使用前面介绍过的通信技术来编写可伸缩的系统。 对于应用来说,消息传递是一种很好的解耦方式,但仍然可以一起工作。 这意味着我们可以通过进程或线程创建彼此独立工作的模块,并且仍然实现共同的目标。 在本章中,我们将涵盖以下主题: 使用网络模块进行本地通信 利用网络 快速一瞥 H
详细
07
2022.05
五、切换上下文——没有 DOM,不同的原始 当我们将注意力从浏览器转移开时,我们将转移到大多数后端程序员都熟悉的环境。 Node.js 为我们提供了一种熟悉的语言,称为 JavaScript,可以在系统上下文中使用。 虽然 Node.js 是一种可以编写服务器的语言,但它可以用于其他语言所具有的大多数功能。 例如,如果我们想创建一个命令行界面(CLI)工具,我们就有能力做到这一点。 Node.js
详细
07
2022.05

四、实际例子——看看 Svelte 和原始

发布 查看回复
四、实际例子——看看 Svelte 和原始 在过去的几章中我们已经介绍了现代网络和可用的 api,现在我们将举一个实际的例子来说明这些 api 的作用。 web 框架已经有了相当多的发展,它们创建了一种与之相关的运行时。 这个运行时几乎都可以归因于虚拟 DOM(VDOM)和一个状态系统。 当这两件事相互联系时,我们就能够创造丰富的和反应性的前端。 这些框架的例子有 React、Vue 和 Angu
详细
07
2022.05

三、原始之地——现代网络

发布 查看回复
三、原始之地——现代网络 自 ECMAScript 2015 标准发布以来,JavaScript 语言的前景发生了很大的变化。 现在有许多新特性使 JavaScript 成为适合所有类型开发的一流语言。 现在使用这种语言变得容易多了,我们甚至可以看到其中的一些语法糖。 从 ECMAScript 2015 标准及以后,我们已经收到了类、模块、更多声明变量的方法、作用域的变化等等。 所有这些特性以及更
详细
07
2022.05
二、不变性与可变性——安全与速度之间的平衡 近年来,开发实践已经转向一种更功能性的编程风格。 这意味着较少关注可变编程(当我们想要修改某些东西时,更改变量而不是创建新变量)。 当我们把一个变量从一件事变成另一件事时,可变性就发生了。 这可以是更新一个数字,更改消息的内容,甚至将项目从字符串更改为数字。 可变状态会导致很多编程缺陷,比如状态不确定、多线程环境中的死锁,甚至在我们不想改变数据类型时改变
详细
07
2022.05

一、Web 上的高性能工具

发布 查看回复
一、Web 上的高性能工具 JavaScript 已经成为网络的主流语言。 使用 JavaScript 运行应用不需要额外的运行时,也不需要编译过程。 任何用户都可以打开网页浏览器,在控制台中输入语言来学习。 除此之外,随着文档对象模型(DOM)的出现,该语言也有了许多进步。 所有这些都为开发人员提供了丰富的开发环境。 在此之上,我们可以将网络视为一个一次性构建,部署在任何地方的环境。 适用于一种
详细
07
2022.05

零、前言

发布 查看回复
零、前言 今天的网络环境已经发生了巨大的变化——不仅仅是在创建 web 应用方面,在创建服务器端应用方面也是如此。 由 jQuery 和 CSS 框架(如 Bootstrap)主导的前端生态系统已经被响应式、功能完备的应用所取代,这些应用可能会被误认为是运行在桌面的应用。 我们编写这些应用所用的语言也发生了戏剧性的变化。 曾经混乱的var和范围问题已经变成了一种快速和易于编程的语言。 JavaSc
详细
07
2022.05

十二、为您的应用选择最佳算法

发布 查看回复
十二、为您的应用选择最佳算法 软件工程过程中有三个不同的阶段:构思、实现和部署。这本书主要关注过程的实现阶段,即软件工程师开发项目的核心功能(即机器学习 ( ML )算法)和特性的阶段。在最后一章中,我们讨论了与部署阶段相关的问题。我们的学习接近完成。 在这最后一章中,我们将转向概念阶段,以完善我们对完整的 ML 开发过程的理解。具体来说,我们将讨论如何为给定的问题选择最佳算法。ML 生态系统正在
详细
07
2022.05

十一、在实时应用中使用机器学习

发布 查看回复
十一、在实时应用中使用机器学习 在这本书里,你已经学习了许多 ML 算法和技术。然而,剩下的就是将这些算法部署到现实世界的应用中。这一章专门介绍在现实世界、实际应用和生产环境中使用 ML 的相关建议。 ML 算法的理想化用法和现实世界的用法有很多不同。在我们的例子中,我们在一个步骤中训练和执行模型,响应一个命令。我们假设模型不需要以任何方式序列化、保存或重新加载。我们没有考虑过用户界面响应、在移动
详细
07
2022.05

十、自然语言处理实战

发布 查看回复
十、自然语言处理实战 自然语言处理是解析、分析和重构自然语言的科学(和艺术),如书面或口头英语、法语或德语。这不是一项容易的任务;自然语言处理 ( NLP )是一个完整的研究领域,拥有充满活力的学术研究社区和来自主要科技公司的大量资金支持。每当谷歌、苹果、亚马逊和微软等公司投资其谷歌助手、Siri、Alexa 和 Cortana 产品时,NLP 领域都会获得更多一点的资金。简而言之,自然语言处理就
详细
07
2022.05

九、深度神经网络

发布 查看回复
九、深度神经网络 在前一章中,我们讨论了神经网络及其基本操作。具体来说,我们讨论了全连接前馈神经网络,它只是许多可能的人工神经网络拓扑中的一种简单拓扑。在本章中,我们将重点介绍两种高级拓扑结构:卷积神经网络 ( CNN )和一种形式的递归神经网络 ( RNN ),称为长短期记忆 ( LSTM )网络。CNNs 最常用于图像处理任务,如目标检测和图像分类。LSTM 网络常用于自然语言处理或语言建模问
详细
07
2022.05

八、人工神经网络算法

发布 查看回复
八、人工神经网络算法 人工神经网络 ( 神经网络)或者简单地说神经网络,可以说是当今最流行的机器学习 ( ML )工具,如果不一定是使用最广泛的话。当今的科技媒体和评论喜欢关注神经网络,它们被许多人视为神奇的算法。相信神经网络会为人工通用智能 ( AGI )铺平道路——但技术现实大不相同。 虽然它们功能强大,但神经网络是高度专业化的 ML 模型,专注于解决单个任务或问题——它们不是神奇的大脑,可以
详细
07
2022.05

七、使用回归算法的预测

发布 查看回复
七、使用回归算法的预测 在本章中,我们将简要介绍使用回归算法的预测。我们还将讨论时间序列分析,以及如何利用数字信号处理技术来辅助我们的分析。在这一章的结尾,你将会看到许多在时间序列和连续值数据中常见的模式,并且将会理解哪些类型的回归适合于哪些类型的数据。此外,您还将学习一些数字信号处理技术,如滤波、季节性分析和傅里叶变换。 预测是一个非常广泛的概念,涵盖了许多类型的任务。本章将为您提供一个概念和算
详细
07
2022.05

六、关联规则算法

发布 查看回复
六、关联规则算法 关联规则学习,或称关联规则挖掘,是一种相对现代的无监督学习技术,最初用于发现杂货店购买商品之间的关联。关联规则挖掘的目标是发现物品集之间有趣的关系,例如,发现准备飓风的购物者经常在购买瓶装水、电池和手电筒的同时购买馅饼。 在第五章、分类算法中,我们引入了条件概率的概念。在这一章中,我们将进一步探讨这个概念,并将条件概率应用于关联规则学习。回想一下,条件概率会问(并回答)这样一个问
详细
07
2022.05

五、分类算法

发布 查看回复
五、分类算法 分类问题包括检测数据中的模式,并使用这些模式将一个数据点分配给一组相似的数据点。如果这太抽象,这里有一些分类问题的例子:分析一封电子邮件以确定它是否是垃圾邮件;检测一段文本的语言;阅读一篇文章,并将其归类为金融、体育、政治、观点或犯罪;以及确定推特上发布的对你产品的评论是正面的还是负面的(最后这个例子通常被称为情绪分析)。 分类算法是解决分类问题的工具。根据定义,它们是有监督的学习算
详细
07
2022.05

四、使用聚类算法的分组

发布 查看回复
四、使用聚类算法的分组 一个常见且入门的无监督学习问题是聚类问题。通常,您有大型数据集,希望组织成较小的组,或者希望分解成逻辑上相似的组。例如,你可以尝试将家庭收入的普查数据分为三组:低收入、高收入和超级富裕。如果你把家庭收入数据输入到一个聚类算法中,你将会看到三个数据点,每个对应于你的三个类别的平均值。即使是这种聚集家庭收入的一维问题也可能很难用手来解决,因为你可能不知道一个群体应该在哪里结束,
详细
07
2022.05

三、机器学习算法之旅

发布 查看回复
三、机器学习算法之旅 在本章中,我们将探索不同的方法来对机器学习 ( ML )可以完成的任务类型进行分类,并对 ML 算法本身进行分类。有许多不同的方式来组织 ML 景观;我们可以根据我们给算法的训练数据的类型对算法进行分类,我们可以根据我们期望从算法中得到的输出类型进行分类,我们可以根据算法的特定方法和策略对算法进行分类,我们可以根据它们所处理的数据的格式对它们进行分类,等等。 当我们在本章中讨
详细