AI 딥러닝64 [YOLO] 다중 객체 추적 다중 객체 추적(Multi-Object Tracking, MOT)은 영상의 각 프레임에서 여러 객체를 지속적으로 식별하고, 시간에 따라 동일한 객체를 연결하는 작업이다. 객체 탐지(Object Detection)가 “어디에 무엇이 있는가”를 알려준다면, 객체 추적은 “그것이 어디로 움직이는가”를 알려준다. 자율주행차가 보행자를 추적하고, CCTV가 침입자를 따라가며, 스포츠 중계에서 선수들의 움직임을 분석하는 모든 곳에 다중 객체 추적 기술이 활용된다. 객체 추적에는 탐지 이상의 기술이 필요하다. 객체 탐지는 각 프레임에서 독립적으로 객체의 위치를 파악하면 되지만, 추적에서는 예컨대 프레임 1의 "객체 A"와 프레임 100의 "객체 A"가 동일한 객체임을 보장해야 한다. 이를 정체성 유지(ID Prese.. 2025. 7. 18. [YOLO] 욜로의 진화 컴퓨터 비전 분야에서 "YOLO"라는 이름만큼 강렬한 인상을 남긴 기술은 드물다. "You Only Look Once"의 줄임말인 YOLO는 2015년 Joseph Redmon, Santosh Divvala, Ross Girshick, Ali Farhadi가 발표한 ‘You Only Look Once: Unified, Real‑Time Object Detection’ 논문에서 시작됐다. 기존의 복잡하고 느린 객체 탐지 방식을 단숨에 뛰어넘으며 실시간 객체 탐지 기술의 패러다임을 완전히 바꿔놓았다. YOLO가 등장하기 전까지 객체 탐지는 주로 Two-stage 방식이 주류였다. 대표적인 예로 R-CNN 계열의 모델들은 먼저 이미지에서 관심 영역(Region of Interest)을 찾고, 그 다음 해당 영.. 2025. 7. 11. HiPPO - 3 이전 게시글(https://pasus.tistory.com/363)에서 함수 \(f(x), \ 0 \lt x \le t\) 를 N차원 부분 함수공간으로 투사한 근사 함수 \(g(x), \ 0 \lt x \le t\) 를 다음과 같이 유도하였다. \[ \begin{align}& g(x)= \sum_{n=0}^{N-1} c_n (t) \sqrt{(2n+1)} P_n \left( \frac{2x}{t}-1 \right) \tag{1} \\ \\& \dot{\mathbf{c}}(t)= - \frac{1}{t} A \mathbf{c}(t)+ \frac{1}{t} Bf(t) \end{align} \] 식 (1)에 의하면 HiPPO는 본질적으로 연속시간(continuous-time) 에서 정의된 상미분 .. 2025. 1. 12. HiPPO - 2 이전 게시글(https://pasus.tistory.com/362)에서 함수 \(f(x), \ 0 \lt x \le t\) 를 \(N\)차원 부분 함수공간으로 투사한 근사 함수 \(g(x), \ 0 \lt x \le t\) 를 다음과 같이 유도하였다. \[ \begin{align} g(x) & = \sum_{n=0}^{N-1} c_n (t) \sqrt{(2n+1)} P_n \left( \frac{2x}{t}-1 \right) \tag{1} \\ \\ c_n (t) &= \int_0^t f(x) \sqrt{(2n+1)} P_n \left( \frac{2x}{t}-1 \right) \frac{1}{t} \ dx \end{align} \] 식 (1)에서 계수 \(c_n (t)\) 에 관한 적분식을 미분방.. 2025. 1. 9. HiPPO - 1 언어 모델링이나 음성 인식, 강화학습 또는 주식 데이터 분석 등 시계열 데이터를 다루는 AI 분야에서는 매우 긴 시퀀스 데이터를 효과적으로 학습하고 표현(representation)할 필요가 있다. 그러나 모든 과거 데이터를 저장하고 처리하는 것은 저장 공간과 계산 자원의 한계로 인해 비효율적일 뿐만 아니라 실질적으로 불가능하다. 특히 온라인 환경에서는 데이터가 지속적으로 유입되기 때문에 이전 데이터를 적절히 요약(summarization)하면서도 중요한 패턴과 정보를 유지하는 메모리 메커니즘이 필요하다. 이러한 문제를 해결하기 위해 등장한 것이 바로 HiPPO (High-order Polynomial Projection Operators)다. HiPPO는 '고차 다항식 투사 연산자'를 의미하는 것으로서.. 2025. 1. 8. [PINN] PINN을 이용한 램버트 문제의 해 램버트 문제(https://pasus.tistory.com/316)를 풀기 위한 알고리즘은 여러가지가 제안되어 있지만 여기서는 물리 정보 신경망(PINN, physics-informed neural network)을 이용하여 이 문제를 풀어보고자 한다. 수치 데이터는 이전 게시글(https://pasus.tistory.com/297)에서 사용했던 것을 다시 사용한다. 먼저 램버트 문제의 운동 방정식은 다음과 같다. \[ \begin{align} \frac{d^2 \mathbf{r}}{dt^2 }+ \frac{\mu}{ \left( \sqrt{\mathbf{r} \cdot \mathbf{r}} \right)^3} \mathbf{r}=0 \tag{1} \end{align} \] 여기서 \(\mu\) 는.. 2024. 4. 10. [PtrNet] Pointer Net 구조 조합 최적화(combinatorial optimization)는 개별 개체의 조합으로 이루어진 목적함수의 최대값(또는 최소값)을 구하는 문제이다. 대표적인 예로서는 TSP(traveling salesman problem, 순회외판원문제), Job-shop Scheduling, Knapsack Problem(배낭문제) 등이 있다. 참고로 세가지 문제를 간략히 설명하면 다음과 같다. TSP 는 \(n\) 개의 서로 다른 도시의 좌표 \((x, y)\) 가 주어졌을 때, 각 도시를 한번씩 모두 방문하는 최단 경로를 찾는 문제다. Job-shop Scheduling은 수행해야 하는 일련의 작업과 이러한 작업을 수행하는 데 필요한 도구 세트가 주어졌을 때, 모든 작업이 완료될 때까지 걸리는 총 시간을 최소화하기 .. 2023. 9. 12. [seq2seq] 어텐션이 포함된 seq2seq 모델 Sequence-to-sequence (seq2seq) 모델에서 인코더(encoder)는 입력 시퀀스를 고정된 길이를 갖는 컨텍스트 벡터로 압축하고, 디코더(decoder)는 이를 사용하여 전체 출력 시퀀스를 생성한다. 컨텍스트 벡터는 인코더의 맨 마지막 시퀀스 스텝(시간스텝)에서 생성되며, 인코더와 디코더를 연결하는 유일한 통로이자 인코더가 입력 시퀀스에서 취득한 모든 정보가 흐르는 길목이다. 기존 seq2seq 모델은 인코더와 디코더가 컨텍스트 벡터로만 연결되기 때문에 두가지 문제가 발생한다. 첫번째 문제는 고정된 길이를 갖는 1개의 컨텍스트 벡터만으로는 디코더로 전달하는 정보의 양이 제한되거나 소실된다는 점이다. 이를 병목(bottleneck) 현상이라고 하는데 입력 시퀀스가 매우 길어서.. 2023. 8. 23. [seq2seq] 간단한 seq2seq 모델 구현 Sequence-to-sequence 또는 seq2seq 모델은 입력 시퀀스(sequence)를 출력 시퀀스로 변환하는 신경망 모델이다. seq2seq 모델은 한 도메인의 시퀀스를 다른 도메인의 시퀀스로 변환해야 하는 기계 번역, 대화 시스템, 질문 응답, 텍스트 요약, 이미지 또는 비디오 캡셔닝, 음성인식, 시계열 예측과 같은 분야에서 큰 성공을 거두었다. 기본적으로 seq2seq 모델은 인코더(encoder)와 디코더(decoder), 그리고 두 블록을 연결하는 컨텍스트 벡터(context vector)로 구성되어 있다. 인코더는 입력 시퀀스에 대한 정보를 고정된 길이를 갖는 컨텍스트 벡터로 압축한다. 컨텍스트 벡터는 디코더가 정확한 예측을 수행하는 데 도움이 되는 방식으로 구축된다. 디코더는 컨텍스.. 2023. 8. 17. Hindsight Experience Replay (HER) 강화학습에서는 보상(reward)을 환경이 제공한다고 가정하지만 실제로는 강화학습 설계자가 시스템이 원하는 반응을 보이도록 보상함수를 설계해야 한다. 보상함수는 설계자가 원하는 것을 정확히 포착하도록 해야 하지만, 학습의 안정성과 효율성도 고려해서 신중하게 설계해야 한다. 강화학습을 실제 문제에 적용하는데 있어서 어려운 점 중의 하나는 바로 이 보상함수를 적절하게 설계하는 것이다. 특히 항공기나 미사일, 그리고 로봇과 같은 물리 시스템의 경우에는 도메인 지식이 없거나 또는 복잡하고 예측할 수 없는 환경에서는 적절한 보상을 설정하는 것 자체가 어려울 수도 있고, 또한 잘못된 지표를 최적화하게 되면 실제 의도한 목표에 대한 성능이 저하됨은 물론 예상하지 못한 원치 않는 동작을 유발할 수도 있다. 따라서 설계.. 2023. 6. 12. 이전 1 2 3 4 ··· 7 다음