Comments (4)
Sounds good.
We found that in the zerocost branch, the XGBoost
class contains three functions specific to the zero-cost case, set_pre_computations
, _verify_zc_info
, and _set_zc_names
which are also applicable to the other tree-based predictors.
In order to not duplicate these functions, we placed them in the BaseTree
class, which is the parent class of all tree-based predictors.
from naslib.
Ideally, yes. But there are about 19 predictors in the original ensemble. Let's focus now on extending the ZC case to the tree-based predictors, which are LGBoost
, NGBoost
, and RandomForestPredictor
.
The other predictors must be available, of course, but without the option of using a ZC predictor. This also means that the get_ensemble
method must be modified to return the sets of predictors based on self.zc
from naslib.
One small remaining issue is a discrepancy between the zerocost and Develop implementation of fit
in XGBoost
.
In the Develop branch, it is possible for the user to load in custom hyper-parameters from a config file
def fit(self, xtrain, ytrain, train_info=None, params=None, **kwargs):
if self.hparams_from_file and self.hparams_from_file not in ['False', 'None'] \
and os.path.exists(self.hparams_from_file):
self.hyperparams = json.load(open(self.hparams_from_file, 'rb'))['xgb']
print('loaded hyperparams from', self.hparams_from_file)
elif self.hyperparams is None:
self.hyperparams = self.default_hyperparams.copy()
return super(XGBoost, self).fit(xtrain, ytrain, train_info, params, **kwargs)
while in the zerocost branch, this is not an option.
def fit(self, xtrain, ytrain, train_info=None, params=None, **kwargs):
if self.hyperparams is None:
self.hyperparams = self.default_hyperparams.copy()
return super(XGBoost, self).fit(xtrain, ytrain, train_info, params, **kwargs)
Which functionality should be adopted in the Develop_copy branch? Is this a case where the code in the zerocost branch should be taken as the more updated version?
from naslib.
Best to be able to read from config file, too.
from naslib.
Related Issues (20)
- Correspondance between numbers and operations in NAS-Bench-Zero-Suite. HOT 1
- Drive links no longer exist HOT 1
- How can I use NASLib with my own data? HOT 1
- Train loader for NAS-Bench-ASR
- Checkpoint restart training HOT 2
- Search algorithms for zero-shot NAS
- Units tests failing on commits HOT 2
- Taskonomy dataset loading HOT 1
- Recreate a subset of benchmarks HOT 1
- How to initialize a NASBench-301 model for training? HOT 2
- This errors that occur when I validate the setup by running tests HOT 1
- Zero-Cost Metrics HOT 2
- TransNAS-Bench-101 Download HOT 2
- RuntimeError: one of the variables needed for gradient computation has been modified by an inplace operation: [torch.DoubleTensor [1, 512, 8, 8]], which is output 0 of ReluBackward0, is at version 1; expected version 0 instead. HOT 3
- Extra .json files for zc_intro.py HOT 3
- How to get the trained weights of architecture network from NASbenchmark
- Issue with Running Predictor Experiments Due to Missing benchmarks Folder
- XGBoost experiments generalization HOT 2
- Downloading taskonomy with download_tnb.sh HOT 2
- The setup process doesn't work for me HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from naslib.