aboutsummaryrefslogtreecommitdiff
path: root/frontend/src/app
diff options
context:
space:
mode:
Diffstat (limited to 'frontend/src/app')
-rw-r--r--frontend/src/app/_data/Model.ts21
-rw-r--r--frontend/src/app/_data/Predictor.ts2
-rw-r--r--frontend/src/app/_elements/_charts/line-chart/line-chart.component.ts2
-rw-r--r--frontend/src/app/_elements/form-model/form-model.component.html4
-rw-r--r--frontend/src/app/_elements/form-model/form-model.component.ts19
5 files changed, 26 insertions, 22 deletions
diff --git a/frontend/src/app/_data/Model.ts b/frontend/src/app/_data/Model.ts
index 526a8290..d1e89e84 100644
--- a/frontend/src/app/_data/Model.ts
+++ b/frontend/src/app/_data/Model.ts
@@ -13,7 +13,7 @@ export default class Model extends FolderFile {
// Neural net training settings
public type: ProblemType = ProblemType.Regression,
public optimizer: Optimizer = Optimizer.Adam,
- public lossFunction: LossFunction = LossFunction.MeanSquaredError,
+ public lossFunction: LossFunction = LossFunctionRegression[0],
public inputNeurons: number = 1,
public hiddenLayers: number = 1,
public batchSize: BatchSize = BatchSize.O3,
@@ -132,21 +132,10 @@ export enum LossFunction {
MeanSquaredLogarithmicError = 'mean_squared_logarithmic_error',
HuberLoss = 'Huber'
}
-export enum LossFunctionRegression {
- MeanAbsoluteError = 'mean_absolute_error',
- MeanSquaredError = 'mean_squared_error',
- MeanSquaredLogarithmicError = 'mean_squared_logarithmic_error',
-}
-export enum LossFunctionBinaryClassification {
- BinaryCrossEntropy = 'binary_crossentropy',
- SquaredHingeLoss = 'squared_hinge_loss',
- HingeLoss = 'hinge_loss',
-}
-export enum LossFunctionMultiClassification {
- CategoricalCrossEntropy = 'categorical_crossentropy',
- SparseCategoricalCrossEntropy = 'sparse_categorical_crossentropy',
- KLDivergence = 'kullback_leibler_divergence',
-}
+export const LossFunctionRegression =[LossFunction.MeanAbsoluteError,LossFunction.MeanSquaredError,LossFunction.MeanSquaredLogarithmicError]
+export const LossFunctionBinaryClassification=[LossFunction.BinaryCrossEntropy,LossFunction.SquaredHingeLoss,LossFunction.HingeLoss]
+
+export const LossFunctionMultiClassification=[LossFunction.CategoricalCrossEntropy,LossFunction.SparseCategoricalCrossEntropy,LossFunction.KLDivergence]
export enum Optimizer {
Adam = 'Adam',
diff --git a/frontend/src/app/_data/Predictor.ts b/frontend/src/app/_data/Predictor.ts
index c5cb2218..e15ae8f9 100644
--- a/frontend/src/app/_data/Predictor.ts
+++ b/frontend/src/app/_data/Predictor.ts
@@ -9,7 +9,7 @@ export default class Predictor {
public accessibleByLink: boolean = false,
public dateCreated: Date = new Date(),
public uploaderId: string = '',
- public finalMetrics: Metric[] = []
+ //public finalMetrics: Metric[] = []
) { }
}
diff --git a/frontend/src/app/_elements/_charts/line-chart/line-chart.component.ts b/frontend/src/app/_elements/_charts/line-chart/line-chart.component.ts
index 9ead9232..0924801e 100644
--- a/frontend/src/app/_elements/_charts/line-chart/line-chart.component.ts
+++ b/frontend/src/app/_elements/_charts/line-chart/line-chart.component.ts
@@ -87,7 +87,7 @@ export class LineChartComponent implements AfterViewInit {
// This more specific font property overrides the global property
color:'white',
font: {
- size: 11
+ size: 10
}
}
}
diff --git a/frontend/src/app/_elements/form-model/form-model.component.html b/frontend/src/app/_elements/form-model/form-model.component.html
index 4e0d1cfb..d13cb3aa 100644
--- a/frontend/src/app/_elements/form-model/form-model.component.html
+++ b/frontend/src/app/_elements/form-model/form-model.component.html
@@ -11,7 +11,7 @@
<div class="ns-col">
<mat-form-field appearance="fill" class="mat-fix">
<mat-label>Tip problema</mat-label>
- <mat-select [(ngModel)]="newModel.type">
+ <mat-select [(ngModel)]="newModel.type" (selectionChange)="filterLossFunction()" disabled="true">
<mat-option *ngFor="let option of Object.keys(ProblemType); let optionName of Object.values(ProblemType)" [value]="option">
{{ optionName }}
</mat-option>
@@ -36,7 +36,7 @@
<mat-form-field appearance="fill" class="mat-fix">
<mat-label>Funkcija troška</mat-label>
<mat-select [(ngModel)]="newModel.lossFunction">
- <mat-option *ngFor="let option of Object.keys(LossFunction); let optionName of Object.values(LossFunction)" [value]="option">
+ <mat-option *ngFor="let option of Object.keys(lossFunction); let optionName of Object.values(lossFunction)" [value]="option">
{{ optionName }}
</mat-option>
</mat-select>
diff --git a/frontend/src/app/_elements/form-model/form-model.component.ts b/frontend/src/app/_elements/form-model/form-model.component.ts
index b9976b84..a98ceaec 100644
--- a/frontend/src/app/_elements/form-model/form-model.component.ts
+++ b/frontend/src/app/_elements/form-model/form-model.component.ts
@@ -136,7 +136,22 @@ export class FormModelComponent implements AfterViewInit {
this.testSetDistribution = event.value!;
}
- getInputColumns() {
+ filterLossFunction() {
+ if(this.newModel.type==ProblemType.Regression){
+ this.lossFunction = LossFunctionRegression;
+ this.newModel.lossFunction=LossFunction.MeanSquaredError;
+ }
+ else if(this.newModel.type==ProblemType.BinaryClassification){
+ this.lossFunction= LossFunctionBinaryClassification;
+ this.newModel.lossFunction=LossFunction.BinaryCrossEntropy;
+ }
+ else if(this.newModel.type==ProblemType.MultiClassification){
+ this.lossFunction = LossFunctionMultiClassification;
+ this.newModel.lossFunction=LossFunction.SparseCategoricalCrossEntropy;
+ }
+
+}
+getInputColumns() {
return this.forExperiment.inputColumns.filter(x => x != this.forExperiment.outputColumn);
- }
+}
}