数据查找方法、人工智能系统、图像处理系统、数据库、搜索引擎、通讯系统、计算机应用与流程

文档序号:11286625阅读:225来源:国知局

本发明涉及数据分析,具体涉及数据查找方法、人工智能系统、图像处理系统、数据库系统、搜索引擎、通讯系统、应用。

技术背景

计算机的发展离不开数据分析,在数据分析中常常要使用到数据查找,互联网相关应用比如搜索引擎、数据检索、数据统计、数据挖掘也要用到数据查找,人工智能系统也对数据挖掘存在依赖,现有的数据查找方法均使用搜索树,搜索树的最大缺点在于对有序数据进行查找时,必须在全部或局部按照数据顺序进行有序对比,使得搜索树具有串行流程控制的处理器高度依赖,串行流程控制的处理器价格高昂的成本很高,存在改进空间;搜索树虽然也存在一些并行处理的方法,但搜索树的必须全部或局部按照顺序进行对比的如果计,使得并行计算对搜索树对的时间效率提升有限。



技术实现要素:

为解决技术背景中提到的问题,本发明提出了数据处理方法、人工智能系统、数据库系统、搜索引擎、通讯系统。

技术内容1、数据查找方法,其特征在于:将需查找数据列的各个单元与被查找数据列的单元进行对比并对对比结果进行统计。

技术内容2、数据查找方法,其特征在于:包括需查找数据列、被查找数据列、判断矩阵、结果串;

需查找数据列的各个单元具有逻辑序号,需查找数据列中各个单元的逻辑序号的是其在需查找数据列中的顺序排列位置;

被查找数据列的各个单元具有逻辑序号,被查找数据列中各个单元的逻辑序号的是其在被查找数据列中的顺序排列位置;

判断矩阵是逻辑矩阵,判断矩阵具有两个维度,第一维度、第二维度;

结果串是用来储存匹配结果的数据列;

结果串的各个单元具有逻辑序号,结果串中各个单元的逻辑序号的与其在结果串的顺序排列位置对应;

将需查找数据列的各个单元与被查找数据列的单元进行对比并对对比结果进行统计。

技术内容3、如技术内容1或2所述的数据查找方法,其特征在于:所述的对比的方法是:将对比结果填充到判断矩阵对应位置中,如果判断矩阵的单元t在判断矩阵中的第一维度坐标为x、第二维度坐标为y,则点t用于容纳需查找数据列中逻辑序号为x的单元的许对比数据与被查找数据列中逻辑序号为x+y的单元所包含的需对比数据的对比结果,x+y的最大值小于或等于被查找数据列的最大逻辑序号;(需对比数据是技术人员自定义的,比如在一个结构体数组中,只选择某个单元的结构体所包含的某一部分数据,比如被查找数据列的结构体数组包含类型、数值、属性等数据,但需要查找的数据可能只是其中某一个类型)

技术内容4、如技术内容1或2或3所述的数据查找方法,其特征在于:统计的方法是:将判断矩阵中第二维度坐标相同的单元的值统计并储存在结果串对应位置中,方法是:如果结果串的单元r的逻辑序号(即序列位置)为y,则将判断矩阵中第二维度坐标为y的单元的值统计并存储存在r中;所获得的结果串的数据及查找匹配的结果。

技术内容5、如技术内容1或2或3或4所述的数据查找方法,其特征在于:判断矩阵储存的是逻辑值或整数值或浮点数值。

技术内容5、如技术内容1或2或3或4所述的数据查找方法,其特征在于:需查找数据列、被查找数据列储存的是数值数据或矢量图形数据或代表图像轮廓形状的矢量值或文本数据。技术内容6、如技术内容1或2或3或4或5所述的数据查找方法,其特征在于:需查找数据列、被查找数据列储存的是包含多重信息的数据集,比如,但不限于数据存结构体。(比如一个结构体包括序号、姓名、学历、家庭地址、手机号码等)

技术内容7、如技术内容2-6中任意一条技术内容所述的数据查找方法,其特征在于:逻辑序号采用数据直接标出也可以不标出。

技术内容8、如技术内容2-6中任意一条技术内容所述的数据查找方法,其特征在于:步骤2中统计的方法是将各个被统计的值进行数学运算或逻辑运算或位运算或其他运算。

技术内容9、如技术内容2-6中任意一条技术内容所述的数据查找方法,其特征在于:步骤2中统计的方法是将各个被统计的值进行加法运算或减法运算或除法运算或乘法运算。

