机器学习和神经网络 - 页 62

 

二项分布和泊松分布



二项分布和泊松分布

Serrano 的视频重点介绍二项分布和泊松分布。他首先提出了一个问题场景:想象经营一家商店并观察一段时间内进入的人数。值得注意的是,平均每小时有 3 人进入商店,但实际人数有所波动。塞拉诺强调,进入顾客的出现似乎是随机的,全天没有特定的模式。

视频中解决的主要问题如下:给定此信息,下一个小时内有五个人进入商店的概率是多少?塞拉诺透露答案是 0.1008,但他继续解释如何使用泊松分布计算该概率。

在深入研究泊松分布之前,Serrano 介绍了一种更简单的概率分布,称为二项分布。为了说明这个概念,他使用了多次抛硬币的类比。假设硬币正面朝上的概率为 30%,反面朝上的概率为 70%,Serrano 进行了将硬币抛掷 10 次的实验。他证明获得的正面朝上的平均次数收敛于期望值,这是正面朝上的概率与翻转次数的乘积(0.3 * 10 = 3)。

接下来,Serrano 探讨了抛硬币 10 次时获得不同数量正面朝上的概率。他解释说有 11 种可能的结果:零个正面、一个正面、两个正面等等,最多十个正面。然后塞拉诺计算每个结果的概率,并强调当获得三个正面时出现的概率最高。他构建了一个代表二项分布的直方图,横轴是正面朝上的人数,纵轴是相应的概率。

为了计算这些概率,Serrano 分解了这个过程。例如,为了确定正面朝上为零的概率,他指出每次翻转都必须出现反面,概率为 0.7。由于翻转是独立事件,他将此概率乘以 10 次,得出概率为 0.02825。

Serrano 继续解释正面朝上概率的计算。他首先考虑这样一种情况,即只有第一次翻转落在正面(0.3 概率),而其余翻转导致反面(每次 0.7 概率)。这产生了 0.321 的概率。然而,这只是一种可能性,因此 Serrano 确定了十种方式,其中一次翻转可能导致正面,而其余的则导致反面。他指出这些事件是相互排斥的,因此将它们的概率相加。因此,出现一个正面的概率是 10 * 0.3 * 0.7^9 = 0.12106。

Serrano 对两个正面继续这个过程,计算前两次翻转导致正面的概率 (0.3^2 * 0.7^8 = 0.00519)。然后他确定在 10 次翻转中有 45 种方法可以得到两个正面(10 选 2)。通过将其乘以每种情况出现两个正面的概率,他得到两个正面的总体概率,即 45 * 0.3^2 * 0.7^8 = 0.12106。

对不同数量的正面进行类似的计算,塞拉诺提供了每种结果的概率。绘制在直方图上,这些概率形成二项分布。他解释说,随着翻转次数接近无穷大,由于中心极限定理,二项式分布趋于正态分布。不过,他指出,这个话题将在未来的视频中进行探讨。

过渡到泊松分布,Serrano 引入泊松分布的概念作为二项分布的替代方案,用于在固定时间或空间间隔内发生的事件数量很少且随机的情况。他解释说,当平均发生率已知但确切的发生次数不确定时,泊松分布特别有用。

为了说明泊松分布的应用,Serrano 重新审视了人们进入商店的示例。他强调说,平均每小时有三个人进入商店。但是,特定时间进入的实际人数可能相差很大。

Serrano 然后提出了一个问题:假定每小时三个人的平均速度,下一个小时恰好有五个人进入商店的概率是多少?为了使用泊松分布计算此概率,他使用了以下公式:

P(X = k) = (e^(-λ) * λ^k) / k!

其中 P(X = k) 表示恰好出现 k 次的概率,e 是自然对数的底数,λ 是平均出现率,k 是期望的出现次数。

应用该公式,Serrano 插入值 λ = 3(三个人每小时的平均速率)和 k = 5(期望的出现次数)。他解释说 e^(-3) 表示出现零的概率 (e^(-3) ≈ 0.0498)。将其乘以 λ^k 再除以 k! (5 的阶乘),他计算出下一个小时正好有五个人进入商店的概率为 0.1008。

Serrano 强调,当平均发生率相对较高且所需的发生次数相对较少时,泊松分布提供了更准确的近似值。随着平均速率的增加或所需数量变得更加普遍,泊松分布变得不那么精确,替代分布可能更合适。

总之,Serrano 的视频探讨了二项分布和泊松分布的概念。他首先通过多次抛硬币的类比介绍了二项分布。他计算了获得不同数量正面的概率,并构建了表示二项分布的直方图。

过渡到泊松分布,Serrano 解释了它在罕见和随机发生的场景中的应用,例如人们进入商店。使用泊松分布公式,他计算给定平均发生率的特定次数的概率。在示例中,他确定了一个小时内恰好有五个人进入商店的概率,平均速率为三个人每小时。

通过解释这些概率分布及其计算,塞拉诺让观众更深入地了解随机现象及其相关概率的基本原理。

 

高斯混合模型



高斯混合模型

大家好,我是 Luis Serrano,在本视频中,我将讨论高斯混合模型 (GMM) 及其在聚类中的应用。 GMM 是功能强大且广泛使用的数据聚类模型。

聚类是各种应用程序的常见任务,例如音频分类,其中 GMM 可用于区分不同的声音,例如歌曲中的乐器或在与语音助手交互时将您的声音与背景噪音分开。 GMM 在文档分类中也很有用,允许按主题(例如体育、科学和政治)分离文档。另一个应用是图像分割,GMM 可以帮助分离自动驾驶汽车看到的图像中的行人、路标和其他汽车。

