深度学习与机器学习区别

深度学习与机器学习区别

本文目录:

一、特征提取方面

1.1、机器学习

1.2、深度学习

1.3、机器学习特征提取

1.4、深度学习特征提取

1.5、深度学习特征提取例子

二、数据量和计算性能要求

三、算法代表

3.1、朴素贝叶斯算法

3.2、决策树

四、神经网络


一、特征提取方面

 1.1、机器学习

  机器学习是一种人工智能技术,在给定数据集的情况下,可以自动学习模式并使用学习结果来预测或做出决策。它依靠数学和统计学算法来构建模型,这些模型可以使计算机在没有明确编程的情况下自主学习。

  机器学习是一种人工智能的分支,是指计算机系统能够通过对大量数据进行分析和学习,自动识别和预测模式。

  简单来说,机器学习就是让计算机通过数据学习来进行人类智力水平的任务。

  以下是一些机器学习中的常用概念:

  1. 数据集:指用于训练和测试机器学习算法的数据。
  2. 特征:指对数据集的描述,可以为数字或文本等格式。
  3. 模型:是机器学习算法的具体实现,可以根据特征和目标值进行训练。
  4. 监督学习:通过对输入数据和已知结果的匹配进行训练,从而预测未知数据的输出结果。
  5. 非监督学习:从未标记的数据中发现模式,从而推断出数据的结构和关系。
  6. 深度学习:一种基于神经网络的机器学习技术,可以模拟人脑的神经网络结构,利用多个隐层对数据进行学习和分类。

  机器学习广泛应用于许多领域,如电子商务、金融、医疗、自然语言处理、计算机视觉和自主驾驶汽车等。常见的机器学习算法包括决策树、逻辑回归、支持向量机、神经网络和随机森林。

  机器学习的特征工程步骤是要靠手动完成的,而且需要大量领域专业知识。

1.2、深度学习

   深度学习是一种机器学习的方法,它利用由多个层次构成的神经网络来模拟和解决复杂问题。它的核心思想是通过层次化的学习和特征提取,从而逐步提高模型对数据的表征能力和预测能力。在深度学习中,核心技术包括反向传播算法、卷积神经网络、循环神经网络、生成对抗网络等。深度学习具有广泛的应用场景,如图像识别、语音识别、自然语言处理、人工智能等领域。

  深度学习通常由多个层组成,它们通常将更简单的模型组合在一起,将数据从一层传递到另-层来构建更复杂的模型。通过训练大量数据自动得出模型,不需要人工特征提取环节。

  深度学习算法试图从数据中学习高级功能,这是深度学习的一个非常独特的部分。因此,减少了为每个问题开发新特征提取器的任务。适合用在难提取特征的图像、语音、自然语言处理领域。

1.3、机器学习特征提取

  机器学习特征提取是指从原始数据中提取出有用的特征,以便用于机器学习算法的训练和模型的建立。这些特征可以是数值、文字、图像甚至声音等。通过特征提取,可以帮助机器学习算法更好地理解数据,实现更好的数据分析和分类。

  特征提取的目标是找到一组最能代表数据的特征集合,这些特征可以使机器学习算法从数据中学到更有意义的信息。

  特征提取的过程包括数据预处理、特征选择、特征提取和特征表示等步骤。在这些过程中,需要考虑到数据的种类、数量、质量和分布等因素,以及机器学习算法的适用性和需求等因素。

1.4、深度学习特征提取

  深度学习特征提取是指利用深度神经网络模型对原始数据进行自动学习提取特征的过程,使得原始数据能够更好地表示为一组高层次、抽象的特征,从而能够更好地应用于分类、识别、检测等任务中。

  深度学习特征提取在计算机视觉、自然语言处理、语音识别等领域被广泛使用。深度学习特征提取的具体方法包括卷积神经网络(CNN)、循环神经网络(RNN)等。通过使用深度神经网络对数据进行特征提取,可以大大提高模型的准确度和鲁棒性。

  深度学习可以通过堆叠多层神经网络来学习输入数据的复杂特征。

  在深度学习中,每一层神经网络都可以看作是对输入数据的一种映射,而每一层的输出都可以作为下一层的输入。通过不断地堆叠多层神经网络并对权重进行训练,可以逐渐提取出更复杂的特征,从而达到更精确的分类和预测。

