人工智能、机器学习和深度学习,其实不是一回事

人工智能、机器学习和深度学习,其实不是一回事

一、人工智能、机器学习与深度学习的真正区别

在当今科技领域,我们经常听到人工智能、机器学习和深度学习这三个词。它们虽然相关,但含义不同。

1.1 人工智能

人工智能是计算机科学的一个分支,旨在研究如何合成与分析能够像人一样行动的计算主体。简单来说,AI 的目标是利用计算机来模拟甚至替代人类大脑的功能。

一个理想的 AI 系统通常具备以下特征:像人一样思考像人一样行动理性地思考与行动

在这里插入图片描述

1.2 机器学习

机器学习是实现人工智能的一种途径。它的核心定义是:赋予计算机在没有被显式编程的情况下进行学习的能力。

与传统的基于规则的编程不同,机器学习不依赖程序员手写每一条逻辑指令,而是通过算法让机器从大量数据中寻找规律,从而对新的数据产生预测或判断。

在这里插入图片描述

1.3 深度学习

深度学习是机器学习的一种特殊方法,也称为深度神经网络。它受人类大脑结构的启发,通过设计多层的神经元网络结构,来模拟万事万物的特征表示。

在这里插入图片描述

1.4 三者之间的层级关系

厘清这三者的关系对于初学者至关重要。人工智能 AI是最宏大的概念,包含了所有让机器变聪明的技术。机器学习 ML是 AI 的一个子集,是实现 AI 的目前最主流的方法。深度学习 DL又是 ML 的一个子集,是 ML 中利用深层神经网络进行学习的技术流派。

在这里插入图片描述

二、机器究竟是如何学习的

为了更好地理解机器学习,我们需要对比传统的解决问题方式与机器学习方式的区别。

2.1 规则驱动的传统编程方式

在传统编程模式下,程序员基本上就是规则的制定者。所有逻辑都要提前想清楚,然后用if-else这样的判断语句一条条写进去。

比如做图像判断时,程序往往只能依赖显式条件去推断结果

识别到轮子而且是圆形 → 可能是车
识别到车窗 → 可能是车
再叠加更多结构特征

问题很快就会暴露出来。

当问题边界清晰时,比如税务计算,这种方式非常高效。但面对复杂场景,例如图像识别自然语言处理,规则会迅速膨胀

现实世界没有固定模板。同一个目标在不同光照、角度、遮挡情况下都会发生巨大变化。想靠穷举条件覆盖所有情况,几乎不现实。

规则可以不断增加,但复杂度增长的速度,远远快于系统可维护的程度。

在这里插入图片描述

2.2 模型驱动的机器学习方式

机器学习采用的是归纳法。我们不直接编写规则,而是提供大量的历史数据,让机器通过算法去训练一个模型

案例:房价预测
假设我们有一组房屋面积与销售价格的数据:

123$m^2$ ->250万 150$m^2$ ->320万 ... 

我们可以假设房价与面积之间存在线性关系,即模型为 y = a x + b y = ax + b y=ax+b。

$y$ 是房价,$x$ 是面积。 $a$(斜率)和 $b$(截距)是我们需要求解的参数。 

机器学习的过程,就是通过历史数据找到最合适的 a a a 和 b b b,使得这条直线尽可能拟合所有数据点。一旦确定了参数,当输入一个新的面积 x x x 时,模型就能预测出房价 y y y。

在这里插入图片描述

三、人工智能的发展与现实应用

3.1 机器学习已经渗透的领域

如今,机器学习已经渗透到我们生活的方方面面

用户分析:社交网络画像、商品评论情感分析。搜索引擎:搜索结果排序、以图搜图。推荐系统:抖音/B站的视频推荐、淘宝的商品推荐。计算机视觉:人脸识别闸机、自动驾驶车辆检测、医疗影像诊断。AIGC:机器翻译、ChatGPT文本生成、Midjourney绘图。

3.2 三次浪潮:人工智能的发展阶段

人工智能并非新生事物,其发展经历了三次主要浪潮:

第一阶段(1950-1970年代):符号主义。以1956年达特茅斯会议提出人工智能术语为起点。代表事件是IBM的跳棋程序战胜人类。
第二阶段(1980-2000年代):统计主义。统计模型开始解决实际问题。代表事件是1997年IBM深蓝战胜国际象棋冠军卡斯帕罗夫。
第三阶段(2010年至今):深度学习。随着算力提升,神经网络复兴。2016年AlphaGo战胜李世石是标志性事件。2022年ChatGPT的出现标志着大模型时代的到来。

在这里插入图片描述

3.3 AI 爆发背后的三大基础

为什么 AI 在近年来才爆发?因为三大基石的共同作用。

1.数据:互联网时代产生了海量数据,为模型提供了燃料。
2.算法:深度学习算法的突破。
3.算力:硬件的飞跃。

CPU:适合逻辑控制和I/O操作。
GPU:擅长大规模矩阵运算,是训练神经网络的主力。
TPU:Google专门为张量计算设计的处理器。
在这里插入图片描述

四、机器学习常见术语

1.样本
一行数据就是一个样本。
它代表现实世界中的一个实体或一条记录。多个样本组成了数据集

2.特征
数据表中的列(通常是除去最后一列)
特征是从数据中抽取出来的、对预测结果有用的属性信息。

3.标签/目标值
模型要预测的那一列数据。
这是模型学习的最终答案。

4.数据集划分
为了验证模型的有效性,我们不能用所有数据来训练。通常将数据集按比例(如 8:2 或 7:3)划分为两部分:

