当前位置: 首页 > news >正文

数据库管理-第152期 Oracle Vector DB AI-04(20240220)

数据库管理152期 2024-02-20

  • 数据库管理-第152期 Oracle Vector DB & AI-04(20240220)
    • 1 常用的向量检索方法
      • 聚类
      • 图搜索
      • 哈希
      • 量化
    • 2 Oracle Vector DB中的索引
      • 索引(默认)
    • 索引(高级)
    • 3 EMBEDDINGS
      • SQL EMBEDDINGS 函数
      • OONX
    • 总结

数据库管理-第152期 Oracle Vector DB & AI-04(20240220)

作者:胖头鱼的鱼缸(尹海文)
Oracle ACE Associate: Database(Oracle与MySQL)
网思科技 DBA总监
10年数据库行业经验,现主要从事数据库服务工作
拥有OCM 11g/12c/19c、MySQL 8.0 OCP、Exadata、CDP等认证
墨天轮MVP、认证技术专家,ITPUB认证专家,OCM讲师
圈内拥有“总监”、“保安”、“国产数据库最大敌人”等称号,非著名社恐(社交恐怖分子)
公众号:胖头鱼的鱼缸;CSDN:胖头鱼的鱼缸(尹海文);墨天轮:胖头鱼的鱼缸;ITPUB:yhw1809。
除授权转载并标明出处外,均为“非法”抄袭。

由于上一篇的一些“误操作”,导致公众号发文删了,当天重发没有办法触发群发效果,所以可能有些人会发现没看过03。

1 常用的向量检索方法

聚类

K-Means 和 Faiss
image.png

图搜索

Hierarchical Navigable Small Worlds (HNSW)
image.png

哈希

局部敏感哈希(Locality Sensitive Hashing)LSH

量化

Product Quantization (PQ):有损压缩

2 Oracle Vector DB中的索引

在Oracle Vector DB中,可以在Vector数据类型列上创建vector index来提升向量检索的性能:

索引(默认)

create vector index vector_idx on vector_table (data_vector)
organization [inmemory neighbor graph | neighbor partition]

距离计算:欧几里德
向量索引的选择取决于organization子句:

  1. In-Memory Neighbor Graph organization:HNSW
  2. Neighbor Partition organization:IVF

索引(高级)

可以指定向量索引类型参数、距离函数、精度等:

create vector index vector_idx on vector_table (data_vector) organization neighbor partition parameters (num_centroids 1024);

3 EMBEDDINGS

在Oracle Vector DB除直接通过外部导入向量外,也内建支持多种向量生产方式:

SQL EMBEDDINGS 函数

原生支持生成向量数据:

select id, image from cat_images order by VECTOR_DISTANCE(img_vec, EMBEDDING(resnet_50 USING :input_img)) fetch first 2 rows only;

image.png

OONX

Open Neural Network eXchange embedding 模型:

DECLAREmodel_source BLOB := NULL;
BEGINmodel_source :=DBMS_CLOUD.get_object( credential_name =>'OBJ_STORE_CRED',object_uri	=> 'https://objectstorage…bucketname/o/resnet50bundle.onnx’);DBMS_DATA_MINING.import_onnx_model( model_name	=> "resnet50",model_data	=> model_source,metadata		=> JSON('{ function : "embedding" }')
);
END;

总结

本期简单讲解了一下,Oracle Vector索引以及内建向量EMBEDDING能力。
老规矩,知道写了些啥。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 闭包的定义与作用(含举例)
  • 在UE5中使用OverlayMaterial制作多材质效果
  • Redis Sentinel工作原理
  • 基于python+django+vue.js开发的医院门诊管理系统/医疗管理系统
  • 计算机网络Day1--计算机网络体系
  • 【计算机考研】408系统学习法
  • vue 生成word表格文档 前端库介绍
  • K8s ingress-nginx根据请求目录不同将请求转发到不同应用
  • Nginx笔记
  • 75.SpringMVC的拦截器和过滤器有什么区别?执行顺序?
  • MCAL知识点(二十七):TC275如何通过GPT12实现ABZ解码
  • Golang for 循环
  • LeetCode 2656.K个元素的最大和
  • 如何创建WordPress付款表单(简单方法)
  • 在Ubuntu中使用python
  • 实现windows 窗体的自己画,网上摘抄的,学习了
  • Cookie 在前端中的实践
  • CSS盒模型深入
  • Eureka 2.0 开源流产,真的对你影响很大吗?
  • Git 使用集
  • input的行数自动增减
  • MySQL的数据类型
  • Python_网络编程
  • Redux 中间件分析
  • WordPress 获取当前文章下的所有附件/获取指定ID文章的附件(图片、文件、视频)...
  • 初识MongoDB分片
  • 翻译 | 老司机带你秒懂内存管理 - 第一部(共三部)
  • 前端技术周刊 2018-12-10:前端自动化测试
  • 前端自动化解决方案
  • 日剧·日综资源集合(建议收藏)
  • 十年未变!安全,谁之责?(下)
  • 学习使用ExpressJS 4.0中的新Router
  • 找一份好的前端工作,起点很重要
  • 第二十章:异步和文件I/O.(二十三)
  • ​软考-高级-系统架构设计师教程(清华第2版)【第1章-绪论-思维导图】​
  • # Redis 入门到精通(九)-- 主从复制(1)
  • # 手柄编程_北通阿修罗3动手评:一款兼具功能、操控性的电竞手柄
  • #define 用法
  • (+3)1.3敏捷宣言与敏捷过程的特点
  • (2)MFC+openGL单文档框架glFrame
  • (done) NLP “bag-of-words“ 方法 (带有二元分类和多元分类两个例子)词袋模型、BoW
  • (leetcode学习)236. 二叉树的最近公共祖先
  • (附源码)计算机毕业设计SSM疫情社区管理系统
  • (南京观海微电子)——I3C协议介绍
  • (转)Scala的“=”符号简介
  • ../depcomp: line 571: exec: g++: not found
  • .env.development、.env.production、.env.staging
  • .NET Core WebAPI中使用swagger版本控制,添加注释
  • .NET Core 中的路径问题
  • .NET MVC之AOP
  • .net 中viewstate的原理和使用
  • .netcore 6.0/7.0项目迁移至.netcore 8.0 注意事项
  • @property python知乎_Python3基础之:property
  • @ResponseBody
  • [ Linux ] git工具的基本使用(仓库的构建,提交)