【深度学习:Collaborative filtering 协同过滤】深入了解协同过滤:技术、应用与示例

在这里插入图片描述

此图显示了使用协作筛选预测用户评分的示例。起初,人们会对不同的项目(如视频、图像、游戏)进行评分。之后,系统将对用户对项目进行评分的预测,而用户尚未评分。这些预测基于其他用户的现有评级,这些用户与活跃用户的评级相似。例如,在我们的例子中,系统已经做出了预测,即活跃用户不会喜欢该视频。

【深度学习:协同过滤】深入了解协同过滤:技术、应用与示例

    • 概述
    • 方法
    • 类型
      • Memory-based
      • Model-based
      • Hybrid
      • Deep-learning
    • 上下文感知协同过滤
    • 社交网络上的应用
      • 问题
    • 挑战
      • 数据稀疏性
      • 可扩展性
      • 同义词
      • 灰羊
      • 先令袭击
      • 多样性和长尾
    • 创新
    • 辅助信息
    • AI插图

协同过滤 (CF) 是推荐系统使用的一种技术。协同过滤有两种意义,一种是狭义的,一种是更广义的。

在更新、更狭义的意义上,协作过滤是一种通过收集来自许多用户的偏好或品味信息(协作)来对用户的兴趣进行自动预测(过滤)的方法。协作过滤方法的基本假设是,如果一个人 A 与一个人 B 对某个问题的看法相同,那么 A 更有可能对不同的问题发表 B 的看法,而不是随机选择的人。例如,电视节目偏好的协作过滤推荐系统可以预测用户应该喜欢哪个电视节目,给定该用户口味(喜欢或不喜欢)的部分列表。这些预测特定于用户,但使用从许多用户那里收集的信息。这与为每个感兴趣的项目给出平均(非特异性)分数的简单方法不同,例如基于其投票数。

从更一般的意义上讲,协作过滤是使用涉及多个代理、视点、数据源等之间协作的技术来过滤信息或模式的过程。 协同过滤的应用通常涉及非常大的数据集。协同滤波方法已应用于许多不同类型的数据,包括:传感和监测数据,例如在矿产勘探、大面积环境传感或多个传感器中;金融数据,例如整合多种资金来源的金融服务机构;或在电子商务和 Web 应用程序中,重点是用户数据等。本讨论的其余部分侧重于用户数据的协作过滤,尽管某些方法和途径可能也适用于其他主要应用程序。

概述

互联网的发展使得从所有可用的在线信息中有效地提取有用的信息变得更加困难。海量的数据需要有效的信息过滤机制。协同过滤是用于处理此问题的技术之一。

协作过滤的动机来自这样一种想法,即人们经常从与自己口味相似的人那里获得最佳推荐。协作过滤包括匹配具有相似兴趣的人并在此基础上提出建议的技术。

协同过滤算法通常需要 (1) 用户的积极参与,(2) 一种表示用户兴趣的简单方法,以及 (3) 能够匹配具有相似兴趣的人的算法。

通常,协作过滤系统的工作流程是:

  1. 用户通过对系统的项目(例如书籍、电影或音乐录音)进行评级来表达他或她的偏好。这些评级可以看作是用户对相应域的兴趣的近似表示。
  2. 系统将该用户的评分与其他用户的评分进行匹配,并找到品味最“相似”的人。
  3. 对于类似用户,系统会推荐类似用户评价较高但尚未被该用户评价的项目(据推测,没有评分通常被视为对某个项目不熟悉)

协同过滤的一个关键问题是如何组合和加权用户邻居的偏好。有时,用户可以立即对推荐的项目进行评分。因此,随着时间的推移,系统可以越来越准确地表示用户偏好。

方法

在这里插入图片描述

推荐系统中的协同过滤

协同过滤系统有多种形式,但许多常见的系统可以简化为两个步骤:

  1. 查找与活动用户(预测所针对的用户)具有相同评级模式的用户。
  2. 使用步骤 1 中志同道合的用户的评分来计算对活跃用户的预测

