深度学习与机器学习区别

news2024/11/16 22:30:32

深度学习与机器学习区别

本文目录:

一、特征提取方面

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 np

class NaiveBayes:
    def __init__(self, n_classes):
        self.n_classes = n_classes
        self.priors = None
        self.posteriors = None
    
    def fit(self, X, y):
        n_samples, n_features = X.shape
        self.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_samples
            self.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 + likelihood
                posteriors.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)) - 1

    def 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 - output
            adjustment = np.dot(x.T, error * self.sigmoid_derivative(output))
            self.weights += adjustment

    def 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.coloradmin.cn/o/689826.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

pyspark报错 ‘DataFrame‘ object has no attribute ‘iteritems‘

修改pandas版本即可 我环境spark3.3.2 python3.9 numpy 1.25.0

AutoSAR系列讲解(入门篇)3.3-RTE对Ports的支撑(上)

目录 一、特征 1、扮演SWCs和BSW的交流途径 2、其他特征 二、S/R接口的不同方式 1、直接调用(Direct) 2、缓存调用(Buffered) 3、队列调用(Queued) 三、跨ECU的方式 一、特征 1、扮演SWCs和BSW的交…

数据分析入门-SARIMA模型案例分析(超详细)

由于代码中注释已经非常的清晰,文章中就不过多叙述了,直接上代码。 代码如下: # 在开始之前先导入所需要的包import warnings # do not disturbe mode warnings.filterwarnings(ignore)import numpy as np …

ChatGPT批量生成文章软件:创意无限,智能驱动文章

随着人工智能技术的不断发展,ChatGPT批量生成文章软件成为了当今互联网世界中备受瞩目的创新之一。作为一种基于大规模预训练语言模型的自然语言处理工具,ChatGPT能够以人类般的方式与用户进行对话,并且能够生成高质量的文章。这一技术的出现…

【LLMs系列】没钱玩GPT-4?来试试Mini-GPT4吧!

一、MiniGPT-4尝鲜 还在苦苦等待GPT-4开放?开源项目MiniGPT-4就能提前体验类似GPT-4的多模态对话功能。 2023年4月17日,多模态问答模型MiniGPT-4发布,实现了GPT-4里的宣传效果 《MiniGPT-4: Enhancing Vision-language Understanding with …

GDB常用调试方法及其底层原理

本文分为两个大模块,第一部分记录下本人常用到的GDB的调试方法和技巧,第二部分则尝试分析GDB调试的底层原理。 一、GDB调试 要让程序能被调试,首先得编译成debug版本,当然release版本的也能通过导入符号表来实现调试&#xff0c…

Centos7下tensorflow 2.12无法找到NVIDIA Tesla T4 GPU终极解决方法

目录 背景 系统信息 GPU信息 关键软件信息 问题现象 原因分析

解决element-ui消息提示$message重叠问题

在进行表单校验的时候,当触发两个提示消息的时候会出现上面的叠加情况,没有将提示消息分开显示,这样就给用户造成不好的视觉效果 我们的预期效果是达到上面的显示效果,就是在进行提示的时候,如果叠加就需分开显示&…

Centos8同步时间(阿里云NTP服务为例)

一、安装chrony sudo dnf install chrony二、使用 sed 命令一键完成配置 #pool 2.centos.pool.ntp.org iburst给这一行加注释 sudo sed -i s/^pool 2.centos.pool.ntp.org iburst/#&/ /etc/chrony.conf #添加3个阿里云NTP服务器 echo -e "server ntp1.aliyun.com ib…

withContext CoroutineScope协程切换,kotlin

withContext CoroutineScope协程切换&#xff0c;kotlin <dependency><groupId>org.jetbrains.kotlinx</groupId><artifactId>kotlinx-coroutines-core</artifactId><version>1.4.2</version></dependency> import kotlinx.co…

python 上传包到pypi