在聚类中,我们的目标是将看起来聚集在一起的数据点分组。传统的聚类算法将每个点分配给一个单独的集群。但是,GMM 引入了软聚类的概念,其中点可以同时属于多个聚类。这是通过分配点概率或属于每个集群的百分比来实现的。

GMM 算法由两个主要步骤组成。第一步涉及根据点与高斯分布的关联对点进行着色。每个点都根据其与不同高斯分布的接近程度分配一种颜色。此步骤确定软集群分配。

第二步是给定点估计高斯参数。该算法找到最适合分配给它的点的每个高斯分布的均值、方差和协方差。此步骤涉及计算质心、方差和协方差,它们提供有关数据分布的形状和方向的信息。

GMM 算法在这两个步骤之间迭代,更新高斯参数和软聚类分配,直到实现收敛。可以随机选择初始高斯分布,算法继续进行,直到分配或参数几乎没有变化。

通过使用 GMM,我们可以有效地对包含相交簇或点属于多个簇的复杂数据集进行聚类。 GMM 提供了一种灵活的概率聚类方法,使其成为各个领域的宝贵工具。

有关 GMM 的更详细解释和示例,您可以在我的频道上查看我的视频,我在其中深入研究了算法的数学和实现。视频链接可在评论区找到。

该算法继续在第一步和第二步之间迭代,直到它到达一个变化变得可以忽略不计的收敛点。在每次迭代中,点的颜色根据当前的高斯分布集进行更新,并根据彩色点创建新的高斯分布。

随着算法的进展,高斯分布逐渐适应数据,捕获底层集群。高斯代表属于特定集群的数据点的概率分布。该算法试图在给定高斯混合模型的情况下最大化观测数据的可能性。

高斯混合模型算法的最终结果是一组代表数据中聚类的高斯分布。每个高斯分布都与一个特定的聚类相关联,并提供有关其均值、方差和协方差的信息。通过分析高斯分布的参数,我们可以深入了解数据中存在的聚类的结构和特征。

高斯混合模型算法是软聚类的强大工具,其中数据点可以同时属于多个聚类。它可以处理具有重叠簇或非线性可分离模式的复杂数据集。这使得它适用于各种领域,例如图像分割、文档分类和音频分类。

高斯混合模型算法是一个迭代过程,它在根据当前高斯对点着色和根据着色点更新高斯之间交替进行。它收敛到一个解决方案,在该解决方案中,高斯准确地表示数据中的底层集群,从而实现有效的集群和分析。

 

聚类:K 均值和分层



聚类:K 均值和分层

嗨,我是路易斯·塞拉诺。在本视频中,我们将了解两种重要的聚类算法:k 均值聚类和层次聚类。聚类是一种无监督学习技术,涉及基于相似性对数据进行分组。我们会将这些算法应用于营销应用程序,特别是客户细分。

我们的目标是将客户群分为三个不同的组。我们有关于客户年龄和他们对某个页面的参与度的数据。通过绘制这些数据,我们可以直观地识别三个集群或组。第一组由 20 多岁的人组成,参与度较低(每周 2-4 天)。第二组包括 30 多岁和 40 多岁的人,他们的参与度很高。第三组包括 50 多岁的人,他们的参与度很低。

现在,让我们深入研究 k 均值聚类算法。想象一下,我们是比萨店老板,试图确定一个城市中三个比萨店的最佳位置。我们希望有效地为我们的客户服务。我们首先随机选择三个位置并在每个位置放置一个比萨店。我们根据客户的位置将客户分配到最近的比萨店。

接下来,我们将每个比萨店移动到它所服务的房屋的中心。此步骤可确保该位置最适合为周围的客户提供服务。我们重复将顾客分配到最近的比萨店并将店移到中心的过程,直到算法收敛并且集群稳定。

确定集群的数量可能具有挑战性。为了解决这个问题,我们可以使用肘部方法。我们计算每个聚类的直径,它代表相同颜色的两个点之间的最大距离。通过绘制簇的数量与直径的关系,我们可以确定一个“弯头”点,在这个点上改进变得不那么显着。这个肘点表示最佳簇数,在本例中为三个。

现在,让我们继续进行层次聚类。同样,我们的目标是在数据集中找到聚类。我们首先考虑两个最接近的点并将它们组合在一起。然后,我们迭代地合并下一个最近的对,直到我们决定根据距离阈值停止。此方法生成树状图,这是一种表示簇的树状结构。

确定距离阈值或簇数可能是主观的。然而,另一种方法是“添加和删除”方法。我们绘制树状图中点对之间的距离并检查曲线的高度。通过分析高度,我们可以对距离阈值或聚类数量做出有根据的决定。

K 均值聚类和层次聚类是基于相似性对数据进行分组的有价值的算法。 K 均值聚类涉及迭代移动质心以优化聚类分配,而层次聚类构建树状图来表示聚类。肘部法和加减法可用于确定最佳聚类数或距离阈值。

 

主成分分析 (PCA)



主成分分析 (PCA)

在本视频中,我们将了解主成分分析 (PCA),这是一种降维技术。 PCA 用于减少大型数据集中的列数,同时保留尽可能多的信息。通过将数据投影到低维空间,我们可以简化数据集。我们将在本视频中介绍几个步骤:模式投影、方差-协方差矩阵、特征值和特征向量,最后是 PCA。

为了理解这个概念,让我们考虑给一群朋友拍照的问题。我们需要确定拍摄图片的最佳角度。同样,在降维中,我们希望在降低维数的同时捕捉数据的本质。我们可以通过将数据投影到最大化点分布的理想线上来实现这一点。我们将比较不同的投影并确定哪一个提供更好的点之间的分离。