1.5、深度学习特征提取例子

  以下是一个使用Keras实现的深度学习模型,用于对手写数字进行分类。

  该模型包含两个卷积层和两个全连接层,可以自动学习提取出手写数字的特征,并将其归类为数字0到9中的一个。 

import numpy as np
from keras.datasets import mnist
from keras.models import Sequential
from keras.layers import Dense, Flatten, Conv2D, MaxPooling2D
from keras.utils import np_utils

# 加载MNIST数据集并进行预处理 

# 加载MNIST数据集并进行预处理
(X_train, y_train), (X_test, y_test) = mnist.load_data()
X_train = X_train.reshape(X_train.shape[0], 28, 28, 1).astype('float32') / 255
X_test = X_test.reshape(X_test.shape[0], 28, 28, 1).astype('float32') / 255
y_train = np_utils.to_categorical(y_train)
y_test = np_utils.to_categorical(y_test)

# 构建深度学习模型 

# 构建深度学习模型
model = Sequential()
model.add(Conv2D(32, (3, 3), activation='relu', input_shape=(28, 28, 1)))
model.add(MaxPooling2D((2, 2)))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D((2, 2)))
model.add(Flatten())
model.add(Dense(128, activation='relu'))
model.add(Dense(10, activation='softmax'))

# 编译模型 

# 编译模型
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])

# 训练模型并评估性能

# 训练模型并评估性能
model.fit(X_train, y_train, epochs=10, batch_size=32, verbose=1)
score = model.evaluate(X_test, y_test, verbose=0)
print('Test loss:', score[0])
print('Test accuracy:', score[1])

  在这个例子中,我们使用了卷积层和最大池化层来提取手写数字的视觉特征,然后通过全连接层将其转化为数字标签的预测。通过反向传播算法对权重进行训练,我们可以让模型自动学习提取特征的过程,从而实现更高效和准确的分类。

二、数据量和计算性能要求

  机器学习需要的执行时间远少于深度学习,深度学习参数往很庞大,需要通过大量数据的多次优化来训练参数。

第一、深度学习需要大量的训练数据集。
第二、训练深度神经网络需要大量的算力。

可能要花费数天、甚至数周的时间,才能使用数百万张图像的数据集训练出一个深度网络。

所以深度学习通常。
1.需要强大的GPU服务器来进行计算。
2.全面管理的分布式训练与预测服务--比如谷歌 TensorFlow 云机器学习平台。

三、算法代表

  机器学习:朴素贝叶斯、决策树等

3.1、朴素贝叶斯算法

  朴素贝叶斯算法是一种基于贝叶斯定理和特征条件独立假设的分类算法。贝叶斯定理是一种概率理论,它描述了在已知某些条件下,另一个事件发生的概率。

  朴素贝叶斯算法假设所有特征都是相互独立的,即每个特征变量与其他特征变量无关。基于这个假设,朴素贝叶斯算法可以通过观察已经有标签的数据集来预测新数据的标签类别。

  朴素贝叶斯算法常用于文本分类,垃圾邮件过滤和情感分析等应用。

  以下是使用Python实现朴素贝叶斯算法模型的示例代码:

import numpy as npclass NaiveBayes:def __init__(self, n_classes):self.n_classes = n_classesself.priors = Noneself.posteriors = Nonedef fit(self, X, y):n_samples, n_features = X.shapeself.priors = np.zeros(self.n_classes)self.posteriors = np.zeros((self.n_classes, n_features))for c in range(self.n_classes):X_c = X[y == c]self.priors[c] = len(X_c) / n_samplesself.posteriors[c] = (X_c.sum(axis=0) + 1) / (len(X_c) + 1)def predict(self, X):y_pred = []for x in X:posteriors = []for c in range(self.n_classes):prior = np.log(self.priors[c])likelihood = np.sum(np.log(self.posteriors[c]) * x)posterior = prior + likelihoodposteriors.append(posterior)y_pred.append(np.argmax(posteriors))return y_pred

  这个实现使用了拉普拉斯平滑来避免零概率问题,并将概率转换为对数形式以避免数值下溢问题。fit方法用于训练朴素贝叶斯模型,而predict方法用于对新样本进行分类。

