실시간 객체탐지 YOLO란?
·
머신러닝 & 딥러닝 & AI 맛보며 친해지기
학부 시절, 나는 인공지능 분야에 입문하면서 객체 탐지(Object Detection) 알고리즘을 처음 접하게 되었다. 특히, 동영상 속에서 실시간으로 바운딩 박스를 그려 대상의 위치와 종류를 알려주는 기술은 내게 큰 충격과 흥미를 주었다. 최근에는 KT 부트캠프를 통해 기초 개념을 재정립할 기회를 얻었고, 그동안 잊고 지냈던 이론적 기반을 다시 학습하며 체계를 다지게 되었다. 특히, 인턴십 당시 YOLOv7을 실무에서 직접 다루었던 경험이 있어, 이번 글을 통해 YOLO의 원리를 정리하고, 객체 탐지에 대한 이해를 보다 깊이 있게 체득하고자 한다. (벌써 yolov12가 나왔다고 한다..) 컴퓨터 비전 분야에서 객체 검출 기술은 인공지능에게 "세상을 인식하는 눈" 같은 역할을 한다. 이미지나 영상 ..
RAG(Retrieval-Augmented Generation)와 Vector DB 란?
·
머신러닝 & 딥러닝 & AI 맛보며 친해지기
KT 에이블스쿨을 통해 다양한 기술 주제를 학습하던 중, 오랫동안 관심을 가져온 분야와 맞닿아 있는 한 가지 주제에 대해 깊이 있는 리서치를 진행하고자 한다. 이 주제는 과거 SK AI Summit에서 SKT의 발표를 통해 처음 접하게 되었고, 이후 여러 기업의 합격했던 실무 면접에서도 내가 프레젠테이션 과제로 다룰 만큼 개인적으로도 의미 있는 분야이다. 오늘날 대부분의 기업은 방대한 양의 정보를 PDF나 워드 문서와 같은 파일 형태로 관리하고 있다. 인사 기록, 시설 보안 자료, 운영 매뉴얼, 고객 응대 이력, 그리고 제품 설명서나 수리 매뉴얼까지 이 모든 문서들은 잘 정리되어 축적되어 있지만, 실제 업무에서는 검색과 접근이 어렵고, 결과적으로 '죽은 데이터'로 남는 경우가 많다. 예를 들어, 제품 ..
[ML] 분류(Classification)와 회귀(Regression)의 차이
·
머신러닝 & 딥러닝 & AI 맛보며 친해지기
데이터 분석 또는 머신러닝을 공부하면서 가장 처음 접하게 되는 개념 중 하나가 바로 "분류"와 "회귀"이다. 둘 다 입력 데이터로부터 결과를 예측한다는 공통점이 있지만, 예측하려는 값이 ‘카테고리’냐, ‘숫자’냐에 따라 적용되는 방식과 모델이 완전히 달라진다. 이 글에서는 직접 학습하면서 두 개념의 차이와 예시를 이해한만큼 설명하려고 한다.분류 (Classification)개념 : 분류는 데이터를 사전에 정의된 그룹(클래스) 중 하나로 나누는 작업이다.결국에 "이 데이터는 어떤 범주에 속하나요?"라는 질문에 답하는 문제이다. 예시는 다음과 같다이메일 분류스팸/일반0 또는 1동물 이미지 분류고양이/개/토끼고양이고객 이탈 예측이탈/유지이탈질병 진단질병A / 질병B / 정상질병B대부분의 의사결정, 위험탐지,..
Sequential vs Class: PyTorch 모델 정의 방법과 비교
·
머신러닝 & 딥러닝 & AI 맛보며 친해지기
PyTorch를 사용해 딥러닝 모델을 구성할 때 모델 선언 방식에는 크게 두 가지가 있다. 하나는 nn.Sequential을 이용하는 방법이고, 다른 하나는 nn.Module을 상속한 클래스로 모델을 직접 구현하는 방법이다. 이번 블로그에서는 각자 모델 선언하는 방법을 적어보고자 한다.   nn.Sequential 은 마치 자동조립 라인과 같고 nn.Module 은 맞춤 제작 공방 같은 느낌이라고 비유할 수 있다. nn.Sequentialnn.Sequential은 미리 정의된 레이어들을 순차적으로 쌓아 올리는 방식이다. 이 방법은 레고 조립설명서를 참조하여 부품을 순서대로 조립하는 것과 비슷하다. 선언하며 정해진 순서대로 레이어가 연결되며, 복잡한 로직 없이 단순하게 모델을 구성할 수 있다.  장점간결함..
데이터 분석의 첫걸음, CRISP-DM 제대로 알기
·
Computer Science (CS)
CRISP-DM(Cross Industry Standard Process for Data Mining)은 데이터 마이닝 및 분석 프로젝트를 수행할 때 널리 사용되는 표준 프로세스 모델이다. 다양한 산업 분야에서 활용할 수 있도록 설계된 이 모델은 비즈니스 목표 설정부터 모델 배포까지 전 과정을 체계적으로 구조화한다. CRISP-DM은 반복적인 프로세스이고, 특정 단계에서 문제가 발생하면 이전 단계로 돌아가 다시 조정할 수 있도록 구성되어 있다. 즉, 단순한 일방향 프로세스가 아니라, 지속적인 개선과 피드백을 반영하는 방식이다. 이번 글에서는 CRISP-DM의 6단계를 설명하고, 실제 프로젝트에서 이를 어떻게 적용할 수 있는지 예시를 들어 살펴본다. 🔹 CRISP-DM의 6단계 비즈니스 이해 (Busin..
[API] 로또 당첨 번호 조회 및 추천 번호 생성 (Check the lottery winning number and generate the number)
·
Develop & Project Review
📌 개요해당 글에서는 FastAPI를 활용하여 로또 번호 조회 및 생성 API를 개발에 대해 기술하고,API 기능 구현 과정을 기록한다. 소요기간 1일'25.02.17 Git repo는 다음 링크과 같다.https://github.com/WellshCorgi/dev-infinity-api GitHub - WellshCorgi/dev-infinity-api: A project focused on continuously developing various features, designing efficient APIs,A project focused on continuously developing various features, designing efficient APIs, and documenting the..
[API] 주식 정보 조회 및 매도 매수 분석 (Stock Information Inquiry and Selling Price Analysis)
·
Develop & Project Review
📌 개요BackEnd 지식을 쌓고 API 제작 구현을 익숙해지기 위해 사이드 프로젝트를 시작하였다. 해당 글에서는 FastAPI를 활용하여 주식 분석 API를 개발에 대해 기술하고,API 요청 처리 방식과 주요 기능 구현 과정을 기록한다.  Git repo는 다음 링크과 같다.https://github.com/WellshCorgi/dev-infinity-api GitHub - WellshCorgi/dev-infinity-api: A project focused on continuously developing various features, designing efficient APIs,A project focused on continuously developing various features, desi..
[Python] FastAPI란?
·
Programming Language
http://fastapi.tiangolo.com/ko/tutorial/ 자습서 - 사용자 안내서 - FastAPIFastAPI framework, high performance, easy to learn, fast to code, ready for productionfastapi.tiangolo.com FastAPI는 Python 기반의 최신 웹 프레임워크로, API 개발에 최적화되어 있다. 높은 성능과 사용 편의성을 자랑하며, 자동 문서화 기능을 제공하는 것이 특징이다. 구글 트랜드(trends.google)로 파이썬 웹 프레임워크 3종에 대해 트랜딩 검색을 해봤다. 5년을 기간으로 검색을 해보니 여전히 장고가 1위이지만 FastAPI의 기세가 만만치 않다.최근 2년으로 그래프를 보았더니, Flask..
K3s 클러스터 MicroK8s로 마이그레이션 하기
·
Computer Science (CS)
작년에 학부 연구생 프로젝트를 진행하며 라즈베리 파이로 구축한 K3s 클러스터가 방 한켠을 차지하고 있었다. 사이드 프로젝트를 넓은 범주에서 활용하기도 하며 또한 내 방에 오랫동안 사용할 작은 홈 쿠버네티스 클러스터를 구축하고자 작성하게 되었다. https://boramchan-corgi.tistory.com/42 [K3s] Raspberry PI 4 에 K3s 설치하여 클러스터 구축하기이번에 RaspberryPI를 통한 클라우드 환경 구축 및 이 가이드에서는 Raspberry Pi 4 클러스터에 K3를 원활하게 설치하는 데 도움이 되는 커맨드 라인과 유용한 팁을 공유합니다. 본격적으로 설치 과정을boramchan-corgi.tistory.com 왜 K3s에서 MicroK8s를 선택했는가 ?K3s에서 M..
[CS] AMQP 와 RabbitMQ 분석하기
·
Computer Science (CS)
RabbitMQ란? RabbitMQ는 AMQP 스펙을 구현한 대표적인 오픈 소스 메시지 브로커이다. 수신 받은 메시지를 큐에 저장하고, 이를 처리하는 시스템 간에 비동기적으로 메시지를 전달하는 역할을 한다. 주요 기능으로는 메세지를 많은 사용자들에게 전달하거나, 요청에 대한 처리 시간이 길때, 해당 요청을 다른 API에게 위임하고 빠른 응답을 할 때 많이 사용한다. 예를 들어, 사용자가 파일 업로드를 요청했을 때, 그 작업을 RabbitMQ 큐에 넣어두고 빠르게 사용자에게 "작업이 접수됨" 이라는 응답을 보낼 수 있다. 실제 아키텍쳐에서 업로드 작업은 백그라운드에서 처리되며, 이를 통해 빠른 응답과 비동기 처리가 가능하다. 앞서 RabbitMQ는 AMQP 스펙을 구현한 대표적인 오픈 소스라고 말하였다. ..
[CS] 메시지 큐에 대해 알아보기 (Message Queue)
·
Computer Science (CS)
메시지 큐(Message Queue)메시지 큐는 애플리케이션 간의 비동기 데이터 통신을 지원하는 시스템으로, 데이터를 큐에 저장하고 처리할 수 있도록 도와준다. 특히, 대규모 분산 시스템에서 안정적이고 유연한 통신을 구현할 때 유용하다. 즉, 메시지 큐는 분산된 환경에서 프로세스나 프로그램의 시스템 간 데이터를 교환하기 위해 사용되는 통신 기법이다.  📌 주요 특징 비동기적 통신: 발신자와 수신자가 독립적으로 작업을 수행할 수 있도록 지원한다.중간 저장소 역할: 데이터를 큐(queue)에 임시로 저장하고, 소비자가 이를 처리한다.분산 시스템 필수 구성 요소: 작업 부하 분산, 내결함성, 확장성 제공.   주요 구성 요소 🔧메시지(Message): 큐에 저장되는 데이터 단위. JSON, XML, 텍스트..
[Bye 2024] 2024년을 돌아보며..
·
일상&인턴
어느덧 벌써 24년도 마무리 되어가고 있다.  작년 한 해도 마무리 하면서 첫 회고록을 작성하며 한 해를 정리해보고 되돌아보았던 좋은 기억이 있다.  그럼으로 올 해도 이어서 1년간 나의 여정들을 기록해보고자 한다. 1~2월 한국전자통신연구원 동계인턴 (인턴 2회차)  한국전자통신연구원의 좋은 부서에서 재미있는 과제로 2달을 정말 알차게 보냈었다. 연합학습 관련 프로젝트에 참여하며 학부생으로서 절대 경험할 수 없는 주제를 가지고 연구했었다. 때로는 코드 최적화도 도맡아서 PR하기도 하였고 코드리뷰도 진행해보고, 연구과제에 알맞는 실험도 직접 진행하고 분석하기도 하였다. 연구책임자 박사님과 예하 연구원님, 유능한 동기와 협업하면서 많은 것을 배울 수 있었다. 다시 이 자리를 빌어 감사드립니다. 또한 만나서..