技术内容10、如技术内容2-6中任意一条技术内容所述的数据查找方法,其特征在于:将步骤1、2进行合并,边对比边统计以减少中间数据对储存空间的占用。(由于判断矩阵与需查找数据、被查找数据直接的对应关系是固定不变的,而矩阵与结果串直接的对应关系也是固定不变的,所以可以依照结果串与判断矩阵之间的对应关系也是固定不变的,故而可以直接将对比结果统计到结果串里面)

人工智能系统,其特征在于:具有技术内容1-10中任意一条技术方案所述的技术方案。

图像处理系统,其特征在于:具有技术内容1-10中任意一条技术方案所述的技术方案。

数据库系统,其特征在于:具有技术内容1-10中任意一条技术方案所述的技术方案。

搜索引擎,其特征在于:具有技术内容1-10中任意一条技术方案所述的技术方案。

通讯系统,其特征在于:具有技术内容1-10中任意一条技术方案所述的技术方案。

计算机应用,其特征在于:具有技术内容1-10中任意一条技术方案所述的技术方案。

说明:本发明在运算时各个单元的对比是独立的分开的数据关联性很低,相互直接没有顺序要求,可以不按顺序操作,所以本发明在能够完美支持并行运算(比如cuda技术、多线程技术)。

本发明应用于串行运算时具有运算时间不随数据内容变化,具有可以稳定预测运算时间的技术效果。

本发明可以实现依靠数值运算方便,资源消耗少,收敛稳定,运算时间易预测。

如果需查找数据列的长度为n,结果串数列的第y个单元的数值为q,那么被查找数据列的第y个单元至y+n单元的数据与需查找数据列的匹配度为q/n;如果q/n=1则匹配度为100%。步骤1中的对比的具体手段是可以自定义的,比如采用减法、位与等,判定界限也可以自定义,比如将被对比的单元中的值相等的则判定为1,否则判定为0,又比如将判定界限如果定为在允许的范围内则判断为1,否则判断为零,又比如矢量图形中两个被对比的角如果差值在30度以内则判断为1,否则判断为0。

步骤2中的对比的具体统计的具体手段是可以自定义的比如但不限于加法、减法、乘法、逻辑运算、流程运算。

使用本发明时应考虑溢出问题,比如保证(x+y)的最大值小于或等于被查找数据列的最大逻辑序号。本发明提供了一种实现数据查找的新思路。

结果串可以是独立的数据串也可以是储存在判断矩阵中的数据串,也就是说统计时把统计结果储存在判断矩阵中,分开写只是为了方便理解。

附图说明

图1是本发明的一个实施实例的示意图。

实施实例

实施实例1、数据查找方法,用于数据查找,其特征在于:包括需查找数据列、被查找数据列、判断矩阵、结果串;

需查找数据列的各个单元具有逻辑序号,需查找数据列中各个单元的逻辑序号的是其在需查找数据列中的顺序排列位置;

被查找数据列的各个单元具有逻辑序号,被查找数据列中各个单元的逻辑序号的是其在被查找数据列中的顺序排列位置;

判断矩阵具有第一维度、第二维度;

结果串是用来储存匹配结果的数据列;

结果串的各个单元具有逻辑序号,结果串中各个单元的逻辑序号的是其在结果串的顺序排列位置;

将需查找数据列的各个单元与被查找数据列的单元进行对比,步骤如下:

步骤1、将对比结果填充到判断矩阵对应位置中,对比的方法是:如果判断矩阵的单元t在判断矩阵中的第一维度坐标为x、第二维度坐标为y,则点t用于容纳需查找数据列中逻辑序号为x的单元的许对比数据与被查找数据列中逻辑序号为x+y的单元所包含的需对比数据的对比结果,x+y的最大值小于或等于被查找数据列的最大逻辑序号;(需对比数据是技术人员自定义的,比如在一个结构体数组中,只选择某个单元的结构体所包含的某一部分数据,比如被查找数据列的结构体数组包含类型、数值、属性等数据,但需要查找的数据可能只是类型)

步骤2、将判断矩阵中第二维度坐标相同的单元的值统计并储存在结果串对应位置中,方法是:如果结果串的单元r的逻辑序号为y,则将判断矩阵中第二维度坐标为y的单元的值统计并存储存在r中;所获得的结果串的数据及查找匹配的结果。