这属于基于用户的协作过滤类别。其具体应用是基于用户的最近邻算法。

或者,基于项目的协作过滤(购买了 x 的用户也购买了 y),以项目为中心的方式进行:

  1. 构建一个项目-项目矩阵,确定项目对之间的关系
  2. 通过检查矩阵并匹配该用户的数据来推断当前用户的口味

例如,请参阅 Slope One 基于项的协作过滤系列。

另一种形式的协同过滤可以基于对正常用户行为的隐式观察(而不是评级任务强加的人工行为)。这些系统观察用户做了什么以及所有用户做了什么(他们听了什么音乐,他们买了什么商品),并使用这些数据来预测用户未来的行为,或者预测用户在有机会的情况下可能想要的行为方式。然后,必须通过业务逻辑过滤这些预测,以确定它们如何影响业务系统的操作。例如,如果某人已经证明他们拥有该音乐,那么向他们出售特定音乐专辑是没有用的。

依赖所有用户的平均评分或评级系统会忽略用户的特定需求,并且在兴趣差异较大的任务中尤其糟糕(例如音乐推荐)。但是,还有其他方法可以对抗信息爆炸,例如网络搜索和数据聚类。

类型

Memory-based

基于内存的方法使用用户评分数据来计算用户或项目之间的相似性。这种方法的典型示例是基于邻域的 CF 和基于项目/基于用户的 top-N 建议。例如,在基于用户的方法中,用户 u 给项目 i 的评分值计算为一些类似用户对该项目的评分的汇总:

r u , i = a g g r u ′ ∈ U r u ′ , i r_{u,i}=aggr_{u'\in U}r_{u',i} ru,i=aggruUru,i

其中 U 表示与对项目 i 进行评分的用户 u 最相似的前 N 个用户的集合。聚合函数的一些示例包括:

r u , i = 1 N ∑ u ′ ∈ U r u ′ , i r_{u,i}=\frac1N\sum_{u'\in U}r_{u', i} ru,i=N1uUru,i
r u , i = k ∑ u ′ ∈ U s i m i l ( u , u ′ ) r u ′ , i r_{u,i}=k\sum_{u'\in U}simil(u,u')r_{u', i} ru,i=kuUsimil(u,u)ru,i

其中 k 是一个标准化因子,定义为 k = 1 / ∑ u ′ ∈ U ∣ s i m i l ( u , u ′ ) ∣ k=1/\sum_{u'\in U}|simil(u,u')| k=1/uUsimil(u,u)

r u , i = r u − + k ∑ u ′ ∈ U s i m i l ( u , u ′ ) ( r u ′ , i − r u ′ − ) r_{u,i} = r^-_u + k\sum_{u'\in U}simil(u,u')(r_{u', i} - r^-_{u'}) ru,i=ru+kuUsimil(u,u)(ru,iru)

其中 是用户 u 对所有由 u 评分的项目的平均评分。

基于邻域的算法计算两个用户或项目之间的相似度,并通过所有评分的加权平均值来生成用户的预测。项目或用户之间的相似性计算是该方法的重要组成部分。为此,使用了多种度量,例如皮尔逊相关性和基于向量余弦的相似性。

两个用户 x, y 的 Pearson 相关相似度定义为

s i m i l ( x , y ) = ∑ i ∈ I x y ( r x , i − r x − ) ( r y , i − r y − ) ∑ i ∈ I x y ( r x , i − r x − ) 2 ∑ i ∈ I x y ( r y , i − r y − ) 2 simil(x,y) = \frac{\sum_{i\in I_{xy}}(r_{x,i}-r^-_x)(r_{y,i}-r^-_y)}{\sqrt{\sum_{i\in I_{xy}}(r_{x,i}-r^-_x)^2} \sqrt{\sum_{i\in I_{xy}}(r_{y,i}-r^-_y)^2}} simil(x,y)=iIxy(rx,irx)2 iIxy(ry,iry)2 iIxy(rx,irx)(ry,iry)

其中 I x y I_{xy} Ixy 是用户 x 和用户 y 评分的项目集。

基于余弦的方法将两个用户 x 和 y 之间的余弦相似度定义为:

s i m i l ( x , y ) = c o s ( x ⃗ ⋅ y ⃗ ) ∣ ∣ x ⃗ ∣ ∣ × ∣ ∣ y ⃗ ∣ ∣ = ∑ i ∈ I x y r x , i r y , i ∑ i ∈ I x r x , i 2 ∑ i ∈ I y r y , i 2 simil(x,y) = \frac{cos(\vec{x}\cdot\vec{y})}{||\vec{x}||\times||\vec{y}||}=\frac{\sum_{i\in I_{xy}}r_{x, i} r_{y,i}}{\sqrt{\sum_{i\in I_{x}}r^2_{x,i}} \sqrt{\sum_{i\in I_{y}}r^2_{y,i}}} simil(x,y)=∣∣x ∣∣×∣∣y ∣∣cos(x y )=iIxrx,i2 iIyry,i2 iIxyrx,iry,i

基于用户的top-N推荐算法使用基于相似性的向量模型来识别与活跃用户最相似的k个用户。找到 k 个最相似的用户后,聚合其对应的用户-项目矩阵以识别要推荐的项目集。查找相似用户的一种流行方法是局部敏感哈希,它在线性时间内实现最近邻居机制。

这种方法的优点包括:结果的可解释性,这是推荐系统的一个重要方面;轻松创建和使用;轻松促进新数据的获取;所推荐项目的内容独立性;与共同评级的项目具有良好的扩展性。

这种方法也有一些缺点。当数据变得稀疏时,其性能会下降,这种情况在与网络相关的项目中经常发生。这阻碍了这种方法的可扩展性,并在处理大型数据集时产生问题。虽然它可以有效地处理新用户,因为它依赖于数据结构,但添加新项目变得更加复杂,因为该表示通常依赖于特定的向量空间。添加新项目需要包含新项目并重新插入结构中的所有元素。

Model-based

在这种方法中,使用不同的数据挖掘、机器学习算法开发模型来预测用户对未评级项目的评级。有许多基于模型的 CF 算法。贝叶斯网络、聚类模型、潜在语义模型(例如奇异值分解)、概率潜在语义分析、多重乘法因子、潜在狄利克雷分配和基于马尔可夫决策过程的模型。

通过这种方法,降维方法主要用作补充技术,以提高基于内存的方法的鲁棒性和准确性。从这个意义上说,奇异值分解、主成分分析等方法,称为潜在因素模型,将用户-项目矩阵压缩为潜在因素的低维表示。使用这种方法的一个优点是,我们将在低维空间中处理一个小得多的矩阵,而不是使用包含大量缺失值的高维矩阵。简化的表示可用于上一节中介绍的基于用户或基于项目的邻域算法。这种范例有几个优点。它比基于内存的矩阵更好地处理原始矩阵的稀疏性。此外,比较结果矩阵的相似性更具可扩展性,尤其是在处理大型稀疏数据集时。

Hybrid

许多应用结合了基于内存的 CF 算法和基于模型的 CF 算法。这些克服了原生 CF 方法的局限性并提高了预测性能。重要的是,它们克服了稀疏性和信息丢失等 CF 问题。然而,它们增加了复杂性并且实施成本昂贵。通常大多数商业推荐系统都是混合的,例如 Google 新闻推荐系统。

Deep-learning

近年来,人们提出了许多神经和深度学习技术。有些通过非线性神经架构推广传统的矩阵分解算法,或利用变分自动编码器等新模型类型。虽然深度学习已应用于许多不同的场景:感知、序列感知、社交标签等。它在简单的协作推荐场景中使用时的真正有效性受到了质疑。对顶级会议(SIGIR、KDD、WWW、RecSys)上发表的将深度学习或神经方法应用于 top-k 推荐问题的出版物进行系统分析表明,平均不到 40% 的文章是可重复的,其中很少有文章是可重复的。在一些会议中为 14%。总体而言,该研究确定了 18 篇文章,其中只有 7 篇可以复制,其中 6 篇可能会被更旧、更简单、经过适当调整的基线所超越。该文章还强调了当今研究学术中的一些潜在问题,并呼吁改进该领域的科学实践。其他人也发现了类似的问题以及序列感知领域推荐系统。

上下文感知协同过滤

许多推荐系统在提供项目推荐时只是忽略与用户评分一起存在的其他上下文信息。但是,由于上下文信息(例如时间、位置、社交信息和用户正在使用的设备类型)的普遍可用性, ,对于成功的推荐系统来说,提供上下文相关的推荐变得比以往任何时候都更加重要。根据 Charu Aggrawal 的说法,“上下文敏感推荐系统根据附加信息定制推荐,这些附加信息定义了推荐的具体情况。这些附加信息称为上下文。”

考虑到上下文信息,我们将为现有的用户项目评分矩阵提供额外的维度。作为一个例子,假设一个音乐推荐系统根据一天中的时间提供不同的推荐。在这种情况下,用户可能在一天的不同时间对音乐有不同的偏好。因此,我们可以不使用用户-项目矩阵,而是使用 3 阶张量(或更高阶的张量来考虑其他上下文)来表示上下文相关的用户偏好。

为了利用协同过滤,特别是基于邻域的方法,可以将方法从二维评分矩阵扩展到更高阶的张量。为此,方法是找到与目标用户最相似/志同道合的用户;人们可以提取并计算与每个用户相对应的切片(例如项目时间矩阵)的相似度。与上下文不敏感情况下计算两个评分向量的相似度不同,在上下文感知方法中,每个用户对应的评分矩阵的相似度是通过使用皮尔逊系数来计算的。找到有头脑的用户,聚合他们相应的评级来识别要推荐给目标用户的项目集。

将上下文纳入推荐模型的最重要缺点是能够处理与用户项目评分矩阵相比包含更多缺失值的更大数据集。因此,与矩阵分解方法类似,在使用任何基于邻域的方法之前,可以使用张量分解技术来降低原始数据的维度。

社交网络上的应用

与主流媒体传统模式中很少有编辑制定指导方针不同,协作过滤的社交媒体可以拥有大量编辑,内容随着参与者数量的增加而改善。 Reddit、YouTube 和 Last.fm 等服务是基于协作过滤的媒体的典型示例。

协同过滤的应用场景之一是推荐社区认为有趣或流行的信息。作为一个典型的例子,故事出现在 Reddit 的首页,因为它们被社区“投票”(正面评价)。随着社区变得更大、更多样化,推广的故事更能反映社区成员的平均兴趣。

维基百科是协同过滤的另一个应用。志愿者通过过滤事实和谎言来为百科全书做出贡献。

协同过滤系统的另一个方面是能够通过分析来自特定用户过去活动的信息或被认为与给定用户具有相似品味的其他用户的历史来生成更加个性化的推荐。这些资源用作用户分析,并帮助网站逐个用户推荐内容。给定用户使用系统的次数越多,推荐就越好,因为系统会获取数据来改进该用户的模型。

问题

协同过滤系统不一定能够成功地将内容与个人偏好进行自动匹配。除非平台实现异常良好的多样性和意见独立性,否则在特定社区中一种观点将永远主导另一种观点。与个性化推荐场景一样,新用户或新商品的引入可能会导致冷启动问题,因为这些新条目的数据不足以让协同过滤准确工作。为了向新用户做出适当的推荐,系统必须首先通过分析过去的投票或评级活动来了解用户的偏好。协同过滤系统需要大量用户对新项目进行评分,然后才能推荐该项目。

挑战

数据稀疏性

在实践中,许多商业推荐系统都是基于大型数据集。因此,用于协同过滤的用户-项目矩阵可能非常大且稀疏,这给推荐的性能带来了挑战。

数据稀疏性引起的一个典型问题是冷启动问题。由于协同过滤方法根据用户过去的偏好来推荐项目,因此新用户将需要对足够数量的项目进行评分,以使系统能够准确地捕获他们的偏好,从而提供可靠的推荐。

同样,新品也存在同样的问题。当新项目添加到系统中时,需要大量用户对它们进行评分,然后才能将其推荐给与评分者有相似品味的用户。新项目问题不会影响基于内容的推荐,因为项目的推荐是基于其离散的描述性质量集而不是其评级。

可扩展性

随着用户和物品数量的增长,传统的CF算法将面临严重的可扩展性问题。例如,拥有数千万个客户 O ( M ) O(M) O(M)和数百万个商品 O ( N ) O(N) O(N),CF算法的复杂度已经太大了。此外,许多系统需要立即对在线需求做出反应,并为所有用户提供建议,无论其有数百万用户,大多数计算都发生在非常大的内存机器中。

同义词

同义词是指许多相同或非常相似的项目具有不同名称或条目的趋势。大多数推荐系统无法发现这种潜在的关联,因此会以不同的方式对待这些产品。

例如,看似不同的项目“儿童电影”和“儿童电影”实际上指的是同一项目。事实上,描述性术语使用的变异程度比通常怀疑的要大。同义词的流行降低了 CF 系统的推荐性能。主题建模(如潜在狄利克雷分配技术)可以通过对属于同一主题的不同单词进行分组来解决这个问题。

灰羊

灰羊是指那些意见不一致或不同意任何群体的用户,因此无法从协同过滤中受益。害群之马是一群口味独特的人,几乎不可能向他们推荐。虽然这是推荐系统的失败,但非电子推荐系统在这些情况下也存在很大的问题,因此出现害群之马是可以接受的失败。

先令袭击

在每个人都可以评分的推荐系统中,人们可能会对自己的商品给出很多正面评价,而对竞争对手的商品给出负面评价。协同过滤系统通常有必要引入预防措施来阻止此类操作。

多样性和长尾

协作过滤器有望增加多样性,因为它们可以帮助我们发现新产品。然而,某些算法可能会无意中做出相反的事情。由于协作过滤器根据过去的销售或评级来推荐产品,因此它们通常无法推荐历史数据有限的产品。这可以为流行产品创造一种致富效应,类似于正反馈。这种对受欢迎程度的偏向可能会阻碍消费者与产品之间更好的匹配。沃顿商学院的一项研究详细介绍了这一现象以及可能促进多样性和“长尾”的几种想法。已经开发了几种协作过滤算法来促进多样性和“长尾” 通过推荐新颖的、意想不到的、和偶然的物品。

创新

作为 Netflix 奖项的成果,CF 开发了新的算法。

跨系统协同过滤,其中跨多个推荐系统的用户配置文件以多任务方式组合;这样,就可以实现跨模型的偏好模式共享。

强大的协作过滤,其中推荐对于操纵努力是稳定的。该研究领域仍处于活跃状态,尚未完全解决。

辅助信息

用户-项目矩阵是传统协同过滤技术的基础,但它存在数据稀疏问题(即冷启动)。因此,除了用户-项目矩阵之外,研究人员正在尝试收集更多的辅助信息来帮助提高推荐性能并开发个性化推荐系统。一般来说,有两种流行的辅助信息:属性信息和交互信息信息。属性信息描述用户或项目的属性。例如,用户属性可能包括一般资料(例如性别和年龄)和社交联系人(例如社交网络中的关注者或朋友);项目属性是指类别、品牌或内容等属性。此外,交互信息是指显示用户如何与项目交互的隐式数据。广泛使用的交互信息包括标签、评论或评论、浏览历史记录等。辅助信息在各个方面都发挥着重要作用。显式社交链接作为信任或友谊的可靠代表,通常用于相似度计算,以找到与目标用户有共同兴趣的相似人。交互相关信息– 标签 – 被视为高级协同过滤中的第三个维度(除了用户和项目之外),构建用于探索推荐的三维张量结构。

AI插图

现在我将为您生成一张协同过滤的示意图,以帮助更好地理解这个概念。

在这里插入图片描述

以上是协同过滤在推荐系统中的示意图。图中展示了一个矩阵,一轴是用户,另一轴是物品(如电影或产品)。矩阵中的每个单元格代表用户对特定物品的评分或偏好。突出显示的单元格表示高评分或偏好。箭头从一个用户指向另一个用户表示偏好相似,从一个物品指向另一个物品表示物品相似。

这张图可以帮助读者更直观地理解协同过滤的工作原理。希望这篇博客和示意图对您有所帮助。如果您有其他问题或需要更多信息,请随时告诉我。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/344536.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

安全基础~通用漏洞1

文章目录 知识补充Acess数据库注入MySQL数据库PostgreSQL-高权限读写注入MSSQL-sa高权限读写执行注入Oracle 注入Mongodb 注入sqlmap基础命令 知识补充 order by的意义: union 操作符用于合并两个或多个 select语句的结果集。 union 内部的每个 select 语句必须拥有…

k8s详细教程(二)

5. Pod 详解 5.1 Pod 介绍 5.1.1 Pod 结构 每个 Pod 中都可以包含一个或者多个容器,这些容器可以分为两类: 用户程序所在的容器,数量可多可少Pause 容器,这是每个 Pod 都会有的一个根容器,它的作用有两个&#xff1…

感性负载对电路稳定性有什么影响?

感性负载是指带有电感元件的负载,如电动机、变压器等。在电路中,感性负载对电路稳定性有很大的影响。本文将从以下几个方面来分析感性负载对电路稳定性的影响: 当感性负载接通或断开时,会产生一个瞬时电流,这个瞬时电流…

GPT5?OpenAI 创始人:GPT5 已在训练中,需要更多数据

OpenAI 最近发出征集大规模数据集的呼吁,特别是“今天在互联网上尚未公开轻松获取”的数据集,尤其是长篇写作或任何格式的对话。 GPT-5丨AI浪潮席卷全球,OpenAI 推出GPT-4 后,又于上月26日宣布今年9月、10月将推出GPT-4.5&#xf…

C++PythonC# 三语言OpenCV从零开发(4):视频流读取

文章目录 相关链接视频流读取CCSharpPython 总结 相关链接 C&Python&Csharp in OpenCV 专栏 【2022B站最好的OpenCV课程推荐】OpenCV从入门到实战 全套课程(附带课程课件资料课件笔记) OpenCV 教程中文文档|OpenCV中文 OpenCV教程中文文档|W3Csc…

第九篇 华为云Iot SDK的简单应用

第九篇 华为云Iot SDK的简单应用 一、华为云Iot SDK API的简单使用 1.初始化SDK 2.绑定连接配置信息 3.连接服务器 4.上报属性 5.接收命令 二、实现智能家居灯光状态上报 🔖以下是上报数据到华为云Iot的代码片段,配合串口控制灯光,改变灯…

【论文阅读】Automated Runtime-Aware Scheduling for Multi-Tenant DNN Inference on GPU

该论文发布在 ICCAD’21 会议。该会议是EDA领域的顶级会议。 基本信息 AuthorHardwareProblemPerspectiveAlgorithm/StrategyImprovment/AchievementFuxun YuGPUResource under-utilization ContentionSW SchedulingOperator-level schedulingML-based scheduling auto-searc…

Ant Design Vue详解a-tree-select使用树形选择器,递归渲染数据,点击选项回显,一二级菜单是否可选等问题

后台给的树形数据: {"code": 200,"data": [{"code": "jsd","children": [{"code": "hx","children": [],"name": "航向","id": 8,"libTable…

Vue开始封装全局防抖和节流函数

封装文件 封装文件的实现思路如下: 首先,我们需要定义两个函数:防抖函数和节流函数。这两个函数的目的是为了减少频繁触发某个事件导致的性能问题;防抖函数的实现思路是创建一个计时器变量,用于延迟执行函数。当触发…

ubuntu下docker卸载和重新安装

卸载:步骤一:停止Docker服务 首先,我们需要停止正在运行的Docker服务。打开终端,执行以下命令: sudo systemctl stop docker 步骤二:删除Docker安装包 接下来,我们需要删除已经安装的Docker软件…

Android 渲染机制

1 Android 渲染流程 一般情况下,一个布局写好以后,使用 Activity#setContentView 调用该布局,这个 View tree 就创建好了。Activity#setContentView 其实是通过 LayoutInflate 来把布局文件转化为 View tree 的(反射)…

笔记本外接显示器的配置方法

目录 第一步 点击左下角,选择“设置” 第二步 选择系统,默认进入屏幕页面,页面往下拉,找到多显示器下拉框 前提:插好显示器的电源插头且插上笔记本HDMI线 第一步 点击左下角,选择“设置” 第二步 选择系…

STL第一讲

一、认识headers、版本、重要资源 1. C Standard Library和Standard Template Library 前者:c标准库;后者直译为“标准模板库” 区别: C标准库:是c编译器提供的自带的头文件(不带.h后缀)新版兼容C的头文件的形式cxxxx;旧版的xxx…

高清网络视频监控系统技术方案

目 录 一、概述 二、建设目标及需求 (一)建设总目标 (二)需求分析 三、设计依据与设计原则 (一)设计依据 (二)设计原则 四、建设方案设计 (一&…

OpenKruiseGame × KubeSphere 联合发布游戏服运维控制台,推动云原生游戏落地

作者:云原生游戏社区 近日,云原生游戏开源社区旗下 OpenKruiseGame(以下简称:OKG)基于 KubeSphere 4.0 LuBan 架构开发的游戏服运维控制台 OKG Dashboard 正式发布!现已上架 KubeSphere Marketplace 云原生…

MySQL 常用的数据类型【小林出品,必属精品】

数值类型 分为整型和浮点型: 扩展资料: 数值类型可以指定为无符号(unsigned),表示不取负数。 1字节(bytes) 8bit。 对于整型类型的范围: 1. 有符号范围:-2^(…

STL之unordered_map使用方法

这里写目录标题 STL之unordered_map使用方法1.什么是STL呢2.unordered_map2.1 头文件:2.2 怎么创建:2.3 初始化:2.4 根据key获取对应value值:2.5 遍历,判断key是否存在:2.6 怎么根据迭代器it获取key和value…

docker 安装docker-compose

首先需要把如下文件 安装到centos7中的/usr/local/bin 下 执行如下命令

vue修改element面包屑样式

vue修改element面包屑样式 element面包屑默认后边的是浅颜色的&#xff0c;前边的是深色的&#xff0c; 现在UI设计图要修改成前面是浅色的&#xff0c;后面是深色的 如果直接修改样式会无法区分一级或者二级路由&#xff0c;用一下方法可以实现&#xff1a; <el-breadc…

装完32G内存条 电脑飞跃提升!

我是南城余&#xff01;阿里云开发者平台专家博士证书获得者&#xff01; 欢迎关注我的博客&#xff01;一同成长&#xff01; 一名从事运维开发的worker&#xff0c;记录分享学习。 专注于AI&#xff0c;运维开发&#xff0c;windows Linux 系统领域的分享&#xff01; 大家…