在2022年科罗拉多州博览会中,获奖作品是一幅由视频游戏设计师杰森·艾伦创作的奇幻科幻风景,名为《Théâtre D’opéra Spatial》(图1.1)。这幅一等奖艺术作品因其戏剧性的主题和这幅图像的非同寻常的创作来源而引人注目。与大多数参赛作品不同,《Théâtre D’opéra Spatial》并非使用油画或水彩画创作,且其“创作者”甚至不是人类;相反,它是由一个名为Midjourney的复杂机器学习算法生成的完全数字化图像。杰森利用Midjourney,这一经过多种图像训练的工具,并结合自然语言指令来创作这幅图像,而非使用画笔和画布。
机器学习在视觉艺术领域的惊人成果并不是唯一的应用领域。事实上,如果你在过去几年关注过新闻,你可能看到过许多关于现代人工智能系统在不同问题上取得突破性成果的报道,这些问题涵盖了从硬科学到在线虚拟形象和互动聊天的各个方面。深度神经网络模型,例如驱动Midjourney的模型,已经展现出惊人的能力,能够生成逼真的人类语言、编写计算机代码,并以人类水平的能力解决学校考试。这些模型还能在与训练有素的医生水平相当的情况下,分类人类解剖学的X光图像,甚至在围棋(亚洲象棋)和多人在线游戏中战胜人类大师,并且能够以惊人的语言敏感度将法语翻译成英语,捕捉到语法细微差异。
判别模型与生成模型
然而,AI的这些应用与生成《Théâtre D’opéra Spatial》的模型在一个重要方面有所不同。在这些其他应用中,模型会接收一组输入——如英文文本或X光图像——并与目标输出配对,例如翻译句子中的下一个词或X光的诊断分类。实际上,这可能是你在过去的预测建模中最熟悉的AI模型类型;它们被广泛称为判别模型,其目的是在一组输入变量和目标输出之间创建映射。目标输出可以是离散类别集(例如,翻译中下一个出现的英语单词),也可以是连续的结果(例如,客户在未来12个月内在在线商店中花费的预期金额)。
然而,这种“标记”或“评分”的数据模型仅代表现代机器学习能力的一半。另一类算法,如生成科罗拉多州博览会获奖作品的模型,并不会根据输入变量计算分数或标签,而是生成新的数据。与判别模型不同,输入变量通常是与现实世界值完全无关的数字向量,甚至通常是随机生成的。这种模型被称为生成模型,它可以从随机噪声中生成复杂的输出,如文本、音乐或图像,这是本书讨论的主题。
即使你当时并不知道,你可能也见过新闻中提到的其他生成模型的实例,与前面提到的判别模型一起出现。一个突出的例子是深度伪造(deepfakes)——通过神经网络系统地替换一个人脸上的像素,将其换成另一个人的脸(图1.2)。
也许你还见过关于生成“假新闻”的AI模型的报道,OpenAI的科学家们最初因担心这些模型可能被用来在线制造宣传和虚假信息而感到害怕,不敢将其发布给公众(图1.3)11。
在这些以及其他应用中——例如谷歌的语音助手Duplex,它可以通过与人类实时动态对话来进行餐厅预订,或者甚至能够生成原创音乐作品的软件——我们周围充满了生成性AI算法的输出。这些模型能够处理多个领域中的复杂信息:创建逼真的图像或图像上的风格“滤镜”、合成声音、对话文本,甚至是最优游戏规则。你可能会问:这些模型从哪里来?我如何才能自己实现它们?
实现生成模型
虽然生成模型理论上可以通过多种机器学习算法实现,但在实践中,它们通常使用深度神经网络构建,这些网络非常适合捕捉图像或语言等数据中的复杂变异。在本书中,我们将重点介绍如何使用PyTorch实现基于深度学习的生成模型,以应用于多种不同的场景。PyTorch是一个用于开发和生成深度学习模型的Python编程库。它由Meta(前Facebook)于2016年开源,并成为神经网络模型研究和部署中最受欢迎的库之一。我们将使用Google的Colab笔记本环境在云端执行PyTorch代码,这使得你可以按需访问世界级的计算基础设施,包括图形处理单元(GPU)和张量处理单元(TPU),且无需繁琐的环境配置。我们还将利用Hugging Face的Pipelines库,它提供了一个简单的接口,用于使用一些最先进的模型目录运行实验。
在接下来的章节中,你不仅会了解这些模型背后的基础理论,还会学到如何在流行的编程框架中实现它们。第二章中,我们将回顾自2006年以来,使用大型神经网络模型的“深度学习”研究爆炸性增长,产生了各种生成模型应用。从这一研究中涌现的创新包括变分自编码器(VAE),它可以通过“解码”随机数生成复杂的数据样本,转化为逼真的图像,这一技术将在第11章中描述。我们还将在本书的第12到14章详细描述一个相关的图像生成算法——生成对抗网络(GAN),通过图像生成、风格迁移和深度伪造等应用进行介绍。从概念上讲,GAN模型在两个神经网络之间创建了一种竞争关系。
其中一个(称为生成器)从一组随机数开始,生成逼真的(或者在Obvious实验中,艺术化的)图像,这些随机数通过应用数学转换被“解码”成逼真的图像。从某种意义上说,生成器就像一个艺术学生,通过画笔和创造性灵感创作新画作。第二个网络,被称为判别器,尝试分类一幅图像是来自一组真实世界的图像,还是由生成器创建的。因此,判别器就像老师,评估学生是否创作出与他们试图模仿的画作相当的作品。随着生成器越来越擅长欺骗判别器,它的输出将越来越接近它所设计要复制的历史范例。在第11章中,我们还将描述用于生成《Théâtre D’opéra Spatial》图像的算法——潜在扩散模型,它基于VAE提供了基于自然语言提示进行可扩展图像合成的能力。
生成模型的另一个关键创新是在自然语言数据领域——通过以可扩展的方式表示句子中词语之间的复杂相互关系,基于Transformer网络和基于其构建的双向编码器(BERT)模型,提供了强大的构建块,用于生成聊天机器人和大型语言模型(LLMs)等应用中的文本数据,我们将在第四章和第五章中讨论。在第六章中,我们将深入探讨当前LLM领域最著名的开源模型,包括Llama。在第七章和第八章中,我们将继续展开讨论。
在进一步深入生成模型的各种应用以及如何在PyTorch中实现它们之前,我们将先退后一步,仔细考察生成模型与其他类型机器学习的区别。这个区别在于任何机器学习算法的基本单元:概率,以及我们用数学方法量化我们在现实世界中遇到的数据形状和分布的不同方式。在本章的其余部分,我们将涵盖以下内容:
- 我们如何使用概率的统计规则来描述机器学习模型如何表示我们研究的数据集的形状
- 判别模型与生成模型之间的区别,基于它们所体现的概率规则
- 生成建模应用的领域示例:图像生成、风格迁移、聊天机器人和文本合成、强化学习
概率规则
在最简单的层面上,模型,无论是机器学习还是像线性回归这样的经典方法,都是对目标变量如何响应预测变量的变化的数学描述;这种关系可能是线性坡度,也可能是更复杂的数学变换。在建模任务中,我们通常将数据集中的变量分为两大类:
-
独立数据,我们主要指的是模型的输入,通常用X表示。例如,如果我们试图根据学生的特征预测他们在期末考试中的成绩,我们可以考虑几种类型的特征:
- 类别型:如果一个学区有六所学校,学生所在的学校可以用一个六元素向量表示。该向量的所有元素都是0,只有一个是1,表示学生就读的是哪一所学校。
- 连续型:学生的身高或平均先前测试成绩可以表示为连续的实数。
- 有序型:学生在班级中的排名不应该被看作绝对数值(如身高),而是衡量相对差异的度量。
-
依赖变量,相反,是我们模型的输出,通常用字母Y表示。需要注意的是,在某些情况下,Y是一个“标签”,可以用于条件生成输出,例如在条件GAN中。它可以是类别型、连续型或有序型,并且可以是数据集每个元素的单个元素或多维矩阵(张量)。
如何用统计学描述我们模型中的数据?换句话说,我们如何定量地描述我们可能观察到的值、它们出现的频率,以及哪些值更可能一起出现,哪些不太可能?一种方法是询问在数据中观察到特定值的概率。例如,如果我们问六面骰子上掷出四点的概率是多少,答案是,平均而言,我们每六次掷骰子会掷出一次四点。我们可以这样表示:
这里,P表示“概率”。那么,是什么定义了特定数据集允许的概率值?如果我们想象一个数据集的所有可能值集合——例如骰子的所有值——那么概率就将每个值映射到0到1之间的一个数字。最小值是0,因为我们不可能有负数的结果概率;最不可能的结果是我们永远不会看到某个特定值,或者概率是0%,例如掷骰子掷出7点。类似地,我们不能有超过100%的结果概率,用1表示;一个概率为1的结果是绝对确定的。与数据集相关的概率值集合属于离散类别(如骰子的面)或潜在的无限值集合(如身高或体重的变化)。然而,在这两种情况下,这些值都必须遵循某些规则,这些概率公理由数学家安德烈·科尔莫哥洛夫在1933年提出:
- 一个观察(例如掷骰子、特定的身高)的概率是一个介于0和1之间的非负有限数。
- 至少有一个观察发生的概率是1。
- 不同的、互斥事件(例如骰子的1-6点)的概率是各个事件概率的和。
尽管这些规则看起来很抽象,我们将在第三章中看到它们与开发神经网络模型的直接相关性。例如,规则1的一个应用是在softmax函数中生成介于0和1之间的某个特定结果的概率,以预测目标类别。例如,如果我们的模型被要求分类一张图片是包含猫、狗还是马,则每个潜在类别都通过一个sigmoid函数输出一个0到1之间的概率,这个sigmoid函数是基于深度神经网络对图像输入像素进行非线性、多层次转换的结果。规则3用于将这些结果规范化为0到1的范围,确保它们是互斥的深度神经网络预测(换句话说,一个现实世界的图像不可能同时被分类为猫和狗,而是猫或狗,这两种结果的概率是相加的)。最后,第二条规则提供了理论保障,表明我们可以使用这些模型生成数据。
然而,在机器学习和建模的背景下,我们通常不只对观察到一段输入数据X的概率感兴趣;我们更想知道基于数据X,结果Y的条件概率。换句话说,我们想知道给定数据,某个标签的可能性有多大。我们可以将其写作给定X的Y的概率,即条件于X的Y的概率:
另一个我们可以问的问题是,Y和X一起发生的概率有多大——它们的联合概率,可以用前述的条件概率表达式表示为:
这个公式表示了X和Y的概率。如果X和Y完全独立,那么这就是它们的乘积:
你会在第四章的互补先验讨论以及限制玻尔兹曼机模拟独立数据样本的部分看到这些表达式的重要性。它们也是贝叶斯定理的构建块,我们接下来将进行详细讨论。
判别模型与生成模型,以及贝叶斯定理
现在,让我们考虑这些条件概率和联合概率规则如何与我们为各种机器学习应用构建的预测模型相关。在大多数情况下——例如预测一封电子邮件是否欺诈,或预测一个客户未来的生命周期价值金额——我们关注的是条件概率 P(Y∣X=x)P(Y|X=x)P(Y∣X=x),其中 YYY 是我们尝试建模的结果集,XXX 是输入特征,而 xxx 是输入特征的一个特定值。例如,我们试图根据邮件中的单词集(xxx)来计算邮件是否欺诈的概率。这种方法被称为判别建模。判别建模试图学习数据 XXX 和结果 YYY 之间的直接映射。
另一种理解判别建模的方法是通过贝叶斯定理,它将数据集的条件概率和联合概率联系起来,如下所示:
P(Y∣X)=P(X∣Y)P(Y)P(X)=P(X,Y)P(X)P(Y|X) = \frac{P(X|Y)P(Y)}{P(X)} = \frac{P(X, Y)}{P(X)}P(Y∣X)=P(X)P(X∣Y)P(Y)=P(X)P(X,Y)
顺便提一下,这一定理是在作者去世两年后发表的,理查德·普赖斯在序言中将其描述为对上帝存在的数学论证,考虑到托马斯·贝叶斯在生前曾是一名牧师,这或许是恰当的。在贝叶斯定理的公式中,表达式 P(X∣Y)/P(X)P(X|Y)/P(X)P(X∣Y)/P(X) 被称为似然或支持证据,它表示观察 XXX 对观察到 YYY 的可能性的支持;P(Y)P(Y)P(Y) 是先验或结果的可信度;而 P(Y∣X)P(Y|X)P(Y∣X) 是后验或在我们观察到的所有独立数据的基础上,给定结果的概率。概念上,贝叶斯定理表明,结果的概率是其基线概率与给定该结果时输入数据的概率的乘积。
在判别学习的背景下,我们可以看到,判别模型直接计算后验;我们可能有似然或先验的模型,但在这种方法中并不是必需的。即使你可能没有意识到,大多数你在机器学习工具包中使用的模型都是判别模型,例如:
- 线性回归
- 逻辑回归
- 随机森林
- 梯度提升决策树(GBDT)
- 支持向量机(SVM)
前两种(线性回归和逻辑回归)使用正态分布或高斯分布(线性回归)或sigmoid函数(逻辑回归)对 XXX 条件下的 YYY 结果进行建模。相反,后三种没有正式的概率模型——它们计算一个函数(随机森林或GBDT的树集成,或者SVM的内积分布),该函数使用损失或误差函数来调节这些估计;鉴于这种非参数性质,一些作者认为它们构成了一个独立的“非模型”或“非参数”判别算法类。
与此相对,生成模型试图学习标签和输入数据的联合分布 P(Y,X)P(Y, X)P(Y,X)。回想一下,使用联合概率的定义:
P(X,Y)=P(X∣Y)P(Y)P(X, Y) = P(X|Y)P(Y)P(X,Y)=P(X∣Y)P(Y)
我们可以将贝叶斯定理重写为:
P(Y∣X)=P(X,Y)P(X)P(Y|X) = \frac{P(X, Y)}{P(X)}P(Y∣X)=P(X)P(X,Y)
与判别案例中使用 P(Y∣X)P(Y|X)P(Y∣X) 直接学习 XXX 到 YYY 的映射不同,我们的目标是使用 P(X,Y)P(X, Y)P(X,Y) 来建模 XXX 和 YYY 的联合概率。虽然我们可以使用 XXX 和 YYY 的联合分布来计算后验 P(Y∣X)P(Y|X)P(Y∣X) 并学习一个“有针对性的”模型,但我们也可以使用该分布通过联合采样新实例(x,yx, yx,y)或使用目标标签 YYY 进行数据输入采样,如下所示:
P(X∣Y=y)=P(X,Y)P(Y)P(X|Y=y) = \frac{P(X, Y)}{P(Y)}P(X∣Y=y)=P(Y)P(X,Y)
生成模型的例子包括:
- 朴素贝叶斯分类器
- 高斯混合模型
- 潜在Dirichlet分配(LDA)
- 隐马尔可夫模型
- 深度玻尔兹曼机
- 变分自编码器(VAE)
- 生成对抗网络(GAN)
朴素贝叶斯分类器,虽然被命名为判别模型,但利用贝叶斯定理在假设 XXX 变量独立的情况下学习 XXX 和 YYY 的联合分布。类似地,高斯混合模型描述了一个数据点属于一组正态分布中的某一分布的可能性,使用标签和这些分布的联合概率。LDA将文档表示为单词与一组潜在关键词列表(主题)的联合概率,这些列表在文档中使用。隐马尔可夫模型表示状态和下一个状态之间的联合概率,如连续几天的天气。我们在第3到第6章中介绍的VAE和GAN模型也利用联合分布来映射复杂的数据类型——这种映射使我们能够从随机向量生成数据或将一种数据类型转化为另一种。
如前所述,生成模型的另一种视角是,如果我们知道一个结果 YYY,它们允许我们生成 XXX 的样本。在前面列出的前四种模型中,这种条件概率只是模型公式的一个组成部分,后验估计仍然是最终目标。然而,在后三种模型中,这些模型都是深度神经网络模型,学习依赖于隐藏或“潜在”变量 ZZZ 的 XXX 的条件概率实际上是主要目标,目的是生成新的数据样本。利用多层神经网络提供的丰富结构,这些模型可以近似复杂数据类型的分布,如图像、自然语言和声音。此外,在这些应用中,ZZZ 通常是一个随机数,作为输入用来生成大量假设数据点,而不是作为目标值。在我们有标签(例如生成的图像应该是狗还是海豚,或生成的歌曲的流派)时,模型是 P(X∣Y=y,Z=z)P(X|Y=y, Z=z)P(X∣Y=y,Z=z),其中标签 YYY “控制”数据的生成,而这些数据本身并不受 ZZZ 的随机性质限制。
深度学习的前景
如前所述,本书中我们将介绍的许多模型都是深度的、多层次的神经网络。过去15年,深度学习模型在图像分类、自然语言处理(NLP)和理解以及强化学习领域经历了复兴。这些进展得益于在调整和优化非常复杂模型方面的突破,结合了更大数据集的可获取性、云端分布式计算能力,以及像PyTorch这样的框架,使得原型开发和研究的再现变得更加容易。我们还将在第二章为本书其余部分中的模型组件奠定理论基础,提供神经网络架构、优化器和正则化的概述。
生成图像
生成图像——例如《Théâtre D’opéra Spatial》——的一个挑战是,图像通常没有标签(例如数字);相反,我们希望使用潜在向量Z将随机数空间映射到一组人工图像中,正如我们在本章早些时候所描述的那样。另一个约束条件是,我们希望促进这些图像的多样性——如果我们输入一定范围内的数字,我们希望知道它们生成的输出是不同的,并且能够调整生成图像的特征。为此,变分自编码器(VAE)——一种深度神经网络模型,它学习将图像编码为潜在变量Z,然后解码为输入图像——被开发出来,以生成多样化且逼真的图像(图1.4),我们将在第3章中详细介绍。
在图像分类任务中,能够生成新图像可以帮助我们增加现有数据集中的示例数量,或在现有数据集严重倾向于某种特定类型的照片时减少偏差。应用场景可能包括为时尚电商网站上的产品照片生成替代的姿势(角度、光影和透视图)(图1.5)。
在一个类似的应用中,汽车设计的二维图像可以通过生成性AI方法转化为三维模型。
数据增强
生成模型的另一个强大应用是通过额外的示例增强小型现有数据集的局限性。这些额外的示例可以通过提高其泛化能力,帮助改善从扩展数据集训练出的判别模型的质量。这些增强数据可以用于半监督学习;首先使用真实的有限数据训练一个初始的判别模型。然后,使用该模型为合成数据生成标签,从而增强数据集。最后,使用结合的真实数据和合成数据集训练第二个判别模型。这类应用的例子包括增加癌症和骨损伤医学图像数据集中的诊断示例数量。
风格迁移与图像变换
除了将人工图像映射到随机数空间外,我们还可以使用生成模型学习一种图像与另一种图像之间的映射。这种模型可以用于将马的图像转换为斑马的图像(图1.6),将照片转换为绘画,或者创建“深度伪造视频”,在这些视频中,一位演员的脸被替换为另一位演员的脸(图1.2)。
另一个应用生成模型的迷人例子是,一项研究发现,艺术家巴勃罗·毕加索的一幅失落的杰作被另一幅图像覆盖。通过X射线成像《老吉他手》和《蹲姿乞丐》表明,下面隐藏着早期的女性图像和风景图像(图1.7)。研究人员使用毕加索“蓝色时期”的其他画作或其他彩色照片来训练一个“神经风格迁移”模型,该模型将黑白图像(覆盖画作的X射线照片)转换为原始艺术作品的色彩。然后,将此迁移模型应用于“隐藏”图像,使他们能够重建出“上色”版本的失落画作。
所有这些模型都使用前面提到的生成对抗网络(GANs),这是一种在2014年提出的深度学习模型。除了改变图像内容(如前面的斑马例子),这些模型还可以用于将一张图像映射到另一张图像,例如配对图像(具有相似面部特征的狗和人,如图1.8所示),或者从图像中生成文本描述(图1.9)。
我们还可以将生成图像的属性基于一些辅助信息,如标签,这种方法在GANGogh算法中有所应用,该算法通过将所需的艺术家作为输入传递给生成模型,合成不同艺术家风格的图像。我们将在第4章和第6章中描述这些应用。生成性AI还使程序员能够通过像Stable Diffusion这样的模型成为艺术家,该模型将图像的自然语言描述转化为视觉渲染(图1.10)——我们将在第7章中介绍它是如何实现这一点的,并尝试重现《Théâtre D’opéra Spatial》。
假新闻与聊天机器人
人类一直渴望与机器对话;第一个聊天机器人ELIZA是上世纪60年代在麻省理工学院(MIT)编写的,它使用一个简单的程序来转换用户的输入并生成回应,模拟一个“治疗师”的模式,常常以提问的形式作出回应。更复杂的模型能够生成全新的文本,例如谷歌的BERT和GPT-2,它们使用一个叫做“变换器”的单元,根据文本中的前文生成新词。神经网络中的变换器模块允许网络在文本中的前述词汇的背景下提出新词,强调那些更相关的词汇,以生成合理的语言片段。BERT模型随后将变换器单元结合成一个强大的多维自然语言模式和上下文意义编码。该方法可以用于文档创建的NLP任务,或者聊天机器人对话系统(图1.3),我们将在第8章和第9章中进行介绍。
越来越强大的大型语言模型(LLM)在语言生成、创意写作和编写新代码方面表现出色。在第10章和第11章中,我们将介绍一些最重要的通用或“基础”模型,这些模型在经过大量多样化语言数据的训练后,可以为特定任务进行调整。这些模型包括封闭源(如ChatGPT)和开放获取(如Llama)模型(图1.11)。
为了将这些模型适应特定问题,我们将应用诸如提示工程(第12章)、微调和RAG(第14章)等方法。我们将在第13章中使用该生态系统中的常见工具,如LangChain和Hugging Face的Pipelines库,进行相关介绍。
生成模型的独特挑战
鉴于生成模型应用的强大能力,实现这些模型的主要挑战是什么?如前所述,这些模型大多利用复杂数据,需要我们拟合大型模型,并使用足够多样化的输入来捕捉其特征和分布的所有细微差别。这种复杂性来源于以下几个方面:
- 变化范围:从一组三色通道像素生成的潜在图像数量是巨大的,许多语言的词汇量也同样庞大。
- 来源的异质性:特别是语言模型,通常使用来自多个网站的数据的混合来开发。
- 规模:一旦数据量变大,捕捉重复、事实错误(如误译)、噪音(如图像混乱)和系统性偏差变得更加困难。
- 变化速率:许多LLM的开发者难以保持模型信息与世界的现状同步,从而提供相关的用户回答。
这些挑战对我们必须收集的样本数量以及构建模型所需的计算资源都有影响。在本书中,我们将使用基于云的工具来加速这些模型的实验。另一个更微妙的问题是,由于我们处理的是复杂数据,并且我们试图生成的是数据而非数值标签或值,因此我们对模型“准确性”的定义更加复杂——我们不能简单地计算与单一标签或得分的距离。我们将在第3章和第4章讨论,深度生成模型如VAE和GAN算法在确定生成的图像是否与现实世界图像相当时采取的不同方法。最后,我们的模型需要能够生成大规模且多样的数据样本,我们将讨论的各种方法采取了不同的方式来控制数据的多样性。
总结
在本章中,我们讨论了什么是生成建模,以及它如何适应更熟悉的机器学习方法的背景,使用概率理论和贝叶斯定理描述这些模型如何与判别学习相对的方式进行预测。我们回顾了生成学习的使用案例,涵盖了特定类型数据和一般预测任务。正如我们所看到的,文本和图像是这些模型应用的两大数据形式。对于图像,我们讨论的主要模型是VAE、GAN和类似的算法。对于文本,主导模型是像Llama、GPT和BERT这样的变换器架构。最后,我们考察了构建这些模型时出现的一些特殊挑战。
参考文献
Smithsonian Magazine. 2022. “Art Made with Artificial Intelligence Wins at State Fair.” www.smithsonianmag.com/smart-news/….
ChatGPT Technical Report. 2024. arXiv. arxiv.org/abs/2303.08….
Chen, Mark, Jerry Tworek, Heewoo Jun, et al. 2021. “Evaluating Large Language Models Trained on Code.” arXiv. arxiv.org/abs/2107.03….
Scientific Reports. 2019. “Comparison of Deep Learning Approaches for Multi-Label Chest X-Ray Classification.” www.nature.com/articles/s4….
Google DeepMind. n.d. “AlphaGo: The Story So Far.” deepmind.com/research/ca….
Google DeepMind. 2019. “AlphaStar: Grandmaster Level in StarCraft II Using Multi-Agent Reinforcement Learning.” deepmind.com/blog/articl….
Devlin, Jacob, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. 2019. “BERT: Pre-Training of Deep Bidirectional Transformers for Language Understanding.” arXiv. arxiv.org/abs/1810.04….
Fox News. 2018. “Terrifying High-Tech Porn: Creepy ‘Deepfake’ Videos Are on the Rise.” www.foxnews.com/tech/terrif….
Deepfake Image Sample. Wikimedia. upload.wikimedia.org/wikipedia/e….
A Chatbot Dialogue Created Using GPT-2. Devopstar. devopstar.com/static/2293….
OpenAI. 2019. “Better Language Models and Their Implications.” OpenAI Blog. openai.com/blog/better….
Google Research. 2018. “Google Duplex: An AI System for Accomplishing Real-World Tasks over the Phone.” Google AI Blog. ai.googleblog.com/2018/05/dup….
Software That Generates Original Musical Compositions. MuseGAN. salu133445.github.io/musegan/.
Kolmogorov, Andrey. 1950 [1933]. Foundations of the Theory of Probability. New York, USA: Chelsea Publishing Company.
Jebara, Tony. 2004. Machine Learning: Discriminative and Generative. Kluwer Academic (Springer).
Ng, Andrew Y., and Michael I. Jordan. 2002. “On Discriminative vs. Generative Classifiers: A Comparison of Logistic Regression and Naive Bayes.” Advances in Neural Information Processing Systems.
Mitchell, Tom M. 2015. “Generative and Discriminative Classifiers: Naive Bayes and Logistic Regression.” Machine Learning.
Bayes, Thomas, and Richard Price. 1763. “An Essay towards Solving a Problem in the Doctrine of Chance.” Philosophical Transactions of the Royal Society of London 53: 370–418.
Ho, Tin Kam. 1995. “Random Decision Forests.” Proceedings of the 3rd International Conference on Document Analysis and Recognition, Montreal, QC, August 14–16, 1995, 278–282.
Breiman, L. 2001. “Random Forests.” Machine Learning 45 (1): 5–32.
Friedman, J. H. 1999. “Greedy Function Approximation: A Gradient Boosting Machine.”
Cortes, Corinna, and Vladimir N. Vapnik. 1995. “Support-Vector Networks.” Machine Learning 20 (3): 273–297.
Kingma, Diederik P., and Max Welling. 2022. “Auto-Encoding Variational Bayes.” arXiv. arxiv.org/abs/1312.61….
Sample Images from a VAE: miro.medium.com/max/2880/1*…
Chen, Ricky T. Q., Xuechen Li, Roger Grosse, and David Duvenaud. 2019. “Isolating Sources of Disentanglement in VAEs.” arXiv Vanity. www.arxiv-vanity.com/papers/1802….
Esser, Patrick, Johannes Haux, and Björn Ommer. 2019. “Unsupervised Robust Disentangling of Latent Characteristics for Image Synthesis.” arXiv. arxiv.org/pdf/1910.10….
CycleGANs Apply Stripes to Horses to Generate Zebras.” GitHub. github.com/jzsherlock4….
Bourached, Anthony, and George Cann. 2019. “Raiders of the Lost Art.” arXiv. arxiv.org/pdf/1909.05….
Goodfellow, Ian, Jean Pouget-Abadie, Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair, Aaron Courville, and Yoshua Bengio. 2014. “Generative Adversarial Networks.” Proceedings of the International Conference on Neural Information Processing Systems (NIPS 2014), 2672–2680.
Hindawi Journal of Mathematical Problems in Engineering. 2020. www.hindawi.com/journals/mp….
Gorti, Satya, and Jeremy Ma. 2018. “Text-to-Image-to-Text Translation Using Cycle Consistent Adversarial Networks.”
arXiv. 2021. arxiv.org/pdf/2112.10….
Weizenbaum, Joseph. 1976. Computer Power and Human Reason: From Judgment to Calculation. New York: W. H. Freeman and Company.
Schwartz, Barry. 2019. “Welcome BERT: Google’s Latest Search Algorithm to Better Understand Natural Language.” Search Engine Land. searchengineland.com/welcome-ber….
X post: x.com/TonyHoWasHe….
TheSequence. 2023. “Edge 314: A Deep Dive into Llama 2: Meta AI LLM That Has Become a Symbol in Open Source AI.” thesequence.substack.com/p/a-deep-di….
Gupta, Anant, Srivas Venkatesh, Sumit Chopra, and Christian Ledig. 2019. “Generative Image Translation for Data Augmentation of Bone Lesion Pathology.” Proceedings of Machine Learning Research. proceedings.mlr.press/v102/gupta1….
Mulé, Sébastien, Littisha Lawrance, Younes Belkouchi, and Valérie Vilgrain. 2022. “Generative Adversarial Networks (GAN)-Based Data Augmentation of Rare Liver Cancers: The SFR 2021 Artificial Intelligence Data Challenge.” ScienceDirect. www.sciencedirect.com/science/art….
Shapiro, Danny. 2023. “Generative AI Revs Up New Age in Auto Industry, from Design and Engineering to Production and Sales.” NVIDIA Blog. blogs.nvidia.com/blog/genera….