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

城市建设与管理网站新浪云sae免费wordpress网站

城市建设与管理网站,新浪云sae免费wordpress网站,宣传片影视拍摄公司,做网站的升级人在人工智能和机器学习技术的飞速发展中#xff0c;向量数据库在处理高维数据方面扮演着日益重要的角色。近年来#xff0c;随着大型模型的流行#xff0c;向量数据库技术也得到了进一步的发展和完善。 向量数据库为大型模型提供了一个高效的数据管理和检索平台#xff0c;… 在人工智能和机器学习技术的飞速发展中向量数据库在处理高维数据方面扮演着日益重要的角色。近年来随着大型模型的流行向量数据库技术也得到了进一步的发展和完善。 向量数据库为大型模型提供了一个高效的数据管理和检索平台使得这些模型能够更加高效地处理非结构化数据并在各种应用场景中发挥其潜力执行复杂的查询和分析任务。 FaissFacebook AI Similarity Search是一个用于高效相似性搜索和密集向量聚类的库它广泛应用于图像检索、推荐系统和自然语言处理等领域。然而随着数据规模的不断扩大和维度的增加如何在保证搜索质量的同时提升搜索速度成为了一个挑战。海光DCUData Center Unit作为一种高性能的计算加速解决方案能够有效提升Faiss向量数据库的搜索性能。 Faiss向量数据库简介 Faiss是由Facebook AI Research团队开发的一个开源库专门用于高效地进行大规模向量的相似性搜索和聚类。它支持对十亿级别的向量进行搜索是目前较为成熟的近似近邻搜索库之一。Faiss用C编写并提供了与Numpy紧密结合的Python接口不仅支持CPU计算对一些核心算法还支持GPU计算。 海光DCU简介 海光DCUData Center Unit是一款高效通用的GPGPU加速卡专为人工智能和科学计算任务设计。它在兼容性、软件生态和市场应用方面展现出卓越的价值。海光DCU全面兼容“类 CUDA”环境。这种强大的兼容性为用户提供了在AI和大数据处理领域的强大计算服务能力其在国产加速卡领域中的生态兼容性处于领先地位。 DCU环境部署 本次测试使用了一台装备有两张海光Z100L加速卡的服务器X7840H0服务器操作系统为Ubuntu 22.04.1 LTS。 准备开发测试环境相关的程序和文档可以通过光和开发者社区获取地址是https://developer.hpccube.com。 在服务器系统上部署开发测试环境用户可以通过点击页面上的资源工具访问驱动、DTK、DAS、镜像等资源的下载界面。 《开发环境安装部署手册》可以通过点击DTK Toolkit下载地址然后选择最新的latest然后选择Document目录获取。除了开发环境安装部署手册外还有开发环境使用手册、兼容性手册等常用的说明文档。 《开发环境安装部署手册》中包含了多个常用系统下的基础环境部署可以根据使用的系统选择对应的环境部署流程 根据测试机服务器的操作系统版本本次测试选择Ubuntu20.04.1操作系统基础环境部署。 按照手册中要求的首先安装驱动以及DTK的依赖包然后安装驱动程序和DTK设备的DCU开发测试环境即可部署完成。环境部署完成后输入hy-smi指令即可查询DCU的使用信息 除了使用物理机的系统环境开发测试外还可以使用官方提供的基础环境镜像镜像下载地址https://sourcefind.cn/#/main-page。 使用官方提供的镜像可以节省大量基础环境的部署工作。本次测试就使用到了名称为1.13.1-centos7.6-dtk-23.04.1-py38-latest的镜像镜像内已部署好了pytorch等相关的第三方包。然后安装光和开发者社区中提供的faiss安装包以及测试代码所需的pandas等三方包就可以进入下一步准备faiss的测试程序。 搜索性能测试 为了测试faiss的搜索效率本次测试以文本相似度搜索为例分别在CPU和GPU场景下进行测试。测试流程包括将批量文本数据导入faiss向量数据库然后搜索一段文本中不存在的数据并取多次测试的平均值进行对比。 将文本数据转换为向量数据需要用到Embedding嵌入模型本次测试中选择了效果出色的shibing624/text2vec-base-chinese。 文本内容本次测试选择了《三体》全集文本存储在三体.txt文件中。由于Embedding嵌入模型的输入长度限制首先需要将文本内容进行分段再传入嵌入模型。然后将嵌入模型转换完成的向量数据使用numpy存储在本地data.npy文件中用来方便后续测试。代码如下 import warnings warnings.simplefilter(actionignore, categoryFutureWarning) import pandas as pd dfpd.read_csv(三体.txt,encodingutf-8,sep#,headerNone, names[sentence]) print(df) from sentence_transformers import SentenceTransformer modelSentenceTransformer(shibing624/text2vec-base-chinese) sentences df[sentence].tolist() sentence_embeddingsmodel.encode(sentences) print(数据向最维度:) print(sentence_embeddings.shape) save_file  data.npy import numpy as np np.save(save_file,sentence_embeddings) import os file_size  os.path.getsize(save_file) print(保存数据文件:%7.3f MB%(file_size/1024/1024))运行代码之后打印信息如下 向量数据准备好之后使用faiss分别加载三体全集和data.npy向量数据然后使用faiss中提供的IndexFlatL2索引方式加载这些向量数据然后在搜索“大史喜欢抽烟”这几个原文中没有的文本。faiss_test.py测试代码如下 import faiss import numpy as np import pandas as pd import warnings warnings.simplefilter(actionignore, categoryFutureWarning) print(load 三体.txt...) df  pd.read_csv(三体.txt, encodingutf-8, sep#, headerNone, names[sentence]) print(load vector data...) sentence_embeddings  np.load(data.npy) dimension  sentence_embeddings.shape[1] index  faiss.IndexFlatL2(dimension) index.add(sentence_embeddings) import time from sentence_transformers import SentenceTransformer model  SentenceTransformer(shibing624/text2vec-base-chinese) topk  5 words  [大史喜欢抽烟] search  model.encode(words) print(search:   str(words)) costs  [] for i in range(10):to  time.time()D, I  index.search(search, topk)ti  time.time()costs.append(ti - to) print(D) print(I) print(df[sentence].iloc[I[0]]) print(平均耗时 %7.3f ms % ((sum(costs) / len(costs)) * 1000.0))使用GPU的方式搜索可以将上面代码中的index使用index_cpu_to_all_gpus的方法将索引数据创建在GPU中然后构建索引数据。faiss_gpu_test.py代码如下 import faiss time warnings import numpy as np import pandas as pd warnings.simplefilter(actionignore, categoryFutureWarning) print(load 三体.txt...) df  pd.read_csv(三体.txt, encodingutf-8, sep#, headerNone, names[sentence]) print(load vector data...) sentence_embeddings  np.load(data.npy) dimension  sentence_embeddings.shape[1] index  faiss.IndexFlatL2(dimension) ngpus  faiss.get_num_gpus() print(number of GPU:, ngpus) gpu_index  faiss.index_cpu_to_all_gpus(index) gpu_index.add(sentence_embeddings) from sentence_transformers import SentenceTransformer model  SentenceTransformer(shibing624/text2vec-base-chinese) topk  5 words  [大史喜欢抽烟] search  model.encode(words) print(search:   str(words)) costs  [] for i in range(10):to  time.time()D, I  gpu_index.search(search, topk)ti  time.time()costs.append(ti - to) print(D) print(I) print(df[sentence].iloc[I[0]]) print(平均耗时 %7.3f ms % ((sum(costs) / len(costs)) * 1000.0))在服务器环境中分别运行faiss_test.py和faiss_gpu_test.py即可获取到faiss的搜索结果 分析汇总 对两份代码的运行结果进行对比可以明显看到海光DCU的加速效果明显较CPU索引的方式提高了7倍左右的性能。 本次测试使用到的文本数据量较低随着数据量的增加DCU的加速效果会更加明显。测试代码中的索引方式使用到了faiss中最基本的IndexFlatL2它使用 L2 距离欧氏距离进行暴力搜索brute-force search适用于向量数量较小的情况。由于它在内存中存储所有向量因此当向量数量较大时内存开销会很大。除此之外faiss中常用的还有IndexIVFFlat、IndexIVFPQ等索引方式可以显著减少索引的内存资源占用。
http://www.hkea.cn/news/14519775/

