K-means clustering in sklearn, number of clusters is known in advance (it is 2). There are multiple features. Feature values are initially without any weight assigned, i.e. they are treated equally weighted. However, task is to assign custom weights to each feature, in order to get best possible clusters separation. How to determine optimum sample weights (sample_weight) for each feature, in order to get best possible separation of the two clusters? If this is not possible for k-means, or for sklearn, I am interested in any alternative clustering solution, the point is that I need method of automatic determination of appropriate weights for multivariate features, in order to maximize clusters separation.
Sklearn k-means clustering (weighted), determining optimum sample weight for each feature?
864 Views Asked by zlatko At
2
There are 2 best solutions below
0
Ebo
On
What I understand from sklearn docs, sample_weight is used to give weights for each observations (samples), not features.
If you want to give weight to your features, you can refer to this post: How can I change feature's weight for K-Means clustering?
Related Questions in MACHINE-LEARNING
- How to cluster a set of strings?
- Enforcing that inputs sum to 1 and are contained in the unit interval in scikit-learn
- scikit-learn preperation
- Spark MLLib How to ignore features when training a classifier
- Increasing the efficiency of equipment using Amazon Machine Learning
- How to interpret scikit's learn confusion matrix and classification report?
- Amazon Machine Learning for sentiment analysis
- What Machine Learning algorithm would be appropriate?
- LDA generated topics
- Spectral clustering with Similarity matrix constructed by jaccard coefficient
- Speeding up Viterbi execution
- Memory Error with Classifier fit and partial_fit
- How to find algo type(regression,classification) in Caret in R for all algos at once?
- Difference between weka tool's correlation coefficient and scikit learn's coefficient of determination score
- What are the approaches to the Big-Data problems?
Related Questions in SCIKIT-LEARN
- How to use meshgrid with large arrays in Matplotlib?
- Enforcing that inputs sum to 1 and are contained in the unit interval in scikit-learn
- scikit-learn preperation
- Python KNeighborsClassifier
- How to interpret scikit's learn confusion matrix and classification report?
- svmlight / libsvm format
- Scikit-learn: overriding a class method in a classifier
- Memory Error with Classifier fit and partial_fit
- Difference between weka tool's correlation coefficient and scikit learn's coefficient of determination score
- Peak fitting with gaussian mixure model (Scikit); how to sample from a discrete pdf?
- sklearn LDA unique labels issue
- Break up Random forest classification fit into pieces in python?
- How to reuse pickled objects in python?
- Scikit Learn Multilabel Classification Using Out Of Core
- Scikit-learn Random Forest taking up too much memory
Related Questions in CLUSTER-ANALYSIS
- How to cluster a set of strings?
- What clustering algorithms can I consider for graph?
- Center of clusteres in rapidminer
- Spectral clustering with Similarity matrix constructed by jaccard coefficient
- Selecting initial centroids in Kmeans in R
- kmeans clustering on the basis of fixed number of variables out of all variables
- MinHashing vs SimHashing
- knn predictions with Clustering
- How do I choose a linkage method for Hierarchical Agglomerative Clustering?
- Affinity Propagation (sklearn) - strange behavior
- How to extract cluster centres from agnes for inputting into kmeans?
- Is it possible to estimate at survey data at cluster level?
- How to explain a higher percentage of point variability using kmeans clustering?
- Mahout clustering: How to retrieve the name of a named vector
- String clustering using matlab?
Related Questions in UNSUPERVISED-LEARNING
- Implementation of convolutional sparse coding in deep networks frameworks
- How to extract unsupervised clusters from a Dirichlet Process in PyMC3?
- Determine the attribute that influences the outcome most
- Deep autoencoder using RBM
- Datum object in caffe - unsupervised networks
- Different silhouette scores for the same data and number of clusters
- Find Normal value using Min and Max from scala data-frame
- ELKI: perform min-max normalization before running k-means
- Unsupervised Classification: Assign classes to to data
- Unsupervised Learning : Clustering based Facial Recognition
- deep neural network model stops learning after one epoch
- How to use tf.Dataset in Keras model.fit without specifying targets?
- Importing data to tensorflow autoencoders through ImageDataGenerator
- K-means performance
- outlier detection using 2D spatial information
Related Questions in FEATURE-CLUSTERING
- Clustering around fixed vector of values
- How to receive tile data from ClusterBuster vector tile server in the sample example?
- k-mean clustering - inertia only gets larger
- Unsupervised Clustering of large multi-dimentional data
- clustering for users with features having different shape
- ValueError: '_index' is a reserved name for dataframe columns
- OpenLayers cluster get incorrect style
- How to transform inverse after clustering
- How can I combine Nystroem approximation with SpectralClustering in scikit-learn?
- "Combining Knowledge-Based Pre-Filtering with Unsupervised Dimension Reduction Clustering: Is it a Good Idea?"
- When search space is reduced to n clusters for face embedding matching how to find which cluster to check for the matching embedding
- Sklearn k-means clustering (weighted), determining optimum sample weight for each feature?
- Identify stocks with same feature values using a np.array_equal() function in a nested loop
- Text Clustering and LDA model
- customer allotment to sales executive
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
In meantime, I have implemented following: clustering by each component separately, then calculating silhouette score, calinski harabasz score, dunn score and inverse davies bouldin score for each component (feature) separately. Then scaling those scores to same magnitude, then PCA them to 1 feature. This produced weights for each component. It seems this approach produces reasonable results. I suppose better approach would be full factorial experiment (DOE), but it seems that this simple approach produces satisfactory results as well.