3.2、决策树

  决策树是一种基于树形结构的分类和回归模型,常用于数据挖掘和机器学习领域。它通过对数据集进行递归地分割,不断对特征进行选择,直到最终得到一个递归的决策树。

  决策树的节点表示数据集中的一个特征,边表示这个特征的取值,叶子节点表示分类结果或回归结果。

  在分类问题中,决策树将一个样本从根节点分到一个特定的叶子节点,该叶子节点的类别即为该样本的类别;

  在回归问题中,决策树将一个样本从根节点分到一个特定的叶子节点,并且该叶子节点的值即为该样本的预测值。

  决策树具有可解释性好、易于理解和使用等优点,在实际应用中也有广泛的应用。

四、神经网络

  神经网络是一种模拟人类大脑神经系统运作方式的计算机程序。它由大量的人工神经元(模拟生物神经元)通过一定的连接方式组成,通过学习和训练,可以识别、分类、模拟和预测各种事物,具有良好的自适应性和非线性映射能力,在人工智能、图像识别、自然语言处理、语音识别等领域有广泛应用。

  神经网络包括前馈神经网络、递归神经网络等多种结构,其中前馈神经网络最为常见。

  神经网络实现逻辑与运算的示例代码

  神经网络实现逻辑与运算。

  逻辑与运算是两个二进制数都为1时结果为1,否则为0的运算。

  神经网络可以通过学习逻辑与运算的输入与输出之间的映射,来实现逻辑与运算。

  下面是一个简单的神经网络实现逻辑与运算的示例代码:

import numpy as np
# 输入数据和标签
x = np.array([[0, 0], [0, 1], [1, 0], [1, 1]])
y = np.array([[0], [0], [0], [1]])

# 定义神经网络 

# 定义神经网络
class NeuralNetwork:def __init__(self):np.random.seed(1)self.weights = 2 * np.random.random((2, 1)) - 1def sigmoid(self, x):return 1 / (1 + np.exp(-x))def sigmoid_derivative(self, x):return x * (1 - x)def train(self, x, y, iterations):for i in range(iterations):output = self.predict(x)error = y - outputadjustment = np.dot(x.T, error * self.sigmoid_derivative(output))self.weights += adjustmentdef predict(self, x):return self.sigmoid(np.dot(x, self.weights))

# 训练神经网络

# 训练神经网络
neural_network = NeuralNetwork()
neural_network.train(x, y, 10000)

# 预测

# 预测
print(neural_network.predict(np.array([0, 0])))
print(neural_network.predict(np.array([0, 1])))
print(neural_network.predict(np.array([1, 0])))
print(neural_network.predict(np.array([1, 1])))

输出结果为:

[0.5]
[0.2689864]
[0.2689864]
[0.11738518]

由于神经网络是基于概率的模型,输出的结果并非完全准确,

但可以看出对于输入为(0,0)、(0,1)和(1,0)时,输出都接近于0,

对于输入为(1,1)时,输出接近于1,符合逻辑与运算的结果。

             推荐阅读:

给照片换底色(python+opencv)猫十二分类基于大模型的虚拟数字人__虚拟主播实例

计算机视觉__基本图像操作(显示、读取、保存)直方图(颜色直方图、灰度直方图)直方图均衡化(调节图像亮度、对比度)

 语音识别实战(python代码)(一)

 人工智能基础篇

 计算机视觉基础__图像特征

93d65dbd09604c4a8ed2c01df0eebc38.png

 matplotlib 自带绘图样式效果展示速查(28种,全)

074cd3c255224c5aa21ff18fdc25053c.png

Three.js实例详解___旋转的精灵女孩(附完整代码和资源)(一)

fe88b78e78694570bf2d850ce83b1f69.png

cb4b0d4015404390a7b673a2984d676a.png

立体多层玫瑰绘图源码__玫瑰花python 绘图源码集锦

 Python 3D可视化(一)

 让你的作品更出色——词云Word Cloud的制作方法(基于python,WordCloud,stylecloud)

e84d6708316941d49a79ddd4f7fe5b27.png

