实战ResNet:CIFAR-10数据集分类
本节将使用ResNet实现CIFAR-10数据集的分类。7.2.1 CIFAR-10数据集简介CIFAR-10数据集共有60 000幅彩色图像,这些图像是32×32像素的,分为10类,每类6 000幅图,如图7-9所示。这里面有50 000幅图用于训练,构成了5个训练批,每一批10 000幅图;另外,10 000幅用于测试,单独构成一批。测试批的数据取自100类中的每一类,每一类随机取
实战:基于卷积的MNIST手写体分类
实战:基于卷积的MNIST手写体分类前面实现了基于多层感知机的MNIST手写体识别,本章将实现以卷积神经网络完成的MNIST手写体识别。1. 数据的准备在本例中,依旧使用MNIST数据集,对这个数据集的数据和标签介绍,前面的章节已详细说明过了,相对于前面章节直接对数据进行“折叠”处理,这里需要显式地标注出数据的通道,代码如下:import numpy as 
《高性能Linux网络编程核心技术揭秘》已出版
#好书推荐##好书奇遇季#《高性能Linux网络编程核心技术揭秘》,京东当当天猫都有发售。定价109元,网店打折销售更便宜。本书配套示例项目源码、作者QQ答疑。 本书详解高性能Linux网络编程的核心技术及DPDK框架,剖析Nginx高性能服务器架构,实战基于libevent 的FTP服务器、基于epoll的高并发聊天服务器、基于DPDK的应用案例、基于P2P架构的高性能游戏服务器。&n
《PyTorch 2.0深度学习从零开始学》已出版
#好书推荐##好书奇遇季#《PyTorch 2.0深度学习从零开始学》,京东当当天猫都有发售。定价69元,网店打折销售更便宜。本书配套示例项目源码、PPT课件。 本书以通俗易懂的方式介绍PyTorch深度学习基础理论,并以项目实战的形式详细介绍PyTorch框架的使用。为读者揭示PyTorch 2.0进行深度学习项目实战的核心技术,实战案例丰富而富有启发。 本书内容
Vue.js 3.x中使用监听器设计购物车效果
本节将使用监听器设计购物车效果,这个购物车需要满足以下需求:(1)当用户每次修改预购买商品名称的时候,都需要清空购买数量。(2)对购物车数据进行侦听,每次单击“加入购物车”按钮,会显示商品名称和数量。 【例7.5】设计购物车效果(源代码\ch07\7.5.html)。<div id="app">
Vue.js 3.x监听器的监听方法及其示例
在使用监听器的时候,除了直接写一个监听处理函数外,还可以接收一个加字符串形式的方法名,方法在methods选项中定义。【例7.2】使用监听器方法(源代码\ch07\7.2.html)。在示例中监听了yuan和jiao属性,后面直接加上字符串形式的方法名method1和method2,最后在页面中使用v-model指令绑定yuan和jiao属性。<div id="app&q
Vue.js 3.x监听器的用法与示例
监听器是一个对象,以key-value的形式表示。key是需要监听的表达式,value是对应的回调函数。value也可以是方法名,或者包含选项的对象。Vue实例将会在实例化时调用$watch()遍历watch对象的每一个property。同时,当差值数据变化时,执行异步或开销较大的操作时,可以通过采用监听器的方式来达到目的。下面讲解解监听器的用法。监听器在Vue实例的watch选项中定义。它包括两
Spark本地模式安装
Spark本地模式的安装比较简单,直接启动上一节安装配置好的CentOS7-201虚拟机(直接使用免费的Virtualbox安装CentOS7.9),以hadoop账户登录Linux,下载并解压Spark安装文件就可以运行。这种模式可以让我们快速了解Spark。在安装Spark之前需要需先准备好JDK环境,并正确配置JAVA_HOME和PATH环境变量。下面介绍一下Spark本地模式的安装。(1)
Spark SQL、DataFrame、DataSet是什么
在很多情况下,开发人员并不了解Scala语言,也不了解Spark常用的API,但又非常想要使用Spark框架提供的强大的数据分析能力。Spark的开发工程师们考虑到了这个问题,于是利用SQL语言的语法简洁、学习门槛低以及在编程语言中普及程度和流行程度高等诸多优势,开发了Spark SQL模块。通过Spark SQL,开发人员能够使用SQL语句实现对结构化数据的处理。 本节主要
Spark弹性分布式数据集
1. Spark RDD是什么RDD(Resilient Distributed Dataset,弹性分布式数据集)是一个不可变的分布式对象集合,是Spark中最基本的数据抽象。在代码中RDD是一个抽象类,代表一个弹性的、不可变、可分区、里面的元素可并行计算的集合。每个RDD都被分为多个分区,这些分区运行在集群中的不同节点上。RDD可以包含Python、Java、Scala中任意类型的对象,甚至可
Spark计算引擎介绍
1. Spark是什么Apache Spark是专为大规模数据处理而设计的快速通用的计算引擎。Spark是加州大学伯克利分校的AMP实验室(Algorithms, Machines and People Lab)开源的类Hadoop MapReduce的通用并行框架,拥有Hadoop MapReduce所具有的优点,但不同于MapReduce的是Job(工作)中间输出的结果可以保存在内存中,从而不
Hive数据存储简介
Hive数据仓库和传统关系型数据库是不一样的,Hive数据仓库建立在Hadoop集群的HDFS之上。也就是说,Hive数据仓库中的数据是保存在HDFS上的。Hive数据仓库可以通过ETL的形式来抽取、转换和加载数据。Hive提供了类似SQL的查询语句HQL,可以用“select * from表名;”来查询到Hive数据仓库中的数据,这与关系型数据库的操作是一样的。下面看看Hive的数据存储格式。首
Hive的安装与配置
由于Hive是运行在Hadoop下的数据仓库,所以必须在已经安装好Hadoop的环境下运行Hive,且要正确配置HADOOP_HOME环境变量。本书讲解的Hive运行在2.2.2小节搭建的Hadoop伪分布式环境的基础上,我们可以利用CentOS7-201虚拟机(如图2-35所示)进行Hive的安装与配置。(1)下载、安装和配置HiveHive官网:http://hive.apache.org/安
配置MySQL保存Hive元数据
Hive默认使用自带(内嵌)的Derby进行元数据存储,这个就意味着无法实现多个hive shell并发连接Hive。如果需要支持多用户登录Hive,必须配置一个独立的数据库。上一节我们已经将MySQL数据库安装到Linux上,本节我们将讲解一下配置MySQL保存Hive元数据的步骤。(1)修改hive-site.xml文件我们继续以MySQL为例,首先需要在文件hive-site.xml中配置M
Hive和Hadoop关系
Hive和Hadoop关系 Hive是基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载,这是一种可以查询和分析存储在Hadoop中的大规模数据的机制。Hive数据仓库工具能将结构化的数据文件映射为一张数据库表,并提供SQL查询功能,能将SQL语句转变成MapReduce任务来执行。关于Hive的描述可以归结为这么几点来理解:l Hive是工具。l
PyQt重绘事件处理函数paintEvent
PyQt中的重绘和Windows编程中的重绘差不多,但是Qt的重绘更有特色,更加智能。基础部件类QWidget提供的paintEvent函数是一个纯虚函数,继承它的子类想用它,就必须重新实现它。下列4种情况会发生重绘事件:(1)当窗口部件第一次显示时,系统会自动产生一个绘图事件。(2)repaint()与update()函数被调用时。(3)当窗口部件被其他部件遮挡,然后又再次显示出来时,就会对隐藏
《PyQt 5从入门到精通》简介
本书既是介绍PyQt5的快速入门书籍,也是介绍PyQt5实战应用的书籍。本书学习曲线平缓,除了适合初学者之外,其内容详细和广泛的特点又使得其非常适合做软件工程师们的案头查询手册,大大节省了繁忙的工程师去查阅和筛选信息的时间,做到“一本在手,PyQt我有”。本书配套示例源码。本书共分11章,从最基本的PyQt5环境搭建开始,不但有PyQt5窗口设计基础、PyQt5常用控件、菜单、工具栏和状态栏、对话
基于LeNet-5的手写数字识别实战
图像识别是计算机视觉最常用的任务之一,几乎所有的有关图像识别的教程都会将MNIST数据集作为入门数据集,因为MNIST数据集是图像识别问题中难度最小、特征差异较为明显的数据集,非常适合作为图像识别入门者的学习案例。本案例使用MNIST数据集,基于LeNet-5网络实现手写数字的识别任务。本节中的所有代码在Ubuntu 20.04+Python 3.8.10+TensorFlow 2.9.1+Ker
基于Keras-YOLO实现目标检测
Keras-YOLO 3项目使用Python语言实现了YOLO v3网络模型,并且可以导入Darknet网络预先训练好的权重文件信息直接使用网络进行目标识别。1. 下载Keras-YOLO 3项目执行如下命令下载Keras-YOLO 3项目代码:git clone https://github.com/qqwweee/keras-yolo3.git2. 转换Darknet的weights文件格式为
自然语言处理技术简介
长期以来,研究人员进行自然语言处理研究主要依赖各种机器学习模型,以及手工设计的特征,但这样做带来的隐患是由于语言信息被稀疏表征表示,会出现维度诅咒之类的问题。而随着近年来词嵌入(低维、分布式表征)的普及和成功,和传统机器学习模型(如SVM、Logistic回归)相比,基于神经网络的模型在各种语言相关任务上取得了优异的成果。下面简要介绍几种基于神经网络方法的自然语言处理技术。1. 神经语言模型(20