Embedding背景
Embedding 起源于 Word Embedding,经过多年的发展,已取得长足进步。从横向发展来看,由原来单纯的 Word Embedding,发展成现在的Item Embedding、Entity Embedding、Graph Embedding、Position Embedding、Segment Embedding等;从纵向发展来看,由原来静态的Word Embedding发展成动态的预训练模型,如ELMo、BERT、GPT、GPT-2、GPT-3、ALBERT、XLNet等,这些预训练模型可以通过微调服务下游任务。Embedding 不再固定不变,从而使这些预训练模型可以学习到新的语义环境下的语义,高效完成下游的各种任务,如分类、问答、摘要生成、阅读理解等,其中有很多任务的完成效率已超过人工完成的平均水平。
embedding 技术的发展可以追溯到 20 世纪五六十年代的语言学研究,其中最著名的是 Harris 在 1954 年提出的分布式语义理论(distributional semantic theory)。这个理论认为,单词的语义可以通过它们在上下文中的分布来表示,也就是说,单词的含义可以从其周围的词语中推断出来。
从2010年以来,随着深度学习技术的发展,embedding 技术得到了广泛的应用和研究。在这个时期,出现了一些重要的嵌入算法,例如Word2Vec、GloVe和FastText等
embedding 技术得到了进一步的改进和发展。例如,BERT、ELMo 和 GPT 等大型语言模型可以生成上下文相关的 embedding 表示,可以更好地捕捉单词的语义和上下文信息。
Embedding作用
1:降低维度
2:扑住语义
3:增强适应
4:提高泛化
5:可解释性
Word Embedding:词嵌入通常被用来生成词的向量表示,这个过程通常是静态的,即一旦训练完成,每个词的向量表示就确定了。词嵌入的主要目标是捕获单词或短语的语义和语法信息,并将这些信息以向量形式表示出来。词嵌入的一个重要特性是,语义上相近的词在嵌入空间中的距离也比较近。然而,词嵌入并不能理解上下文信息,即相同的词在不同的上下文中可能有不同的含义,但词嵌入无法区分这些含义。
Language Model:语言模型则是预测词序列的概率模型,这个过程通常是动态的,会根据输入的上下文进行变化。语言模型的主要目标是理解和生成文本。这包括对上下文的理解,词的预测,句子的生成等等。语言模型会用到词嵌入,但同时也会对上下文进行建模,这样可以处理词在不同上下文中的不同含义。在某种程度上,你可以将词嵌入看作是语言模型的一部分或者输入,语言模型使用词嵌入捕捉的信息,来进行更深层次的语义理解和文本生成。当然,现在有一些更先进的模型,比如 BERT,GPT 等,它们生成的是上下文相关的词嵌入,即词的嵌入会根据上下文变化,这样一定程度上弥补了传统词嵌入模型的不足。
资料来源网络:
技术的未来发展可能会沿着以下几个方向:
模型的细粒度和多模态性:字符级(Char-level)的嵌入、语义级的嵌入,以及结合图像、声音等多模态信息的嵌入。
更好的理解和利用上下文信息:例如,动态的、可变长度的上下文,以及更复杂的上下文结构。
模型的可解释性和可控制性:这包括模型的内部结构和嵌入空间的理解,以及对模型生成结果的更精细控制。
更大规模的模型和数据:例如,GPT-4、GPT-5等更大规模的预训练模型,以及利用全球范围的互联网文本数据。
Embedding应用【RAG、MoE、Agent、debugger】
《SIMA generalist AI agent for 3D virtual environments - Google DeepMind》
《Advanced RAG Techniques: an Illustrated Overview | by IVAN ILIN | Dec, 2023 | Towards AI》
CantorAI 通过使能低端计算设备和大规模的快捷部署,使计算能够真正有效地下沉到边,而不是过度依靠云的计算,整体提高计算系统的计算效率。这一切都建立在 XLang™ 语言的应用特性:高效的机器码执行效率、小巧的内存占用以及对设备资源的极低消耗。
-
我们的任务调度机制将系统中所有具备计算能力的节点,无论它们处于边缘端、终端还是云端环境,均视为一体化的计算资源,根据任务的要求统一优化调度。这一切也建立在 XLang™ 的分布式计算能力之上。
-
针对单节点上面的 GPU 计算。现在数据在 CPU 和 GPU 之间吞吐时,GPU 有大量的空闲。XLang™ 优化 DataGraph 管理的底层算法,减少不必要的吞吐,有望将 GPU 的使用率提高到 80% 甚至更高,接近 100%。
当前业界标杆的分布式计算平台当属加州伯克利的 Ray 平台。虽然 CantorAI 的很多机制是从 Ray 学习过来的,但 CantorAI 青出于蓝而胜于蓝,甚至开始支持一些不同的场景。
两大分布式计算平台异同
CantorAI 的实践初步证明,相较于 Python,用 XLang™ 来构建 AI 系统会更精炼、灵活,并展现出更好的性能。XLang™ 使能了边缘 AI 计算。
XLang™ 的开源和发展,经过两年孕育开发的 XLang™ 已经初具能力,但要成为 AI 时代新编程语言的愿景十分宏大,需要广大开发者一起来完成。XLang™ 已经由 XLang™ 基金会开源[4],我们邀请全球开发者社区做出贡献,以 GitHub[5] 作为协作中心。XLang™ 基金会热诚地鼓励开发人员加入该项目,并为人工智能编程领域的这一开创性工作做出贡献。