ES向量查询

一、向量检索

1、向量的定义

  • 计算机只认识数字,它只能通过数字来量化这个世界,用一组数字来表示一个事物,这样的一组数字就是一个向量(Vector)
  • 如果一个向量由N个数字组成,它就是一个N维向量。拿目前广泛使用的人脸识别技术来说,计算机从照片或视频中提取出人脸的图像,然后将人脸图像转换为128维或者更高维度的向量。
  • 首先我们了解下什么是向量,所谓向量就是由N个数字(二值向量由N个比特组成)组成的数组,我们称之为N维向量。
  • 而向量检索就是在一个给定向量数据集中,按照某种度量方式,检索出与查询向量相近的K个向量(K-Nearest Neighbor,KNN),但由于KNN计算量过大,我们通常只关注近似近邻(Approximate Nearest Neighbor,ANN)问题。

2、常见的向量度量

  • 欧氏距离、余弦、曼哈顿距离、点积
  • 欧几里得度量(euclidean metric)(也称欧氏距离) 是一个通常采用的距离定义,指在m维空间中两个点之间的真实距离,或者向量的自然长度(即该点到原点的距离)。在二维和三维空间中的欧氏距离就是两点之间的实际距离。

  • 余弦距离:也称为余弦相似度。一个向量空间中两个向量夹角间的余弦值作为衡量两个个体之间差异的大小,余弦值接近1,夹角趋于0,表明两个向量越相似,余弦值接近于0,夹角趋于90度,表明两个向量越不相似。

  • 曼哈顿距离也称出租车几何,是由十九世纪的赫尔曼·闵可夫斯基所创词汇,是种使用在几何度量空间的几何学用语,用以标明两个点在标准坐标系上的绝对轴距总和。

图中红线代表曼哈顿距离,绿色代表欧氏距离,也就是直线距离,而蓝色和黄色代表等价的曼哈顿距离。

曼哈顿距离——两点在南北方向上的距离加上在东西方向上的距离

  • 点积 在数学中,又称数量积(dot product; scalar product),是指接受在实数R上的两个向量并返回一个实数值标量的二元运算。它是欧几里得空间的标准内积。

两个向量a = [a1, a2,…, an]和b = [b1, b2,…, bn]的点积 定义为:a·b=a1b1+a2b2+……+anbn。

3、向量检索的方法

  • 向量检索有两类方法 :
    • 存在最近邻检索(Nearest Neighbor Search,NN)
    • 近似最近邻检索(Approximate Nearest Neighbor Search, ANN)
  • NN 主要是说对结果进行穷举 ,计算结果也是最为精确。
  • ANN 主要是对结果的一个近似值估计,ANN则是在可接受的精度条件下通过把向量分簇建立索引,大幅提高搜索效率,这也大规模向量检索场景下所使用的主要方法。
  • 为什么是近似,而不是我们想要的精确?这就是精度与时间、算力资源的折中,采用了牺牲精度换取时间和空间的方式,从海量的样本中实时获取跟查询最相似的样本。

二、向量的生成

  • 向量可以表示一个事物,一段文字,一张图片,那向量怎么生成呢?

  • 可以使用在HuggingFace中的sentence-transformers的预训练模型来生成我们的向量

    查看地址模型介绍:https://www.sbert.net/docs/pretrained_models.html
    或者访问HuggingFace模型中心

  • 大部分深度学习框架都是PyTorch和TensorFlow,使用的基本都是python

  • 如何通过使用Java调用这些模型呢?可以使用DJL

  • Deep Java Library (DJL) 是一个用于深度学习的开源、高级、与引擎无关的 Java 框架。

1、转换并导出模型

  • 将模型转换为 TorchScript

①、首先安装:sentence-transformers

  • 需要安装python环境
    pip install -U sentence-transformers

②、使用模型的python代码例子

from sentence_transformers import SentenceTransformer
sentences = ["This is an example sentence", "Each sentence is converted"]

model = SentenceTransformer('sentence-transformers/all-mpnet-base-v2')
embeddings = model.encode(sentences)
print(embeddings)

