分享回顾 | DocArray:为机器学习而生的数据结构!

本文是Jina AI高级工程师关于DocArray的分享回顾,介绍了DocArray作为为机器学习设计的数据结构,能统一存储非结构化数据,支持多模态和跨模态处理,提供强大的可视化和与深度学习框架的集成。DocArray解决了数据表示、序列化、传输和工程维护等问题,适用于数据科学家和工程人员。通过Document、DocumentArray和Dataclass三个核心概念,DocArray能表示复杂数据结构并优化搜索体验。此外,还提供了实践示例和更多存储后端的支持。

Jina AI 高级工程师王峰应 优快云 和示说技术沙龙邀请,进行了 DocArray 相关主题分享,本文为分享回顾。

没来得及观看直播的小伙伴,可点击下方小程序,查看完整回放:

【Show Notes】 

00:39    Jina AI 简介

01:58    DocArray 介绍

04:18    DocArray 产生背景

05:30    传统搜索 vs 神经搜索

16:20    DocArray 的设计目标

17:28    DocArray 的三个重要概念

31:28    在用户开发体验上的支持

37:18    以图搜图实战案例分享

42:23    Jina 全家桶使用介绍

关注 Jina AI 公众号,后台回复【DocArray】,获取讲师文档。

多种模态间如何兼容一致性和互补性?作为一种为机器学习而生的数据结构,DocArray 让多模态的存储难题迎刃而解!

 DocArray 是什么 

DocArray 是由 Jina AI 开发的,一种用来存储非结构化数据的数据结构工具包。它是一个小而精的入口,可以友好地带你走进机器学习的Python生态。本文将详细介绍 DocArray,带你走入多模态、跨模态的世界。

DocArray 能够将非结构化数据,统一成同一种数据结构。对于已经掌握 Python 的数据科学家和算法工程师来说,一定能迅速上手 DocArray;对于研发人员来说,DocArray 可以高效地处理、检索、推荐、存储及传输数据。使用 DocArray 将数据转换成 Protobuf 和 JSON 格式,并能方便地提交到远程服务器,非常便于大型项目的构建。

想了解更多,点击阅读原文,或复制链接到浏览器打开:https://docarray.jina.ai/

 DocArray 的产生背景 

相比起传统搜索引擎,神经搜索借助深度学习技术,使用非结构化数据搜索非结构化数据。通过计算向量相似度,而不是关键字匹配,这使得搜索场景更加多样,搜索结果更加丰富。

DocArray 的设计初衷便是解决用户非结构化数据的表征,以及网络传输问题。它的前身是 Jina 框架内的,根据用户反馈和市场需求,DocArray 最终被提取出来——不仅适用于 Jina 全家桶产品,也可以应用于其它场景,其它生态。

 DocArray 解决了什么 

对于数据科学家和算法工程师们来说,可以使用 DocArray 表示原始数据,它提供了强大的可视化能力,以及和主流深度学习框架的集成。

对于更加关心模型上线、落地、服务化的工程师们来说,将 DocArray 作为系统底层模块,能够快速将不同的数据序列化,转换成 Protobuf 和 JSON 格式,传输到远程服务器。

另外一方面,DocArray 还解决了原型开发和实际产品落地上线的鸿沟。通过在算法和工程采用同一套数据结构,减少了工程和算法之间的沟通成本,并且极大地简化了工程的维护成本。除此之外,DocArray 专门针对服务之间的通信传输做了优化,在本地开发之外,也可以快速适配在云上的场景。

基于强大的数据建模能力,DocArray 可以用于表示一些非常复杂的数据结构,并且能直观地表示多模态的数据。它的主要亮点在于分层、嵌套的存储。可以让第一层是视频,第二层是该视频的台词,第三层是视频的某一帧画面......这样能使得搜索的颗粒度,结构的多样性和结果的丰富度,都比传统关键词检索好很多。

 DocArray 的三个概念 

  • Document 是最基本的数据类型,帮助用户快速对非结构化数据进行表征。

529c29459a5bd9f18fb65bec5eb6dc6b.png

  • DocumentArray 是表达多个 Document 的数据结构,可以简单地理解成一个 Python 列表。

529f671fa7f7600745fb0a42b918891e.png

  • Dataclass 是对 Document 更高层次的封装,可以更好地表示一个多模态的文档。你可以利用装饰器@dataclass,将该图片信息表示为如下代码片段。

59aee8655d18fac2e0bcaa0f461476ce.png

from docarray import dataclass, Document
from docarray.typing import Image, Text, JSON
@dataclass
class WPArticle:
    banner: Image
    headline: Text
    meta: JSON
    
a = WPArticle(
    banner='dog-cat-flight.png',
    headline='Everything to know about flying with pets, from picking your seats to keeping your animal calm',
    meta={
        'author': 'Nathan Diller',
        'column': 'By the Way - A Post Travel Destination',
    },
)

 DocArray 实战环节 

  • 通过一些简单的例子尝试用 DocArray 存储非结构化数据吧!

    https://docarray.jina.ai/datatypes/

  • 现已支持更多存储后端,如 ES,Qdrant 等

    https://docarray.jina.ai/advanced/document-store/

  • 阅读原文,获取更详细的文档介绍

84a880b13e878fb867fd7f27b6831f7c.png

神经搜索、深度学习、推荐系统

教程、demo、干货分享

扫码备注加入讨论组

更多精彩内容(点击图片阅读)

4aca135a95bc5e6512ad491463b19155.jpeg

04050074f51f6a8ccbf7a0115776a4b4.jpeg

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值