[DL] 스마트폰 센서 기반 인간 행동 분류 모델 구현 및 성능 평가
·
머신러닝 & 딥러닝 & AI 맛보며 친해지기
이번 포스팅에서는 인간 행동 인식(HAR: Human Activity Recognition) 기술 프로젝트를 진행하며 센서 데이터를 활용한 이진 및 다중 분류 모델을 설계하고 학습시키는 과정, 그리고 성능 평가를 진행한다.그 과정에서 겪었던 시행착오와 인사이트를 공유하고자 한다.데이터 설명 및 이해 활용한 데이터셋은 UCI Machine Learning Repository의 Human Activity Recognition Using Smartphones이다. UCI Machine Learning RepositoryThis dataset is licensed under a Creative Commons Attribution 4.0 International (CC BY 4.0) license. This al..
SK텔레콤 유심 정보 유출 사고 : 오픈소스 BPF 백도어 공격 의심 사례
·
Kubernetes_쿠버네티스
2025년 4월, 대한민국 최대 고객이 사용하는 통신사인 SK텔레콤이 대규모 유심(USIM) 정보 유출 사고를 겪으며 소비자와 국내외 보안 업계에 큰 충격을 주었다. 이번 사고는 약 2,300만 명의 고객에게 영향을 미쳤으며, 특히 오픈소스로 공개된 BPF (Berkeley Packet Filter) 기반 백도어 공격 가능성이 제기되며 오픈소스 공격 기법에도 취약하다는 비판을 받고 있다. 이 글에서는 사건의 구체적인 흐름을 살펴보고, 인프라 보안 측면에서 BPF 백도어 공격의 원리를 분석해보고자 한다.사건 개요SK텔레콤 유심 데이터 유출 발생 일시: 2025년 4월 18일 밤유출 정보:가입자 식별번호 (IMSI)전화번호 (MSISDN)인증 키 (Ki 등 USIM 저장 정보)피해 규모: 약 2,400만 명..
실시간 객체탐지 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 스펙을 구현한 대표적인 오픈 소스라고 말하였다. ..