浅析AIGC for MMKG

Posted 华为云开发者社区

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了浅析AIGC for MMKG相关的知识,希望对你有一定的参考价值。

摘要:AIGC和多模态知识图谱(MMKG)中的知识获取又是怎么实现的呢?他们之间有什么关联呢?

本文分享自华为云社区《GPT-4发布,AIGC时代的多模态还能走多远?系列之四 AIGC for MMKG》,作者:码上开花_Lancer。

与传统知识图谱不同,MMKG以多模态数据作为源头,从多方面描述实体和关系,构建出一个可以跨越多模态的知识体系。在MMKG中,多模态数据不仅仅作为文字符号实体的关联属性存在,还可以作为图谱中的实体存在,可与现有实体发生广泛关联。 MMKG的优势在于它能够消除多模态数据的异构性,将它们有机地结合在一起,使得系统能够实现对多模态数据的更加全面和深入的理解。AIGC(生成式AI)可以利用多模态知识图谱中的信息来生成新的内容。例如AIGC(生成式AI)可以根据MMKG的文本和图像信息,生成描述某个实体或者概念的新文本、图像或视频。这种结合可以提高生成内容的质量和准确性,所以多模态知识图谱提供了丰富的上下文信息,有助于生成式AI更好的理解和描述目标内容。那么,AIGC和多模态知识图谱(MMKG)中的知识获取又是怎么实现的呢?他们之间有什么关联呢?

01 大模型知识抽取:利用Prompt机制来获得多模态大模型中富含的知识

大型预训练模型的兴起,知识知识获取已经成为当前自然语言处理领域的热门话题。利用大模型的知识抽取方法可以帮助我们更好地探索和利用多模态大模型中丰富的知识资源。 在知识抽取的过程中,Prompt机制被广泛应用。它通过给模型提供一些输入提示,来引导模型生成对应的输出序列。这种方法不仅可以在文本方面得到很好的应用,也可以在多模态知识获取方面产生卓越的效果。例如,在图像描述生成领域,我们可以将关键词或者句子作为prompt输入,用以指导模型生成适当的图像描述。

与此类似的,利用Prompt机制可以让模型以更优秀的方式使用多模态知识。通过针对特定场景和任务设计的Prompt,模型能够更精准地理解和应用多模态知识,从而提高知识的知识获取效率。这种方法的优点在于它可以帮助模型理解多模态数据之间的相互关系,并引导模型实现跨模态知识表示和推理。 利用Prompt机制进行多模态抽取是一种非常有效的方法,可以显著提高多模态大模型的知识利用效率。同时,这种方法还可以帮助我们更好地理解和应用不同类型的知识,从而推动自然语言处理技术的发展。未来,我们可以进一步优化Prompt机制的设计,以适应更多样化的知识抽取需求,实现更高效、准确和全面的多模态知识获取。

(以上图片来自网络)

02 AIGC为知识获取降本增效:零样本、少样本、开放知识获取

随着自然语言处理技术的不断发展和完善,知识获取的效率和成本问题逐渐受到人们的关注。在这个背景下,AIGC作为知识获取方面的重要研究方向,受到了越来越多的关注和重视。 在实际应用中,难免会遇到数据量不足的情况,这时候零样本或者少样本学习就显得尤为重要。通过使用大模型进行辅助,可以有效提升模型对于零样本或少样本的学习能力,从而降低对于数据量的依赖性,大幅提升知识抽取的效率。同时,在多模态知识的获取过程中,大模型也表现出了非常出色的表现。它可以将不同模态的数据进行关联推理,从而帮助我们更好地获取跨模态知识,提高知识抽取的全局性和准确性。 此外,开放知识获取也是目前研究的热点之一。传统的知识获取方法需要大量的人工参与,成本高昂且效率低下。而通过利用大模型进行知识获取,则可以极大地减少人工成本,提高知识获取的效率和准确度。这使得开放知识获取变得更加容易,为知识抽取的自动化、高效化奠定了基础 。

(以上图片来自网络)

03 AIGC为知识获取降本增效:显著增强垂域多模态知识获取能力

如何更加高效地获取和利用知识已经成为了自然语言处理领域中的一个非常重要的问题,在这个过程中,AIGC(增强智能领域)技术正发挥着重要的作用,通过降低知识获取的成本、提高获取效率等方面的优化,使得多模态知识获取能力显著增强。

其中,GPT-4和ChatPDF等大型预训练模型已经表现出了非常强大的领域知识抽取能力,特别是在基于多模态文档抽取方面有着出色的表现。这些模型能够通过深度学习等技术,从海量的文本和图像中快速筛选和抽取有用的信息,并进行分类、归纳等操作,为用户提供精准、有效的知识支持。

(以上图片来自网络)

04 AIGC助图谱设计一臂之力:辅助Schema半自动化设计

大模型在部分领域上拥有领域常识知识,可以辅助完成Schema的半自动化设计,AIGC为知识推理保驾护航:辅助知识图谱(KG)表示学习与知识图谱(KG)补全,AIGC为知识融合扫清障碍:辅助Scheme融合与实体对齐。

(以上图文来自网络)

05利用大模型的泛化能力和海量知识,可以辅助完成多模态知识图谱融合

在知识推理方面,AIGC技术可以辅助KG表示学习和KG补全。基于大模型的强大自然语言处理能力和海量知识的支持,AIGC技术可以从各个文档、图像和视频中快速抽取有用信息,并自动填充到知识图谱中,从而提高知识图谱的完备性和准确性,并支持更加深层次的知识推理。

