AI与区块链融合:构建可验证智能的Web3应用实战指南
2026/5/10 6:05:32
结构化数据搜索快,是因为有一定的搜索算法。 那么是不是可以将非结构数据中的一部分信息提取出来, 重新组织,使其变得有一定结构, 然后对这部分有结构的数据进行搜索,从而达到搜索较快的目的。 索引:从非结构数据中提取出来。重新组织的信息,叫索引。 反向索引:通过字符串来反向映射到文件,即:通过字符串找到对应的文件。 左边是一系列字符串,称为词典。 每个字符串都指向包含此字符串的文档链表(倒排表)。 优点:一次索引可以多次使用。1. 有一系列要建立索引的原文档。 2. 将原文档传给分词组件,处理后得到词元。 具体操作: 1)将文档分为一个个单独的单词。 2)去除标点符号。 3)去除停词(无特别意义的单词,每一种语言的分词组件都有一个停词集合)。 3. 将词元传给语言处理组件,处理后得到一系列词。 具体操作: 1)变小写 2)将单词缩减为词根形式。 3)将单词转变为词根形式。 4. 将得到词传给索引组件,创建索引。 具体操作: 1)将得到的词创建一个字典。 2)对字典按照字母顺序进行排序。 3)合并相同的词成为文档倒排列表。 5. 通过索引存储将索引写入硬盘。1. 用户输入查询语句。 2. 对查询语句经过语法分析和语言处理后,得到一系列词。 3. 通过语法分析得到一个查询树。 4. 通过索引存储将索引读入内存。 5. 利用查询树搜索索引,得到每个词的文档链表,对文档链表进行合并、去重,得到结果文档。 6. 将搜索到的结果文档对查询的相关性进行排序。 7. 返回查询结果给用户。 注:如何计算文档和查询语句的相关性? 1. 找出词对文档的重要性。 这个过程称为计算词的权重过程。 影响因素:词+文档 算法:向量空间模型 Term Frequency: 在本文档中出现的次数。 Document Frequency: 文档频次,总共有多少文档包含此词。 2. 判断词之间的关系,得到文档相关性。 3. 根据相关性从大到小排序。