在我们拥有包含大量列且难以处理的大型数据集的情况下,降维至关重要。例如,在住房数据集中,我们可能有多个特征,例如大小、房间数量、浴室、与学校的距离和犯罪率。通过降维,我们可以将相关的特征组合成一个特征,比如将大小、房间数和浴室组合成一个尺寸特征。这简化了数据集并捕获了基本信息。

让我们关注一个示例,我们从两列(房间数量和大小)转到一列。我们希望在单个特征中捕获数据的变化。通过将数据投影到最能代表点分布的线上,我们可以将数据集从二维简化为一维。可以扩展此过程以将维度从五个减少到两个,从而在更小的空间中捕获基本信息。

要理解均值和方差等关键概念,让我们考虑平衡权重。均值是权重平衡的点,方差衡量权重与均值的分布。在二维数据集中,我们计算 x 和 y 方向的方差以衡量数据的分布。但是,单独的方差可能无法捕获数据集之间的差异。我们引入协方差,它衡量两个变量之间的分布和相关性。通过计算协方差,我们可以区分具有相似方差的数据集。

现在,让我们将这些概念应用到 PCA 中。我们首先将数据集集中在原点,根据数据集的方差和协方差创建一个协方差矩阵。该矩阵通常表示为 Sigma,它捕获变量之间的分布和相关性。接下来的步骤涉及特征值和特征向量,它们提供对数据主要成分的洞察。最后,我们应用 PCA 将数据投影到主成分上,减少维度并简化数据集。

PCA 是一种强大的降维技术。它有助于捕获数据集中的基本信息,同时减少维数。通过将数据投影到理想的直线或空间上,我们可以简化复杂的数据集并使其更易于管理。

 

Netflix 是如何推荐电影的?矩阵分解



Netflix 是如何推荐电影的?矩阵分解

推荐系统是机器学习的一种非常有趣的应用,被 YouTube 和 Netflix 等平台广泛使用。这些系统分析用户数据并利用各种算法来推荐符合用户偏好的电影和视频。这些系统中使用的一种流行方法称为矩阵分解。

要了解矩阵分解的工作原理,让我们考虑 Netflix 宇宙中的一个假设场景。我们有四个用户:Anna、Betty、Carlos 和 Dana,还有五部电影:Movie 1、Movie 2、Movie 3、Movie 4 和 Movie 5。用户以 1 到 5 星的等级对电影进行评分,目标是预测这些评级。

我们创建一个表,其中行代表用户,列代表电影。表中的每个条目对应于用户对特定电影的评分。例如,如果 Anna 对电影 5 的评分为四颗星(满分五颗星),我们会将此评分记录在 Anna 行和电影 5 列下方的表中。

现在,让我们考虑一下人类在电影偏好方面的行为方式。我们检查了三个不同的表格,以确定哪一个更符合实际。第一个表假设所有用户对所有电影的评分都是 3,这是不现实的,因为它假设每个人都有相同的偏好。第三张表由随机评分组成,也不能准确反映人类行为。然而,显示行和列之间依赖关系的第二个表似乎是最真实的表示。

分析第二张表,我们观察到依赖关系,例如具有相似偏好的用户和具有相似评级的电影。例如,表中的第一行和第三行相同,表明 Anna 和 Carlos 的偏好非常相似。这种相似性使得 Netflix 在进行推荐时可以将他们视为同一个人。我们还注意到第 1 列和第 4 列相同,这表明电影 1 和电影 4 在内容或吸引力方面可能相似。此外,我们发现三行之间存在依赖关系,其中可以将第二行和第三行中的值相加以获得第四行中的值。这种依赖性意味着一个用户的偏好可以从其他用户的偏好中导出。这些依赖关系虽然并不总是可以明确解释,但提供了可以在推荐系统中利用的有价值的见解。

为了利用这些依赖关系并进行评级预测,矩阵分解开始发挥作用。矩阵分解涉及将一个大的复杂矩阵分解为两个较小矩阵的乘积。在这种情况下,大矩阵表示用户电影评分表,而较小的矩阵表示用户偏好和电影特征。

为了找到这两个较小的矩阵,我们引入了电影的喜剧和动作等特征。每部电影都根据其喜剧和动作片的水平进行评级。同样,用户与他们对这些功能的偏好相关联。然后,通过考虑用户对某些特征的亲和力和电影的特征评级,使用点积来预测评级。例如,如果用户喜欢喜剧但不喜欢动作片,并且一部电影对喜剧的评分很高但对动作片的评分很低,则点积计算将得出与用户偏好一致的评分。

通过将此点积计算应用于每个用户-电影组合,我们可以生成预测评级并填充评级表中缺失的条目。这个过程允许我们将原始矩阵表示为两个较小矩阵的乘积,从而实现矩阵分解。

值得注意的是,我们之前发现的行和列之间的依赖关系仍然存在于因式分解矩阵中。例如,Anna 和 Carlos 之间的相似性体现在他们在用户特征矩阵中对应行的相似性。类似地,评分相似的电影在电影特征矩阵中的特征得分也表现出相似性。此外,可以观察到更复杂的关系,例如用户和电影之间通过他们对某些特征的共同偏好的关系。

一旦我们获得了代表用户偏好和电影特征的分解矩阵,我们就可以利用它们进行个性化推荐。对于给定的用户,我们可以将他们在用户特征矩阵中的偏好与电影特征矩阵中所有电影的特征得分进行比较。通过计算用户偏好向量与每部电影的特征向量之间的点积,我们可以确定该用户-电影对的预测评分。这些预测的评分作为向用户推荐电影的基础。