(以上图文引用来自http://arxiv.org/abs/2206.14268 和http://arxiv.org/abs/2212.05767)

其次,在知识融合方面,AIGC技术也可以帮助我们进行Scheme融合和实体对齐。通过大模型的泛化能力和领域常识知识,AIGC技术可以自动进行Schema匹配和实体对齐,并解决知识图谱中的冗余、不一致等问题,从而实现知识融合的自动化和高效化。

最后,利用大模型的泛化能力和海量知识,我们还可以辅助完成多模态知识图谱的融合。在这一过程中,AIGC技术可以利用多种数据源和多种表达形式,如文本、图像和声音等,来构建更加全面和丰富的多模态知识图谱,并支持多模态知识的推理和应用。 除了上述提到的应用场景,AIGC技术还可以在其他领域中发挥重要作用。例如,在医疗、金融和物联网等领域,AIGC技术可以帮助企业和机构更好地了解和管理自己的业务和流程,从而提高生产效率和服务质量。 在医疗领域,AIGC技术可以协助医生进行病例诊断和治疗方案设计。通过分析大量的临床数据和病例信息,AIGC技术可以自动生成病例分类、药品推荐、治疗方案等智能化输出,从而帮助医生更加准确地诊断疾病和制定治疗计划,并提高治疗效果。 在金融领域,AIGC技术可以辅助企业进行风险评估和投资决策。通过分析市场数据、企业财报和行业趋势等信息,AIGC技术可以提供智能化的投资建议和风险预警,从而帮助企业和投资者做出更加准确的投资决策,并降低投资风险。 在物联网领域,AIGC技术可以帮助企业更好地管理和监测设备状态和数据流。通过连接各种传感器和智能设备,AIGC技术可以实现数据采集、处理和分析,并通过自动化控制和预测性维护等手段,提高设备利用率和效率,降低生产成本和机器故障率。

总之,AIGC技术的应用使得知识推理和融合变得更加高效、精准和自动化,从而大大提高了多模态知识图谱(MMKG)的实用性和应用价值。通过生成式AI技术,也可以自动化地从大量的数据中提取和整合多模态知识图谱(MMKG)信息,形成结构化的知识表示,提高多模态知识图谱(MMKG)的构建效率,丰富多模态知识图谱(MMKG)的内容,进一步推动知识表示和处理领域的发展。未来,我们可以进一步探索多模态知识图谱(MMKG)和拓展AIGC技术的应用场景,开发更加丰富和智能的知识服务和应用,为人类知识创造和创新提供更加强有力的支持。

参考:

部分内容参考来自复旦大学教授李直旭《AIGC时代的多模态知识工程思考与展望》

论文:《Google’s PaLM-E is a generalist robot brain that takes commands》

《X. Zhu, Z. Li et. al. Multi-Modal Knowledge Graph Construction and Application: A Survey, Accepted by TKDE in Dec. 2022

http://arxiv.org/abs/2206.14268 和http://arxiv.org/abs/2212.05767

 

点击关注,第一时间了解华为云新鲜技术~

浅析冒泡算法

原理:冒泡算法就是将较小的元素搬移到数组的开始,将较大的元素慢慢地往数组的尾部移动,小的数据就像气泡一下往上冒,而大的数据就像石头一样往下沉。

总结出两个方法,分别是「递归」、「双层for循环」实现:  

  「双增for循环」:for()方法内传入一个数组,对数组进行循环n-1次,并判断,两两比较,前值是否大于后值,如果是则交换。依次再次进行循环数组n-1次,最后返回有序的数组。

$arr = [1, 2, 4, 1, 23, 22, 12, 54, 65, 23];
function maopao($arr)
{
    $len = count($arr);

    // 该层循环控制 需要冒泡的轮数
    for ($i = 1; $i < $len; $i++) {

        // 该层循环用来控制每轮冒出一个数 需要比较的次数
        for ($k = 0; $k < $len - $i; $k++) {
            if ($arr[$k] > $arr[$k + 1]) {
                $tmp = $arr[$k + 1]; // 声明一个临时变量
                $arr[$k + 1] = $arr[$k];
                $arr[$k] = $tmp;
            }
        }
    }
    return $arr;
}

 

「递归」:原理其实和双增for循环一致

/**
 * @param $arr 传入要排序的数组
 * @param int $index 循环次数
 * @return mixed
 */
function maopao1($arr, $index = 0)
{
    $len = count($arr);

    if ($len < $index) {
        return $arr;
    }

    for ($i = $index; $i < ($len - 1); $i++) {
        if ($arr[$i] > $arr[$i + 1]) {
            $tmp = $arr[$i + 1];
            $arr[$i] = $tmp;
            $arr[$i + 1] = $arr[$i];
        }
    }
    $index++;
    return maopao1($arr, $index);
}


//array(10) {
// [0]=>
// int(1)
// [1]=>
// int(1)
// [2]=>
// int(2)
// [3]=>
// int(4)
// [4]=>
// int(12)
// [5]=>
// int(22)
// [6]=>
// int(23)
// [7]=>
// int(23)
// [8]=>
// int(54)
// [9]=>
// int(65)
//}
 

 

 

以上是关于浅析AIGC for MMKG的主要内容,如果未能解决你的问题,请参考以下文章

lua迭代器和泛型for浅析

Select For update语句浅析 (转)

干货分享!CynosDB for PostgreSQL 架构浅析

浅析冒泡算法

AIGC文档大全ChatGPT-4技术报告中文版AIGC发展趋势报告

AIGC的阿克琉斯之踵