我想用Lucene来计算Precision和Recall.
我做了这些步骤:
制作了一些索引文件.为此,我使用.txt了此路径中存在的索引器代码和索引文件C:/inn(此文件夹中有4个文本文件),并通过C:/outt在索引器代码中设置索引路径将它们带入"outt"文件夹.
创建了一个名为包lia.benchmark和它里面的一类被称为"PrecisionRecall",并添加externaljars(右击- > Java构建路径- >添加外部罐)中,加入Lucene-benchmark-.3.2.0jar与Lucene-core-3.3.0jar
将topicsfile代码中的路径设置为to to to C:/lia2e/src/lia/benchmark/topics.txt,
qrelsfile将C:/lia2e/src/lia/benchmark/qrels.txtdir设置为"C:/ outt".
这是代码:
package lia.benchmark;
import java.io.File;
import java.io.PrintWriter;
import java.io.BufferedReader;
import java.io.FileReader;
import org.apache.lucene.search.*;
import org.apache.lucene.store.*;
import org.apache.lucene.benchmark.quality.*;
import org.apache.lucene.benchmark.quality.utils.*;
import org.apache.lucene.benchmark.quality.trec.*;
public class PrecisionRecall {
public static void main(String[] args) throws Throwable {
File topicsFile = new File("C:/lia2e/src/lia/benchmark/topics.txt");
File qrelsFile = new File("C:/lia2e/src/lia/benchmark/qrels.txt");
Directory dir = FSDirectory.open(new File("C:/outt")); …Run Code Online (Sandbox Code Playgroud)在我的桌子上,我有一些这样的柱子,(在另一个柱子旁边)
col1 | col2
s1 | 5
s1 | 5
s2 | 3
s2 | 3
s2 | 3
s3 | 5
s3 | 5
s4 | 7
Run Code Online (Sandbox Code Playgroud)
我想要所有col2 的平均值超过 Distinct col1。(5+3+5+7)/4=5
我有一张桌子没有任何钥匙(外键和......).某些表字段具有空值.当我使用命令时:
DELETE FROM `woe300websnt` WHERE (Arg1=NULL AND Rel=NULL AND Arg2=NULL);
Run Code Online (Sandbox Code Playgroud)
查询运行成功但我使用时
select * from woe300websnt
Run Code Online (Sandbox Code Playgroud)
我看到没有应用任何更改,这些行仍然存在.我是怎么了?
我需要为字符串定义一个模式,并在java eclipse环境中查找句子中的所有匹配项.这在我的代码中:
public static final String EXAMPLE_TEST = "MD_pos ";
public static final String REGEX ="(RB_pos)?(MD_pos|VB_pos|VBD_pos|VBP_pos|VBZ_pos|VBG_pos|VBN_pos) (RP_pos)? (RB_pos)? ";
public void PatMat() {
Pattern pattern = Pattern.compile(REGEX);
Matcher matcher = pattern.matcher(EXAMPLE_TEST);
int count = 0;
while(matcher.find()) {
count++;
System.out.println("found: " + count + " : "
+ matcher.start() + " - " + matcher.end());
System.out.println("found: " + matcher.group());
}
}
Run Code Online (Sandbox Code Playgroud)
带有?签到图案的零件是可选的,因此MD_pos应该匹配.但是每当我调用这个方法时,控制台都没有结果.
我很想设置这个简单的 Keras 模型的输入形状 :( X 和 Y 都是 numpy.narray 但我不知道它有什么问题!我尝试了不同的 X 形状,但错误在那里!数据集(维度、样本数量等)在代码中可用。X_train 的 .pkl 文件来自预训练模型的隐藏状态。
import pandas as pd
from sklearn.preprocessing import LabelEncoder
from keras.utils import np_utils
from keras import Input, Model
from keras.layers import Dense
import numpy as np
############################## X_Train ############################
X_Train_3embed1 = pd.read_pickle("XX_Train_3embeding.pkl")
X_Train_3embed = np.array(X_Train_3embed1)
print("X-Train")
print(X_Train_3embed.shape) # (230, 1, 128)
print(type(X_Train_3embed)) # <class 'numpy.ndarray'>
print(X_Train_3embed[0].shape) # (1, 128)
print(type(X_Train_3embed[0])) # <class 'numpy.ndarray'>
############################## Y_Train ############################
Y_Train_labels_list = pd.read_pickle("lis_Y_all_Train.pkl")
print(type(Y_Train_labels_list)) #<class 'numpy.ndarray'>
print(type(Y_Train_labels_list[0])) #<class 'str'>
encoder …Run Code Online (Sandbox Code Playgroud) 查找句子中"子串"的开始和结束位置的最佳方法是什么?
例如对于句子"This is my first program",通过给出子串"my first"它应该返回start position=2和end position=4.