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

百度工具网站改版个人网站可以做哪些内容

百度工具网站改版,个人网站可以做哪些内容,被墙网站怎么做301跳转,照片做视频的软件 模板下载网站好Lucene 9.10 中的 KnnFloatVectorQuery 是用来执行最近邻#xff08;k-Nearest Neighbors#xff0c;kNN#xff09;搜索的查询类#xff0c;它可以在一个字段中搜索与目标向量最相似的k个向量。以下是 KnnFloatVectorQuery 的基本用法和代码示例。 1. 索引向量字段 首先…Lucene 9.10 中的 KnnFloatVectorQuery 是用来执行最近邻k-Nearest NeighborskNN搜索的查询类它可以在一个字段中搜索与目标向量最相似的k个向量。以下是 KnnFloatVectorQuery 的基本用法和代码示例。 1. 索引向量字段 首先你需要一个包含向量字段的索引。你可以使用 KnnFloatVectorField 来添加向量到文档中。 import org.apache.lucene.document.Document; import org.apache.lucene.document.KnnFloatVectorField; import org.apache.lucene.index.IndexWriter; import org.apache.lucene.index.IndexWriterConfig; import org.apache.lucene.store.FSDirectory;import java.io.IOException; import java.util.ArrayList; import java.util.List;public class VectorIndexing {public static void main(String[] args) throws IOException {ListDocument docs new ArrayList();String fieldName knnFloatField;IndexWriter writer new IndexWriter(FSDirectory.open(/* ... */), new IndexWriterConfig());for (float[] vector : /* ... */) {Document doc new Document();doc.add(new KnnFloatVectorField(fieldName, vector, VectorSimilarityFunction.EUCLIDEAN));docs.add(doc);// ... 其他字段的添加 ...writer.addDocument(doc);}writer.close();} }2. 执行 kNN 查询 接下来使用 KnnFloatVectorQuery 来执行查询。你需要指定查询的字段、目标向量以及想要检索的最近邻个数 k。 import org.apache.lucene.search.IndexSearcher; import org.apache.lucene.search.KnnFloatVectorQuery; import org.apache.lucene.search.TopDocs; import org.apache.lucene.store.DirectoryReader;public class VectorSearch {public static void main(String[] args) throws IOException {try (DirectoryReader reader DirectoryReader.open(/* ... */)) {IndexSearcher searcher new IndexSearcher(reader);float[] targetVector { /* ... */ }; // 目标向量int k 3; // 想要检索的最近邻个数KnnFloatVectorQuery knnQuery new KnnFloatVectorQuery(knnFloatField, targetVector, k);TopDocs topDocs searcher.search(knnQuery, 10);for (ScoreDoc scoreDoc : topDocs.scoreDocs) {// 处理检索到的文档}}} }3. 结果处理 TopDocs 对象包含了按分数排序的文档列表其中分数是基于向量相似度计算的。你可以根据需要遍历这些文档。 请注意KnnFloatVectorQuery 是基于 KnnVectorsReader 的它使用特定的算法如 HNSW来执行高效的向量最近邻搜索。查询时相似度的计算由字段定义的 VectorSimilarityFunction 决定例如欧几里得距离Euclidean distance。 在实际应用中你可能还需要考虑如何存储和检索其他相关的文档信息以及如何处理查询结果以满足你的业务需求。此外向量字段的索引和搜索可能需要特定的索引配置和优化以确保性能和准确性。 以上示例代码提供了在 Lucene 9.10 中使用 KnnFloatVectorQuery 进行向量检索的基本框架。具体的实现细节如索引的创建、字段的配置等需要根据你的具体应用场景进行调整。 VectorSimilarityFunction 下枚举值解释: VectorSimilarityFunction 是 Lucene 中用于定义向量相似度计算方法的枚举类型。它提供了几种不同的函数用于在执行向量搜索时比较向量的相似度。以下是 VectorSimilarityFunction 的一些枚举值及其解释 EUCLIDEAN: 使用欧几里得距离来衡量向量之间的相似度。这是一种常见的距离度量用于计算两点之间的直线距离。在 Lucene 中它用于计算查询向量与索引中向量之间的距离。 COSINE: 使用余弦相似度来衡量向量之间的相似度。余弦相似度测量的是两个向量在方向上的相似性而不是大小。它通过计算两个向量的点积与它们模的乘积的比值来得到。 DOT_PRODUCT: 点积相似度与余弦相似度类似它计算两个向量的点积但不需要归一化向量。点积相似度对向量的长度敏感因此在比较之前通常需要将向量标准化到单位长度。 MANHATTAN: 使用曼哈顿距离也称为城市街区距离来衡量向量之间的相似度。这种距离度量是各个维度上差的绝对值之和。 HAMMING: 汉明相似度通常用于二进制向量它计算两个向量中不同位置的个数。 JACCARD: 杰卡德相似度用于衡量集合之间的相似度它定义为两个集合交集大小与并集大小之比。 CHEBYCHEV: 切比雪夫距离它是向量中对应元素差的绝对值的最大值。 CANBERRA: 坎培拉距离是一种加权的曼哈顿距离它考虑了两个元素值的差的绝对值与它们值的和的比率。 BRAY_CURTIS: 布雷-柯蒂斯相似度它是基于两个向量交集和并集的大小类似于杰卡德相似度但权重不同。 ROGERSTANIMOTO: 罗杰斯-谭马托相似度它是一种基于向量元素差的绝对值的相似度度量。 RUSSELLRAO: 罗素-劳相似度它是基于两个集合交集大小与各自独有元素大小之和的度量。 SOKALSNEATH: 索卡尔-斯内思相似度它结合了汉明距离和杰卡德相似度的特点。 这些相似度函数可以用于不同的场景选择哪一种取决于你的具体需求以及数据的特性。例如如果你关心的是向量的方向而不是大小那么余弦相似度可能是一个好选择如果你关心的是向量间的实际距离欧几里得距离可能更合适。
http://www.w-s-a.com/news/873491/

