使用solr的函数查询,并获取tf*idf值

1. 使用函数df(field,keyword) 和idf(field,keyword).

http://118.85.207.11:11100/solr/mobile/select?q={!func}product%28idf%28title,%E9%97%AE%E9%A2%98%29,tf%28title,%E9%97%AE%E9%A2%98%29%29&fl=title,score,product%28idf%28title,%E9%97%AE%E9%A2%98%29,tf%28title,%E9%97%AE%E9%A2%98%29%29&wt=json

其中tf*idf的值和score的值是相同的.

也可以在solrj中实现:

public class AppTest
{
    @Test
    public void test1() throws SolrServerException{
        HttpSolrServer solrServer = new HttpSolrServer("http://118.85.207.11:11100/solr/mobile");
        String keyword = "问题";
        SolrQuery solrQuery  = new SolrQuery("q={!func}product(idf(title,$keyword),tf(title,$keyword)keyword="+keyword+")");
        solrQuery.addField("title,score");
        solrQuery.setRows(1);
        QueryResponse queryResponse = solrServer.query(solrQuery);
        System.out.println(queryResponse.toString());
    }
}

结果:

  {responseHeader={status=0,QTime=16,params={fl=title,score,q=q={!func}product(idf(title,$keyword),tf(title,$keyword)keyword=问题),wt=javabin,version=2,rows=1}},response={numFound=3,start=0,maxScore=0.078723446,docs=[SolrDocument{title=4G热点问题答疑—套餐篇, score=0.078723446}]},highlighting={10001={title=[4G热点<font color=‘#FF0000‘>问题</font>答疑—套餐篇],content=[4G热点<font color=‘#FF0000‘>问题</font>答疑—套餐篇]}}}

时间: 2024-10-14 00:43:30

使用solr的函数查询,并获取tf*idf值的相关文章

Solr的函数查询(FunctionQuery)

作用 通过函数查询让我们可以利用 numeric域的值或者与域相关的的某个特定的值的函数,来对文档进行评分. 如何使用 这里主要有两种方法可以使用函数查询,这两种方法都是通过solr http 接口的: 1.内嵌在正常的solr查询表达式中.即,将函数查询写在 q这个参数中,这时候,我们使用_val_将函数与其他的查询加以区别.至于具体怎样使用,请读者留意下面的例子. 2.使用明确为函数查询的参数,比如说dismax中的bf(boost function)这个参数.  注意:bf这个参数是可以接

Excel中使用vlookup函数查询序列所对应的值

以一个简单的例子做示范,列数相对较少,看起来也比较清楚:在奥运会或其他比赛上我们可以看到各个国家的奖牌数的变化:那么我们如何查询国家对应的总奖牌数. 我们用到的函数是vlookup,它是一个纵向查询函数,通过按列查找返回该列查询列序所对应的值: 可以直接在单元格H2这里输入=vlookup(此时Excel就会提示4个参数) =vlookup(G2,$A$2:$E$16,5,0) 也可以在空白栏处点击fx函数出来一个对话框如下: 第一个参数:要查找的值:显然,我们要让中国对应的是H2,这里就输入G

使用sklearn进行中文文本的tf idf计算

Created by yinhongyu at 2018-4-28 email: [email protected] 使用jieba和sklearn实现了tf idf的计算 import jieba import jieba.posseg as pseg from sklearn import feature_extraction from sklearn.feature_extraction.text import TfidfTransformer from sklearn.feature_e

Solr之functionQuery(函数查询)

Solr函数查询 让我们可以利用 numeric域的值 或者 与域相关的的某个特定的值的函数,来对文档进行评分. 怎样使用函数查询 这里主要有两种方法可以使用函数查询,这两种方法都是通过solr http 接口的. 内嵌在正常的solr查询表达式中.即,将函数查询写在 q这个参数中,这时候,我们使用_val_将函数与其他的查询加以区别.至于具体怎样使用,请读者留意下面的例子. 使用明确为函数查询的参数,比如说dismax中的bf(boost function)这个参数. 注意:bf这个参数是可以

『TensorFlow』函数查询列表_神经网络相关

神经网络(Neural Network) 激活函数(Activation Functions) 操作 描述 tf.nn.relu(features, name=None) 整流函数:max(features, 0) tf.nn.relu6(features, name=None) 以6为阈值的整流函数:min(max(features, 0), 6) tf.nn.elu(features, name=None) elu函数,exp(features) - 1 if < 0,否则featuresE

利用SQLServer查询分析器获取存储过程的返回值,检查测试存储过程

1.存储过程没有返回值的情况(即存储过程语句中没有return之类的语句)用方法 int count = ExecuteNonQuery(..)执行存储过程其返回值只有两种情况(1)如果通过查询分析器执行该存储过程,在显示栏中如果有影响的行数,则影响几行count就是几(2)如果通过查询分析器执行该存储过程,在显示栏中如果显示'命令已成功完成.'则count = -1;在显示栏中如果有查询结果,则count = -1总结:A.ExecuteNonQuery()该方法只返回影响的行数,如果没有影响

Solr与MySQL查询性能对比

测试数据量:10407608 Num Docs: 10407608 在项目中一个最常用的查询,查询某段时间内的数据,SQL查询获取数据,30s左右 SELECT * FROM `tf_hotspotdata_copy_test` WHERE collectTime BETWEEN '2014-12-06 00:00:00' AND '2014-12-10 21:31:55'; 对collectTime建立索引后,同样的查询,2s,快了很多. Solr索引 <!--Index Field for

SqlServer 递归与函数的结合获取部门集合

递归格式: WITH CTE名称(字段列表)          AS          (                 查询语句           ) 获取当前部门的所有下级部门语句: create function GetchildrenDepartments(@currentdepartid int) returns table as return with cte(id,mainid) as (select id,mainid from u_department where [ema

关于finfo_file函数获取文件mime值验证出错的问题

今天在做图片上传 验证图片mime值时 突然发现  个别特殊情况下finfo_file 获取的MIME值不能直接使用, 按照官方的写法是 $finfo=finfo_open(FILEINFO_MIME); $mime=finfo_file($finfo,$file_path); finfo_close($finfo); alert($mime); 这样子获得文件mime类型的 但是今天发现这样子不行,在文件传输中如果有charset设置传输类型为二进制流的话, 就会出现类似如下图那样: 可以明显