为了说明这一点,让我们将 Anna 视为我们的目标用户。我们从用户特征矩阵中提取 Anna 的偏好,并将其与电影特征矩阵中所有电影的特征得分进行比较。通过计算 Anna 的偏好向量与每部电影的特征向量之间的点积,我们获得了 Anna 的预测评级列表。预测评级越高,安娜就越有可能喜欢这部电影。基于这些预测的评级,我们可以为 Anna 生成一个排序的电影推荐列表。

请务必注意,这些建议的准确性取决于分解的质量和特征表示。如果分解过程捕获了用户电影评级中的潜在模式和依赖关系,并且如果这些特征有效地代表了电影的特征和用户偏好,那么推荐就更有可能与用户的口味相关并保持一致。

矩阵分解只是推荐系统中使用的众多技术之一,它已被证明在捕获潜在因素和生成个性化推荐方面是有效的。 Netflix 和 YouTube 等平台利用这些技术,根据用户之前的互动和偏好向他们推荐可能喜欢的内容,从而增强用户体验。

矩阵分解是推荐系统中的一种强大方法,它将用户电影评分矩阵分解为两个较小的矩阵,分别代表用户偏好和电影特征。通过捕获数据中的依赖关系和模式,它可以生成准确的预测和个性化的建议。

 

潜在狄利克雷分配(第 1 部分,共 2 部分)



潜在狄利克雷分配(第 1 部分,共 2 部分)

大家好,我是 Luis Serrano,这是关于 Latent Dirichlet Allocation (LDA) 的两个视频中的第一个。 LDA 是一种用于将文档分类为主题的算法。让我们考虑一个文档语料库,例如新闻文章,其中每篇文章都与一个或多个主题相关联。但是,我们事先不知道主题,只知道文章的正文。目标是开发一种可以将这些文档分类为主题的算法。

为了说明这个概念,让我们使用一个包含四个文档的小示例,每个文档包含五个单词。为简单起见,假设我们的语言中只有四个可能的词:“球”、“行星”(或“星系”)、“公投”,以及三个可能的主题:科学、政治和体育。

根据文档中的单词,我们可以为每个文档分配主题。例如,第一个文档包含单词“ball”和“galaxy”,这暗示了体育主题。第二份文件包含“公投”一词,表明这是一个政治话题。第三份文件有“行星”和“星系”两个词,表明这是一个科学主题。第四个文件模棱两可,但包含“行星”和“星系”这两个词,也暗示了一个科学主题。

然而,这种分类是基于我们作为人类对这些词的理解。另一方面,计算机只知道单词是相同的还是不同的,以及它们是否出现在同一文档中。这就是 Latent Dirichlet Allocation 发挥作用的地方。

LDA 采用几何方法将文档分类为主题。想象一个三角形,其角代表主题(科学、政治和体育)。目标是将文档放在这个三角形内,靠近相应的主题。如果某些文档包含与两个主题相关的词,则它们可能位于两个主题之间的边缘。

LDA 可以被认为是一个生成文档的机器。它有设置和齿轮。通过调整设置,我们可以控制机器的输出。齿轮代表机器的内部运作。当机器生成文档时,它可能不是原始文档而是单词的随机组合。

为了找到机器的最佳设置,我们运行它的多个实例并将生成的文档与原始文档进行比较。产生最接近原件的文档的设置虽然概率很低,但被认为是最好的。从这些设置中,我们可以提取主题。

正如文献中描述的那样,机器的蓝图乍一看似乎很复杂。但是,如果我们将其分解,它由 Dirichlet 分布(设置)和多项分布(齿轮)组成。这些分布帮助我们在文档中生成主题和单词。

狄利克雷分布可以想象成几何形状内点的分布。例如,在三角形中,点表示主题在文档中的分布。分布受参数的影响,这些参数控制点是偏向角落(主题)还是偏向中心。

另一方面,多项式分布表示每个主题中单词的分布。几何形状(例如四面体)内的点表示特定主题的单词组合。

LDA 结合这些分布来生成文档。使用涉及机器设置和齿轮的公式计算文档出现的概率。

LDA 是一种有助于将文档分类为主题的算法。它使用几何分布来表示文档、主题和单词之间的关系。通过调整机器的设置,我们可以生成与原始文档非常相似的文档。从这些设置中,我们可以提取主题。

 

训练潜在狄利克雷分配:吉布斯采样(第 2 部分,共 2 部分)



训练潜在狄利克雷分配:吉布斯采样(第 2 部分,共 2 部分)

大家好,我是 Luis Serrano,在本视频中,我将向您展示如何使用 Gibbs 采样训练 Latent Dirichlet Allocation (LDA) 模型。该视频是两部分系列的第二部分。在第一个视频中,我们讨论了什么是 LDA 并更详细地探讨了 Dirichlet 分布。然而,观看第一个视频并不是理解这个视频的必要条件。

让我们快速回顾一下我们试图解决的问题。我们有一组文档,例如新闻文章,每个文档都可以与一个或多个主题相关联,例如科学、政治或体育。但是,我们不知道文档的主题,只知道其中的文本。我们的目标是使用 LDA 仅根据文章的文本按主题对这些文章进行分组。

在上一个视频中,我们查看了一个包含四个文档和由四个词组成的有限词汇表的示例:“ball”、“planet”、“galaxy”和“referendum”。我们为每个词分配了颜色(代表主题),并观察到大多数文章主要与单个主题相关。我们还注意到,单词往往主要与特定主题相关联。

