亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? birchcluster.java

?? Weka
?? JAVA
?? 第 1 頁 / 共 3 頁
字號:
/* *    This program is free software; you can redistribute it and/or modify *    it under the terms of the GNU General Public License as published by *    the Free Software Foundation; either version 2 of the License, or *    (at your option) any later version. * *    This program is distributed in the hope that it will be useful, *    but WITHOUT ANY WARRANTY; without even the implied warranty of *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the *    GNU General Public License for more details. * *    You should have received a copy of the GNU General Public License *    along with this program; if not, write to the Free Software *    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. *//* *    BIRCHCluster.java *    Copyright (C) 2001 University of Waikato, Hamilton, New Zealand * */package weka.datagenerators.clusterers;import weka.core.Attribute;import weka.core.FastVector;import weka.core.Instance;import weka.core.Instances;import weka.core.Option;import weka.core.SelectedTag;import weka.core.Tag;import weka.core.TechnicalInformation;import weka.core.TechnicalInformationHandler;import weka.core.Utils;import weka.core.TechnicalInformation.Field;import weka.core.TechnicalInformation.Type;import weka.datagenerators.ClusterGenerator;import java.io.Serializable;import java.util.Enumeration;import java.util.Random;import java.util.Vector;/** <!-- globalinfo-start --> * Cluster data generator designed for the BIRCH System<br/> * <br/> * Dataset is generated with instances in K clusters.<br/> * Instances are 2-d data points.<br/> * Each cluster is characterized by the number of data points in itits radius and its center. The location of the cluster centers isdetermined by the pattern parameter. Three patterns are currentlysupported grid, sine and random.<br/> * <br/> * For more information refer to:<br/> * <br/> * Tian Zhang, Raghu Ramakrishnan, Miron Livny: BIRCH: An Efficient Data Clustering Method for Very Large Databases. In: ACM SIGMOD International Conference on Management of Data, 103-114, 1996. * <p/> <!-- globalinfo-end --> * <!-- technical-bibtex-start --> * BibTeX: * <pre> * &#64;inproceedings{Zhang1996, *    author = {Tian Zhang and Raghu Ramakrishnan and Miron Livny}, *    booktitle = {ACM SIGMOD International Conference on Management of Data}, *    pages = {103-114}, *    publisher = {ACM Press}, *    title = {BIRCH: An Efficient Data Clustering Method for Very Large Databases}, *    year = {1996} * } * </pre> * <p/> <!-- technical-bibtex-end --> *  <!-- options-start --> * Valid options are: <p/> *  * <pre> -h *  Prints this help.</pre> *  * <pre> -o &lt;file&gt; *  The name of the output file, otherwise the generated data is *  printed to stdout.</pre> *  * <pre> -r &lt;name&gt; *  The name of the relation.</pre> *  * <pre> -d *  Whether to print debug informations.</pre> *  * <pre> -S *  The seed for random function (default 1)</pre> *  * <pre> -a &lt;num&gt; *  The number of attributes (default 10).</pre> *  * <pre> -c *  Class Flag, if set, the cluster is listed in extra attribute.</pre> *  * <pre> -b &lt;range&gt; *  The indices for boolean attributes.</pre> *  * <pre> -m &lt;range&gt; *  The indices for nominal attributes.</pre> *  * <pre> -k &lt;num&gt; *  The number of clusters (default 4)</pre> *  * <pre> -G *  Set pattern to grid (default is random). *  This flag cannot be used at the same time as flag I. *  The pattern is random, if neither flag G nor flag I is set.</pre> *  * <pre> -I *  Set pattern to sine (default is random). *  This flag cannot be used at the same time as flag I. *  The pattern is random, if neither flag G nor flag I is set.</pre> *  * <pre> -N &lt;num&gt;..&lt;num&gt; *  The range of number of instances per cluster (default 1..50). *  Lower number must be between 0 and 2500, *  upper number must be between 50 and 2500.</pre> *  * <pre> -R &lt;num&gt;..&lt;num&gt; *  The range of radius per cluster (default 0.1..1.4142135623730951). *  Lower number must be between 0 and SQRT(2),  *  upper number must be between SQRT(2) and SQRT(32).</pre> *  * <pre> -M &lt;num&gt; *  The distance multiplier (default 4.0).</pre> *  * <pre> -C &lt;num&gt; *  The number of cycles (default 4).</pre> *  * <pre> -O *  Flag for input order is ORDERED. If flag is not set then  *  input order is RANDOMIZED. RANDOMIZED is currently not  *  implemented, therefore is the input order always ORDERED.</pre> *  * <pre> -P &lt;num&gt; *  The noise rate in percent (default 0.0). *  Can be between 0% and 30%. (Remark: The original  *  algorithm only allows noise up to 10%.)</pre> *  <!-- options-end --> * * @author Gabi Schmidberger (gabi@cs.waikato.ac.nz) * @author FracPete (fracpete at waikato dot ac dot nz) * @version $Revision: 1.7 $  */public class BIRCHCluster   extends ClusterGenerator  implements TechnicalInformationHandler {  /** for serialization */  static final long serialVersionUID = -334820527230755027L;    /** Number of Clusters the dataset should have */  protected int m_NumClusters;  /** minimal number of instances per cluster (option N)*/   private int m_MinInstNum;    /** maximal number of instances per cluster (option N)*/   private int m_MaxInstNum;    /** minimum radius (option R)*/   private double m_MinRadius;    /** maximum radius (option R)*/   private double m_MaxRadius;    /**  Constant set for choice of pattern. (option G)*/  public static final int GRID = 0;  /**  Constant set for choice of pattern. (option I)*/  public static final int SINE = 1;  /**  Constant set for choice of pattern. (default)*/  public static final int RANDOM = 2;  /** the pattern tags */  public static final Tag[] TAGS_PATTERN = {    new Tag(GRID,   "Grid"),    new Tag(SINE,   "Sine"),    new Tag(RANDOM, "Random")  };    /** pattern (changed with options G or S)*/   private int m_Pattern;    /** distance multiplier (option M)*/  private double m_DistMult;  /** number of cycles (option C)*/  private int m_NumCycles;  /**  Constant set for input order (option O)*/  public static final int ORDERED = 0;  /**  Constant set for input order (default)*/  public static final int RANDOMIZED = 1;  /** the input order tags */  public static final Tag[] TAGS_INPUTORDER = {    new Tag(ORDERED,    "ordered"),    new Tag(RANDOMIZED, "randomized")  };  /** input order (changed with option O)*/   private int m_InputOrder;  /** noise rate in percent (option P,  between 0 and 30)*/   private double m_NoiseRate;  /** cluster list */  private FastVector m_ClusterList;  // following are used for pattern is GRID  /** grid size*/  private int m_GridSize;  /** grid width*/  private double m_GridWidth;    /**   * class to represent cluster   */  private class Cluster     implements Serializable {    /** for serialization */    static final long serialVersionUID = -8336901069823498140L;            /** number of instances for this cluster */    private int m_InstNum;    /** radius of cluster     *   variance is radius ** 2 / 2 */    private double m_Radius;    /** center of cluster = array of Double values */    private double[] m_Center;    /**     * Constructor, used for pattern = RANDOM     *     * @param instNum the number of instances     * @param radius radius of the cluster     * @param random the random number generator to use      */    private Cluster(int instNum, double radius, Random random) {      m_InstNum = instNum;      m_Radius = radius;      m_Center = new double[getNumAttributes()];      for (int i = 0; i < getNumAttributes(); i++) {	m_Center[i] = random.nextDouble() * (double) m_NumClusters;      }    }    /**     * Constructor, used for pattern = GRID     *     * @param instNum the number of instances     * @param radius radius of the cluster     * @param gridVector vector for grid positions     * @param gridWidth factor for grid position     */      // center is defined in the constructor of cluster    private Cluster(int instNum,		    double radius,		    int[] gridVector,		    double gridWidth) {      m_InstNum = instNum;      m_Radius = radius;      m_Center = new double[getNumAttributes()];      for (int i = 0; i < getNumAttributes(); i++) {	m_Center[i] = ((double) gridVector[i] + 1.0) * gridWidth;      }          }       /**     * returns the number of instances     *      * @return the number of instances     */    private int getInstNum() {       return m_InstNum;     }        /**     * returns the radius     *      * @return the radius     */    private double getRadius() {       return m_Radius;     }        /**     * returns the variance     *      * @return the variance     */    private double getVariance() {       return Math.pow(m_Radius, 2.0) / 2.0;     }        /**     * returns the standard deviation     *      * @return the standard deviation     */    private double getStdDev() {       return (m_Radius / Math.pow(2.0, 0.5));     }        /**     * returns the centers     *      * @return the centers     */    private double[] getCenter() {       return m_Center;     }        /**     * returns the center value for a given dimension     *      * @param dimension the dimension to return the center for     * @return the center value for the given dimension     * @throws Exception if dimension invalid     */    private double getCenterValue(int dimension) throws Exception {      if (dimension >= m_Center.length)	throw new Exception("Current system has only " +			    m_Center.length + " dimensions.");      return m_Center[dimension];    }      } // end class Cluster  /**   * class to represent Vector for placement of the center in space   */  private class GridVector     implements Serializable {    /** for serialization */    static final long serialVersionUID = -1900309948991039522L;        /** array of integer */    private int[] m_GridVector;    /**  one higher then the highest possible integer value     *  in any of the integers in the gridvector */    private int m_Base;    /** size of vector */    private int m_Size;    /**     * Constructor     *     * @param numDim number of dimensions = number of attributes     * @param base is one higher then the highest possible integer value     * in any of the integers in the gridvector     */    private GridVector(int numDim, int base) {      m_Size = numDim;      m_Base = base;      m_GridVector = new int [numDim];      for (int i = 0; i < numDim; i++)	m_GridVector[i] = 0;    }    /**     * returns the integer array     *     * @return the integer array     */    private int[] getGridVector() {      return m_GridVector;    }    /**     * Overflow has occurred when integer is zero.     *     *@param digit the input integer     *@return true if digit is 0     */    private boolean overflow(int digit) {      return (digit == 0);    }    /**     * Adds one to integer and sets to zero, if new value was     * equal m_Base.     *     *@param digit the input integer     *@return new integer object     */    private int addOne(int digit) {      int value = digit + 1;      if (value >= m_Base) value = 0;      return value;    }    /**     * add 1 to vector     */    private void addOne() {      m_GridVector[0] = addOne(m_GridVector[0]);      int i = 1;      while (overflow(m_GridVector[i - 1]) && i < m_Size) {        m_GridVector[i] = addOne(m_GridVector[i]);	i++;      }	    }  } // end class GridVector    /**   * initializes the generator with default values   */  public BIRCHCluster() {    super();    setNumClusters(defaultNumClusters());    setMinInstNum(defaultMinInstNum());    setMaxInstNum(defaultMaxInstNum());    setMinRadius(defaultMinRadius());    setMaxRadius(defaultMaxRadius());    setPattern(defaultPattern());    setDistMult(defaultDistMult());    setNumCycles(defaultNumCycles());    setInputOrder(defaultInputOrder());    setNoiseRate(defaultNoiseRate());  }    /**   * Returns a string describing this data generator.   *   * @return a description of the data generator suitable for   * displaying in the explorer/experimenter gui   */  public String globalInfo() {    return         "Cluster data generator designed for the BIRCH System\n\n"      + "Dataset is generated with instances in K clusters.\n"      + "Instances are 2-d data points.\n"      + "Each cluster is characterized by the number of data points in it"      + "its radius and its center. The location of the cluster centers is"      + "determined by the pattern parameter. Three patterns are currently"      + "supported grid, sine and random.\n\n"      + "For more information refer to:\n\n"      + getTechnicalInformation().toString();  }  /**   * Returns an instance of a TechnicalInformation object, containing    * detailed information about the technical background of this class,   * e.g., paper reference or book this class is based on.   *    * @return the technical information about this class   */  public TechnicalInformation getTechnicalInformation() {    TechnicalInformation 	result;        result = new TechnicalInformation(Type.INPROCEEDINGS);    result.setValue(Field.AUTHOR, "Tian Zhang and Raghu Ramakrishnan and Miron Livny");    result.setValue(Field.TITLE, "BIRCH: An Efficient Data Clustering Method for Very Large Databases");    result.setValue(Field.BOOKTITLE, "ACM SIGMOD International Conference on Management of Data");    result.setValue(Field.YEAR, "1996");    result.setValue(Field.PAGES, "103-114");    result.setValue(Field.PUBLISHER, "ACM Press");        return result;  }  /**   * Returns an enumeration describing the available options.   *   * @return an enumeration of all the available options   */  public Enumeration listOptions() {    Vector result = enumToVector(super.listOptions());    result.addElement(new Option(          "\tThe number of clusters (default "          + defaultNumClusters() + ")",          "k", 1, "-k <num>"));    result.addElement(new Option(          "\tSet pattern to grid (default is random).\n"	  + "\tThis flag cannot be used at the same time as flag I.\n"	  + "\tThe pattern is random, if neither flag G nor flag I is set.",          "G", 0, "-G"));    result.addElement(new Option(          "\tSet pattern to sine (default is random).\n"	  + "\tThis flag cannot be used at the same time as flag I.\n"	  + "\tThe pattern is random, if neither flag G nor flag I is set.",          "I", 0, "-I"));    result.addElement(new Option(

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品久久久久一区二区三区共| 国产亚洲一区字幕| 在线免费观看日本欧美| 成人av电影在线观看| 国产精品99久久久久久久vr| 美女视频一区二区三区| 日韩综合在线视频| 日韩av一级片| 精品在线亚洲视频| 国产成人av一区二区三区在线观看| 国精产品一区一区三区mba桃花 | 国产欧美久久久精品影院| 久久婷婷成人综合色| 久久久不卡影院| 国产精品嫩草影院av蜜臀| 国产精品色眯眯| 亚洲欧美视频在线观看| 亚洲精品成人在线| 亚洲v日本v欧美v久久精品| 亚洲成人av一区| 美女视频黄久久| 国产乱子伦一区二区三区国色天香| 国产成人免费9x9x人网站视频| 成人在线一区二区三区| 在线观看视频一区二区欧美日韩| 精品视频在线看| 日韩精品一区国产麻豆| 国产日韩欧美在线一区| 亚洲日本韩国一区| 午夜精品123| 国产一区二区三区免费看| 成人精品国产一区二区4080| 成人黄色小视频在线观看| 91在线视频网址| 欧美日韩一区二区三区四区 | 精品亚洲国产成人av制服丝袜| 蜜桃精品视频在线| 国精品**一区二区三区在线蜜桃| 国产精品亚洲视频| 欧美三级日韩在线| 日韩一区二区三| 国产精品福利一区| 亚洲精品免费播放| 久久av中文字幕片| 成人妖精视频yjsp地址| 欧美日韩综合不卡| 日韩你懂的在线观看| 亚洲同性gay激情无套| 亚洲一区二区三区美女| 国产一区二区日韩精品| 91网站黄www| 日韩欧美国产三级| 亚洲欧美怡红院| 免费成人小视频| 成人性生交大片免费看中文网站| 成人激情免费电影网址| 欧美另类z0zxhd电影| 久久这里只有精品首页| 亚洲最大的成人av| 美国毛片一区二区三区| 色美美综合视频| 日韩久久精品一区| 艳妇臀荡乳欲伦亚洲一区| 久久成人麻豆午夜电影| 91成人网在线| 久久久www成人免费毛片麻豆 | 欧美成人免费网站| 国产精品国产馆在线真实露脸 | 1区2区3区国产精品| 日韩av一区二区三区| 在线视频你懂得一区| 久久久天堂av| 天天综合网天天综合色| 成人一区二区三区在线观看| 日韩免费看的电影| 一区二区三区欧美日韩| 成人在线一区二区三区| 日韩欧美国产午夜精品| 午夜精品在线看| 99vv1com这只有精品| 日韩一级片网站| 一区二区三区日本| 99久久国产综合精品色伊| 精品国产一区二区三区不卡| 中文字幕欧美一区| 丰满亚洲少妇av| 欧美一区二区三区啪啪| 国产精品久久久久aaaa| 国产精品一区二区久久不卡| 欧美日韩黄视频| 亚洲婷婷综合久久一本伊一区| 国产在线视频一区二区| 欧美日韩成人在线| 亚洲精品美腿丝袜| 99riav久久精品riav| 久久久国际精品| 日韩国产精品大片| 91麻豆精品久久久久蜜臀| 亚洲欧洲av另类| 国产成人一级电影| 欧美二区三区91| 三级久久三级久久| 欧美亚洲高清一区二区三区不卡| 亚洲女子a中天字幕| 成人激情图片网| 亚洲天堂精品视频| 成人动漫一区二区三区| 久久久久久久久久久久久久久99 | 日韩国产欧美在线视频| 欧美电影在哪看比较好| 亚洲一区二区三区国产| 本田岬高潮一区二区三区| 国产午夜精品一区二区三区视频 | 日韩视频一区二区在线观看| 日韩精品一级中文字幕精品视频免费观看| caoporm超碰国产精品| 亚洲青青青在线视频| 91在线视频播放地址| 亚洲一区在线观看免费观看电影高清| 波多野结衣一区二区三区| 椎名由奈av一区二区三区| 91年精品国产| 视频一区欧美精品| 91精品国产福利在线观看| 久久福利资源站| 久久久久久久久久久久电影| 92精品国产成人观看免费 | 91视频免费观看| 亚洲蜜臀av乱码久久精品| 欧美日韩精品一区二区三区四区 | 国产成人免费高清| 亚洲日本在线天堂| 欧美亚洲一区二区在线观看| 日韩国产成人精品| 精品成a人在线观看| 成人免费视频视频在线观看免费 | 一区二区三区在线播放| 欧美日韩一区二区三区四区| 亚洲国产日韩在线一区模特 | 国产精品入口麻豆原神| 国产在线视频精品一区| 久久网站最新地址| 972aa.com艺术欧美| 午夜精品久久久久久久久久| 欧美电视剧免费全集观看| 美女在线视频一区| 亚洲欧美日韩系列| 91官网在线观看| 日韩电影免费一区| 欧美高清在线一区| 一本久久综合亚洲鲁鲁五月天| 亚洲午夜电影在线| 日韩片之四级片| 国产综合成人久久大片91| 亚洲欧美欧美一区二区三区| 欧美高清hd18日本| 懂色一区二区三区免费观看| 亚洲精品伦理在线| 日韩欧美激情在线| 国产**成人网毛片九色| 亚洲成人1区2区| 欧美哺乳videos| 91福利在线看| 国产视频一区二区在线| 成人av资源在线| 亚洲第一福利视频在线| 国产女人aaa级久久久级| 一本高清dvd不卡在线观看| 久久99精品国产麻豆婷婷洗澡| 欧美精品乱码久久久久久| 成人在线视频一区| 亚洲国产精品麻豆| 国产精品国产精品国产专区不蜜| 欧美成人欧美edvon| 91福利资源站| 91视频在线观看| 国产精品一区二区不卡| 日韩av午夜在线观看| 日韩美女视频一区二区| 国产亚洲一区二区三区四区| 91成人在线观看喷潮| 99国产精品一区| 国产98色在线|日韩| 日本怡春院一区二区| 亚洲综合色婷婷| 国产精品久久久久婷婷二区次| 精品精品国产高清a毛片牛牛 | 国产成人免费在线| 日韩成人一级大片| 五月天欧美精品| 中文字幕视频一区| 国产精品美女久久久久久| 日韩欧美国产三级| 日韩欧美一区二区视频| 99精品久久只有精品| 丁香亚洲综合激情啪啪综合| 日韩成人伦理电影在线观看| 亚洲在线视频网站| 亚洲资源中文字幕| 亚洲女同ⅹxx女同tv|