전체 글

카테고리 없음

[TEST] 티스토리 자동발행 LIVE V2 본문 검증

티스토리 자동발행 시스템의 두 번째 공개 검증 글입니다.이번 테스트에서는 TinyMCE 편집기 화면에 입력된 내용뿐만 아니라 실제 Tistory 저장 모델과 공개 페이지 본문까지 정상적으로 동기화되는지 확인합니다.본문 직렬화 검증을 통과한 뒤 정확히 한 번만 공개 발행하며, 공개 URL에서 이 문장이 확인되어야 테스트가 성공한 것으로 처리합니다.

Programing/AI,머신러닝,딥러닝

[데이터과정 10일차] — Docker·Jenkins로 AI 서비스를 자동 배포하고 MLOps 구성하기

10일차에는 지금까지 만든 데이터 처리와 AI 모델을 실제로 운영할 수 있는 서비스 형태로 배포하는 방법을 배웠다.앞선 수업에서는 Kafka, FastAPI, 머신러닝, 딥러닝, YOLO 같은 기술을 각각 실습했다.하지만 실제 서비스에서는 단순히 Python 파일을 실행하는 것만으로 끝나지 않는다.서버가 재부팅되더라도 다시 실행되어야 하고,여러 프로그램이 서로 연결되어야 하며,코드가 수정되면 새 버전을 배포해야 하고,AI 모델에 들어오는 데이터가 달라지면 모델을 다시 학습해야 할 수도 있다.이번 수업에서는 이런 문제를 해결하기 위해 다음 기술들을 사용했다.WSL2DockerDocker ComposeJenkinsPortainerMLOpsDrift Detection자동 재학습전체 흐름은 다음과 같았다.개발 ..

Programing/AI,머신러닝,딥러닝

[데이터과정 9일차] — YOLOv8과 DeepSORT로 객체 탐지·추적하기

8일차에는 CNN을 이용해 이미지 한 장을 보고 어떤 클래스인지 분류하는 방법을 배웠다.9일차에는 여기서 한 단계 더 나아가 이미지나 영상 안에서 객체가 어디에 있는지 찾고, 영상이 진행되는 동안 같은 객체를 계속 따라가는 방법을 실습했다.이번 수업의 핵심 기술은 두 가지였다.YOLOv8→ 객체 탐지DeepSORT→ 객체 추적전체 흐름은 다음과 같았다.영상 입력→ YOLOv8 객체 탐지→ Bounding Box 생성→ 객체 클래스 확인→ DeepSORT에 탐지 결과 전달→ 객체별 ID 부여→ 프레임이 바뀌어도 같은 객체 추적→ 결과 영상 출력이번 실습을 통해 단순 이미지 분류에서 벗어나 실시간 영상 속 여러 객체를 찾아내고 이동 경로까지 추적하는 컴퓨터 비전 구조를 경험했다.이미지 분류와 객체 탐지는 다..

Programing/AI,머신러닝,딥러닝

[데이터과정 8일차] — CNN으로 CIFAR-10 이미지 분류하기

7일차에는 Keras를 이용해 Dense Layer 기반의 딥러닝 신경망을 만들어봤다.8일차에는 여기서 한 단계 더 나아가 이미지 데이터를 처리하는 CNN(Convolutional Neural Network)을 배우고, CIFAR-10 데이터를 이용해 이미지 분류를 실습했다.이번 수업의 전체 흐름은 다음과 같았다.CIFAR-10 데이터 확인→ 이미지 데이터 구조 이해→ 픽셀값 정규화→ CNN 기본 구조→ Convolution Layer→ Pooling Layer→ Flatten→ Dense Layer→ 모델 학습→ 테스트 데이터 평가→ 새로운 이미지 추론이번 실습을 통해 숫자로 정리된 표 데이터뿐 아니라 이미지 자체를 입력으로 받아 AI가 사물을 구분하는 과정을 경험했다.이미지 데이터는 무엇이 다를까?앞..

Programing/AI,머신러닝,딥러닝

[데이터과정 7일차] — Keras로 딥러닝 신경망 만들기

7일차에는 앞에서 배운 머신러닝에서 한 단계 더 나아가 딥러닝(Deep Learning)을 실습했다.5일차와 6일차에는 Logistic Regression, XGBoost, LightGBM 같은 머신러닝 모델을 사용했다면 이번에는 Keras를 이용해 직접 신경망 구조를 만들고 학습시키는 과정을 배웠다.전체 흐름은 다음과 같았다.딥러닝 기본 개념→ 신경망 구조 이해→ Keras 모델 생성→ 입력층·은닉층·출력층 구성→ 이진분류 모델→ 모델 학습→ 정확도 확인→ 다중분류 모델→ Softmax→ 결과 비교이번 수업에서는 모델을 불러와 사용하는 것뿐 아니라 층을 직접 쌓고, 활성화 함수를 선택하고, 학습 방법을 설정하는 과정을 경험했다.머신러닝과 딥러닝의 차이머신러닝과 딥러닝은 완전히 다른 분야라기보다 딥러닝이..