要使用 LDA 解决这个问题,我们需要将主题分配给单词和文档。每个词可以分配多个主题,每个文档也可以有多个主题。我们的目标是找到一个主题到单词的分配,使每个文档尽可能单色,并且每个单词大多是单色的。这样,我们就可以在不依赖单词或主题定义的情况下有效地对文章进行分组。

现在,让我们深入研究如何使用 Gibbs 采样来解决这个问题。想象一下在不知道物体的大致位置的情况下组织一个凌乱的房间。您只能依赖对象之间的相对位置。同样,假设所有其他分配都是正确的,我们将通过一次分配一个颜色来组织单词。

最初,我们从为单词随机分配颜色开始。然后,我们通过随机选择一个词并根据其他分配给它重新分配颜色来迭代改进分配。例如,如果我们选择单词“ball”并假设所有其他分配都是正确的,我们会通过考虑它在文档中的流行度以及它在该词的所有出现中的流行度来确定“ball”的最佳颜色。我们将与每种颜色相关的概率相乘,然后选择结果最高的颜色。

通过对每个单词重复这个过程,我们逐渐改进了颜色对单词的分配,使文章更加单色,单词也大多是单色的。虽然该算法不能保证完美的解决方案,但它在不依赖单词或主题定义的情况下有效地解决了问题。

在视频的其余部分,我将提供有关如何使用 Gibbs 采样解决此问题的更多详细信息。通过一次整理房间中的一件物品,我们可以将凌乱的房间变成干净的房间。类似地,通过为单词一个一个地分配颜色,我们可以使用 Gibbs 采样有效地训练 LDA 模型。

那么让我们继续我们的 Gibbs 采样算法。我们根据文档中红色词的普遍性以及所有文档中“球”一词的红色着色普遍性,将文档 1 中的“球”一词着色为红色。现在,让我们继续下一个单词并重复该过程。

文档一中的下一个词是“星系”。同样,假设所有其他单词的颜色都正确,我们将蓝色、绿色和红色视为单词“galaxy”的候选颜色。现在,让我们数一数文档一中蓝色、绿色和红色单词的数量。我们发现有一个蓝色的字,一个绿色的字,一个红色的字。由于所有三种颜色的代表均相同,因此仅根据文件一,我们并没有明确的赢家。

接下来,让我们只关注所有文档中的“galaxy”一词。计算出现次数,我们发现两个蓝色词、两个绿色词和两个红色词。同样,在所有文档中,“星系”一词没有明显的多数颜色。

在这种情况下,我们可以为单词“galaxy”随机分配一种颜色,或者选择一种默认颜色。假设我们随机分配给它蓝色。现在,我们已经将文档一中“星系”一词的颜色更新为蓝色。

我们对所有文档中的所有单词重复这个过程,考虑它们的本地和全局上下文,并根据每个文档中颜色的流行程度和所有文档中每个单词的颜色流行程度更新它们的颜色。我们不断迭代单词,直到我们多次遍历所有单词。

经过几次迭代后,我们收敛到一种颜色,它满足了我们的目标,即使每篇文章尽可能单色,每个单词也尽可能单色。我们使用 Gibbs 抽样有效地训练了一个潜在狄利克雷分配 (LDA) 模型。

吉布斯抽样是一种技术,它使我们能够在不依赖单词定义的情况下解决将主题分配给文档的问题。它涉及根据每个文档中颜色的普遍性以及所有文档中每个单词的颜色普遍性来迭代更新单词的颜色。这个过程会产生一种颜色来代表文档中的主题,即使不知道单词的含义也是如此。

通过使用 Gibbs 采样,我们可以有效地训练 LDA 模型并仅基于文本内容按主题对文章进行分组,而无需事先了解主题或单词的含义。这种方法在自然语言处理任务中特别有用,其目标是揭示文档集合中的潜在主题或主题。

 

奇异值分解 (SVD) 和图像压缩



奇异值分解 (SVD) 和图像压缩

大家好,我是 Louis Sorano,在本视频中,我将讨论奇异值分解 (SVD) 的概念。 SVD 涉及具有各种应用的旋转和拉伸,例如图像压缩。如果您有兴趣,可以在我的 GitHub 存储库中找到该应用程序的代码,该存储库在评论中有链接。此外,我还有一本名为“Rocking Machine Learning”的书,您可以在评论中找到链接以及折扣代码。

现在让我们深入探讨转换。变换可以看作是获取点并将它们映射到其他点的函数。拉伸和压缩是可以水平或垂直应用于图像的变换示例。将图像旋转一定角度是另一种类型的变换。

现在,让我们解决一个难题。你能仅使用旋转、水平和垂直拉伸/压缩将左边的圆圈变成右边的椭圆吗?暂停视频并试一试。

为了解决这个难题,我们将圆水平拉伸,垂直压缩,然后逆时针旋转,得到想要的椭圆。

让我们继续看一个更具挑战性的谜题。这一次,我们必须在保留颜色的同时将彩色圆圈转换为彩色椭圆。在拉伸或压缩之前,我们需要将圆旋转到正确的方向。之后,我们可以进行拉伸和压缩,然后再次旋转以达到所需的效果。

这里的关键要点是任何线性变换都可以表示为旋转和拉伸的组合。线性变换可以用矩阵来表示,SVD 帮助我们将矩阵分解为三个部分:两个旋转矩阵和一个缩放矩阵。

这些旋转和缩放矩阵可用于模拟任何线性变换。旋转表示按角度旋转,缩放矩阵表示水平和垂直拉伸或压缩。具有特殊属性的矩阵,例如对角矩阵,表示缩放变换。