938bc5a8bb454a41bfe0d4185da845dc.jpeg

0a4256d5e96d4624bdca36433237080b.png

 python Format()函数的用法___实例详解(一)(全,例多)___各种格式化替换,format对齐打印

 用代码写出浪漫__合集(python、matplotlib、Matlab、java绘制爱心、玫瑰花、前端特效玫瑰、爱心)

python爱心源代码集锦(18款)

dc8796ddccbf4aec98ac5d3e09001348.jpeg

0f09e73712d149ff90f0048a096596c6.png

40e8b4631e2b486bab2a4ebb5bc9f410.png

 Python中Print()函数的用法___实例详解(全,例多)

 Python函数方法实例详解全集(更新中...)

 《 Python List 列表全实例详解系列(一)》__系列总目录、列表概念

09e08f86f127431cbfdfe395aa2f8bc9.png

用代码过中秋,python海龟月饼你要不要尝一口?

 python练习题目录

03ed644f9b1d411ba41c59e0a5bdcc61.png

daecd7067e7c45abb875fc7a1a469f23.png

17b403c4307c4141b8544d02f95ea06c.png

草莓熊python turtle绘图(风车版)附源代码

 ​草莓熊python turtle绘图代码(玫瑰花版)附源代码

 ​草莓熊python绘图(春节版,圣诞倒数雪花版)附源代码

4d9032c9cdf54f5f9193e45e4532898c.png

c5feeb25880d49c085b808bf4e041c86.png

 巴斯光年python turtle绘图__附源代码

皮卡丘python turtle海龟绘图(电力球版)附源代码

80007dbf51944725bf9cf4cfc75c5a13.png

1ab685d264ed4ae5b510dc7fbd0d1e55.jpeg

1750390dd9da4b39938a23ab447c6fb6.jpeg

 Node.js (v19.1.0npm 8.19.3) vue.js安装配置教程(超详细)

 色彩颜色对照表(一)(16进制、RGB、CMYK、HSV、中英文名)

2023年4月多家权威机构____编程语言排行榜__薪酬状况

aa17177aec9b4e5eb19b5d9675302de8.png

38266b5036414624875447abd5311e4d.png

6824ba7870344be68efb5c5f4e1dbbcf.png

 手机屏幕坏了____怎么把里面的资料导出(18种方法)

【CSDN云IDE】个人使用体验和建议(含超详细操作教程)(python、webGL方向)

 查看jdk安装路径,在windows上实现多个java jdk的共存解决办法,安装java19后终端乱码的解决

​​

vue3 项目搭建教程(基于create-vue,vite,Vite + Vue)

fea225cb9ec14b60b2d1b797dd8278a2.png

bba02a1c4617422c9fbccbf5325850d9.png

37d6aa3e03e241fa8db72ccdfb8f716b.png

2023年春节祝福第二弹——送你一只守护兔,让它温暖每一个你【html5 css3】画会动的小兔子,炫酷充电,字体特

 别具一格,原创唯美浪漫情人节表白专辑,(复制就可用)(html5,css3,svg)表白爱心代码(4套)

SVG实例详解系列(一)(svg概述、位图和矢量图区别(图解)、SVG应用实例)

5d409c8f397a45c986ca2af7b7e725c9.png

6176c4061c72430eb100750af6fc4d0e.png

1f53fb9c6e8b4482813326affe6a82ff.png

【程序人生】卡塔尔世界杯元素python海龟绘图(附源代码),世界杯主题前端特效5个(附源码)HTML+CSS+svg绘制精美彩色闪灯圣诞树,HTML+CSS+Js实时新年时间倒数倒计时(附源代码)

 2023春节祝福系列第一弹(上)(放飞祈福孔明灯,祝福大家身体健康)(附完整源代码及资源免费下载)

fffa2098008b4dc68c00a172f67c538d.png

5218ac5338014f389c21bdf1bfa1c599.png

c6374d75c29942f2aa577ce9c5c2e12b.png

 tomcat11、tomcat10 安装配置(Windows环境)(详细图文)

 Tomcat端口配置(详细)

 Tomcat 启动闪退问题解决集(八大类详细)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/2178.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

FineReport学习2