训练集:用于让模型学习规律,建立模型。
测试集:用于评估模型表现。
在这里插入图片描述

最后,当我们把人工智能机器学习深度学习放回各自的位置,很多问题其实就变得清晰了。AI 是目标, 机器学习是路径, 深度学习是其中的一种实现方式。理解层级,比记住名词更重要。

日期:2025年2月24日
专栏:机器学习

Read more

一维前缀和与二维前缀和算法介绍及使用

一维前缀和与二维前缀和算法介绍及使用

目录 1. 一维前缀和 1.1 一维前缀和原理讲解 1.2 具体代码实现以及例题讲解 2. 二维前缀和 2.1 二维前缀和原理讲解 2.2 具体代码实现以及例题讲解 今天我们来聊聊一维前缀和算法,这个算法属于基础算法。 1. 一维前缀和 一维前缀和是一种高效处理数组区间求和问题的算法,通过预处理数组构建前缀和数组,能将区间和查询的时间复杂度从 O (n) 降至 O (1)。 简单来说它的本质就是预处理,在这一点上有点像字符串的KMP算法,都是通过预处理的方式来换取效率。 这种算法是专门用来处理多次求区间和问题的。 1.1 一维前缀和原理讲解 那么我们该怎么进行预处理呢,我们看下面这张图,下面那个表格就是我们的前缀和数组,一般来说我们使用vector来存储前缀和数组。 我们的前缀和数组的第0个位置一般来说都是直接置空的,这个的话是因为我们在代码实现的时候要通过前缀和数组前一个位置的值加原数据当前位置的值来确定前缀和当前位置的值,如果我们不给第一个位置放0的话,在代码实现的时候我们还需要进行特判,这个的话比较麻烦,而直接置空的话就没有这个问题了,所以我们

By Ne0inhk

Android音频PCM数据加窗处理实战:从算法选型到性能优化

快速体验 在开始今天关于 Android音频PCM数据加窗处理实战:从算法选型到性能优化 的探讨之前,我想先分享一个最近让我觉得很有意思的全栈技术挑战。 我们常说 AI 是未来,但作为开发者,如何将大模型(LLM)真正落地为一个低延迟、可交互的实时系统,而不仅仅是调个 API? 这里有一个非常硬核的动手实验:基于火山引擎豆包大模型,从零搭建一个实时语音通话应用。它不是简单的问答,而是需要你亲手打通 ASR(语音识别)→ LLM(大脑思考)→ TTS(语音合成)的完整 WebSocket 链路。对于想要掌握 AI 原生应用架构的同学来说,这是个绝佳的练手项目。 从0到1构建生产级别应用,脱离Demo,点击打开 从0打造个人豆包实时通话AI动手实验 Android音频PCM数据加窗处理实战:从算法选型到性能优化 在Android音频处理领域,实时处理PCM数据时经常会遇到频谱泄漏和计算延迟的问题。特别是在语音识别、音频特效处理等场景中,不恰当的加窗操作会导致音频质量下降和性能瓶颈。本文将带你从算法选型到性能优化,完整实现一个高效的PCM数据加窗处理方案。 背景痛点分析

By Ne0inhk
算法王冠上的明珠——动态规划之斐波那契数列问题(第二篇)

算法王冠上的明珠——动态规划之斐波那契数列问题(第二篇)

目录 1. LeetCode746. 使用最小花费爬楼梯 2. LeetCode91. 解码方法 今天我们继续来聊一聊动态规划的斐波那契数列类型的题目 1. LeetCode746. 使用最小花费爬楼梯 这个题目的话也是比较简单的。就是要求我们计算在可以一次走一步或者两步的情况下,到达结尾时的最小消耗。 所以在这道题里面它的状态表示就是走到当前位置的值的最小消耗。 所以在这道题里面它的状态转移方程就是dp[i]=min(dp[i-1],dp[i-2])+c[i]。 它的初始化就是第0个位子设置为c[0],第一个位置设置为c[1]。(怎么设置是因为我们是不知道开始的那个位置的大小,而且因为我们的状态转移方程需要依靠前两个位置的值,所以我们在这里就直接初始化前两个)。 填表顺序就是从前往后就好。 返回值就是dp表第sz-1个位置的值和第sz-2个位置的值的最小值。 class Solution { public: int minCostClimbingStairs(vector<int>& c) { int sz=c.size(); vector<

By Ne0inhk
一序平衡,括号归真:单括号匹配算法的优雅美学

一序平衡,括号归真:单括号匹配算法的优雅美学

一序平衡,括号归真:单括号匹配算法的优雅美学 * 一、问题本源:何为合法的单括号序列? * 🔹 核心判定准则 * 举个直观例子 * 二、思维演进:从朴素思路到极致优化 * 1. 原始思路:双计数器法(直观但冗余) * 2. 优雅优化:单计数器法(平衡值思想) * 三、图形化拆解:算法执行全过程 * 案例1:合法序列 `( () () )` * 案例2:非法序列 `( ) )` * 四、算法原理深度讲解 * 五、C++ 关键代码实现与讲解 * 代码核心亮点 * 六、算法思维的启示 * 七、结语 算法与数据结构片头 在算法的星河里,单括号匹配问题如一颗温润的贝珠,以极简的形态承载着最纯粹的算法思维。它剥离了复杂的类型干扰,只保留一对小括号 () 的序列判断,却能让我们窥见「平衡思想」与「代码优化」的本质——这是编译器语法校验、表达式合法性判断的底层基石,

By Ne0inhk