⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 adaboost.h

📁 booster-tree a machine learning method
💻 H
字号:
//////////////////////////////////////////////////////////////////////    Omlet - Open Machine Learning Enhanced Toolkit////    Copyright (C) 2006   TALP Research Center//                         Universitat Politecnica de Catalunya////    This file is part of the Omlet library////    The Omlet library 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 library 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 library; if not, write to the Free Software//    Foundation, Inc., 51 Franklin St, 5th Floor, Boston, MA 02110-1301 USA////    contact: Lluis Padro (padro@lsi.upc.es)//             TALP Research Center//             despatx Omega.S112 - Campus Nord UPC//             08034 Barcelona.  SPAIN////////////////////////////////////////////////////////////////////// Author: Xavier Carreras//#ifndef _ADABOOST#define _ADABOOST#include "omlet/weakrule.h"#include "omlet/dataset.h"#include <iostream>#include <string>#include <list>#include <vector>///////////////////////////////////////////////////////////////////  Class AdaBoost implement a generic AB learner/classifier,/// which may be based on any kind of weak rule.////////////////////////////////////////////////////////////////class adaboost : public std::list<weak_rule*> {private:  /// class parameters  bool option_initialize_weights;  /// type of used weak rules  std::string wr_type;  adaboost::const_iterator pcl_pointer; // partial classification pointer  int         nrules;  int         nlabels;     std::vector<std::string> labels;  //label names, loaded from model file  std::string  label_others;  /// output   std::ostream *out;  /// auxiliar learning functions  void initialize_weights(dataset &ds);  void update_weights(weak_rule *wr, double Z, dataset &ds);  void add_weak_rule(weak_rule *wr);  /// copy constructor forbidden  adaboost(const adaboost &old_bab); public:  /// constructors, destructor and access methods  adaboost(int nl, std::string t);  adaboost(const std::string &file);  adaboost(const std::string &file, int L, int T=-1);  int n_rules();  int get_nlabels();  std::string get_label(int lb);  std::string default_class();  /// classification methods.   /// Important: pred is an array of predictions, one for each label  ///            the function *assigns* its predicion for each label.  void classify(const example &i,  double pred[]);  /// partial classification  void pcl_ini_pointer();  int  pcl_advance_pointer(int steps);  /// Important: pred is an array of predictions, one for each label  ///            the function *adds* its predicion for each label.  void pcl_classify(const example &i, double *pred, int nrules);  /// learning methods  void learn(dataset &ds, int nrounds, bool init, wr_params *p, int verbose = 0);  void learn(dataset &ds, int nrounds, bool init, wr_params *p, const std::string &outf, int verbose = 0);  /// I/O methods  void set_output(std::ostream *os);  void read_from_stream(std::istream *in, int T);  void read_from_file(const std::string &f);  void set_initialize_weights(bool b);};#endif 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -