본문 바로가기

전체 글

(135)
MLOps의 인프라 요소들 MLOps는 ML Life cycle을 체계적으로 관리하여 더 빠르고 신뢰할 수 있는 결과를 달성하는데 초점을 두고 있습니다.MLOps는 강력한 인프라에 의존하고 있으며데이터처리, 모델 트레이닝, 배포 및 모니터링과 같은 핵심 작업을 지원하며 안정적으로 수행하는 것을 목표로 두고 있습니다. MLOps의 주요 인프라요소는 크게 다음과 같이 나눌 수 있습니다.Storage : 개발된 모델을 저장하거나 로깅들 ML과 관련된 모든것들을 저장한다고 생각하면 됩니다.Computing Resources : 데이터와 관련된 계산에 필요한 컴퓨팅 파워를 제공합니다.환경관리툴 : 프로젝트별 독립적인 환경을 제공하는 패키지 및 환경관리 시스템이며 파이썬을 사용하는 분들이라면 Anacoda 생각하시면 됩니다.Container..
ML LifeCycle 구성요소 & MLOps 상세 ML Life Cycle머신러닝 모델을 개발, 배포, 유지보수하는 모든 단계를 정리하는 Life Cycle크게 다음과 같은 단계로 구분을 지을 수 있음머신러닝 라이프 사이클 구성요소데이터를 수집 & 준비 : Data Collection and Preparation피처 엔지니어링 : Feature Enginnering모델 엔지니어링 : Model Selection and Model Learning모델 평가&튜닝 : Model Evaluation and Model Tuning모델 배포 & 모니터링 : Deployment and Monitoring재평가 및 모델 업데이트 : ReEvaluation and Model UpdateML을 다룰때 간과하고 있는 단계가 있다 그 단계는 5,6단계 모델 배포 & 모니터링..
DB 마이그레이션 도구 Flyway에 대해 프로젝트 중간에 투입이 되면서 Git Pull 당겨 기본적인 셋팅을 하고 실행을 시키니 다음과 같은 오류를 만나게 되었다.caused by: org.flywaydb.core.api.exception.flywayvalidateexception: validate failed: migrations have failed validation migration checksum mismatch for migration version 20240831 -> applied to database : -886486009 -> resolved locally : 2094648100 Flyway? 아주 생소한 용어로 오류를 찾아보던 중 Flyway를 어느정도 이해하게 되고 프로세스 과정을 파악하게 되었다.알아두면 유용한 도구라고 ..
[DevOps] CI/CD, Jenkins에 대한 개념이해하기 개발자로 입사한지 어느덧 6개월차가 되었다.하지만 경력입사자로 3년차 개발자가 되었고 현재 진행중인 프로젝트가 생각보다 시간이 너무 남아 중간중간 비는 시간에 신입사원 교육을 진행하게 되었다. 처음 시작은 CI/CD에 대한 교육이다.Jenkins를 선택한 이유GitLab Runner로 CD만 해봄, Github Actions으로만 CI/CD 해봄한 번도 안해본 Jenkins로 진행하며 토론식으로 교육을 하고자 한다. 제대로 CI/CD 개념을 학습하고자하며 다음과 같은 학습목표를 세우게 되었다.CI/CD 개념에 대해 이해한다.Jenkins에 대해 이해 한다.Jenkins에 대한 기능과 용어를 정리한다.Jenkins를 이용해 CI/CD 파이프라인을 구축한다.배포도구들의 차이점에 대해 정리해본다. 들어가기전 ..
[Intellij] 웹 어플리케이션 배포 패키지 유형, war, war(exploaed) 차이 개요회사 프로젝트 실행은 Spring Applications에서 Main Controller을 실행시키지 않고 따로 Tomcat 서버를 구동시킨다.Tomcat 서버를 Run하는 과정에서 war가 아닌 war(exploaed)로 실행시켜야 하고 이에 대한 차이점도 있는 것을 알게되어 정리하기 위한 게시물이다. 기본빌드(Build) : 소스코드 파일을 실행 가능한 소프트웨어 산출물로 만드는 일련의 과정을 말한다.Maven에서 Artifact : maven build의 결과로 얻을 수 있는 일반적인 .jar나 .war 또는 여타의 실행 파일을 의미한다. 빌드로 생성되는 프로젝트의 결과물이다.배포(Deploy) : 응용 프로그램을 서버 상에서 활용할 수 있도록 구동시키는 것을 의미한다. 실행 가능한 파일을 서버..
정렬(sort) 버블정렬(bubble sort)* 두 인접한 데이터를 비교해서, 앞에 있는 데이터가 뒤에 있는 데이터보다 크면, 자리를 바꾸는 정렬 알고리즘  데이터가 네 개일때 [1,9,3,2]1차 순회1과 9비교, 자리바꿈없음 [1,9,3,2]9와 3비교, 자리바꿈 [1,3,9,2]9와 2비교, 자리바꿈 [1,3,2,9]2차 순회1과 3비교, 자리바꿈 없음 [1,3,2,9]3과 2비교, 자리바꿈 [1,2,3,9]3와 9 비교, 자리바꿈 없음 [1,2,3,9]3차 순회1과 2비교, 자리바꿈 없음 [1,2,3,9]2와 3비교, 자리바꿈 없음 [1,2,3,9]3과 9비교, 자리바꿈 없음 [1,2,3,9] * n개의 리스트가 있는 경우 최대 n-1번의 로직을 적용* 로직을 1번 적용할때마다 가장 큰 숫자가 뒤에서부터 1개씩..
[IntelliJ] java.lang.ClassNotFoundException이 발생한 경우 문제 기존에 계속 스프링 프로젝트를 실행했던 프로젝트였는데 어느순간부터 자바를 jdk를 찾지 못해 main application을 실행하지 못하는 생황이 발생 어플리케이션 실행 시 java.lang.ClassNotFoundException이 오류메시지가 발생했다. 해결방법 1. Edit Configurations을 클릭 2. jdk 제대로 import 되어있는지 확인하거나 다른 jdk를 선택해서 적용해본다.
[ExtJS] ExtJS란, 설치 방법, 기초문법, Theme 종류 ExtJS 란? ExtJS는 Client-Side 기반의 JavaScript Framework 으로 상용 프레임워크입니다. 수백가지가 넘는 강력한 UI 컴포넌트를 지원하며, Classic, Gray, Crisp 등의 여러 테마 또한 지원하고 있습니다. 컴포넌트 제작은 key value 형태를 가진 JSON 구조로 생성됩니다. 예시) 컴포넌트의 일부입니다. ... { xtype : 'panel', border : true, flex : 1, region : 'center' } ... .. 하지만 React, Vue.js, Angular에 비해 상용 프레임워크로 자료들을 구글에서 많이 찾을 수는 없습니다. 공식문서를 참고하여 개발을 하거나 현재 인프런에서 ExtJS 무료 강의가 오픈되어있어 기본기를 쌓을 수..