SVD 分解方程 A = UΣVᴴ 将矩阵 A 表示为这三个矩阵的乘积:旋转矩阵 U、缩放矩阵 Σ 和另一个旋转矩阵 Vᴴ(V 的伴随或共轭转置)。这个等式允许我们将任何矩阵分解成它的组成部分。

要找到 SVD,有可用的数学方法,但我们也可以使用 Wolfram Alpha 或 Python 中的 NumPy 包等工具。

SVD 分解有助于降维和简化矩阵。通过分析缩放矩阵Σ,我们可以了解变换的特点。一个大的比例因子表示拉伸,而一个小的因子表示压缩。如果缩放因子变为零,则变换变得退化并且可以将整个平面压缩成一条线。

通过修改缩放矩阵,我们可以将高阶矩阵压缩为低阶矩阵,有效减少表示原始矩阵所需的信息量。这种压缩是通过将矩阵表示为两个较小矩阵的乘积来实现的。然而,并不是所有的矩阵都可以用这种方式压缩。

奇异值分解 (SVD) 是一种强大的工具,可让我们将矩阵分解为旋转和拉伸。这种分解在各个领域都有应用,包括图像压缩和降维。

 

人工智能革命 |多伦多全球论坛 2019



人工智能革命 | 2019 年多伦多全球论坛 | 9 月 5 日,星期四 |

如果这个房间里有人认为我在同意接受这次采访之前受到了轻微的威胁,那他们是对的。但是,让我们将其搁置一旁,专注于进行富有成效的讨论。我的目标是让每个人离开这里时都比他们到达时有更多的理解。那么,让我们开始吧。

为了提供一些背景信息,图灵奖最近授予我和我的同事,以表彰我们在神经网络和深度学习方面的工作。我认为如果 Jeff 能够解释什么是深度学习以及什么是神经网络将会很有帮助。

大约六十年前,关于创建智能系统有两个主要想法。一种方法基于逻辑,涉及使用推理规则处理符号串。另一种方法受到大脑结构的启发,在大脑结构中,相互连接的脑细胞网络在其中学习和适应。这两种范式截然不同,很长一段时间以来,神经网络方法都难以提供令人满意的结果。缺乏进展是由于数据可用性和计算能力有限。

然而,在本世纪初,我们目睹了重大转变。随着数据和计算能力的指数增长,从示例中学习的系统变得非常有效。我们没有对特定任务进行编程,而是创建了大型模拟脑细胞网络,并调整了它们之间的连接强度以实现所需的行为。通过提供输入数据和相应的正确输出,网络学会了概括并做出准确的预测。这种被称为深度学习的方法彻底改变了语音识别、图像识别、机器翻译和各种其他任务。

虽然深度学习受到大脑的启发,但重要的是要注意它如何工作的细节有很大不同。它在抽象层面上运作,模仿大脑从例子中学习和适应连接强度的能力。

现在,让我详细说明为什么学习如此重要,以及为什么基于符号和规则的传统人工智能方法行不通。我们拥有大量知识,但无法轻易解释或编入计算机。例如,我们知道如何识别像一杯水这样的物体,但将这些知识转移到计算机上是一项挑战。我们对人类认知许多方面的理解不容易剖析或转化为机器的明确指令。同样,我们无法向另一个人解释某些事情,因为我们无法有意识地访问隐藏在大脑中的知识。

要为计算机提供此类知识,从数据中学习至关重要。就像孩子从他们的经验中学习一样,计算机可以通过对大量数据进行训练来获取知识。这种方法最接近于模拟我们大脑的工作方式,尽管它不是精确的复制品。因此,从数据中学习的能力是人工智能和机器学习的一个基本方面。

关于我们的背景,虽然我最初学习的是认知心理学,但我在该领域并没有取得太大的成功。事实上,我受到启发去探索其他途径,因为认知心理学家提出的想法对于创建智能系统似乎不充分且不切实际。

现在,让我们谈谈科学研究所需的毅力,以及为什么我们在最初被忽视的情况下继续坚持下去。要想在研究中取得成功,就必须愿意踏上非常规的道路。研究是关于探索和发现的,通常涉及其他人可能认为难以置信的想法。它需要自信、冒险的意愿以及追求别人忽视的事物的能力。我们的 AI 方法最初没有受到重视,但我们对自己的想法充满信心并愿意追求它们,最终导致深度学习取得突破。

展望未来,您询问了应用深度学习的激动人心的计划。应用多种多样,从通过提高太阳能电池板、碳捕获和电池的效率来应对气候变化,到通过更好的预测和更有效地利用可再生能源来改善电力使用。公司还广泛使用深度学习来增强客户互动,例如搜索引擎、推荐、个性化广告和虚拟助理。它还被应用于医疗保健领域,用于诊断疾病、分析医学图像和发现新的候选药物。在自动驾驶汽车领域,深度学习在感知、决策和控制系统中发挥着至关重要的作用,使交通更安全、更高效。

另一个令人兴奋的领域是自然语言处理,其中使用深度学习模型来理解和生成人类语言。这导致了机器翻译、聊天机器人、语音助手和情感分析方面的重大进步。深度学习也被用于金融领域的欺诈检测、风险评估和高频交易。

此外,深度学习在科学研究和探索方面也取得了长足的进步。它正在帮助分析天文学、基因组学和粒子物理学等领域的大型数据集,从而带来新的发现和见解。深度学习甚至被用于创造性应用,例如生成艺术、音乐和文学。

尽管取得了显着进步,深度学习仍然面临挑战。一个重要的问题是依赖大量标记数据进行训练。获取和注释此类数据集可能既耗时又昂贵。研究人员正在积极探索提高效率并使深度学习对数据更有效率的方法。

