当前位置: 首页 > news >正文

生成式人工智能之路,从马尔可夫链到生成对抗网络

人工智能(Artificial intelligence,AI)技术在过去几年中取得了显著进展,其中生成式AI(Generative AI)因其强大的内容生成能力而备受关注。生成式AI可以创建新的文本、图像、音频、视频、代码以及其他形式的数据,这一特性使其在多个领域都有广泛的应用。其实,我们现在大多数在数据领域接触主要是生成式AI与判别式AI。这是AI的两个主要类别。判别式AI是传统且更为人知的部分,而生成式AI则是今天讲的主题。

生成式AI的概念源于20世纪50年代末和60年代初。当时,研究人员开始探索使用算法生成新数据的可能性。一个早期的例子是马尔可夫链(Markov Chain)。这是一个统计模型,能够根据输入生成新的数据序列。虽然这个模型看起来简单,但它为生成式AI的进一步发展奠定了基础。

上面的是一个马尔可夫链的状态转移图,用于表示马尔可夫过程中的状态之间的转移概率。在这种图中,每个圆圈代表一个状态,而箭头则表示从一个状态转移到另一个状态的概率。每条箭头上标注的数字表示从起始状态转移到目标状态的概率。在这个示例中,有两个状态:E 和 A。从状态 E 转移到状态 A 的概率是 0.7,而留在状态 E 的概率是 0.3。从状态 A 转移到状态 E 的概率是 0.4,而留在状态 A 的概率是 0.6。

由于马尔可夫链模型是一种描述系统在不同状态之间随机转移的数学模型,它在生成式AI及其他领域中有着广泛的应用。1)在文本生成方面,马尔可夫链可以通过预测下一个单词生成文本,应用于聊天机器人、自动补全系统等。2)在音乐创作中,它能够建模音乐序列,预测音符或和弦,从而辅助音乐生成。3)金融领域则利用马尔可夫链模拟股票市场趋势、信用评级变化和利率波动,而在天气预测中,它帮助根据当前和过去的条件预测未来天气。4)语音识别系统中,隐马尔可夫模型(HMMs)用于建模音素序列的概率,提升语音识别的准确性。5)在生物信息学中,马尔可夫链用于建模DNA序列,辅助基因预测和序列分析。6)Google的PageRank算法也利用了马尔可夫链来建模用户浏览行为,并对网页进行排名。7)自然语言处理领域中,马尔可夫链用于词性标注,提升文本分析和理解的效果。在游戏AI中,它能建模非玩家角色的行为,创造更加真实和多样化的动等等。

上图,安德烈·马尔可夫(1856年6月14日- 1922年7月20日)在20世纪初研究了马尔可夫过程,并在1906年发表了关于这一主题的第一篇论文。他的工作基于早期的泊松过程,对独立随机序列进行了扩展。马尔可夫在他的第一篇论文中展示了在特定条件下,马尔可夫链的平均结果会收敛到一个固定的值,从而在没有独立性假设的情况下证明了弱大数法则。马尔可夫还利用马尔可夫链研究了亚历山大·普希金的《叶甫盖尼·奥涅金》中元音的分布,并证明了这样的链的中心极限定理。

早期的生成式AI实例