参考 https://www.jianshu.com/p/81fe5a5cd27a 1.打包 在pypi注册账号&#xff0c;并新建token 需要在用户下创建一个.pypirc文件。username__ token __ 是固定的&#xff0c;password 填入刚刚的token。 使用下面两个命令把dist中文件推送到pypi python setup.py sdist…

AI读心重磅突破登Nature!AI破译大脑信号

近日&#xff0c;洛桑联邦理工学院团队在Nature上提出了一种名为CEBRA的可实现AI读脑的最新算法&#xff0c;以高精度捕捉到了动物大脑的动态。 利用AI&#xff0c;一个研究团队「看见」了老鼠眼中的电影世界。更神奇的是&#xff0c;这种机器学习算法&#xff0c;还能揭示大脑…

【以太坊】本地搭建以太坊测试网络,部署合约

文章目录 工具建议参考测试 工具 Ganache 建议 推荐使用 Ganache 搭建&#xff0c;简单易上手 参考 https://www.npmjs.com/package/ganache 测试 npm install ganache --global && ganache --help ganache

[230609] 阅读TPO57汇总|9:30-10:50

TPO57 01 Pests and Pesticides [3]修辞目的题 修辞目的题做题技巧&#xff1a;找观点&#xff01;不能推理&#xff01;一般找例子前后的观点&#xff01; P3段 段意即观点&#xff0c;观点在段首或段尾&#xff01; 考察比较的作用 主要理解In other words后面的话&#…

新老版本AndroidStudio删除无用资源方法总结

今年AndroidStudio版本更新比较快&#xff0c;一些常用的功能都在变化&#xff0c;其中删除项目中无用资源变化的有点大&#xff0c;特在此记录总结下。这里所说的新老版本的Android Studio其实就是看Android Studio最上面有没有&#xff1a;Anaylze 老版本是有的 新版本这个…

SeaTunnel 发布成为 Apache 顶级项目后首个版本 2.3.2,进一步提高 Zeta 引擎稳定性和易用性

近日&#xff0c;Apache SeaTunnel 正式发布 2.3.2 版本。此时距离上一版本 2.3.1 发布已有两个多月&#xff0c;期间我们收集并根据用户和开发者的反馈&#xff0c;在 2.3.2 版本中对 SeaTunnel Zeta Engine 进行了 Bug 修复&#xff0c;提高了引擎的稳定性和使用效率。 此外&…

【Java】Java核心 74:XML (下)

文章目录 **7** **Schema约束(能够看懂即可)****1** **书写schema约束****2** **在xml文件中引入schema约束** 7 Schema约束(能够看懂即可) 与dtd约束一样&#xff0c;schema它也是用来约束xml文件的。schema约束书写的时候&#xff0c;它遵守xml的语法规则。在书写schema的时…

vb.net 正则表达式解析一些奇奇怪怪的文件名为时间类型

Public Function 正则表达式A(f As String) As Date2023-02-06 1653830If New Regex("\d{4}.\d{2}.\d{2}.\d{6}").IsMatch(f) ThenDim nian Strings.Mid(f, 1, 4)Dim yue Strings.Mid(f, 6, 2)Dim ri Strings.Mid(f, 9, 2)Dim shi Strings.Mid(f, 12, 2)Dim feng…

什么是编程语言?||与编程相关的计算机硬件介绍

什么是编程语言&#xff1f; 学习编程语言之前&#xff0c;首先要搞清楚“编程语言”这个概念。 很小的时候&#xff0c;父母就教我们开口说话&#xff0c;也教我们如何理解别人讲话的意思。经过长时间的熏陶和自我学习&#xff0c;我们竟然在不知不觉中学会了说话&#xff0c…

【从零开始学习JAVA | 第二十二篇】BigInteger

目录 前言&#xff1a; BigInterger&#xff1a; BigInteger常见的方法&#xff1a; 总结&#xff1a; 前言&#xff1a; 本篇我们将介绍BigInteger这个比较实用一点的API&#xff0c;这个API在我们实际写项目中都是很实用的API&#xff0c;因此大家应该对这个API有更加熟练的…