clusters

Envoy动态更新配置方案设计

ぃ、小莉子 提交于 2020-03-01 03:12:24
1. 背景 目前集成了技术中台SideCar镜像部署的产品,并且产品在API集市管理,产品提供者通过在API集市中动态修改Envoy配置,无法实现动态更新,目前是重启容器的方式从API集市拉取最新Envoy配置。 2. 目标 在线修改指定产品的Envoy配置文件,在不重启SideCar容器的情况下动态更新到指定容器的Envoy配置并且Envoy功能正常。 3. XDS介绍 3.1. 客户端配置 在Envoy中主要是两个方面的配置,一个是Listeners资源,一个是Clusters资源。这两个资源怎么连接ADS服务,那就需要通过xDS协议进行 客户端与管理服务器的通信。 3.2. XDS协议 下面是阅读 xds_protocol 做的摘要,如有冲突已原文为准。 每个xDS流都开始于 DiscoveryRequest ,请求指定订阅的资源列表,资源对应类型URL,节点标识ID和版本信息。 Envoy动态更新配置时序图如下图: API Market Management Server Envoy Client update envoy config (V=, R={foo}, N=, T=EDS) (V=X, R={foo:...}, N=A, T=EDS) (V=X, R={foo}, N=A, T=EDS) API Market Management Server Envoy

Ambari 常用的 REST API 介绍

最后都变了- 提交于 2019-12-07 06:41:26
Ambari 借鉴了很多成熟分布式软件的 API 设计。 Rest API 就是一个很好地体现。通过 Ambari 的 Rest API,可以在脚本中通过 curl 维护整个集群。 并且,我们可以用 Rest API 实现一些无法在 Ambari GUI 上面做的操作。下面是一些实例。 查询关于集群信息 [root @hadron ~] # curl -u admin:admin http://192.168.1.25:8080/api/v1/clusters { "href" : "http://192.168.1.25:8080/api/v1/clusters" , "items" : [ { "href" : "http://192.168.1.25:8080/api/v1/clusters/cc" , "Clusters" : { "cluster_name" : "cc" , "version" : "HDP-2.5" } } ] } 等同于 [root@hadron ~] #curl -H "X-Requested-By: ambari" -X GET -u admin:admin http: //192.168.1.25:8080/api/v1/clusters { "href" : "http://192.168.1.25:8080/api/v1/clusters"

[NLP] Adaptive Softmax

扶醉桌前 提交于 2019-12-05 07:26:48
1. Overview Adaptive softmax 算法在链接1中的论文中提出,该算法目的是为了提高softmax函数的运算效率,适用于一些具有非常大词汇量的神经网络。 在NLP的大部分任务中,都会用到softmax,但是对于词汇量非常大的任务,每次进行完全的softmax会有非常大的计算量,很耗时(每次预测一个token都需要O(|V|)的时间复杂度)。 所以paper中提出adaptive softmax来提升softmax的运算效率。 1) 该算法的提出利用到了 单词分布不均衡的特点 (unbalanced word distribution)来形成 clusters , 这样在计算softmax时可以避免对词汇量大小的线性依赖关系,降低计算时间; 2) 另外通过结合 现代架构和矩阵乘积操作的特点 ,通过使其更适合GPU单元的方式进一步加速计算。 2. Introduction 2.1 一般降低softmax计算复杂度的两种方式 1) 考虑原始分布:近似原始概率分布或近似原始概率分布的子集 2) 构造近似模型,但是产生准确的概率分布。比如:hierarchical softmax. (上述两个方法可以大致区分为:一是准确的模型产生近似概率分布,二是用近似模型产生准确的概率分布) 2.2 本文贡献点 paper中主要采用的上述(2)的方式

Tableau 分群

左心房为你撑大大i 提交于 2019-12-04 11:22:51
对数据的特征进行分析,分群。 数据选用的是Iris data 下载地址:http://archive.ics.uci.edu/ml/machine-learning-databases/iris/ 1.下载后的数据文件是.data格式,直接选择用Tableau导入,选择Text file,文件类型选所有类型将Iris.data添加进去 2.修改列名 3.分析的时候将工具栏->Analysis->Aggregate Measures关闭。 4.根据花萼宽和花萼长标记出每个点,再加上种类进行分类。如下图所示 5.根据花萼宽和花萼长进行分群,左侧Analytics->Cluster进行分群。Marks中选择Clusters,右击->Edit Clusters->Number of Clusters 选3个 因为3个种类。 将Clusters移到Dimensions作为一个维度,对该唯独Edit Group将三个群名字改为3个种类的名字。 创建一个判断分群的维度,计算公式如下。分群与类别相同时,则为真,否则为假。 6.通过判断分群的维度,给出直方图,测度选择Number of Records。 7.最后通过DashBoard给出详细的视觉化对比图。 通过添加Actoins 给出高亮效果,看出哪几个是分群错误的。分类和分群前面需要加上分群判断的Mark才可以联动。 最后可以看出