接下来,我们要谈到1960年代的一个重要人物——约瑟夫·魏岑鲍姆。魏岑鲍姆最著名的贡献是他在1960年代开发的ELIZA程序(名为 ELIZA,是以乔治·伯纳德·萧伯纳的《皮格马利翁》中的天真少女命名,它可以与用户聊天。ELIZA 是用魏泽鲍姆自己创建的 SLIP 编程语言编写的。该程序将模式匹配规则应用于语句以确定其回复。(现在这样的程序被称为聊天机器人)。ELIZA是早期的自然语言处理程序之一,能够进行基于文本的对话。它通过使用一组预定义的规则和模式来识别用户输入中的关键词,并生成相应的回应。尽管ELIZA的能力非常有限,主要依赖于模式匹配,但它在当时的技术背景下展示了机器能够进行“对话”的潜力。ELIZA的成功引发了人们对计算机能够模拟人类对话的广泛兴趣,也为后来的对话系统和自然语言处理技术奠定了基础。

约瑟夫·魏岑鲍姆(Joseph Weizenbaum,1923 年 1 月 8 日 - 2008 年 3 月 5 日)是一位德裔美国计算机科学家,也是麻省理工学院的教授。魏泽鲍姆奖和魏泽鲍姆研究所都是以他的名字命名的。

80年代之后

到了1980年代和90年代,神经网络的引入标志着生成式AI的一个重大突破。神经网络能够模拟人脑的工作原理,通过大量数据训练,从而生成复杂的模式和结构。这一时期的进展为后来的生成式AI系统奠定了基础。

2014年,生成式AI迎来了一个重要的里程碑。伊恩·古德费洛(Ian Goodfellow)及其同事提出了生成对抗网络(GANs)的概念。然而,GANs通过对抗训练机制,显著提升了生成模型的能力。

在GANs中,两个神经网络——生成器(Generator)和判别器(Discriminator)——在对抗中相互博弈。生成器负责生成新内容,如图像或文本,而判别器则评估这些内容的真实性。生成器的目标是欺骗判别器,使其无法区分生成的内容与真实内容,而判别器则力求准确识别真假。通过这种对抗过程,判别器的判断标准也逐渐提高,使生成器能够生成更为高度逼真的数据。

GANs的出现标志着现代生成式AI的重要进展。

生成式AI的发展不是由某一个发明者推动的,而是许多研究人员和科学家的共同努力。最早的生成式AI实验集中在简单的统计模型和算法上,如马尔可夫链。随着计算能力的提升和神经网络技术的发展,生成式AI进入了一个新的阶段。多层神经网络(Deep Neural Networks)和卷积神经网络(Convolutional Neural Networks)的引入,使得生成式AI能够处理更加复杂和多样的数据。

除了GANs,其他先进技术如变分自编码器(VAEs)和Transformer模型也对生成式AI的发展起到了关键作用。现代生成式AI不仅能生成高质量的文本,还能生成逼真的图像和视频,创作新的音乐作品,甚至在医疗和科学研究中应用,生成合成数据用于模型训练,辅助诊断和治疗。

相关文章:

生成式人工智能之路,从马尔可夫链到生成对抗网络

人工智能(Artificial intelligence,AI)技术在过去几年中取得了显著进展,其中生成式AI(Generative AI)因其强大的内容生成能力而备受关注。生成式AI可以创建新的文本、图像、音频、视频、代码以及其他形式的…...

qt做的分页控件

介绍 qt做的分页控件 如何使用 创建 Pagination必须基于一个QWidget创建,否则会引发错误。 Pagination* pa new Pagination(QWidget*);设置总页数 Pagination需要设置一个总的页数,来初始化页码。 pa->SetTotalItem(count);设置可选的每页数量…...

MySQL with recursive 用法浅析

目录 写在前面 语句功能 with recursive 语法讲解 细节补充 “union all”语句 添加递归终止条件 写在前面 介绍“with recursive”用法的文章不少,但我都觉得讲的不够通俗,所以干脆自己写一篇。话不多说,进入正题。 语句功能 with r…...

ROS2常用命令集合

文章目录 指令帮助创建功能包功能包查找编译执行节点查看话题服务命令接口命令动作命令参数命令录制控制命令 指令帮助 ros2 --help # 帮助查看命令创建功能包 ros2 pkg create 包名 --build-type 构建类型 --dependencies 依赖列表 --node-name 可执行程序名称功能包查找 …...

VUE 子组件可以直接改变父组件的数据吗

子组件不可以直接改变父组件的数据。‌在Vue中,‌数据流是单向的,‌即父组件通过props向子组件传递数据,‌而子组件不能直接修改父组件的数据。‌这是为了维护数据流动的单向性和数据的可维护性。‌ 如果子组件需要修改父组件的数据&#xf…...

Redis 持久化详解

AOF 持久化 AOF持久化数据恢复相对RDB慢,文件也更大,但数据丢失的风险更小。 AOF 写入 将数据写入Redis内存后,将写数据的命令记录到AOP磁盘文件。 【结构】server.aof_buf 主线程写操作执行完之后,命令会先追加到 Redis 的 se…...

基于riscv64架构的Dayu800开发板的napi_demo开发介绍

itopen组织1、提供OpenHarmony优雅实用的小工具2、手把手适配riscv qemu linux的三方库移植3、未来计划riscv qemu ohos的三方库移植 小程序开发4、一切拥抱开源,拥抱国产化 一、环境准备工作 1.1 Ubuntu20.04环境配置 如果已经配置OpenHarmony的编译环境则…...

HAL STM32 SPI/ABZ/PWM方式读取MT6816磁编码器数据

HAL STM32 SPI/ABZ/PWM方式读取MT6816磁编码器数据 📚MT6816相关资料(来自商家的相关资料): 资料:https://pan.baidu.com/s/1CAbdLBRi2dmL4D7cFve1XA?pwd8888 提取码:8888📍驱动代码编写&…...

HarmonyOS应用开发者高级认证,Next版本发布后最新题库 - 多选题序号5

基础认证题库请移步:HarmonyOS应用开发者基础认证题库 注:有读者反馈,题库的代码块比较多,打开文章时会卡死。所以笔者将题库拆分,单选题20个为一组,多选题10个为一组,题库目录如下,…...

Tekion 选择 ClickHouse Cloud 提升应用性能和指标监控

本文字数:4187;估计阅读时间:11 分钟 作者:ClickHouse team 本文在公众号【ClickHouseInc】首发 Tekion 由前 Tesla CIO Jay Vijayan 于 2016 年创立,利用大数据、人工智能和物联网等技术,为其汽车客户解决…...

mysql之触发器的使用

cr一:创建goods表和orders表; mysql> use mydb16_tirgeer Database changed mysql> create table goods(-> gid char(8) primary key,-> name varchar(10),-> price decimal(8,2),->-> num int); Query OK, 0 rows affected (0.0…...

使用Java和Hazelcast实现分布式数据存储

使用Java和Hazelcast实现分布式数据存储 大家好,我是微赚淘客系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿! 在分布式系统中,实现高效的数据存储和管理是非常重要的。Hazelcast作为一个内存数据网格(IMDG)&…...

Hi3751V560_SELinux

Hi3751V560_SELinux setenforce Enforcing setenforce Permissive(或“setenforce 0”) getenforce V560:demo本身的: [ 13.765161] type=1400 audit(1628821512.905:4): avc: denied { read } for pid=1926 comm="system_server" name="ifindex" d…...

邮件安全篇:邮件反垃圾系统运作机制简介

1. 什么是邮件反垃圾系统? 邮件反垃圾系统是一种专门设计用于检测、过滤和阻止垃圾邮件的技术解决方案。用于保护用户的邮箱免受未经请求的商业广告、诈骗信息、恶意软件、钓鱼攻击和其他非用户意愿接收的电子邮件的侵扰。 反垃圾系统的常见部署形式 2. 邮件反垃圾…...

LoRaWAN设备的两种入网方式(ABP和OTAA)

目录 一、OTAA 1、名词解释 2、入网流程 二、ABP 三、两种入网方式的比较 一、OTAA 1、名词解释 (1)AppEUI:64位(8字节)的唯一标识符,用于标识特定的应用程序或组织(如果用的是chirpstac…...

【Rust光年纪】极致性能与灵活选择:Rust语言数学优化库详解

Rust语言中的数学优化:六大利器汇总 前言 在当今信息时代,数据处理和数学优化成为了各行各业中不可或缺的重要环节。为了满足对高效、快速计算的需求,Rust语言逐渐成为了许多开发者的首选,因其性能优越、并发安全等特点。本文将…...

机器学习 | 回归算法原理——最小二乘法

Hi,大家好,我是半亩花海。很早便想学习并总结一本很喜欢的机器学习图书——立石贤吾的《白话机器学习的数学》,可谓通俗易懂,清晰形象。那就在此分享并作为学习笔记来记录我的学习过程吧!本章的回归算法原理基于《基于…...

.NET Core 中的字符串压缩方法

字符串压缩的概念 字符串压缩通常指的是通过算法减少字符串表示所需的数据量,同时保持字符串的原始信息或能够无损地恢复原始字符串。这种压缩可以是针对文本数据的特定算法,也可以是更通用的数据压缩算法。 .NET Core 中的字符串压缩方法 使用数据压…...

SQL 基础知识

SQL(结构化查询语言)是一种用于管理和操作关系数据库的标准编程语言。以下是一些 SQL 的基础知识: 基本概念 数据库(Database): 存储和管理数据的容器。一个数据库可以包含多个表。 表(Table&…...

【数据结构初阶】单链表经典算法题十二道——得道飞升(上篇)

目录 1、移除元素 2、反转链表 3、链表的中间节点 4、合并两个有序链表 Relaxing Time!!! ———————————————— 天气之子幻 ———————————————— 1、移除元素 思路: 创建一个新链表&#xff0…...

Qwen3-Reranker-8B企业落地:保险条款智能比对系统重排模块部署

Qwen3-Reranker-8B企业落地:保险条款智能比对系统重排模块部署 1. 项目背景与需求场景 保险行业每天需要处理大量的条款文档比对工作,比如新老条款对比、不同产品条款差异分析、合规性检查等。传统的人工比对方式效率低下,容易出错&#xf…...

【Polars 2.0数据清洗成本控制白皮书】:20年ETL专家亲授5大降本增效实战模式,92%企业忽略的内存泄漏陷阱

第一章:Polars 2.0数据清洗成本控制全景认知在现代数据工程实践中,数据清洗不再仅关乎逻辑正确性,更深度绑定计算资源消耗、内存占用与执行延迟。Polars 2.0 通过零拷贝语义、惰性执行引擎重构与 Arrow-native 内存布局优化,将清洗…...

【大窗除强信号,小窗清残留】基于双尺度广义交叉验证阈值的地震信号自适应剥离和噪声提取方法(MATLAB)

背景知识在环境噪声层析成像等研究中,我们需要的是纯粹的“噪声”记录,而不是被地震信号“污染”的波形。传统方法是人工剔除含事件的时间段,或者用时间域归一化压制信号,但这些方法要么主观,要么难以彻底去除能量较强…...

Win11Debloat实战指南:3步彻底清理Windows 11系统臃肿

Win11Debloat实战指南:3步彻底清理Windows 11系统臃肿 【免费下载链接】Win11Debloat 一个简单的PowerShell脚本,用于从Windows中移除预装的无用软件,禁用遥测,从Windows搜索中移除Bing,以及执行各种其他更改以简化和改…...

快速验证控制逻辑:用快马平台十分钟搭建pid算法仿真原型

今天想和大家分享一个快速验证PID控制算法的小技巧。作为一名自动化工程师,经常需要调试各种控制参数,传统方法要搭建物理实验环境或者用MATLAB仿真,都很费时。最近发现用InsCode(快马)平台可以十分钟就做出一个可交互的PID仿真原型&#xff…...

STM32智能甲鱼养殖系统设计与实现

基于STM32的智能甲鱼养殖系统设计与实现1. 项目概述1.1 系统背景现代水产养殖行业正面临从传统人工管理向智能化转型的关键时期。甲鱼作为对水质环境敏感的特种水产品,其养殖过程中需要持续监测多项水质参数并保持稳定环境。传统人工监测方式存在响应滞后、精度不足…...

Nginx 简单使用配置

配置 user nginx; worker_processes auto;error_log /var/log/nginx/error.log notice; pid /var/run/nginx.pid;events {worker_connections 1024; }http {include /etc/nginx/mime.types;default_type application/octet-stream;log_format main $remote…...

从拼图游戏到自动驾驶:点云配准技术的跨领域进化史

从拼图游戏到自动驾驶:点云配准技术的跨领域进化史 1. 三维世界的数字拼图师 1987年,当Paul Besl和Neil McKay在实验室里尝试将两组扫描数据对齐时,他们可能不会想到,这项被称为迭代最近点(ICP)的技术会成为…...

【AI+教育】告别“硬啃”长文,它把文档直接变成你的专属视频课

在这个信息大爆炸的时代,我们最不缺的就是资料:网盘里屯满的行业报告、收藏了却从未打开的学术论文、买来盖泡面的大部头教材……知识就在那里,但“学进去”实在太难了。 秘塔推出的“今天学点啥”,就是为了解决这个痛点而生的。它的核心逻辑非常简单粗暴:你把看不进去的文…...

Android架构组件

Android架构组件:构建现代化应用的利器 在移动应用开发中,良好的架构设计是保证应用稳定性和可维护性的关键。Google推出的Android架构组件(Android Architecture Components)为开发者提供了一套标准化工具,帮助简化开…...