@elaraai/east-py-datascience 0.0.2-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +18 -0
- package/README.md +104 -0
- package/dist/gp/gp.d.ts +398 -0
- package/dist/gp/gp.d.ts.map +1 -0
- package/dist/gp/gp.js +170 -0
- package/dist/gp/gp.js.map +1 -0
- package/dist/index.d.ts +27 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +39 -0
- package/dist/index.js.map +1 -0
- package/dist/lightgbm/lightgbm.d.ts +494 -0
- package/dist/lightgbm/lightgbm.d.ts.map +1 -0
- package/dist/lightgbm/lightgbm.js +155 -0
- package/dist/lightgbm/lightgbm.js.map +1 -0
- package/dist/mads/mads.d.ts +413 -0
- package/dist/mads/mads.d.ts.map +1 -0
- package/dist/mads/mads.js +221 -0
- package/dist/mads/mads.js.map +1 -0
- package/dist/ngboost/ngboost.d.ts +433 -0
- package/dist/ngboost/ngboost.d.ts.map +1 -0
- package/dist/ngboost/ngboost.js +178 -0
- package/dist/ngboost/ngboost.js.map +1 -0
- package/dist/optuna/optuna.d.ts +797 -0
- package/dist/optuna/optuna.d.ts.map +1 -0
- package/dist/optuna/optuna.js +268 -0
- package/dist/optuna/optuna.js.map +1 -0
- package/dist/scipy/scipy.d.ts +954 -0
- package/dist/scipy/scipy.d.ts.map +1 -0
- package/dist/scipy/scipy.js +287 -0
- package/dist/scipy/scipy.js.map +1 -0
- package/dist/shap/shap.d.ts +657 -0
- package/dist/shap/shap.d.ts.map +1 -0
- package/dist/shap/shap.js +241 -0
- package/dist/shap/shap.js.map +1 -0
- package/dist/simanneal/simanneal.d.ts +531 -0
- package/dist/simanneal/simanneal.d.ts.map +1 -0
- package/dist/simanneal/simanneal.js +231 -0
- package/dist/simanneal/simanneal.js.map +1 -0
- package/dist/sklearn/sklearn.d.ts +1272 -0
- package/dist/sklearn/sklearn.d.ts.map +1 -0
- package/dist/sklearn/sklearn.js +307 -0
- package/dist/sklearn/sklearn.js.map +1 -0
- package/dist/torch/torch.d.ts +658 -0
- package/dist/torch/torch.d.ts.map +1 -0
- package/dist/torch/torch.js +233 -0
- package/dist/torch/torch.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/types.d.ts +80 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +81 -0
- package/dist/types.js.map +1 -0
- package/dist/xgboost/xgboost.d.ts +504 -0
- package/dist/xgboost/xgboost.d.ts.map +1 -0
- package/dist/xgboost/xgboost.js +177 -0
- package/dist/xgboost/xgboost.js.map +1 -0
- package/package.json +82 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"optuna.d.ts","sourceRoot":"","sources":["../../src/optuna/optuna.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,268 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2025 Elara AI Pty Ltd
|
|
3
|
+
* Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Bayesian optimization using Optuna's TPE sampler.
|
|
7
|
+
*
|
|
8
|
+
* Provides parameter optimization for blackbox functions with mixed parameter
|
|
9
|
+
* types (categorical, integer, continuous). Useful for:
|
|
10
|
+
* - Hyperparameter tuning for ML models
|
|
11
|
+
* - Design optimization
|
|
12
|
+
* - Any blackbox optimization with structured parameter spaces
|
|
13
|
+
*
|
|
14
|
+
* @packageDocumentation
|
|
15
|
+
*/
|
|
16
|
+
import { East, StructType, VariantType, OptionType, ArrayType, IntegerType, FloatType, StringType, BooleanType, FunctionType, NullType, } from "@elaraai/east";
|
|
17
|
+
// ===========================================
|
|
18
|
+
// Parameter Types
|
|
19
|
+
// ===========================================
|
|
20
|
+
/**
|
|
21
|
+
* Parameter value type (can be int, float, string, or bool).
|
|
22
|
+
*/
|
|
23
|
+
export const ParamValueType = VariantType({
|
|
24
|
+
int: IntegerType,
|
|
25
|
+
float: FloatType,
|
|
26
|
+
string: StringType,
|
|
27
|
+
bool: BooleanType,
|
|
28
|
+
});
|
|
29
|
+
/**
|
|
30
|
+
* Parameter space kind for defining search spaces.
|
|
31
|
+
*/
|
|
32
|
+
export const ParamSpaceKindType = VariantType({
|
|
33
|
+
/** Integer parameter with low/high bounds */
|
|
34
|
+
int: NullType,
|
|
35
|
+
/** Float parameter with low/high bounds */
|
|
36
|
+
float: NullType,
|
|
37
|
+
/** Categorical parameter with choices */
|
|
38
|
+
categorical: NullType,
|
|
39
|
+
/** Log-uniform float parameter (for learning rates, etc.) */
|
|
40
|
+
log_uniform: NullType,
|
|
41
|
+
});
|
|
42
|
+
/**
|
|
43
|
+
* Parameter search space definition.
|
|
44
|
+
*
|
|
45
|
+
* Defines a single parameter's name, type, and valid range/choices.
|
|
46
|
+
*/
|
|
47
|
+
export const ParamSpaceType = StructType({
|
|
48
|
+
/** Parameter name */
|
|
49
|
+
name: StringType,
|
|
50
|
+
/** Parameter kind (int, float, categorical, log_uniform) */
|
|
51
|
+
kind: ParamSpaceKindType,
|
|
52
|
+
/** Lower bound (for int, float, log_uniform) */
|
|
53
|
+
low: OptionType(FloatType),
|
|
54
|
+
/** Upper bound (for int, float, log_uniform) */
|
|
55
|
+
high: OptionType(FloatType),
|
|
56
|
+
/** Choices (for categorical) */
|
|
57
|
+
choices: OptionType(ArrayType(ParamValueType)),
|
|
58
|
+
});
|
|
59
|
+
/**
|
|
60
|
+
* Named parameter (name + value pair).
|
|
61
|
+
*
|
|
62
|
+
* Represents a single parameter with its suggested/best value.
|
|
63
|
+
*/
|
|
64
|
+
export const NamedParamType = StructType({
|
|
65
|
+
/** Parameter name */
|
|
66
|
+
name: StringType,
|
|
67
|
+
/** Parameter value */
|
|
68
|
+
value: ParamValueType,
|
|
69
|
+
});
|
|
70
|
+
// ===========================================
|
|
71
|
+
// Optimization Config Types
|
|
72
|
+
// ===========================================
|
|
73
|
+
/**
|
|
74
|
+
* Optimization direction (minimize or maximize).
|
|
75
|
+
*/
|
|
76
|
+
export const OptimizationDirectionType = VariantType({
|
|
77
|
+
minimize: NullType,
|
|
78
|
+
maximize: NullType,
|
|
79
|
+
});
|
|
80
|
+
/**
|
|
81
|
+
* Pruner type for early stopping of unpromising trials.
|
|
82
|
+
*/
|
|
83
|
+
export const PrunerType = VariantType({
|
|
84
|
+
/** No pruning */
|
|
85
|
+
none: NullType,
|
|
86
|
+
/** Median pruner - prune if below median of previous trials */
|
|
87
|
+
median: NullType,
|
|
88
|
+
/** Hyperband pruner - aggressive early stopping */
|
|
89
|
+
hyperband: NullType,
|
|
90
|
+
});
|
|
91
|
+
/**
|
|
92
|
+
* Optuna study configuration.
|
|
93
|
+
*/
|
|
94
|
+
export const OptunaStudyConfigType = StructType({
|
|
95
|
+
/** Optimization direction (default: minimize) */
|
|
96
|
+
direction: OptionType(OptimizationDirectionType),
|
|
97
|
+
/** Number of trials to run */
|
|
98
|
+
n_trials: IntegerType,
|
|
99
|
+
/** Random seed for reproducibility */
|
|
100
|
+
random_state: OptionType(IntegerType),
|
|
101
|
+
/** Pruner for early stopping (default: none) */
|
|
102
|
+
pruner: OptionType(PrunerType),
|
|
103
|
+
});
|
|
104
|
+
// ===========================================
|
|
105
|
+
// Result Types
|
|
106
|
+
// ===========================================
|
|
107
|
+
/**
|
|
108
|
+
* Single trial result.
|
|
109
|
+
*/
|
|
110
|
+
export const TrialResultType = StructType({
|
|
111
|
+
/** Trial ID */
|
|
112
|
+
trial_id: IntegerType,
|
|
113
|
+
/** Parameters used in this trial */
|
|
114
|
+
params: ArrayType(NamedParamType),
|
|
115
|
+
/** Objective score */
|
|
116
|
+
score: FloatType,
|
|
117
|
+
});
|
|
118
|
+
/**
|
|
119
|
+
* Optimization study result.
|
|
120
|
+
*/
|
|
121
|
+
export const StudyResultType = StructType({
|
|
122
|
+
/** Best parameters found */
|
|
123
|
+
best_params: ArrayType(NamedParamType),
|
|
124
|
+
/** Best objective score */
|
|
125
|
+
best_score: FloatType,
|
|
126
|
+
/** All completed trials */
|
|
127
|
+
trials: ArrayType(TrialResultType),
|
|
128
|
+
});
|
|
129
|
+
// ===========================================
|
|
130
|
+
// Objective Function Type
|
|
131
|
+
// ===========================================
|
|
132
|
+
/**
|
|
133
|
+
* Objective function type: takes named params, returns score.
|
|
134
|
+
*
|
|
135
|
+
* The objective function is an East function that receives suggested
|
|
136
|
+
* parameters and returns a scalar score to minimize/maximize.
|
|
137
|
+
*/
|
|
138
|
+
export const ObjectiveFunctionType = FunctionType([ArrayType(NamedParamType)], FloatType);
|
|
139
|
+
// ===========================================
|
|
140
|
+
// Platform Functions
|
|
141
|
+
// ===========================================
|
|
142
|
+
/**
|
|
143
|
+
* Run Bayesian optimization with Optuna.
|
|
144
|
+
*
|
|
145
|
+
* Uses TPE (Tree-structured Parzen Estimator) to efficiently search
|
|
146
|
+
* the parameter space, balancing exploration and exploitation.
|
|
147
|
+
*
|
|
148
|
+
* @param search_space - Array of parameter space definitions
|
|
149
|
+
* @param objective - East function that takes params and returns score
|
|
150
|
+
* @param config - Study configuration (n_trials, direction, etc.)
|
|
151
|
+
* @returns Study result with best params, best score, and all trials
|
|
152
|
+
*
|
|
153
|
+
* @example
|
|
154
|
+
* ```ts
|
|
155
|
+
* import { East, FloatType, variant } from "@elaraai/east";
|
|
156
|
+
* import { Optuna } from "@elaraai/east-py-datascience";
|
|
157
|
+
*
|
|
158
|
+
* // Define objective: minimize (x - 2)^2 + (y - 3)^2
|
|
159
|
+
* const objective = East.function(
|
|
160
|
+
* [ArrayType(Optuna.Types.NamedParamType)],
|
|
161
|
+
* FloatType,
|
|
162
|
+
* ($, params) => {
|
|
163
|
+
* // Extract params by name
|
|
164
|
+
* const x = $.let(params.get(0n).value); // First param
|
|
165
|
+
* const y = $.let(params.get(1n).value); // Second param
|
|
166
|
+
* // Compute objective (assuming float params)
|
|
167
|
+
* return $.return(
|
|
168
|
+
* x.match({ float: v => v }).subtract(2.0).multiply(
|
|
169
|
+
* x.match({ float: v => v }).subtract(2.0)
|
|
170
|
+
* ).add(
|
|
171
|
+
* y.match({ float: v => v }).subtract(3.0).multiply(
|
|
172
|
+
* y.match({ float: v => v }).subtract(3.0)
|
|
173
|
+
* )
|
|
174
|
+
* )
|
|
175
|
+
* );
|
|
176
|
+
* }
|
|
177
|
+
* );
|
|
178
|
+
*
|
|
179
|
+
* const optimize = East.function([], Optuna.Types.StudyResultType, $ => {
|
|
180
|
+
* const search_space = $.let([
|
|
181
|
+
* { name: "x", kind: variant("float", null), low: variant("some", 0.0), high: variant("some", 5.0), choices: variant("none", null) },
|
|
182
|
+
* { name: "y", kind: variant("float", null), low: variant("some", 0.0), high: variant("some", 5.0), choices: variant("none", null) },
|
|
183
|
+
* ]);
|
|
184
|
+
* const config = $.let({
|
|
185
|
+
* direction: variant("some", variant("minimize", null)),
|
|
186
|
+
* n_trials: 50n,
|
|
187
|
+
* random_state: variant("some", 42n),
|
|
188
|
+
* pruner: variant("none", null),
|
|
189
|
+
* });
|
|
190
|
+
* return $.return(Optuna.optimize(search_space, objective, config));
|
|
191
|
+
* });
|
|
192
|
+
* ```
|
|
193
|
+
*/
|
|
194
|
+
export const optuna_optimize = East.platform("optuna_optimize", [
|
|
195
|
+
ArrayType(ParamSpaceType),
|
|
196
|
+
ObjectiveFunctionType,
|
|
197
|
+
OptunaStudyConfigType,
|
|
198
|
+
], StudyResultType);
|
|
199
|
+
// ===========================================
|
|
200
|
+
// Grouped Export
|
|
201
|
+
// ===========================================
|
|
202
|
+
/**
|
|
203
|
+
* Type definitions for Optuna optimization.
|
|
204
|
+
*/
|
|
205
|
+
export const OptunaTypes = {
|
|
206
|
+
/** Parameter value variant type */
|
|
207
|
+
ParamValueType,
|
|
208
|
+
/** Parameter space kind type */
|
|
209
|
+
ParamSpaceKindType,
|
|
210
|
+
/** Parameter space definition type */
|
|
211
|
+
ParamSpaceType,
|
|
212
|
+
/** Named parameter type */
|
|
213
|
+
NamedParamType,
|
|
214
|
+
/** Optimization direction type */
|
|
215
|
+
OptimizationDirectionType,
|
|
216
|
+
/** Pruner type */
|
|
217
|
+
PrunerType,
|
|
218
|
+
/** Study config type */
|
|
219
|
+
StudyConfigType: OptunaStudyConfigType,
|
|
220
|
+
/** Trial result type */
|
|
221
|
+
TrialResultType,
|
|
222
|
+
/** Study result type */
|
|
223
|
+
StudyResultType,
|
|
224
|
+
/** Objective function type */
|
|
225
|
+
ObjectiveFunctionType,
|
|
226
|
+
};
|
|
227
|
+
/**
|
|
228
|
+
* Bayesian optimization using Optuna.
|
|
229
|
+
*
|
|
230
|
+
* Provides efficient parameter optimization using TPE (Tree-structured
|
|
231
|
+
* Parzen Estimator) for blackbox functions with mixed parameter types.
|
|
232
|
+
*
|
|
233
|
+
* Supports:
|
|
234
|
+
* - Integer, float, and categorical parameters
|
|
235
|
+
* - Log-uniform sampling for learning rates
|
|
236
|
+
* - Minimization and maximization
|
|
237
|
+
* - Early stopping with pruners
|
|
238
|
+
*
|
|
239
|
+
* @example
|
|
240
|
+
* ```ts
|
|
241
|
+
* import { East, FloatType, variant } from "@elaraai/east";
|
|
242
|
+
* import { Optuna } from "@elaraai/east-py-datascience";
|
|
243
|
+
*
|
|
244
|
+
* const objective = East.function(
|
|
245
|
+
* [ArrayType(Optuna.Types.NamedParamType)],
|
|
246
|
+
* FloatType,
|
|
247
|
+
* ($, params) => {
|
|
248
|
+
* // Your objective function here
|
|
249
|
+
* return $.return(score);
|
|
250
|
+
* }
|
|
251
|
+
* );
|
|
252
|
+
*
|
|
253
|
+
* const result = Optuna.optimize(search_space, objective, config);
|
|
254
|
+
* ```
|
|
255
|
+
*/
|
|
256
|
+
export const Optuna = {
|
|
257
|
+
/**
|
|
258
|
+
* Run Bayesian optimization.
|
|
259
|
+
*
|
|
260
|
+
* Efficiently searches the parameter space using TPE.
|
|
261
|
+
*/
|
|
262
|
+
optimize: optuna_optimize,
|
|
263
|
+
/**
|
|
264
|
+
* Type definitions for Optuna functions.
|
|
265
|
+
*/
|
|
266
|
+
Types: OptunaTypes,
|
|
267
|
+
};
|
|
268
|
+
//# sourceMappingURL=optuna.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"optuna.js","sourceRoot":"","sources":["../../src/optuna/optuna.ts"],"names":[],"mappings":"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"}
|