另一个挑战是深度学习模型的可解释性。由于它们的复杂性,可能很难理解为什么深度学习模型会做出特定的决定或预测。这种缺乏透明度会引发道德和法律问题,尤其是在医疗保健和刑事司法等敏感领域。研究人员正在努力开发增强可解释性并建立对深度学习系统的信任的技术。

最后,确保深度学习模型的公平性和避免偏见是一个持续关注的问题。训练数据中存在的偏差会导致有偏差的预测和不公平的结果。正在努力开发公平和公正的算法,以及解决这些问题的指导方针和法规。

深度学习使机器能够从数据中学习并做出准确的预测,从而彻底改变了人工智能。它已在多个领域得到应用,并有可能推动科学、技术和社会的进一步进步。然而,必须解决数据要求、可解释性和公平性等挑战,以确保在未来以负责任和有益的方式使用深度学习。

 

全访谈:“人工智能教父”谈人工智能的影响和潜力



全访谈:“人工智能教父”谈人工智能的影响和潜力

在人工智能和机器学习的当前时刻,它被视为一个关键时刻。大语言模型 ChatGPT 的成功证明了这些模型令人印象深刻的能力。公众越来越意识到人工智能的潜力,尤其是在微软发布了自己的语言模型之后。公众的这种突然意识让许多人感到惊讶,尽管研究人员和大公司多年来已经意识到这些进步。

当被问及他们对 ChatGPT 的初步体验时,他们的反应并不惊奇。用户之前使用过类似的模型,例如 GPT-2 和可以用自然语言解释笑话幽默的谷歌模型。虽然 ChatGPT 并没有给他们带来太多惊喜,但 GPT-2 确实给他们留下了深刻的印象。然而,公众对 ChatGPT 功能的反应确实让他们感到惊讶,因为它已成为 AI 中增长最快的现象。

谈话转向了人工智能的历史,有两种截然不同的思想流派。主流人工智能专注于推理和逻辑,而用户感兴趣的神经网络则研究大脑的生物学方面。尽管在神经网络领域处于领先地位,但在 80 年代说服其他人相信它的潜力仍具有挑战性。用户认为,由于计算能力和数据集有限,神经网络在当时并没有发挥最佳作用。然而,主流人工智能研究人员认为这是其缺点的借口。

用户的主要兴趣在于了解大脑是如何工作的,而不是仅仅创造人工智能。虽然成功的 AI 实施可以获得资助和认可,但他们的目标是深入了解大脑。他们认为,目前人工智能中使用的人工神经网络与大脑的实际工作方式不同。用户表达了他们的观点,认为大脑的学习过程与人工智能中广泛使用的反向传播技术不同。

讨论深入探讨了人类交流与人工智能模型相比的局限性。虽然人类可以通过自然语言交流复杂的想法,但他们受到信息传输速度的限制。相比之下,人工智能模型可以跨多台计算机处理大量数据,从而积累人类无法理解的知识。然而,人类在推理、从有限的数据集中提取知识以及执行需要先天理解的任务方面仍然表现出色。

谈话涉及用户在 1986 年的早期语言建模工作,当时他们开发了一个模型来预测句子中的最后一个单词。尽管该模型显示出了希望,但它受到当时可用计算能力和数据集的限制。用户认为,如果他们能够使用当今可用的计算能力和数据集,模型的性能将会得到显着提高。

在 1990 年代,神经网络面临挑战,因为其他学习技术似乎更有前途并且拥有更强大的数学理论。主流人工智能对神经网络失去了兴趣,除了在心理学领域,研究人员看到了神经网络在理解人类学习方面的潜力。 2000 年代标志着一个转折点,深度学习技术(包括预训练和生成模型)得到开发,使具有多层的神经网络能够学习复杂的任务。

2012 年发生了两个重要的里程碑。首先,用户从 2009 年开始使用深度神经网络改进语音识别的研究被传播到主要的语音识别实验室。这导致语音识别技术取得重大进步,包括谷歌在 Android 中部署深度神经网络,与 Siri 的功能相媲美。其次,该用户的两名学生开发了一个物体识别系统,其性能优于以前的方法。该系统利用特征检测器和分层表示来识别图像中的对象。

为了解释他们的方法与以前的方法之间的区别,用户提供了一个使用图像中的鸟类识别的类比。传统方法需要不同级别的手工特征检测器,从基本边缘开始,逐步发展到更复杂的对象组件。相比之下,使用反向传播的深度神经网络在初始化后无法告诉您如何调整权重以使其下次更有可能预测鸟类。但如果它碰巧预测了鸟,那么你可以调整权重,使下一次输出更像鸟。因此,您将根据预测输出与所需输出之间的差异调整权重,并且您将对许多示例继续这样做,直到模型更好地识别鸟类。

这个想法是,通过根据预测输出和期望输出之间的误差调整权重,可以逐渐提高模型识别鸟类的能力。对数百万甚至数十亿张图像重复此过程,使模型能够从大量数据中学习并在预测中变得高度准确。

这种称为反向传播的方法在 1980 年代彻底改变了神经网络领域,至今仍是深度学习的一项基本技术。然而,尽管它取得了令人印象深刻的成果,但关于反向传播是否是大脑实际学习方式的准确模型,仍然存在争论和正在进行的研究。

一些研究人员认为,大脑的学习过程可能涉及反向传播未完全捕获的其他机制和原则。他们表明,我们对大脑如何工作的理解仍然不完整,并且可能有其他方法来构建与大脑过程更紧密结合的 AI 系统。

