Questions tagged «clustering»

聚类分析或聚类是将一组对象进行分组的任务,以使同一组(称为聚类)中的对象(在某种意义上或彼此)比其他组(聚类)中的对象更相似。它是探索性数据挖掘的主要任务,也是统计数据分析的常用技术,广泛用于机器学习,模式识别,图像分析,信息检索等领域。

13
用于混合数值和分类数据的K-Means聚类
我的数据集包含许多数字属性和一个类别。 说NumericAttr1, NumericAttr2, ..., NumericAttrN, CategoricalAttr, 其中CategoricalAttr采用的三个可能的值之一:CategoricalAttrValue1,CategoricalAttrValue2或CategoricalAttrValue3。 我正在为Octave使用默认的k-means聚类算法实现https://blog.west.uni-koblenz.de/2012-07-14/a-working-k-means-code-for-octave/。它仅适用于数字数据。 所以我的问题是:将类别属性拆分CategoricalAttr为三个数字(二进制​​)变量是否正确IsCategoricalAttrValue1, IsCategoricalAttrValue2, IsCategoricalAttrValue3?

8
聚类地理位置坐标(纬线,长线对)
什么是正确的地理位置聚类方法和聚类算法? 我正在使用以下代码对地理位置坐标进行聚类: import numpy as np import matplotlib.pyplot as plt from scipy.cluster.vq import kmeans2, whiten coordinates= np.array([ [lat, long], [lat, long], ... [lat, long] ]) x, y = kmeans2(whiten(coordinates), 3, iter = 20) plt.scatter(coordinates[:,0], coordinates[:,1], c=y); plt.show() 使用K均值进行地理位置聚类是否正确,因为它使用的是欧几里得距离,而不是Haversine公式作为距离函数?

1
什么是用于多类分类的最佳Keras模型?
我正在研究,如果需求三个赛事冠军的分类一个=( ,win,)drawlose WINNER LEAGUE HOME AWAY MATCH_HOME MATCH_DRAW MATCH_AWAY MATCH_U2_50 MATCH_O2_50 3 13 550 571 1.86 3.34 4.23 1.66 2.11 3 7 322 334 7.55 4.1 1.4 2.17 1.61 我当前的模型是: def build_model(input_dim, output_classes): model = Sequential() model.add(Dense(input_dim=input_dim, output_dim=12, activation=relu)) model.add(Dropout(0.5)) model.add(Dense(output_dim=output_classes, activation='softmax')) model.compile(loss='categorical_crossentropy', optimizer='adadelta') return model 我不确定这是否适用于多类别分类 二进制分类的最佳设置是什么? 编辑:#2-那样吗? model.add(Dense(input_dim=input_dim, …

