8年java开发从零学习人工智能(深度学习)--pp飞桨(百度自研开源框架)

1.明确概念:人工智能>机器学习>深度学习,三者的关系是包含关系,如图所示:

人工智能(AI),很宽泛的概念,是研发用于模拟,延展和扩展人的智能的理论,方法,技术及应用系统的一门新的技术科学。而机器学习(Machine Learning)是当前比较有效的实现人工智能的方式。深度学习(DL)是机器学习算法中最热门的分支,这些年取得显著进展,并替代了大多数传统机器学习算法。

2.机器学习的实现原理:

机器学习的实现可以分为两步:训练和预测,类似与归纳和演绎;

归纳(训练):从具体案例中抽象出一般规律,机器学习中的"训练"也是如此,从模型输入x和模型输出y中学习y和x的关系,某种规律体现为表达式;

演绎(预测):从一般规律推导出具体案例的结果,基于训练得到y与x的关系,出现新的输入x计算得出y,通过模型计算输出和真实的输出一致,则说明模型有效;

机器学习的实施方法:机器思考过程中确定模型的三个关键要素:假设,评价,优化;

合理的假设可以最大化解释已知数据,因此,模型有效的基本条件是 能够拟合已知的样本;

衡量模型预测值和真实值差距的评价函数也被称为损失函数;

最小化损失是模型的优化目标,实现最小化损失的方法称为优化算法。

模型假设,评价函数(损失/优化目标)和优化算法是构成模型的三个关键要素;

机器执行学习任务的框架体现了其学习的本质是"参数估计";

3.深度学习

相比传统的机器学习算法,深度学习做出了哪些改进呢?其实两者在理论结构上是一致的,即:模型假设、评价函数和优化算法,其根本差别在于假设的复杂度

神经网络的基本概念

人工神经网络包括多个神经网络层,如:卷积层、全连接层、LSTM等,每一层又包括很多神经元,超过三层的非线性神经网络都可以被称为深度神经网络。通俗的讲,深度学习的模型可以视为是输入到输出的映射函数,如图像到高级语义(美女)的映射,足够深的神经网络理论上可以拟合任何复杂的函数。因此神经网络非常适合学习样本数据的内在规律和表示层次,对文字、图像和语音任务有很好的适用性。这几个领域的任务是人工智能的基础模块,因此深度学习被称为实现人工智能的基础也就不足为奇了。

神经网络的基本结构:

  • 神经元: 神经网络中每个节点称为神经元,由两部分组成:
    • 加权和:将所有输入加权求和。
    • 非线性变换(激活函数):加权和的结果经过一个非线性函数变换,让神经元计算具备非线性的能力。
  • 多层连接: 大量这样的节点按照不同的层次排布,形成多层的结构连接起来,即称为神经网络。
  • 前向计算: 从输入计算输出的过程,顺序从网络前至后。
  • 计算图: 以图形化的方式展现神经网络的计算逻辑又称为计算图,也可以将神经网络的计算图以公式的方式表达:

Y=f3(f2(f1(w1⋅x1+w2⋅x2+w3⋅x3+b)+...)...)...)Y=f3​(f2​(f1​(w1​⋅x1​+w2​⋅x2​+w3​⋅x3​+b)+...)...)...)

由此可见,神经网络并没有那么神秘,它的本质是一个含有很多参数的"大公式"。如果大家感觉这些概念仍过于抽象,理解的不够透彻,先不用着急,下一章会以"房价预测"为例,演示使用Python实现神经网络模型的细节。

相关推荐
H03111698516 分钟前
App竞品数据查询工具整理 月狐数据 蝉大师 点点数据功能概览
人工智能
传奇开心果编程41 分钟前
【springboot基础语法学与练】第 1 课:从零开始
java·spring boot·后端·学习
叠层归一研究院1 小时前
基于极限自指的叠层归一宇宙结构理论——无元外部封闭系统的内生区分模型
人工智能·经验分享·算法·agi
IT_陈寒1 小时前
Java线程池用错参数,我的服务居然悄悄崩溃了
前端·人工智能·后端
why-geo1 小时前
Hermes Agent 与 Python 的会产生什么样的碰撞
人工智能·python·ai编程
扶风ff1 小时前
练题簿小程序:家庭在线练题,课后复习更简单
学习·小程序
传奇开心果编程1 小时前
【Flutter入门练中学】第2课:布局系统
学习·flutter·ui
正经教主1 小时前
【FDE系列】阶段2:Day 29:FastAPI 进阶 — Pydantic 模型与完整 CRUD 实战
人工智能·python·fde
彧azz1 小时前
Linux 网络编程学习总结
linux·网络·笔记·学习·面试
时速GEO系统1 小时前
初元 AI V1.1 版本升级,首个正式版发布一周・实现生成、部署、上线、优化全流程自动化闭环
人工智能·数据挖掘·node.js