③、导出为TorchScript模型

  • 为什么要使用TorchScript对模型进行转换?
  • TorchScript代码可以在它自己的解释器中调用,它本质上是一个受限的Python解释器。这个解释器不获取全局解释器锁,因此可以在同一个实例上同时处理多个请求。
  • 这种格式允许我们将整个模型保存到磁盘上,并将其加载到另一个环境中,比如用Python以外的语言编写的服务器中
  • TorchScript提供了一种表示方式,我们可以在其中对代码进行编译器优化,以提供更有效的执行
  • TorchScript允许我们与许多后端/设备运行时进行交互
  • trace方法首先使用输入数据执行一遍模型,并记录下模型执行过程中的参数,并创建一个torch.jit.ScriptModule实例
  • 指定导出设备为CPU执行、批次1、最大分段长度128
from sentence_transformers import SentenceTransformer
import torch

# model = SentenceTransformer('stsb-distilbert-base', device='cpu')
model = SentenceTransformer('sentence-transformers/all-mpnet-base-v2', device='cpu')
model.eval()
batch_size=1
max_seq_length=128
device = torch.device("cpu")
model.to(device)
input_ids = torch.zeros(batch_size, max_seq_length, dtype=torch.long).to(device)
input_type_ids = torch.zeros(batch_size, max_seq_length, dtype=torch.long).to(device)
input_mask = torch.zeros(batch_size, max_seq_length, dtype=torch.long).to(device)
# input_features = (input_ids, input_type_ids, input_mask)
input_features = {'input_ids': input_ids, 'attention_mask': input_mask}

# traced_model = torch.jit.trace(model, example_inputs=input_features)
traced_model = torch.jit.trace(model,example_inputs=input_features,strict=False)
# 保存位置,还需要找到模型文件下的 vocab.txt
traced_model.save("D:/models/all-mpnet-base-v2.pt")

2、代码调用

三、Elasticsearch向量检索

1、创建索引

  • 使用dense_vector类型
PUT vector_test
{
"settings": {
"index": {
"number_of_shards": 3,
"number_of_replicas": 0
}
},
"mappings": {
"properties": {
"text": {
"type": "text",
"analyzer": "ik_max_word",
"search_analyzer": "ik_smart",
"fields": {
"keyword": {
"type": "keyword"
}
}
},
"text_vector": {
"type": "dense_vector",
"dims": 768
}
}
}
}

2、添加测试数据

  • 添加数据