尽管如此,在反向传播和其他技术的支持下,深度学习模型已经在各个领域取得了重大进展,包括图像和语音识别、自然语言处理,甚至游戏。这些模型展示了非凡的能力,并引起了研究人员和公众的关注和兴奋。

当我们在人工智能和机器学习的当前时刻前行时,很明显像 ChatGPT 这样的大型语言模型展示了这些技术的潜力。他们可以执行令人印象深刻的任务、生成创意内容并提供有价值的见解。然而,在人工智能如何更好地模仿人类智能和理解方面,还有很多需要学习和探索的地方。

随着研究人员不断深入探索大脑的奥秘并完善 AI 技术,我们可以期待进一步的突破和进步。人工智能的未来充满希望,但它也引发了有关道德、隐私以及这些强大技术的负责任开发和部署的重要问题。

就生物智能而言,每个个体的大脑都是独一无二的,个体之间的知识传递依赖于语言。另一方面,在当前的神经网络等人工智能模型中,相同的模型在不同的计算机上运行并且可以共享连接强度,从而允许它们共享数十亿个数字。这种连接强度的共享使他们能够识别不同的对象。例如,一个模型可以学习识别猫,而另一个模型可以学习识别鸟类,它们可以交换连接强度来执行这两项任务。然而,这种共享只有在数字计算机中才有可能,因为让不同的生物大脑表现相同并共享连接是一项挑战。

我们不能坚持使用数字计算机的原因是它们的高功耗。虽然功率需求随着芯片的改进而降低,但以高功率运行数字计算机对于精确计算是必要的。然而,如果我们以较低的功率运行系统,类似于大脑在 30 瓦的情况下运行,我们可以允许一些噪音并使系统有效运行。大脑对较低功率的适应性使其即使在没有精确功率要求的情况下也能工作。相比之下,大型人工智能系统需要更高的功率,例如兆瓦,因为它们由同一模型的多个副本组成。这种功率要求的明显差异,大约是千分之一,表明将有一个阶段,在数字计算机上进行训练,然后在低功率系统上运行经过训练的模型。

这项技术的广泛影响很难精确定位到一个特定领域。它有望渗透到我们生活的各个方面。 ChatGPT 等模型已经变得无处不在。例如,谷歌使用神经网络来增强搜索结果,我们正在过渡到像 ChatGPT 这样的聊天机器人变得越来越普遍的阶段。然而,这些语言模型虽然能够生成文本,但缺乏对真理的真正理解。他们接受了不一致数据的训练,旨在预测某人可能在网络上说的下一句话。因此,他们融合了不同的意见来模拟各种潜在的反应。这与追求一致世界观的人类不同,尤其是在世界上采取行动时。

展望未来,人工智能系统的开发需要应对理解不同观点和适应不同世界观的挑战。然而,这会带来一个难题,因为在某些情况下存在客观真理,例如地球不是平的。在承认客观事实的同时兼顾不同观点是一项重大挑战。确定由谁来决定什么被认为是“坏的”或冒犯性的也是一个悬而未决的问题。虽然像谷歌和微软这样的公司在他们的方法上持谨慎态度,但应对这些挑战将需要公开辩论、监管,并仔细考虑这些系统的训练、标记和呈现方式。

人工智能技术的潜在快速发展引发了对其影响的担忧。以前,通用人工智能预计需要几十年的时间才能开发出来。然而,一些人现在认为这可能会在未来 20 年甚至更短时间内发生。恐惧源于一个比人类聪明得多的系统可能做出的未知行为和决定。确保人工智能系统作为协同工具来帮助人类而不是构成威胁需要仔细关注政治和经济因素。政治格局起着至关重要的作用,所有国家和领导人是否会以负责任的态度对待人工智能的发展仍然不确定。这引起了人们对潜在危险以及治理和国际合作以制定准则和协议的必要性的担忧。

一个重大问题涉及人工智能的军事应用,尤其是自主武器。用人工智能控制的士兵代替士兵的想法引发了伦理问题。开发自主士兵需要赋予他们创建子目标以实现其目标的能力,这引起了对对齐问题的担忧。我们如何确定这些系统创建的子目标将符合人类价值观并且不会导致有害行为?

在某种程度上,这种说法是正确的。这些大型语言模型(如 Chat GPT)依赖统计模式和现有数据来生成响应。他们不像人类那样拥有真正的理解力或意识。然而,它们的功能不仅仅是简单的自动完成。

这些模型已经过大量文本数据的训练,使它们能够学习模式、语法和上下文。他们可以根据收到的输入生成连贯且与上下文相关的响应。他们甚至可以模仿特定来源或个人的风格和语气。

此外,这些模型能够从他们学到的信息中进行概括和推断。他们可以回答问题、提供解释、参与对话,甚至创作故事或诗歌等创意内容。他们可以理解和回应范围广泛的话题,并提供有用的信息。

但是,重要的是要注意这些模型有局限性。他们有时会产生不正确或有偏见的反应,因为他们从接受训练的数据中学习,这些数据可能包含偏见或不准确。他们缺乏常识推理和对世界的深刻理解。他们还与模棱两可或细微的查询作斗争,有时会提供误导性或荒谬的答案。

为了克服这些限制,正在进行的研究和开发都集中在提高这些模型的能力上。目标是增强他们的理解力、推理能力和参与更有意义和准确对话的能力。此外,正在努力解决这些技术的伦理和社会影响,例如透明度、偏见缓解和负责任的部署。

尽管这些大型语言模型在自然语言处理方面取得了重大进步,但它们仍远未达到真正的人类智能和理解水平。它们是可以辅助和增强人类智能的工具,但应谨慎使用,并考虑到它们的局限性和潜在影响。