Goptuna Versions Save

A hyperparameter optimization framework, inspired by Optuna.

v0.9.0

8 months ago

Changelog

  • 585965b Bump follow-redirects from 1.13.1 to 1.14.8 in /dashboard
  • 26aa8c8 Bump json5 and ts-loader in /dashboard
  • cc6b759 Bump minimist from 1.2.5 to 1.2.6 in /dashboard
  • e0f551c Fix a concurrency bug in TPESampler
  • c32a1d1 Fix format errors
  • d5e42e1 Fix go-examples action
  • 569ef44 Merge pull request #227 from c-bata/dependabot/npm_and_yarn/dashboard/follow-redirects-1.14.8
  • 2245ddd Merge pull request #232 from c-bata/dependabot/npm_and_yarn/dashboard/minimist-1.2.6
  • f1f68d5 Merge pull request #239 from c-bata/dependabot/npm_and_yarn/dashboard/json5-and-ts-loader-2.2.3
  • 6e72335 Merge pull request #242 from c-bata/go1.21
  • f0316e7 Merge pull request #243 from c-bata/update-kurobako-benchmarks
  • 2a0c2ba Merge pull request #244 from c-bata/go-mod
  • 1752dd1 Merge pull request #245 from c-bata/remove-statik
  • fb7e528 Merge pull request #246 from c-bata/fix-data-race-tpe
  • 4e5c03b Merge pull request #247 from c-bata/fix-dashboard
  • ef89548 Merge pull request #248 from c-bata/upgrade-gorm-versions
  • 91db234 Recreate goreleaser yaml
  • 4e76bb6 Remove kurobako benchmark actions
  • efc179b Remove statik
  • 1fa6ac7 Update Makefile
  • d3d615b Update README.md
  • a6aaaae Update README.md
  • 2ed503c Update README.md
  • 323187f Update actions for kurobako benchmarks
  • d3d0cb4 Update github actions
  • 9eb16a4 Update go mod
  • d3ec811 Update golangci-lint option
  • 457cc36 Update gorm versions
  • f2cc6bd Update index.tsx
  • 8fd6152 Update package.json and webpack.config.js
  • b5de9d5 Update some components
  • df0ea1c wip

v0.8.1

3 years ago

Changelog

CHANGES

Minor improvements

  • Add options to skip an initial portion of Sobol' sequence (#208)

Minor bug fixes

  • Fix less comparator of DataGrid component on Web Dashboard (#225).

API Changes (not breaking changes)

  • Rename options for Asynchronous Successive Halving Pruner (56bbce2)

v0.8.0

3 years ago

CHANGES

Support a new sampler based on Sobol's Quasi-random Sequence

Goptuna now supports Sobol based sampler. See the paper S. Joe and F. Y. Kuo, Remark on Algorithm 659: Implementing Sobol's quasirandom sequence generator, ACM Trans. Math. Softw. 29, 49-57 (2003). for details.

np.random.rand() (seed=0) Sobol (Goptuna)
random-seed0 sobol

Usage is like this:

import (
	"github.com/c-bata/goptuna"
	"github.com/c-bata/goptuna/sobol"
)

func main() {
	study, err := goptuna.CreateStudy(
		"goptuna-example",
		goptuna.StudyOptionRelativeSampler(sobol.NewSampler()),  // Set Sobol based sampler.
	)
	...
}

Add github.com/c-bata/gorm/rdb.v2

Add rdb.v2 package built on gorm v2. So github.com/c-bata/goptuna/rdb package is now deprecated.

  • Use gorm v2 package (#124).
  • Fix duplicate trial numbers are assigned on parallel execution (#130).
  • Add CASCADE ON DELETE constraints (#170).
  • Drop schema compatibility with Optuna (#166).

Dashboard

  • Add datetime_start column on top page of Dashboard (#169).
  • Put select box to change the reload interval time on AppBar (#176).

Minor compatibility changes

  • Include the upper bound of uniform/loguniform distributions (#205)

v0.7.1

3 years ago

New features

Dashboard: filtering trials by state

You can now walk through trials by filtering and sorting.

optuna-trial-table

Dashboard: Add button to delete a study

You can delete a study from dashboard.

optuna-create-delete-study

v0.7.0

3 years ago

New feature

Built-in Web Dashboard (#157)

goptuna-dashboard

You can download standalone binaries (JavaScript files are also embedded in these binaries) via GitHub release, then you can open Web dashboard like following command.

$ goptuna --version
goptuna version 0.7.0 (rev: e8db5dc)
$ goptuna dashboard --storage sqlite:///example.db --host 127.0.0.1 --port 8000

Goptuna's RDB storage backend is compatible with Optuna. So this CLI is able to visualize Optuna's optimization results.

Improvements

  • Faster TPE categorical sampling (#152)

Bug fixes

  • Fix log message of pruned trials (#150)
  • Calculate logLikeLihoodsAbove from samplesBelow (#151)

v0.6.0

3 years ago

New feature

API changes

Pruning (Early-stopping) APIs are changed without backward compatibility.

While I added an example which uses successive halving pruner at #120, I found a lot of issues. I'm sure that nobody uses pruning functionalities (I also confirmed that Kubeflow/Katib and sile/kurobako-go does not use pruning functionalities). So I fixes those issues. And I merge it without backward compatibility.

  • Fix typo of OptionSetReductionFactor
  • Alter the argument of trial.ShouldPrune() and remove trial.Report().

Some APIs are renamed without breaking changes.

These changes are added with backward compatibilities. Older functions are deprecated.

  • Rename RandomSearchSampler to RandomSampler (#137).
  • Rename StudyOptionSetDirection to StudyOptionDirection (#138).
  • Rename StudyOptionSetTrialNotifyChannel to StudyOptionTrialNotifyChannel (#138).

Minor bug fixes

  • Fix IntUniformDistribution.ToExternalRepr() (#102)
  • Fix IntUniformDistributions.Contains() (#103)
  • Fix a bug when set attrs multiple times (#121)
  • CMA-ES: fix numerical overflow errors (#126)
  • Fix a bug of successive halving pruner (#120)

Example

  • Add an example of Gorgonia hyperparameter optimization with early stopping (ASHA) (#118, #119 and #120)

v0.5.1

4 years ago

In this release, some internal methods made public for Kubeflow/Katib.

New feature

  • Add study option to define search space (#99)

For Developers

  • Public API to call relative sampler for Kubeflow/Katib (#100)

Others

  • Generate stringer code for trial state (#101)

v0.5.0

4 years ago

From this release, new suggest API SuggestStepInt for step-interval integer parameter is available. SuggestUniform, SuggestLogUniform and SuggestDiscreteUniform are deprecated. These APIs are renamed to Suggest...Float API.

New feature

  • Suggest int parameter with step (#98)

API changes

  • Rename SuggestUniform to SuggestFloat (#96)

v0.4.0

4 years ago

This release supports CMA-ES sampler and compatible with the RDB schema of Optuna v1.3.0.

New feature

  • CMA-ES sampler (#93)

Internal chages

  • Make StudyAttrs/UserAttrs more readable (#89)
  • Add number field in trials table (#88)

Bug fixes

  • Fix concurrency problems of EnqueuTrial (#92)

Compatibility with Optuna RDB storage

This release has compatibility with Optuna v1.3.0.

v0.3.0

4 years ago

This release supports enqueue_trial and has compatibility with the RDB schema of Optuna v1.2.0.

New feature

  • Experimental support of EnqueueTrial (#86)

Bug fixes

  • Fix trial number on RDB storage (#87)

Compatibility with Optuna RDB storage

This release has compatibility with Optuna v1.2.0.