PUT vector_test/_doc/1
{
"text" : "你是一个好人",
"text_vector" : [-0.012505854, 0.06147224, -0.0067574065, 0.025252825, 0.014709864, 0.033223037, -0.017184058, -0.0051696957, -0.035197385, 0.026809592, 0.027802333, 0.0017389302, -0.035867143, 0.08371559, 0.001929885, -0.00361458, -0.00790528, 0.007553991, -0.04324307, -0.02613851, -0.021153033, 0.01321285, -0.0055257166, -0.031233996, 0.0057854257, -0.05406903, 0.04010051, -0.007975791, 0.017508717, -0.041565668, 0.017980184, -1.2280754E-4, -0.0013545807, -0.03489499, 3.9524753E-6, -0.0013673576, 0.0066923774, 0.03573856, -0.04826888, 0.04836444, 0.007832441, 0.03425717, -0.017280841, -0.03295188, 0.023084749, 0.01604493, 0.011758922, -0.026320491, -0.04445929, 0.028686358, 0.00845232, -0.0430134, -0.12548839, -0.05049735, 0.05833067, 0.0288667, -0.0032852066, -0.009654961, 0.016982516, -0.0030822305, -0.0073693004, -0.030570433, -0.01663565, 0.049951658, 9.3295967E-4, 0.032069236, 0.033799138, -0.035447292, 0.022693088, -0.013528679, -0.013003488, -0.022620179, -0.027964601, 0.12342365, -0.031526618, -0.015668027, -0.03361883, 0.03753069, 0.029121695, -0.0074943276, -0.02216617, -0.010202485, 0.03770157, 0.017450918, -0.070545085, 0.041509267, -0.03993419, -5.662474E-5, -0.018616673, 0.0037204954, 0.0042463783, -0.06394287, -0.020681422, -0.009565846, 0.03294697, 0.0017930836, -0.02396136, -0.029505575, 0.019975543, -0.006016828, -0.05468337, 0.02398109, -0.006946013, 0.0069326125, -0.050539847, 0.0061268453, 0.020605352, -0.023599977, 0.027339987, 0.07509858, -0.042036332, 0.03168564, 0.023419036, 0.021137541, -0.0035736216, -0.015688013, -0.017046712, 0.043178722, 0.022865435, 0.0080238525, 0.092107825, 0.05981639, -0.006804504, -0.03161816, 0.0270866, 0.006111659, 0.010318148, -0.03923, -0.055287804, 0.0036645613, -0.022025242, 0.02340399, 0.0033243995, -0.0053636613, 0.030040259, -0.011936752, 0.010141162, -0.022458613, 0.03983138, -0.0014371767, -0.020213308, 0.027583351, 0.0027297717, -0.005357834, -0.02409058, 0.010241934, 0.090006314, -0.035087414, 0.00653623, 0.0039346516, 0.010250705, 0.050382856, -0.017161509, 0.0510087, 0.042621862, 0.03852051, -0.067141876, -0.019240148, 0.0026372338, 0.028185826, 0.05324459, 0.0022941523, -0.035028506, -0.015599167, -0.028435806, -0.0377882, 0.03562174, 0.0018862897, -0.0039061485, -0.06412545, 0.0010350816, -0.0087632425, 0.008577654, 0.012741296, 0.023999304, 0.025778512, -0.10294877, -0.027144121, -0.0058766077, -0.06442985, -0.032297857, -0.06633747, -0.0086341705, -0.0066604386, 0.048547257, 0.017669922, 0.0095065, 0.015545884, 0.0013499043, 0.05949494, 0.055600356, -0.042850595, 0.030414412, 0.035267334, -0.019230738, -0.06648767, 0.005003243, -0.03441964, -0.019969247, -0.019210108, 0.03602104, -0.06424204, -0.026293077, -0.04298499, -0.012769627, 0.0018947484, 0.021175286, -0.052582107, -0.023451183, -0.015615097, -0.064428896, 0.02585893, 0.022697253, 0.017226717, -0.030952323, -0.039098963, 0.04379272, -0.013877491, -0.049149875, 0.0774724, 0.026301159, 0.050520763, 0.011468258, 0.02022638, 0.06777097, 0.029125728, -0.0023182877, 0.011963849, 0.042853955, -0.030143002, -0.028947085, 0.053452827, 0.058101688, -0.04697138, -0.050331306, 0.03690062, 0.062990144, -0.010179526, 0.043333348, -0.100340046, -0.040861085, 0.059042346, 0.015464096, 0.018711371, 0.111341216, -8.3441264E-4, -0.004530031, 0.006856246, -0.015820755, 0.009357037, -0.027195353, 0.01678015, -0.022458278, 0.02926691, 0.036279358, 0.07195243, -0.012337138, -0.009632895, -0.019338757, -1.09720595E-5, 0.012300873, 0.04435552, -0.023237402, -0.05616277, 0.0240922, 0.036906064, -0.017152641, -0.026374659, -0.040514916, -0.0056392485, 0.05129517, 0.028157331, 0.034693655, -0.010055021, 0.037343204, -0.015862973, -0.023454988, -0.004275543, -0.048241034, -0.020899124, -0.027822293, 0.089256965, 0.010648741, -0.004147703, 0.027146544, -0.0053803716, -0.019663313, -0.028382884, -0.055638853, -0.025330327, -0.028426137, -0.026666772, 0.071450576, -0.051179703, 0.05322181, 0.003881786, -0.035428137, 0.006871749, 0.022797529, -0.009136533, -0.051556863, 0.06774118, -0.008329566, -0.026973749, -0.016143592, -0.029515121, -0.019877851, 0.008610793, 0.06042954, -0.023035929, 0.004455642, 0.0255108, 0.008197381, 0.03397594, -0.06143347, -0.046329204, -0.03193, -0.06772362, 0.008335626, -0.0062010437, 0.052905224, -0.036074646, -0.014172472, 0.009480537, 0.010074608, 0.08615532, -0.057823773, -0.02569674, 0.0011091571, -0.014469492, 0.003692755, -0.00180485, -0.020816932, -0.029465076, 0.019561762, -0.035990085, 0.010145427, 0.0075150393, 0.036904298, 0.016324293, 0.030511009, -0.04671149, -0.02251021, -0.103131235, -0.031056376, -0.0151869245, -0.020397903, 0.0013616608, -0.06311841, 0.011365675, -0.03667886, -0.030479968, 0.026767144, 0.008654333, 0.034051906, 0.0055492814, -0.033325706, -0.010394677, -0.04182928, -0.040240984, -0.054245364, 0.012879458, 0.06612671, 0.059664443, -0.025509264, 5.9313833E-4, 0.029463183, 0.005490717, -0.009813763, -0.06596544, -0.027723474, 0.020579752, 0.033905815, 0.07558331, 0.013703343, 0.011566349, 0.077872336, 0.011674445, 0.066398405, -0.024423152, -0.01660125, -0.06957541, -0.088175565, -0.013689627, 0.011793456, 0.036941543, 0.015599193, 0.02968292, -0.04144736, 0.022022178, 0.063752055, 0.016542379, -0.016617775, 0.045222204, 0.016872643, -0.05769019, -0.010147114, 0.03114703, 0.0051837205, 0.055146314, 0.02853815, 0.036281273, -0.016086787, 0.012725542, -0.014290429, -0.037641004, 0.044304557, 3.62814E-4, 0.029461324, -0.06055084, -0.05310168, -0.020571979, 0.029543608, 0.015433996, 0.0033671295, -0.018463276, -0.05632213, 0.041322347, 0.03857234, -0.044536218, 0.017263962, -0.01552795, 0.09605645, 0.008688397, -0.041638713, -7.460972E-5, 0.01599738, 0.05843698, 0.0508531, -0.044521865, -0.040530432, 0.039355725, -0.031610724, 0.009913072, -0.030967807, -0.09124379, 0.032799624, 0.05857894, -0.011123611, -0.03524198, -0.02404115, -0.03185005, 0.032866925, -0.034415253, -0.028242845, -0.007635998, -0.018282294, 0.023517247, 0.025484852, -0.051364344, -0.0017907086, -0.041250806, 0.016433058, -0.07226839, 0.034877867, -0.027846958, 0.04421044, -0.029414197, -0.005111358, -0.042056244, 0.047466226, -0.01782071, 0.049537525, 0.056073792, 0.018851044, 0.045955822, 0.04292147, -0.05415365, 0.01144231, -0.054429833, -0.03272419, -0.015372414, -0.02621323, 0.0214265, 0.04106312, -9.740529E-4, -0.05273616, -0.044687234, -0.061119366, 0.020349767, 0.03428493, -0.016279843, -0.016226638, -0.034148663, 0.015322524, 0.027373414, 0.024346756, -0.0031301596, -0.004702841, 0.014334275, -0.010540824, -0.0013895943, 0.0032654635, -0.026203556, 2.5946766E-4, 0.046088476, -0.02253931, -0.049956378, 0.0016936477, -0.016688636, 0.01257619, 0.014531191, 0.07264041, -0.0016916422, 0.011830216, -0.05760921, -0.027429108, 0.010079213, -0.037514653, 0.0148782395, 0.016009051, -0.011714079, 0.023386784, -0.08414525, 0.010772063, 0.054867916, 0.03390206, -0.067308456, 0.024955824, -0.0065232567, 0.059096325, 3.8397656E-4, 0.0017244497, 0.05745784, 0.019498682, 0.06431358, 0.008503143, -0.029383926, -0.05435278, 0.0029664906, -0.012685078, -0.0055286386, 0.08989173, -0.0054096836, -0.05002699, 0.10742954, -0.015800381, -0.016217759, -0.0070680636, 0.018921603, -0.06770832, -0.01903497, 0.007963758, -0.009616666, 0.04473252, -0.011077201, -0.0020928096, -0.051992845, -0.026985755, -0.04610937, 0.039185517, 0.05945134, -0.027102053, 0.0061615603, -0.0768129, -1.7295704E-32, 0.035317, 0.0219929, -0.01790403, -0.027079498, -0.026575312, -0.055016436, 0.04162931, -0.027480282, 0.04364564, -2.0629673E-4, -0.034147326, -0.061749768, 0.0886111, 0.030985324, -0.003071205, -0.06550483, 0.03790275, -0.0056091533, 0.03268208, -0.0052961344, -0.050385714, -0.02493322, -0.012485181, -0.010890675, -0.0193166, 0.016982986, -0.050390452, -0.058259174, 0.039912853, -0.0048905304, -0.03959887, 0.032292433, 0.0086986935, 0.041798912, 0.02420321, 0.0017432563, 0.043273624, -0.011582973, 0.0026177447, -0.028080417, -0.08539406, 0.022111084, 0.015072255, -0.09684252, -0.005454781, 0.01978267, 0.023920622, 0.0058161933, 0.03470632, -0.004187661, -0.028828895, 0.015490826, -0.017417595, 0.040624265, -0.002125864, 0.018177766, 0.004613023, 0.023367357, 0.0361941, 0.0080737, 0.017960636, 0.013591572, 0.059291393, 0.06145877, -0.0019097899, 0.036604486, -0.016236227, 0.055379704, 0.025022436, -0.013153723, -0.031179832, 0.04997251, -0.0028860106, -0.024477055, -0.01700109, -0.05874153, -0.024895621, 0.026405387, 0.068785004, -0.01788662, -0.03627912, 0.045744203, 0.042671025, 0.0018450335, 0.001834208, -0.06310543, 0.001979173, -0.023845715, -0.0018861454, 0.04186343, -0.05269792, 0.045228235, -0.060798503, -0.028638572, -0.0228071, -0.070954636, 0.0078078024, -0.041703627, 0.0025806723, -0.014570363, -0.0039354116, -0.034452397, 0.002529964, 0.043591492, -0.014511649, 0.013183844, 0.011353356, 9.751483E-4, -0.015498388, -0.0030334396, -0.022776796, 0.00446422, 0.03147401, -0.023508854, 0.028402278, 0.012927605, 0.030423557, -0.06872545, 9.792577E-4, 0.0056752623, 0.0958454, -0.0020520398, 0.0075088274, 0.039462253, -0.037520554, 0.017715598, 0.0028989988, -0.026699575, 0.011080348, -0.07706165, 0.022399683, -0.032965884, 4.5342185E-7, -0.044260148, -0.04811291, 0.018212777, -0.0038508293, 0.028676698, 0.01431396, -0.005058972, 0.03720743, -0.0015348713, -0.039004844, 0.02639723, -0.063463606, 0.024510205, -0.0070474367, -0.013666664, 0.031803716, -0.024600165, -0.032639313, -7.961371E-4, -0.03440909, 0.09303336, 0.022659928, 0.032243475, 0.044743482, -0.0074496665, -0.05655795, 0.014978297, -0.03521938, -0.023144424, -0.010839281, -0.076098755, 0.028191978, -0.045076158, -0.033995856, -0.014625676, 0.02008576, 0.03164706, 1.3723833E-4, 0.016604789, -0.020803023, -0.0733839, -0.06853161, -0.024279924, -0.018286688, 0.024374323, -0.029345883, 0.0034723277, 0.0040782033, -0.02832936, 0.013157311, -0.021874687, 0.0053453976, -0.005933344, 0.024842756, -0.016247336, -0.046917956, 0.009863487, -0.004510552, -0.019274969, -0.016453179, -0.02380178, 0.029494025, -0.031934112, 0.020972388, -0.0029798383, -0.045054633, -0.017571395, -1.2807555E-34, 0.056822862, 0.018111244, -0.019010654, 0.004600001, -0.036646195, -0.02234512, 0.017520165, -0.009043565, -0.0019575048, -0.050363533, -0.019037234]

}

3、 脚本分数查询

  • 相似度查询
// 向量使用的是:今天天气不错
//公式1: 1 / (1 + l2norm(params.queryVector, 'text_vector'))
//公式2: 1 / (1 + l1norm(params.queryVector, 'text_vector'))
//公式3: double value = dotProduct(params.queryVector,'text_vector');return sigmoid(1, Math.E, -value);
//公式4: cosineSimilarity(params.queryVector, 'text_vector') + 1.0


POST vector_test/_search
{
"_source":{
"includes":["text"]
},
"min_score":"1.45",
"query": {
"script_score": {
"query" : {
"match_all": {}
},
"script": {
"source": "double value = dotProduct(params.queryVector, 'text_vector');return sigmoid(1, Math.E, -value);",
"params": {
"queryVector": [0.012180052, -0.035749264, 0.028726313, 0.07741992, 0.07618319, 0.03632554, -0.032679413, 0.008679836, 0.010796744, -0.0019097894, -0.038197577, 0.08862243, 0.00534406, 0.018697966, -0.062172916, -0.020433698, -0.020399865, 0.07238936, -0.007107044, -0.01198608, -0.010562083, -0.02283883, -0.019021884, 0.06342994, 0.026685713, -0.025934406, -0.039257795, 0.012371695, -0.011688991, -0.026081014, -0.065597735, 0.053438343, -0.028596632, -0.15381034, -0.02709136, -0.083783306, -0.021032596, 0.014292716, -0.022718986, 0.07942374, -0.048416447, 0.033912044, 0.010580469, -0.004320236, -0.014759818, 0.0125834765, 0.037446205, 0.015093978, 0.009011443, 0.012786734, -0.03191145, -0.0041232645, -0.022926472, -0.044445902, 0.010174482, -0.022331368, -0.013825135, -0.04677142, -0.007983386, -1.1289655E-4, 6.232522E-4, -0.0073136776, -0.047892943, -0.016695375, 0.004697273, 0.02884165, -0.010049979, -0.021391468, -0.015952744, 0.015066106, 0.038178846, 0.017233396, 0.034392256, 0.0011104626, 0.011157879, -0.011426429, -0.02386704, -0.0037315986, -0.023951532, -0.040905442, 0.061722003, -0.09844558, -0.023778837, -0.025130626, 0.010026219, 0.090813845, 0.02116601, 0.030656965, -0.051983073, -0.046070114, -0.013155748, 0.025508625, 0.062288605, 0.0024993517, -0.029925758, 0.08035762, -0.021303015, -0.01593142, -0.08512837, -0.0071579553, 0.0067918263, -0.021745214, -0.05515468, -0.070750885, 0.034810245, -0.08569365, 0.021458823, -0.017061787, 0.0026869043, 0.030018022, -0.041494858, 0.09564145, 0.0017981793, 0.0158431, 0.07715243, -0.023778513, 0.0426596, 0.04772864, 0.17061941, 0.037555538, -0.0018540444, 0.005351006, 0.02371963, 0.020617967, -0.06761714, 0.048594203, -0.013896715, -0.015313695, 0.0053959116, -0.019819288, 0.0077850046, -0.00752286, 0.03487459, 0.05093316, -0.012938046, -0.019690173, -0.0016301284, -0.057390906, -0.024133995, 0.025157755, -0.0028830157, -0.018437425, 0.024095569, -0.009438414, -0.08874059, -0.005173016, -0.065511614, 0.057566475, -0.020237643, -0.0041861776, -0.018955257, -0.039282065, -0.0013770495, -0.043112427, 0.05317557, 0.060080312, -0.044718403, 0.07168413, 0.035226155, 0.020365102, 0.041678067, 0.16186184, -0.007941735, 0.05319947, -0.016731527, 0.02331473, 0.011195926, -0.08663159, -0.025290083, -0.0037673104, -0.109234005, 0.14701073, -0.09029996, 0.035318837, 0.0047066077, 0.020087335, -0.02241932, -0.029502394, 0.024866907, 0.013387565, -0.010215959, 0.039151758, -0.017890649, 0.032414656, -0.0026917201, 0.02742293, -0.037203185, 0.029606108, 0.026543185, -0.038486738, -0.034082644, 0.018328678, 0.010387662, -0.017738141, -0.02813968, -0.0062098643, -0.021350194, 0.009390433, 0.019586427, 7.196608E-4, -0.002126615, -0.07509526, 0.019139549, -0.07706402, 0.014352148, -0.007941991, 0.001187094, 0.023037983, 0.039248127, 0.0044647, -0.019044168, -0.031702917, 0.014304962, -0.043643914, 0.028015547, 0.014476172, -0.0140340645, 0.03881786, 0.013956274, -0.0060902843, 0.03224034, 0.020009317, -0.054327503, 3.1390623E-4, -0.007521768, 0.07434456, -0.026895037, 0.0074033877, -0.017457958, 0.035889063, -0.006310429, 0.016894849, 0.018498972, -0.17547764, 0.025896212, 0.05847995, 0.027605882, 0.026951058, 0.108890675, 0.054185085, 0.041628905, -0.08013876, -0.00881632, 0.010635092, 0.0021265517, 0.02421204, -0.008131912, 0.017787877, 0.0037791964, 0.07604542, -0.011710854, -0.05541998, 0.037059188, -0.029180674, -0.009971812, -0.05023198, 0.03185823, 0.0042317584, 0.009935685, -9.914517E-4, -0.016759787, -0.01822887, -0.022956256, 0.05123107, 0.030935027, 0.001766718, -0.0017011124, -0.009909989, -0.0069078826, -0.03376478, -0.0053532426, -0.039759737, -0.050867483, 0.015165593, -0.011836869, 0.026792185, -0.023747869, 0.010067161, -0.017702028, -0.004723526, 0.00300006, 0.0016986935, 0.038826488, -0.033063017, -0.01677645, -0.032374114, 0.05408412, 0.022496011, -0.021329155, 0.056598924, 0.016690996, 0.0068791145, 0.09522898, -0.043186683, 0.040847424, -0.011698286, 0.0135710025, -0.035192512, 0.036276057, 0.013632161, -0.0073640253, 0.034589622, -0.0010686518, -0.052932758, -0.038841534, 0.010487382, 0.019552423, 0.043749604, 0.023301532, 0.049772337, 0.0035389883, 0.037149318, -0.02884169, 0.10656746, 0.010259339, 0.010951093, 0.00436831, -0.004981387, -0.0036905985, 0.025460914, -0.04280052, -0.020674769, 0.012859347, -0.036366872, -0.001395519, 0.012532833, -0.035698198, 0.039046146, 0.009063786, -0.061672088, -0.041516546, 0.10154377, -0.038796037, -0.06833652, -0.047975738, -0.028164193, -0.032864887, -0.012679307, 0.0626986, -0.0012406608, 0.020456884, -0.062185243, 0.011227085, -0.0037145878, 0.02469058, 0.014030718, 3.1149993E-4, 0.046243083, 0.005926181, 0.0013831255, 6.042434E-4, 0.03886239, 0.014452023, -0.0075967573, -0.060689192, 3.739034E-4, -0.01953238, 0.004154923, -5.5117934E-4, -3.9158596E-4, -0.0025693835, 0.024300324, -0.015288723, 0.034946747, 0.03161286, 0.03977112, 0.002458337, 0.012037479, -0.0043486874, 0.022048473, -0.029447526, 0.06267555, 0.003721683, -0.009302285, -0.008346288, -0.009577012, -0.056524895, -0.07812324, -0.032444503, 0.032762017, -0.04687511, -0.029303363, -0.010462125, 0.039505556, 0.07359841, 0.024376001, -0.0069653434, 0.04368373, 0.021885287, 0.0027853583, 0.025914587, 0.017866002, -0.045154694, -0.043425806, -0.031375147, -0.0016954301, -0.05397924, -7.3173956E-4, -0.030575963, 0.028093044, 0.012965086, -0.025183583, 0.02098049, 0.034593325, 0.03932597, 0.033634048, 0.0066029956, 0.014215493, -0.021505551, 0.009805857, 0.024105322, -0.014140352, -0.044044096, -0.03188026, 0.009873442, 0.037475552, 0.048770875, -0.040513124, -0.019519703, -0.011500647, -0.006415138, 0.0053910064, 0.060585946, -0.021809272, -0.018201474, -0.010937814, -0.013718217, -0.0098273, 0.014209563, 0.046512794, 0.039359875, 0.013178235, 0.09829644, -0.017505629, -0.02489381, -2.3858843E-4, -0.020584479, -0.04027231, -0.011223206, -0.05104645, -0.037288275, 0.041676395, 0.022464395, 0.053146843, 0.03199663, -0.035019115, 0.022478977, 0.013013626, -0.008785934, 0.019700278, 0.008832397, 0.050076284, -0.048255526, 0.060217008, -0.061237134, 0.012971778, 0.034852937, -0.013775348, 0.0625222, 0.014649475, 0.02334319, 0.094726816, 0.10769309, 0.013569286, 0.027372217, -0.03523267, -4.7623852E-4, 0.019275036, -0.0022663868, -0.008160418, 0.009928951, -0.005347177, -0.044416487, 0.006646296, 0.016597273, 0.028997697, -0.053415935, -0.020151006, 0.03897491, -0.010869943, 0.042187016, -0.036412258, 0.018086394, -0.014274242, -0.07227256, 0.0010064453, -0.024512593, 0.052229125, 0.009150336, 0.028474018, 0.030175298, -0.024292236, -0.011538669, 0.060554747, -0.052448735, -0.006761913, 0.0042523365, -0.07272278, -0.009903328, -0.09878354, 0.0026040864, -0.008681447, 0.026760314, -0.007293892, -0.0049932534, 0.025040645, -0.009999375, 0.009470686, -0.0025464199, -0.062322162, 0.020844592, -0.048238114]
}
}
}
}
}
-------------本文结束 感谢您的阅读-------------