Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Entropy Search for Information-Efficient Global Optimization - JMLR v13

License

NotificationsYou must be signed in to change notification settings

MethodsOfMachineLearning/entropy-search

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VERSION 1.1 - March 2017

This repository contains a Matlab implementation and demonstration for the global optimizationalgorithm called Entropy Search, as described in the initialJMLR publication

Authors

  • Philipp Hennig & Christian Schuler, 2011
  • Robert Eisele, 2014-2015
  • Edgar D. Klenske, 2017

Demo Experiment

An example script can be found inExampleSetup.m, it tries to find an optimum for the Rosenbrock function and plots the resulting Gaussian process afterwards.

Running Entropy Search

From the Matlab subdirectory, you should be able to call

EntropySearch(in), where

in.covfunc      = {@covSEard};       % GP kernel  in.covfunc_dx   = {@covSEard_dx_MD}; % derivative of GP kernel. You can use covSEard_dx_MD and covRQard_dx_MD if you use Carl's & Hannes' covSEard, covRQard, respectively.  in.hyp          = hyp;  % hyperparameters, with fields .lik (noise level) and .cov (kernel hyperparameters), see documentation of the kernel functions for details.  in.xmin         = xmin; % lower bounds of rectangular search domain  in.xmax         = xmax; % upper bounds of rectangular search domain  in.MaxEval      = H;    % Horizon (number of evaluations allowed)  in.f            = @(x) f(x) % handle to objective function

That handle@f is obviously the core part of the problem. If you use this method for actual experimental design, use the "PhysicalExperiment" function handle, which simply prompts for user input at the selected locations.

Dependencies

  • the Matlab optimization toolbox. If you do not have this, you can go through the code and replace calls tofmincon withfminbnd (much less efficient), or with a call tominimize.m (which you can get fromhttp://www.gaussianprocess.org/gpml/code/matlab/util/minimize.m). But note that minimize does not automatically handle linear constraints. You can implement those naively by changing function handles such that they return+inf whenever evaluated outside the bounds.

All other dependencies (Eigen,logsumexp,tprod) are currently part of this repository.

Compiling

Part by part, the code of Entropy Search will be replaced by cpp/mex implementations to achieve a considerable speedup. The Matlab version of the replaced code resides in theutil subdirectory, while the c++ implementation is incpp. To compile, run the scriptcompile_utilities.m. The mex-files take precedence over the Matlab implementation.

Copyright & license

2011-2017 (c) Max Planck Society.Released under theMIT License.

About

Entropy Search for Information-Efficient Global Optimization - JMLR v13

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors2

  •  
  •  

[8]ページ先頭

©2009-2025 Movatter.jp