文本聚类算法Java实现

ぃ、小莉子 提交于 2019-12-04 01:29:37
蛙蛙推荐:蛙蛙教你文本聚类 摘要:文本聚类是搜索引擎和语义web的基本技术,这次本蛙和大家一起学习一下简单的文本聚类算法,可能不能直接用于实际应用中,但对于想学搜索技术的初学者还是有一定入门作用的。这里会用到TF/IDF权重,用余弦夹角计算文本相似度,用方差计算两个数据间欧式距离,用k-means进行数据聚类等数学和统计知识。关于这些概念可以去google,或者参考文本后的参考链接。 思路:计算两篇文档的相似度,最简单的做法就是用提取文档的TF/IDF权重,然后用余弦定理计算两个多维向量的距离。能计算两个文本间的距离后,用标准的k-means算法就可以实现文本聚类了。 测试:首先我们准备以下数据 =================== 奥运 拳击 入场券 基本 分罄 邹市明 夺冠 对手 浮出 水面 股民 要 清楚 自己 的 目的 印花税 之 股民 四季 杭州 股民 放 鞭炮 庆祝 印花税 下调 残疾 女 青年 入围 奥运 游泳 比赛 创 奥运 历史 两 项 第一 介绍 一 个 ASP.net MVC 系列 教程 在 asp.net 中 实现 观察者 模式 ,或 有 更 好 的 方法 (续) 输 大钱 的 股民 给 我们 启迪 Asp.Net 页面 执行 流程 分析 运动员 行李 将 “后 上 先 下” 奥运 相关 人员 行李 实名制 asp.net 控件 开发 显示 控件 内容

Pandas DataFrame column values in to list

匿名 (未验证) 提交于 2019-12-03 01:00:01
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 问题: I have a pandas DataFrame like following clusters 0 [4] 1 [9, 14, 16, 19] 2 [6, 7, 10, 17, 18, 20] 3 [1, 2, 3, 5, 8, 11, 12, 13, 15] I need to get only the integer values in the cluster column separately. Like following(This can be four lists no need of having another DataFrame ) 0 4 1 9, 14, 16, 19 2 6, 7, 10, 17, 18, 20 3 1, 2, 3, 5, 8, 11, 12, 13, 15 I tried different things. Could not achieve the expected output. In [36]: clustlist = list(firstclusters.clusters.values) Out[36]: [array([4]), array([ 9, 14, 16, 19]), array([ 6, 7, 10, 17,

single-pass单遍聚类方法

这一生的挚爱 提交于 2019-12-01 13:39:46
一.通常关于文本聚类也都是针对已有的一堆历史数据进行聚类,比如常用的方法有kmeans,dbscan等。如果有个需求需要针对流式文本进行聚类(即来一条聚一条),那么这些方法都不太适用了,当然也有很多其它针对流式数据进行动态聚类方法,动态聚类也有很多挑战,比如聚类个数是不固定的,聚类的相似阈值也不好设。这些都有待继续研究下去。本文实现一个简单sing-pass单遍聚类方法,文本间的相似度是利用余弦距离,文本向量可以用tfidf(这里的idf可以在一个大的文档集里统计得到,然后在新的文本中的词直接利用),也可以用一些如word2vec,bert等中文预训练模型对文本进行向量表示。 二.程序 1 import numpy as np 2 import os 3 import sys 4 import pickle 5 import collections 6 from sklearn.feature_extraction.text import TfidfVectorizer 7 from sklearn.decomposition import TruncatedSVD 8 from gensim import corpora, models, matutils 9 from utils.tokenizer import load_stopwords, load_samples,

K-means聚类(一)

拜拜、爱过 提交于 2019-11-30 06:26:05
我们的问题是:怎么给一堆数据分类? 首先,每一类都叫一个簇(Cluster),如何才能算作是同一类能? 我们有K-means聚类,DBSCAN(Density-Based Spatial Clustering of Application with Noise),hierarchical clustering等等这些聚类算法,这些算法区分同一类的方式都不同,比如DBSCAN,它是以一定的密度进行传播,将传播到的点都聚成一类,在某些场景,比如簇与簇之间有明显分隔的,DBSCAN显然要比k-means好。 下面是用k-means和DBSCAN划分一个笑脸的不同效果。 k-means算法 DBSCAN算法 不过对于均匀分布的数据,指定簇个数的k-means就要优于依靠密度发展的DBSCAN了。 k-means算法 DBSCAN算法 这些动画的演示你可在https://www.naftaliharris.com/blog/visualizing-k-means-clustering/上做到 使用pycharm手写k-means聚类算法 思路: ①随机生成1000个二维坐标的样本点 ②指定划分成5类 ③确定收敛阈值为0.2 ④从1000个样本点中随机选出5个样本点,作为5个簇的中心 ⑤每个中心为一个Cluster ⑥遍历1000个点,分别计算它们到5个中心点之间的距离,对每个点