当原始数据中存储的字段不适宜展现在报表上;或原始数据在数据查询时不易修改,但对显示在报表中的值有要求;或需要根据不同的原始数据在报表中显示不同的值时,就可以利用数据字典做巧妙的转化 设置数据字典 数据列的过滤&#xff…

软件工程——第5章总体设计知识点整理

本专栏是博主个人笔记,主要目的是利用碎片化的时间来记忆软工知识点,特此声明! 文章目录 1.总体设计的基本目的? 2.总体设计的任务? 3.总体设计过程由哪两个阶段组成? 4.总体设计的步骤? 5…

Python基础语法笔记整理(黑马8天学会python笔记)

Python 第一章、基础语法 01.字面量(写在代码中的固定的值) 02.注释 # 单行注释 """ 多行注释 """03.变量 变量无类型,数据有类型 变量名 变量值04.数据类型 数据类型: type()05.类型转换 字符串转数字&#xff…

在 K8S 中部署一个应用 下

接着上一篇继续部署应用到 K8S中 之前简单部署的简单集群,三个工作节点是运行在 docker 和 kubelet 的,还有一个是控制节点 ReplicationController , pod 和 service 本次关系 之前有提到 ReplicationController , pod 和 服务…

使用 Debian、Docker 和 Nginx 部署 Web 应用

前言 本文将介绍基于 Debian 的系统上使用 Docker 和 Nginx 进行 Web 应用部署的过程。着重介绍了 Debian、Docker 和 Nginx 的安装和配置。 第 1 步:更新和升级 Debian 系统 通过 SSH 连接到服务器。更新软件包列表:sudo apt update升级已安装的软件…

C语言编程—预处理器

预处理器不是编译器的组成部分,但是它是编译过程中一个单独的步骤。简言之,C 预处理器只不过是一个文本替换工具而已,它们会指示编译器在实际编译之前完成所需的预处理。我们将把 C 预处理器(C Preprocessor)简写为 CP…

2022年12月份青少年软件编程Python等级考试试卷六级真题(含答案)

一、单选题(共25题,共50分) 1.数据文件“abc.txt”中包含若干个英文单词,如图所示: 读取文件“abc.txt”中数据的Python程序段如下: file abc.txt word_b [] for word in open(file):if word[0:1] a and len(word)>4:wo…

Linux 环境变量 命令行参数

文章目录 问题引入环境变量环境变量相关操纵(附源码)命令行参数问题解释 问题引入 Linux下,为什么我们自己写的可执行文件需要写明路径才可以执行,而系统的命令不需要? 如何使自己的命令也可以不带路径执行&#xff…

SAP-QM质量管理视图字段解析

QM物料授权:如果在物料主记录中输入物料授权组,则系统将检查(在物料基础上)用户是否具有对以上名称对象的授权。如果未输入授权组,则不进行授权检查。要通过授权检查,用户需要 物料授权,其中包含有字段值所表示的相关授权组。 收货处理时间:收货后的加盐时间(天数)如…

基于Servlet+JDBC实现的基础博客系统>>系列3 -- Servlet后端服务器搭建

目录 前言 1. 前期准备 2. Model层 2.1 数据库的设计 2.2 数据库表对应的实体类实现 User类 Blog类 2.3 JDBC 工具类实现 2.4 UserDao 的实现 2.5 BlogDao 的实现 3. Controller 层实现 3.1 博客列表页 3.1.1 约定前后端交互接口 3.1.2 编写后端代码 3.1.3 编写…

Redis复习

文章目录 分布式锁基本概念及问题超时问题可重入锁 Pub/Sub消息多播Pub/Sub模式订阅消息结构PubSub缺陷 线程 I/O模型非阻塞I/O事件轮询(多路复用)select函数指令队列 分布式锁 基本概念及问题 如果操作要修改用户状态,需要先读取再修改用户…

Nginx | 苹果电脑Mac安装和验证Nginx服务过程记录

common wx:CodingTechWork,一起学习进步。 引言 本文主要总结如何在Mac电脑上进行Nginx服务的安装,重点讲解使用brew命令进行安装和验证的过程及问题记录。 安装步骤 安装过程记录 查看nginx信息 首先使用命令brew info nginx进行本机ng…