Programing/AI,머신러닝,딥러닝

[데이터과정 6일차] — LightGBM·XGBoost와 SHAP으로 머신러닝 모델 해석하기

5일차에는 Logistic Regression을 이용해 머신러닝 분류의 기본 흐름을 배웠다.6일차에는 여기서 한 단계 더 나아가 LightGBM과 XGBoost 같은 트리 기반 머신러닝 모델을 사용해보고, 여러 모델의 성능을 비교했다.또 모델이 단순히 결과만 내놓는 것이 아니라,왜 이런 결과를 예측했을까?를 알아보기 위해 SHAP을 이용한 모델 해석도 함께 진행했다.전체 흐름은 다음과 같았다.데이터 준비→ 학습/테스트 데이터 분리→ Logistic Regression→ XGBoost→ LightGBM→ 모델 성능 비교→ Feature Importance→ SHAP→ 개별 예측 결과 해석이번 수업에서 특히 중요했던 부분은 정확도가 높은 모델을 만드는 것에서 끝나지 않고, 모델이 어떤 데이터를 중요하게 보고..

Programing/AI,머신러닝,딥러닝

[데이터과정 5일차] — scikit-learn으로 머신러닝 분류 모델 만들기

5일차에는 본격적으로 머신러닝을 이용한 데이터 분류를 실습했다.앞선 수업까지는 Kafka, TCP/IP, FastAPI처럼 데이터를 전달하고 AI 모델을 서비스에 연결하는 방법을 배웠다면, 이번에는 직접 데이터를 이용해 머신러닝 모델을 학습시키고 새로운 데이터를 분류하는 과정을 진행했다.이번 수업의 전체 흐름은 다음과 같았다.데이터 불러오기→ 데이터 구조 확인→ 입력값과 정답 분리→ 학습용·테스트용 데이터 분리→ Logistic Regression 모델 학습→ 예측→ 정확도 확인→ 모델 평가이번 실습을 통해 처음으로 데이터를 이용해 모델을 학습하고 그 결과를 수치로 평가하는 전체 과정을 경험했다.머신러닝이란?머신러닝은 사람이 모든 판단 규칙을 직접 작성하는 대신 데이터에서 규칙을 찾아내도록 하는 방법이다..

Programing/AI,머신러닝,딥러닝

[데이터과정 4일차 ] — FastAPI로 AI 모델을 API 서버로 만들기

4일차에는 Python의 FastAPI를 이용해 웹 API 서버를 만들고, 여기에 AI 모델을 연결하는 실습을 진행했다.앞선 3일차에서는 Python의 Socket을 이용해 Client와 Server가 직접 TCP/IP 통신을 하는 구조를 만들었다.이번에는 직접 Socket 통신을 하나씩 구현하는 대신 HTTP 기반의 API 서버를 만들어 데이터를 주고받는 방식을 배웠다.수업의 전체 흐름은 다음과 같았다.FastAPI 기본 구조→ HTTP 요청과 응답→ GET / POST API→ JSON 데이터 처리→ Pydantic 데이터 검증→ AI 모델 연결→ DistilBERT 추론→ API 응답 반환→ AI 서비스 구조 이해FastAPI란?FastAPI는 Python으로 API 서버를 만들 수 있는 웹 프레임..

Programing/AI,머신러닝,딥러닝

[데이터과정 3일차 ] — TCP/IP 소켓 통신과 Python 서버·클라이언트 만들기

3일차에는 Python을 이용해 TCP/IP 네트워크 통신을 실습했다.앞선 수업에서는 Kafka를 이용해 Producer와 Consumer 사이에서 데이터를 전달했다면, 이번에는 프로그램끼리 직접 네트워크로 연결해 데이터를 주고받는 방법을 배웠다.수업의 전체 흐름은 다음과 같았다.TCP/IP 기본 개념→ Socket 이해→ Python TCP Server→ Python TCP Client→ 문자열 데이터 전송→ 여러 Client 연결→ 데이터 처리→ AI 서버 구조로 확장단순히 Python 프로그램 하나를 실행하는 수준에서 벗어나, 서로 다른 프로그램이 네트워크를 통해 통신하는 구조를 직접 만들어본 시간이었다.TCP/IP란?컴퓨터끼리 네트워크를 통해 데이터를 주고받기 위해서는 서로 약속된 통신 규칙이 필..

하얀배터리
하얀배터리