相关文章:

  • 礼品网站建设公司百度招聘
  • 专业公司网站建设服务公司免费wordpress资源
  • 搭建网站难吗企业网站建设介绍
  • 网站建设的公司哪家强网站开发语言有什么
  • 网站素材免费如何建设数据报表网站
  • 山西省轻工建设有限责网站海口发布公众号
  • 网站建设关健词优化网络公司怎么样网站后台设置网站地图
  • 美词网站建设社交网络服务网站
  • 做那个的网站网站建设哪家好公司
  • wordpress 多语言网站html5网站模板
  • 购物网站 后台模板唯尚广告联盟
  • 投资公司取名常州网站seo代理加盟
  • 惠州seo工作室太原关键词优化软件
  • 扬州做企业网站网站开发制作平台
  • 陕西做网站的公司沧州网站优化价格
  • 怎么在网站注册账号扬州市建设厅网站
  • 珠海公司网站制作公汕尾建设网站
  • 青岛高端网站制作中国网信网
  • 物流公司做网站哪家好中国移动官方网站
  • 网站建设浩森宇特赤峰网站制作公司
  • 网站开发合作意向书wordpress 自动推荐
  • 企业自建站案例wordpress京东
  • 如何在建设银行网站申购纪念币网络推广外包哪家好
  • 做网站 360的好不好个人网站怎么设计
  • 上海 网站设计 排名东方购物网上商城
  • 网站建设公司net2006自考都到哪个网站找题做
  • 山西网站开发建设做家电网站
  • 网站首页设计与制作html中文网页模板素材
  • 简单公司网站源码博物馆网站页面设计说明
  • 佛山网站制作专业公司网站界面设计内容