전이학습 상세 수정
This commit is contained in:
@@ -134,26 +134,26 @@ public class ModelTrainDetailApiController {
|
||||
return ApiResponseDto.ok(modelTrainDetailService.getByModelMappingDataset(uuid));
|
||||
}
|
||||
|
||||
@Operation(summary = "모델관리 > 전이 학습 실행설정 > 모델선택", description = "모델선택 정보 API")
|
||||
@ApiResponses(
|
||||
value = {
|
||||
@ApiResponse(
|
||||
responseCode = "200",
|
||||
description = "조회 성공",
|
||||
content =
|
||||
@Content(
|
||||
mediaType = "application/json",
|
||||
schema = @Schema(implementation = TransferDetailDto.class))),
|
||||
@ApiResponse(responseCode = "404", description = "데이터셋을 찾을 수 없음", content = @Content),
|
||||
@ApiResponse(responseCode = "500", description = "서버 오류", content = @Content)
|
||||
})
|
||||
@GetMapping("/transfer/detail/{uuid}")
|
||||
public ApiResponseDto<TransferDetailDto> getTransferDetail(
|
||||
@Parameter(description = "모델 uuid", example = "7fbdff54-ea87-4b02-90d1-955fa2a3457e")
|
||||
@PathVariable
|
||||
UUID uuid) {
|
||||
return ApiResponseDto.ok(modelTrainDetailService.getTransferDetail(uuid));
|
||||
}
|
||||
// @Operation(summary = "모델관리 > 전이 학습 실행설정 > 모델선택", description = "모델선택 정보 API")
|
||||
// @ApiResponses(
|
||||
// value = {
|
||||
// @ApiResponse(
|
||||
// responseCode = "200",
|
||||
// description = "조회 성공",
|
||||
// content =
|
||||
// @Content(
|
||||
// mediaType = "application/json",
|
||||
// schema = @Schema(implementation = TransferDetailDto.class))),
|
||||
// @ApiResponse(responseCode = "404", description = "데이터셋을 찾을 수 없음", content = @Content),
|
||||
// @ApiResponse(responseCode = "500", description = "서버 오류", content = @Content)
|
||||
// })
|
||||
// @GetMapping("/transfer/detail/{uuid}")
|
||||
// public ApiResponseDto<TransferDetailDto> getTransferDetail(
|
||||
// @Parameter(description = "모델 uuid", example = "7fbdff54-ea87-4b02-90d1-955fa2a3457e")
|
||||
// @PathVariable
|
||||
// UUID uuid) {
|
||||
// return ApiResponseDto.ok(modelTrainDetailService.getTransferDetail(uuid));
|
||||
// }
|
||||
|
||||
@Operation(summary = "모델관리 > 모델 상세 > 성능 정보 (Train)", description = "모델 상세 > 성능 정보 (Train) API")
|
||||
@ApiResponses(
|
||||
|
||||
@@ -20,4 +20,25 @@ public class ModelConfigDto {
|
||||
private Float testPercent;
|
||||
private String memo;
|
||||
}
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public static class TransferBasic {
|
||||
private Long configId;
|
||||
private Long modelId;
|
||||
private Integer epochCount;
|
||||
private Float trainPercent;
|
||||
private Float validationPercent;
|
||||
private Float testPercent;
|
||||
private String memo;
|
||||
private Long beforeConfigId;
|
||||
private Long beforeModelId;
|
||||
private Integer beforeEpochCount;
|
||||
private Float beforeTrainPercent;
|
||||
private Float beforeValidationPercent;
|
||||
private Float beforeTestPercent;
|
||||
private String beforeMemo;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@ import com.kamco.cd.training.common.enums.TrainStatusType;
|
||||
import com.kamco.cd.training.common.enums.TrainType;
|
||||
import com.kamco.cd.training.common.utils.enums.Enums;
|
||||
import com.kamco.cd.training.common.utils.interfaces.JsonFormatDttm;
|
||||
import com.kamco.cd.training.dataset.dto.DatasetDto.SelectDataSet;
|
||||
import com.kamco.cd.training.dataset.dto.DatasetDto.SelectTransferDataSet;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import java.time.Duration;
|
||||
import java.time.ZonedDateTime;
|
||||
@@ -176,10 +176,10 @@ public class ModelTrainDetailDto {
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public static class TransferDetailDto {
|
||||
private ModelConfigDto.Basic etcConfig;
|
||||
private ModelConfigDto.TransferBasic etcConfig;
|
||||
private TransferHyperSummary modelTrainHyper;
|
||||
private List<SelectDataSet> modelTrainDataset;
|
||||
private List<SelectDataSet> beforeTrainDataset;
|
||||
private List<SelectTransferDataSet> modelTrainDataset;
|
||||
// private List<SelectDataSet> beforeTrainDataset;
|
||||
}
|
||||
|
||||
@Getter
|
||||
|
||||
@@ -251,6 +251,7 @@ public class ModelTrainMngDto {
|
||||
|
||||
private String memo;
|
||||
private String userNm;
|
||||
private UUID beforeUuid;
|
||||
|
||||
public String getStatusName() {
|
||||
if (this.statusCd == null || this.statusCd.isBlank()) return null;
|
||||
|
||||
@@ -2,7 +2,7 @@ package com.kamco.cd.training.model.service;
|
||||
|
||||
import com.kamco.cd.training.common.enums.ModelType;
|
||||
import com.kamco.cd.training.dataset.dto.DatasetDto.DatasetReq;
|
||||
import com.kamco.cd.training.dataset.dto.DatasetDto.SelectDataSet;
|
||||
import com.kamco.cd.training.dataset.dto.DatasetDto.SelectTransferDataSet;
|
||||
import com.kamco.cd.training.model.dto.ModelConfigDto;
|
||||
import com.kamco.cd.training.model.dto.ModelTrainDetailDto.DetailSummary;
|
||||
import com.kamco.cd.training.model.dto.ModelTrainDetailDto.HyperSummary;
|
||||
@@ -73,11 +73,11 @@ public class ModelTrainDetailService {
|
||||
Basic modelInfo = modelTrainDetailCoreService.findByModelByUUID(uuid);
|
||||
|
||||
// config 정보 조회
|
||||
ModelConfigDto.Basic configInfo = mngCoreService.findModelConfigByModelId(uuid);
|
||||
ModelConfigDto.TransferBasic configInfo = mngCoreService.findModelTransferConfigByModelId(uuid);
|
||||
|
||||
// 하이파라미터 정보 조회
|
||||
TransferHyperSummary hyperSummary = modelTrainDetailCoreService.getTransferHyperSummary(uuid);
|
||||
List<SelectDataSet> dataSets = new ArrayList<>();
|
||||
List<SelectTransferDataSet> dataSets = new ArrayList<>();
|
||||
|
||||
DatasetReq datasetReq = new DatasetReq();
|
||||
List<Long> datasetIds = new ArrayList<>();
|
||||
@@ -91,39 +91,40 @@ public class ModelTrainDetailService {
|
||||
datasetReq.setModelNo(modelInfo.getModelNo());
|
||||
|
||||
if (modelInfo.getModelNo().equals(ModelType.G1.getId())) {
|
||||
dataSets = mngCoreService.getDatasetSelectG1List(datasetReq);
|
||||
dataSets = mngCoreService.getDatasetTransferSelectG1List(modelInfo.getId());
|
||||
} else {
|
||||
dataSets = mngCoreService.getDatasetSelectG2G3List(datasetReq);
|
||||
dataSets =
|
||||
mngCoreService.getDatasetTransferSelectG2G3List(
|
||||
modelInfo.getId(), modelInfo.getModelNo());
|
||||
}
|
||||
|
||||
DatasetReq beforeDatasetReq = new DatasetReq();
|
||||
List<Long> beforeDatasetIds = new ArrayList<>();
|
||||
List<SelectDataSet> beforeDataSets = new ArrayList<>();
|
||||
|
||||
Long beforeModelId = modelInfo.getBeforeModelId();
|
||||
if (beforeModelId != null) {
|
||||
Basic beforeInfo = modelTrainDetailCoreService.findByModelBeforeId(beforeModelId);
|
||||
List<MappingDataset> beforeDatasets =
|
||||
modelTrainDetailCoreService.getByModelMappingDataset(beforeInfo.getUuid());
|
||||
|
||||
for (MappingDataset before : beforeDatasets) {
|
||||
beforeDatasetIds.add(before.getDatasetId());
|
||||
}
|
||||
beforeDatasetReq.setIds(beforeDatasetIds);
|
||||
beforeDatasetReq.setModelNo(modelInfo.getModelNo());
|
||||
|
||||
if (beforeInfo.getModelNo().equals(ModelType.G1.getId())) {
|
||||
beforeDataSets = mngCoreService.getDatasetSelectG1List(beforeDatasetReq);
|
||||
} else {
|
||||
beforeDataSets = mngCoreService.getDatasetSelectG2G3List(beforeDatasetReq);
|
||||
}
|
||||
}
|
||||
// DatasetReq beforeDatasetReq = new DatasetReq();
|
||||
// List<Long> beforeDatasetIds = new ArrayList<>();
|
||||
// List<SelectDataSet> beforeDataSets = new ArrayList<>();
|
||||
//
|
||||
// Long beforeModelId = modelInfo.getBeforeModelId();
|
||||
// if (beforeModelId != null) {
|
||||
// Basic beforeInfo = modelTrainDetailCoreService.findByModelBeforeId(beforeModelId);
|
||||
// List<MappingDataset> beforeDatasets =
|
||||
// modelTrainDetailCoreService.getByModelMappingDataset(beforeInfo.getUuid());
|
||||
//
|
||||
// for (MappingDataset before : beforeDatasets) {
|
||||
// beforeDatasetIds.add(before.getDatasetId());
|
||||
// }
|
||||
// beforeDatasetReq.setIds(beforeDatasetIds);
|
||||
// beforeDatasetReq.setModelNo(modelInfo.getModelNo());
|
||||
//
|
||||
// if (beforeInfo.getModelNo().equals(ModelType.G1.getId())) {
|
||||
// beforeDataSets = mngCoreService.getDatasetSelectG1List(beforeDatasetReq);
|
||||
// } else {
|
||||
// beforeDataSets = mngCoreService.getDatasetSelectG2G3List(beforeDatasetReq);
|
||||
// }
|
||||
// }
|
||||
|
||||
TransferDetailDto transferDetailDto = new TransferDetailDto();
|
||||
transferDetailDto.setEtcConfig(configInfo);
|
||||
transferDetailDto.setModelTrainHyper(hyperSummary);
|
||||
transferDetailDto.setModelTrainDataset(dataSets);
|
||||
transferDetailDto.setBeforeTrainDataset(beforeDataSets);
|
||||
|
||||
return transferDetailDto;
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.kamco.cd.training.model.service;
|
||||
|
||||
import com.kamco.cd.training.common.dto.HyperParam;
|
||||
import com.kamco.cd.training.common.enums.HyperParamSelectType;
|
||||
import com.kamco.cd.training.common.enums.ModelType;
|
||||
import com.kamco.cd.training.common.enums.TrainType;
|
||||
import com.kamco.cd.training.common.exception.CustomApiException;
|
||||
import com.kamco.cd.training.dataset.dto.DatasetDto.DatasetReq;
|
||||
@@ -115,7 +116,7 @@ public class ModelTrainMngService {
|
||||
* @return
|
||||
*/
|
||||
public List<SelectDataSet> getDatasetSelectList(DatasetReq req) {
|
||||
if (req.getModelNo().equals("G1")) {
|
||||
if (req.getModelNo().equals(ModelType.G1.getId())) {
|
||||
return modelTrainMngCoreService.getDatasetSelectG1List(req);
|
||||
} else {
|
||||
return modelTrainMngCoreService.getDatasetSelectG2G3List(req);
|
||||
|
||||
Reference in New Issue
Block a user