1
为什么xgboost比sklearn GradientBoostingClassifier快得多?
我正在尝试通过50个具有100个数字特征的示例训练一个梯度提升模型。XGBClassifier我的机器43秒内把手500棵树,而GradientBoostingClassifier只处理10棵(!)以1分2秒:(我没有理会试图种植500棵树,因为它会需要几个小时。我使用的是相同的learning_rate,并max_depth设置, 见下文。 是什么使XGBoost如此之快?它是否使用了sklearn家伙不知道的用于梯度增强的新颖实现方式?还是“偷工减料”并种植浅树? ps我知道这个讨论:https : //www.kaggle.com/c/higgs-boson/forums/t/10335/xgboost-post-competition-survey,但是那里找不到答案... XGBClassifier(base_score=0.5, colsample_bylevel=1, colsample_bytree=1, gamma=0, learning_rate=0.05, max_delta_step=0, max_depth=10, min_child_weight=1, missing=None, n_estimators=500, nthread=-1, objective='binary:logistic', reg_alpha=0, reg_lambda=1, scale_pos_weight=1, seed=0, silent=True, subsample=1) GradientBoostingClassifier(init=None, learning_rate=0.05, loss='deviance', max_depth=10, max_features=None, max_leaf_nodes=None, min_samples_leaf=1, min_samples_split=2, min_weight_fraction_leaf=0.0, n_estimators=10, presort='auto', random_state=None, subsample=1.0, verbose=0, warm_start=False)
29 scikit-learn  xgboost  gbm  data-mining  classification  data-cleaning  machine-learning  reinforcement-learning  data-mining  bigdata  dataset  nlp  language-model  stanford-nlp  machine-learning  neural-network  deep-learning  randomized-algorithms  machine-learning  beginner  career  xgboost  loss-function  neural-network  software-recommendation  naive-bayes-classifier  classification  scikit-learn  feature-selection  r  random-forest  cross-validation  data-mining  python  scikit-learn  random-forest  churn  python  clustering  k-means  machine-learning  nlp  sentiment-analysis  machine-learning  programming  python  scikit-learn  nltk  gensim  visualization  data  csv  neural-network  deep-learning  descriptive-statistics  machine-learning  supervised-learning  text-mining  orange  data  parameter-estimation  python  pandas  scraping  r  clustering  k-means  unsupervised-learning 

4
聚类之前是否有必要对数据进行标准化?
在集群之前是否有必要对数据进行标准化?在从例如scikit learn约DBSCAN,在这里他们这样做的线: X = StandardScaler().fit_transform(X) 但我不明白为什么有必要。归根结底,聚类不假定任何特定的数据分布-它是一种无监督的学习方法,因此其目的是探索数据。 为什么需要转换数据?

3
K-表示用Elbow方法,BIC,方差解释和轮廓选择K的非相干行为
我正在尝试使用K均值对具有90个特征的向量进行聚类。由于此算法询问我簇的数量,因此我想用一些不错的数学方法来验证我的选择。我希望有8到10个集群。功能按Z分数缩放。 肘法和方差解释 from scipy.spatial.distance import cdist, pdist from sklearn.cluster import KMeans K = range(1,50) KM = [KMeans(n_clusters=k).fit(dt_trans) for k in K] centroids = [k.cluster_centers_ for k in KM] D_k = [cdist(dt_trans, cent, 'euclidean') for cent in centroids] cIdx = [np.argmin(D,axis=1) for D in D_k] dist = [np.min(D,axis=1) for D in …

5
用Python计算KL发散
我对此很陌生,不能说我对背后的理论概念有完整的了解。我正在尝试计算Python中几个点列表之间的KL散度。我正在使用http://scikit-learn.org/stable/modules/generation/sklearn.metrics.mutual_info_score.html尝试执行此操作。我遇到的问题是,任何两个数字列表(其1.3862943611611198906)返回的值都是相同的。我有一种感觉,我在这里犯了某种理论上的错误,但无法发现。 values1 = [1.346112,1.337432,1.246655] values2 = [1.033836,1.082015,1.117323] metrics.mutual_info_score(values1,values2) 这是我正在运行的示例-只是我对任何2个输入都得到相同的输出。任何建议/帮助将不胜感激!

2
如何应对季节性或其他模式变化的时间序列?
背景 我正在研究电度表读数的时间序列数据集。系列的长度因米而异-有的我有几年,有的则只有几个月,等等。许多都表现出明显的季节性,并且通常是多层的-在一天,一周或一年之内。 我一直在努力的事情之一就是这些时间序列的聚类。目前,我的工作是学术性的,在我也对数据进行其他分析时,我有一个特定的目标来进行一些聚类。 我做了一些初步工作,计算了各种功能(周末与工作日使用的百分比,不同时间段使用的百分比,等等)。然后,我继续着眼于使用动态时间规整(DTW)获得不同序列之间的距离,以及基于差值进行聚类,并且发现了与此相关的几篇论文。 题 特定系列的季节性变化会导致我的聚类不正确吗?如果是这样,我该如何处理? 我担心的是,在时间序列中的模式已更改的情况下,DTW获得的距离可能会产生误导。这可能导致不正确的群集。 如果以上不清楚,请考虑以下示例: 例子1 仪表从午夜到晚上8点具有较低的读数,然后读数在接下来的一个小时内急剧增加,从上午9点直到5PM保持较高的读数,然后在接下来的一个小时内急剧下降,然后从6PM直到午夜保持较低的读数。仪表连续数月每天都保持这种模式,但随后变为一天中读数始终保持在恒定水平的模式。 例子2 仪表显示每个月消耗的能量大致相同。几年后,它变成一种模式,在夏季,能源使用量较高,然后恢复到正常水平。 可能的方向 我想知道是否可以继续比较整个时间序列,但是如果模式发生很大变化,可以将它们分开并考虑为一个单独的序列。但是,为此,我需要能够检测到此类更改。另外,我只是不知道这是合适的方法还是处理数据。 我还考虑过拆分数据并将其视为许多单独的时间序列。例如,我可以将每天/米的组合视为一个单独的系列。但是,如果我想考虑每周/每月/每年的模式,则需要做类似的事情。我认为这行得通,但可能会很繁重,如果我找不到更好的方法,我不愿意走这条路。 进一步说明 这些是评论中出现的事情,或者由于评论而我想到的事情,这可能是相关的。我把它们放在这里,这样人们就不必阅读所有内容来获取相关信息。 我正在使用Python工作,但是在R更适合的地方使用了rpy。不过,我不一定要寻找Python答案-如果有人对应该做什么有实际的答案,我很乐意自己找出实现细节。 我有很多工作的“草稿”代码-我已经完成了一些DTW运行,已经完成了几种不同类型的集群,等等。我想我在很大程度上理解了我的发展方向以及我的目标。我真正寻找的是与我在查找距离,运行聚类等之前处理数据的方式有关。鉴于此,我怀疑答案是相同的,无论是通过DTW还是通过更简单的欧氏距离(ED)计算序列之间的距离。 我发现这些论文特别有助于您了解时间序列和DTW,如果需要主题领域的某些背景知识,它们可能会有所帮助:http : //www.cs.ucr.edu/~eamonn/selected_publications.htm


5
句子相似度的最佳实用算法
我有两个句子S1和S2,它们的字数通常都在15以下。 什么是最实用,最成功的(机器学习)算法,这些算法可能易于实现(神经网络可以,除非架构像Google Inception等那样复杂)。 我正在寻找一种不会花太多时间就能正常工作的算法。您是否发现任何成功且易于使用的算法? 这可以但不必属于群集类别。我的背景是机器学习的知识,所以欢迎提出任何建议:)

1
文本聚类算法
我有一个问题,就是将大量句子按其含义分组。当您有很多句子并想按其含义对它们进行分组时,这类似于一个问题。 建议使用什么算法来做到这一点?我不知道簇的数量(随着更多数据的到来,簇也可以改变),通常用什么特征来表示每个句子? 我现在正在尝试使用最简单的功能,将单词列表和句子之间的距离定义为: (A和B是句子A和B中的相应单词集) 真的有道理吗? 我正在尝试将scikit库中的Mean-Shift算法应用于此距离,因为它不需要预先提供多个簇。 如果有人会建议解决问题的更好方法/方法,将不胜感激,因为我还是这个话题的新手。


4
基于相似度分数的聚类
假设我们有一组元素E和两个元素ei,ej∈E之间的相似度函数(而不是距离)sim(ei,ej)。 我们如何使用sim(有效地)将E的元素聚类? ķ -means,例如,需要在给定ķ,雨棚聚类需要两个阈值。如果我们不想要这样的预定义参数怎么办? 注意,sim不一定是度量(即三角形不等式可能成立,也可能不成立)。此外,簇是否不相交(E的分区)也没关系。

5
扩大seaborn热图
我corr()用原始df 创建了df。该corr()DF出来70×70,这是不可能的可视化热图... sns.heatmap(df)。如果我尝试显示corr = df.corr(),则表格不适合屏幕,并且我可以看到所有相关性。它是打印整个df大小而不管其大小还是控制热图大小的方法吗?
17 visualization  pandas  plotting  machine-learning  neural-network  svm  decision-trees  svm  efficiency  python  linear-regression  machine-learning  nlp  topic-model  lda  named-entity-recognition  naive-bayes-classifier  association-rules  fuzzy-logic  kaggle  deep-learning  tensorflow  inception  classification  feature-selection  feature-engineering  machine-learning  scikit-learn  tensorflow  keras  encoding  nlp  text-mining  nlp  rnn  python  neural-network  feature-extraction  machine-learning  predictive-modeling  python  r  linear-regression  clustering  r  ggplot2  neural-network  neural-network  training  python  neural-network  deep-learning  rnn  predictive-modeling  databases  sql  programming  distribution  dataset  cross-validation  neural-network  deep-learning  rnn  machine-learning  machine-learning  python  deep-learning  data-mining  tensorflow  visualization  tools  sql  embeddings  orange  feature-extraction  unsupervised-learning  gan  machine-learning  python  data-mining  pandas  machine-learning  data-mining  bigdata  apache-spark  apache-hadoop  deep-learning  python  convnet  keras  aggregation  clustering  k-means  r  random-forest  decision-trees  reference-request  visualization  data  pandas  plotting  neural-network  keras  rnn  theano  deep-learning  tensorflow  inception  predictive-modeling  deep-learning  regression  sentiment-analysis  nlp  encoding  deep-learning  python  scikit-learn  lda  convnet  keras  predictive-modeling  regression  overfitting  regression  svm  prediction  machine-learning  similarity  word2vec  information-retrieval  word-embeddings  neural-network  deep-learning  rnn 


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.