diff options
author | Sonja Galovic <galovicsonja@gmail.com> | 2022-04-20 01:18:56 +0200 |
---|---|---|
committer | Sonja Galovic <galovicsonja@gmail.com> | 2022-04-20 01:18:56 +0200 |
commit | 78650c8e25c482c7ebdbcd5478cb71dbba227da6 (patch) | |
tree | da50b202e6da7f217d5a61256cfdbfc8fc50ab94 /frontend/src/app/training | |
parent | 314e7ff51cdbb49e5d30c6a67bcfa80a42736948 (diff) | |
parent | 61682b01751369307d7777f55be98d25d7fc10a9 (diff) |
Merge branch 'dev' of http://gitlab.pmf.kg.ac.rs/igrannonica/neuronstellar into dev
# Conflicts:
# frontend/src/app/_elements/metric-view/metric-view.component.ts
# frontend/src/app/training/training.component.ts
Diffstat (limited to 'frontend/src/app/training')
-rw-r--r-- | frontend/src/app/training/training.component.html | 4 | ||||
-rw-r--r-- | frontend/src/app/training/training.component.ts | 33 |
2 files changed, 24 insertions, 13 deletions
diff --git a/frontend/src/app/training/training.component.html b/frontend/src/app/training/training.component.html index 0849d0c3..25a29828 100644 --- a/frontend/src/app/training/training.component.html +++ b/frontend/src/app/training/training.component.html @@ -33,9 +33,7 @@ <h2 class="mt-5">Rezultati treniranja</h2> <div class="m-3" *ngIf="trainingResult"> <h2 class="my-2">Rezultati treniranja:</h2> - <p> - {{trainingResult}} - </p> + <app-metric-view *ngIf="trainingResult" [metrics]="trainingResult"></app-metric-view> </div> </div> diff --git a/frontend/src/app/training/training.component.ts b/frontend/src/app/training/training.component.ts index bff3304f..a0bec8e2 100644 --- a/frontend/src/app/training/training.component.ts +++ b/frontend/src/app/training/training.component.ts @@ -3,6 +3,7 @@ import { ActivatedRoute } from '@angular/router'; import Shared from '../Shared'; import Experiment from '../_data/Experiment'; import Model, { ProblemType } from '../_data/Model'; +import { MetricViewComponent } from '../_elements/metric-view/metric-view.component'; import { ModelLoadComponent } from '../_elements/model-load/model-load.component'; import { AuthService } from '../_services/auth.service'; import { ExperimentsService } from '../_services/experiments.service'; @@ -19,6 +20,7 @@ export class TrainingComponent implements OnInit { @ViewChild(ModelLoadComponent) modelLoadComponent?: ModelLoadComponent; @ViewChild("trainButton") trainButtonRef!: ElementRef; + @ViewChild(MetricViewComponent) metricViewComponent!: MetricViewComponent; myExperiments?: Experiment[]; selectedExperiment?: Experiment; @@ -26,16 +28,11 @@ export class TrainingComponent implements OnInit { trainingResult: any; + history: any[] = []; + term: string = ""; constructor(private modelsService: ModelsService, private route: ActivatedRoute, private experimentsService: ExperimentsService, private authService: AuthService, private signalRService: SignalRService) { - if (this.signalRService.hubConnection) { - this.signalRService.hubConnection.on("NotifyEpoch", (mName: string, mId: string, stat: string, totalEpochs: number, currentEpoch: number) => { - if (this.selectedModel?._id == mId) { - this.trainingResult = stat; - } - }); - } } ngOnInit(): void { @@ -47,16 +44,32 @@ export class TrainingComponent implements OnInit { this.authService.loggedInEvent.subscribe(_ => { this.fetchExperiments(experimentId); - this.signalRService.startConnection() + this.signalRService.startConnection(); }); + + console.log(this.signalRService.hubConnection); + if (this.signalRService.hubConnection) { + this.signalRService.hubConnection.on("NotifyEpoch", (mName: string, mId: string, stat: string, totalEpochs: number, currentEpoch: number) => { + console.log(this.selectedModel?._id, mId); + if (this.selectedModel?._id == mId) { + stat = stat.replace(/'/g, '"'); + this.trainingResult = JSON.parse(stat); + //console.log('JSON', this.trainingResult); + this.history.push(this.trainingResult); + this.metricViewComponent.update(this.history); + } + }); + } }); } fetchExperiments(andSelectWithId: string | null = '') { this.experimentsService.getMyExperiments().subscribe((experiments) => { - this.myExperiments = experiments; + this.myExperiments = experiments.reverse(); this.selectedExperiment = this.myExperiments.filter(x => x._id == andSelectWithId)[0]; + if (this.modelLoadComponent) + this.modelLoadComponent.newModel.type = this.selectedExperiment.type; }); } @@ -85,7 +98,7 @@ export class TrainingComponent implements OnInit { this.modelsService.trainModel(this.selectedModel._id, this.selectedExperiment._id).subscribe((response: any) => { //console.log('Train model complete!', response); this.trainButtonRef.nativeElement.disabled = false; - Shared.openDialog("Obaveštenje", "Treniranje modela je uspešno završeno!"); + Shared.openDialog("Obaveštenje", "Treniranje modela je počelo!"); this.trainingResult = response; }); } |