实施实例2、如图1的表格所示,需要查找数据为数组a[]={a,b,c},数组a有成员数n=3,被查找数据为数组b[]={e,f,a,b,c,a},数组b成员数m=6,判断矩阵c[][]具有两个维度,第一维度的方向为x轴方向,第二维度方向为y轴方向;第一步骤、c[x][y]中填入a[x],b[x+y]的对比值,如果a[x]等于b[x+y]则c[x][y]的值为1,如果a[x]不等于b[x+y]则c[x][y]的值为0;x+y的最大值小于或等于m-n;第二步骤、将判断矩阵的逻辑状统计到结果串数组k中,统计的方法是将第二维度坐标值相等的单元的值累积相乘并将结果填入到结果串数组k的第y个成员中,k[y]=g(c[0][y],c[1][y],c[2][y])=c[0][y]*c[1][y]*c[2][y];如果数组k中存在逻辑为真的单元,则代表数组b中包含有数组a的数据,数组k中逻辑为真的单元的逻辑序号即匹配的索引位置;图中的符号“!”为布尔运算中逻辑取反的意思,如果a[x]等于b[x+y]则a[x]-b[x+y]的逻辑结果为0,对零进行逻辑取反的结果为1,反之如果a[x]不等于b[x+y]则a[x]-b[x+y]的逻辑结果为1,对1进行逻辑取反获得结果为0。

实施实例3、对实施实例2进行逻辑颠倒,进行如下修改,第一步骤、c[x][y]中填入a[x],b[x+y]的对比值,如果a[x]等于b[x+y]则c[x][y]的值为0,如果a[x]不等于b[x+y]则c[x][y]的值为1;x+y的最大值小于或等于m-n,!!(a[x]-b[x+y]);第二步骤、将判断矩阵的逻辑状统计到结果串数组k中,统计的方法是将第二维度坐标值相等的单元的值累积相乘并将结果填入到结果串数组k的第y个成员中,k[y]=g(c[0][y],c[1][y],c[2][y])=c[0][y]||c[1][y]||c[2][y];如果数组k中存在逻辑为假(即零)的单元,则代表数组b中包含有数组a的数据,数组k中逻辑为假的单元的逻辑序号即匹配的索引位置。

实施实例4、为了阅读者的理解,本实施例列举了一个c语言实现数据查找的完整代码,该代码在微软公司的win10操作系统环境下使用dev-c++5.11编译运行结果正确无误。阅读者可以将本段代码拷贝并做出适应性修改进行运用。本代码体现了本发明的数据处理方法,是本发明的数据查找方法的具体表现。为了阅读者的理解,本代码没有进行效率优化,但并不影响本发明作为一种新思路而具备创造性。

实施实例6、为了阅读者的理解,本实施例列举了一个c语言实现数据查找的完整代码,该代码在微软公司的win10操作系统环境下使用dev-c++5.11编译运行结果正确无误。阅读者可以将本段代码拷贝并做出适应性修改进行运用。

实施实例6、为了阅读者的理解,本实施例列举了一个c语言实现数据查找的完整代码,该代码在微软公司的win10操作系统环境下使用vs2015+cuda8.0编译环境下编译运行,结果正确无误。阅读者可以将本段代码拷贝直接使用或者做出适应性修改后进行运用。

vs2015+cuda8.0支持中文万国码编码,本代码中部分地方采用了中文。

实施实例7、为了阅读者的理解,本实施例列举了一个c语言实现数据查找的完整代码,该代码在微软公司的win10操作系统环境下使用dev-c++5.11编译运行结果正确无误。阅读者可以将本段代码拷贝并做出适应性修改进行运用。本实施实例将本发明的步骤1和步骤2合并了,本例运用乘法运算实现对比结果的统计。

实施实例8、为了阅读者的理解,本实施例列举了一个c语言实现数据查找的完整代码,该代码在微软公司的win10操作系统环境下使用dev-c++5.11编译运行结果正确无误。阅读者可以将本段代码拷贝并做出适应性修改进行运用。本实施实例将本发明的步骤1和步骤2合并了,本例运用加法运算实现对比结果的统计。

实施实例9、为了阅读者的理解,本实施例列举了一个c语言实现数据查找的完整代码,该代码在微软公司的win10操作系统环境下使用dev-c++5.11编译运行结果正确无误。阅读者可以将本段代码拷贝并做出适应性修改进行运用。本实施实例将本发明的步骤1和步骤2合并了,本例利用减法运算实现对比结果的统计。

实施实例10、对实施实例2进行硬件化实现,采用逻辑门电路实现本发明的需查找数据列、被查找数据列、判断矩阵、结果串;并利用专门的逻辑门硬件进行运算和逻辑处理。

本发明的实现方法多种多样,不再赘述。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1