相关文章:

  • 一般网站的建设步骤有哪些企业网站建设应该注意什么事项问题
  • 枣庄市建设局网站建设工程合同交底的内容包括
  • 全国十大跨境电商排名seo优化入门教程
  • 福安网站开发网站内容建设要求age06
  • 网站开发制作公司罗湖在线
  • 做网站银川潍坊网络科技有限公司
  • 南宁企业网站建站模板盐田高端网站建设
  • 深圳市建设局网站张局北京档案馆网站建设
  • 运动健身型网站开发网站备案掉了什么原因
  • 网站开发的前后端是什么注册网站多少钱一年
  • 彩票网站建设需要什么网站未备案被阻断怎么做
  • wordpress 版权声明网站优化排名哪家性价比高
  • dedecms网站关键词外包做网站平台 一分钟
  • 酒网站建设游戏分类网站怎么做
  • 仿牌网站安全北京大良网站建设
  • ps中怎样做网站轮播图片吉林省网站建设公司
  • 广西网站建设-好发信息网温江做网站哪家好
  • 网站建设属于什么职位类别南京哪个网站建设比较好
  • wdcp 网站备份东莞网站建设五金建材
  • 天津制作网站的公司电话wordpress架设进出销
  • tomcat做静态网站prestashop和wordpress
  • 上海响应式建站wap网站微信分享代码
  • 四川建筑人才招聘网南昌网站优化
  • 南充网站建设制作重庆有的设计网站大全
  • 深圳沙井做网站公司网站搭建谷歌seo
  • 学校资源网站的建设方案山西省住房城乡建设厅网站
  • 医疗行业网站建设深圳网络科技公司排名
  • 企业形象型网站建设wordpress chess
  • 网站的域名起什么好处罗湖网站建设公司乐云seo
  • 网站的服务器在哪里sem推广软件选哪家