/** * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.apache.mahout.clustering.spectral.eigencuts; /** * Configuration keys for the Eigencuts algorithm (analogous to KMeansConfigKeys) */ public interface EigencutsKeys { /** * B_0, or the user-specified minimum eigenflow half-life threshold * for an eigenvector/eigenvalue pair to be considered. Increasing * B_0 equates to fewer clusters */ String BETA = "org.apache.mahout.clustering.spectral.beta"; /** * Tau, or the user-specified threshold for making cuts (setting edge * affinities to 0) after performing non-maximal suppression on edge weight * sensitivies. Increasing tau equates to more edge cuts */ String TAU = "org.apache.mahout.clustering.spectral.tau"; /** * The normalization factor for computing the cut threshold */ String DELTA = "org.apache.mahout.clustering.spectral.delta"; /** * Epsilon, or the user-specified coefficient that works in tandem with * MINIMUM_HALF_LIFE to determine which eigenvector/eigenvalue pairs to use. * Increasing epsilon equates to fewer eigenvector/eigenvalue pairs */ String EPSILON = "org.apache.mahout.clustering.spectral.epsilon"; /** * Base path to the location on HDFS where the diagonal matrix (a vector) * and the list of eigenvalues will be stored for one of the map/reduce * jobs in Eigencuts. */ String VECTOR_CACHE_BASE = "org.apache.mahout.clustering.spectral.eigencuts.vectorcache"; /** * Refers to the dimensions of the raw affinity matrix input. Since this * matrix is symmetrical, it is a square matrix, hence all its dimensions * are equal. */ String AFFINITY_DIMENSIONS = "org.apache.mahout.clustering.spectral.eigencuts.affinitydimensions"; /** * Refers to the Path to the SequenceFile representing the affinity matrix */ String AFFINITY_PATH = "org.apache.mahout.clustering.spectral.eigencuts.affinitypath"; /** * Refers to the Path to the SequenceFile representing the cut matrix */ String CUTMATRIX_PATH = "org.apache.mahout.clustering.spectral.eigencuts.cutmatrixpath"; /** * Sets the SequenceFile index for the list of eigenvalues. */ int EIGENVALUES_CACHE_INDEX = 0; /** * Sets the SequenceFile index for the diagonal matrix. */ int DIAGONAL_CACHE_INDEX = 1; }