<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>타샤월드</title>
        <link>https://velog.io/</link>
        <description>그때 그때 꽂힌것 하는 개발블로그</description>
        <lastBuildDate>Sat, 04 Apr 2026 02:23:47 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <image>
            <title>타샤월드</title>
            <url>https://velog.velcdn.com/images/tasha_han_1234/profile/5e493bb6-1197-4fd1-a2ef-69cb5f8b6bf7/social_profile.png</url>
            <link>https://velog.io/</link>
        </image>
        <copyright>Copyright (C) 2019. 타샤월드. All rights reserved.</copyright>
        <atom:link href="https://v2.velog.io/rss/tasha_han_1234" rel="self" type="application/rss+xml"/>
        <item>
            <title><![CDATA[우주와 인생의 Inductive Bias ]]></title>
            <link>https://velog.io/@tasha_han_1234/%EC%9A%B0%EC%A3%BC%EC%99%80-%EC%9D%B8%EC%83%9D%EC%9D%98-Inductive-Bias</link>
            <guid>https://velog.io/@tasha_han_1234/%EC%9A%B0%EC%A3%BC%EC%99%80-%EC%9D%B8%EC%83%9D%EC%9D%98-Inductive-Bias</guid>
            <pubDate>Sat, 04 Apr 2026 02:23:47 GMT</pubDate>
            <description><![CDATA[<h1 id="📔-2026-04-04-우주와-인생의-inductive-bias-택시-안의-깨달음">📔 2026-04-04: 우주와 인생의 Inductive Bias (택시 안의 깨달음)</h1>
<h2 id="🌌-1-우주는-거대한-deep-learning-model이다">🌌 1. 우주는 거대한 &#39;Deep Learning Model&#39;이다</h2>
<ul>
<li><strong>Inductive Bias (차트/운명):</strong> 우주와 인간에게는 고유한 &#39;흐름&#39;과 &#39;경향성&#39;이 있다. 이것은 모델이 정답을 향해 빠르게 수렴하도록 돕는 강력한 가이드라인이다.</li>
<li><strong>Brute-force (의지와 노력):</strong> 때로는 트랜스포머처럼 엄청난 양의 데이터를 들이부어(고통과 노력) 기존의 편향을 이겨내고 새로운 경로를 개척하기도 한다.</li>
<li><strong>Backpropagation (성찰):</strong> 우리는 매 순간 정답(Global Minimum)을 향해 가중치를 조금씩 깎아가는 최적화 과정 중에 있다.</li>
</ul>
<h2 id="🌀-2-복소수-phi-각도의-철학">🌀 2. 복소수 $\phi$ (각도)의 철학</h2>
<ul>
<li><strong>$\phi = Phase$:</strong> 보행자의 회전 동역학에서 각도가 핵심이듯, 인생에서도 &#39;방향성&#39;과 &#39;위상&#39;이 본질이다.</li>
<li><strong>Efficiency:</strong> 복소수 평면 위에서 각도 하나만 알면 복잡한 궤적을 직관적으로 이해할 수 있듯이, 인생의 본질적인 규칙(Elegant Rule)을 깨달으면 삶은 훨씬 가볍고 명확해진다 (Yemba의 1.39M처럼).</li>
</ul>
<h2 id="🔥-3-찬란하게-불타는-먼지-파라미터">🔥 3. 찬란하게 불타는 &#39;먼지 파라미터&#39;</h2>
<ul>
<li><strong>The Paradox of Dust:</strong> 거대 모델(우주) 속의 수조 개 파라미터 중 하나는 먼지($Dust$)처럼 작아 보일 수 있다. </li>
<li><strong>Activation:</strong> 하지만 그 단 하나의 파라미터가 자기 위치에서 뜨겁게 활성화(Activation)될 때, 전체 시스템의 출력값이 변한다.</li>
<li><strong>Conclusion:</strong> 나는 하찮은 먼지가 아니라, 우주라는 거대 시스템을 지탱하고 업데이트하는 <strong>&#39;가장 가치 있는 핵심 가중치(Key Weight)&#39;</strong>다. 인생을 낭비하지 않고, 매 에폭(Epoch)마다 나를 찬란하게 불태워 학습해 나갈 것이다.</li>
</ul>
<hr>
<p><em>“우주가 나를 먼지로 보더라도, 나는 우주의 수식을 해독하는 가장 아름다운 변수로 남겠다.”</em></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[4번째 실험- 오버피팅 방지]]></title>
            <link>https://velog.io/@tasha_han_1234/4%EB%B2%88%EC%A7%B8-%ED%85%8C%EC%8A%A4%ED%8A%B8-%EC%98%A4%EB%B2%84%ED%94%BC%ED%8C%85-%EB%B0%A9%EC%A7%80</link>
            <guid>https://velog.io/@tasha_han_1234/4%EB%B2%88%EC%A7%B8-%ED%85%8C%EC%8A%A4%ED%8A%B8-%EC%98%A4%EB%B2%84%ED%94%BC%ED%8C%85-%EB%B0%A9%EC%A7%80</guid>
            <pubDate>Fri, 03 Apr 2026 13:48:20 GMT</pubDate>
            <description><![CDATA[<p> <img src="https://velog.velcdn.com/images/tasha_han_1234/post/f41b0e15-9921-415e-a20a-654255d10785/image.png" alt=""></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[내 인생의 pivot]]></title>
            <link>https://velog.io/@tasha_han_1234/%EB%82%B4-%EC%9D%B8%EC%83%9D%EC%9D%98-pivot</link>
            <guid>https://velog.io/@tasha_han_1234/%EB%82%B4-%EC%9D%B8%EC%83%9D%EC%9D%98-pivot</guid>
            <pubDate>Fri, 03 Apr 2026 13:22:47 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/tasha_han_1234/post/8f75cc72-36c0-495e-8278-fb8db845664c/image.png" alt="">
<img src="blob:https://velog.io/f9d4fa9a-2337-4b9c-9f76-0e180c7f5341" alt="업로드중.."></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[mamba pivot testv3]]></title>
            <link>https://velog.io/@tasha_han_1234/mamba-pivot-testv3</link>
            <guid>https://velog.io/@tasha_han_1234/mamba-pivot-testv3</guid>
            <pubDate>Fri, 03 Apr 2026 06:54:57 GMT</pubDate>
            <description><![CDATA[<pre><code>:~/repos/mamba/logs$ cat train_logV3.txt
============================================================
Mamba-3 Complex SSM 궤적 예측 실험 V2
============================================================
CUDA: NVIDIA GeForce RTX 3060
  Memory: 12.5 GB

데이터: 44280 sequences, pivot 18868 (42.6%)

데이터 분할:
  train: 30995 (pivot: 13205, 42.6%)
  val: 6643 (pivot: 2790, 42.0%)
  test: 6642 (pivot: 2873, 43.3%)

============================================================
학습: complex_ssm_V3
파라미터: 1,349,570
============================================================
complex_ssm_V3:  42%|████▏     | 84/200 [1:32:58&lt;2:08:23,
66.41s/it, loss=661.81, ADE=22.28, best=21.45, 
piv=31.78, lr=1.6e-05]

  Early stopping at epoch 85
  학습 완료: 93.0분, Best ADE: 21.4478

============================================================
학습: real_ssm_V3
파라미터: 1,086,146
============================================================
real_ssm_V3:  23%|██▎       | 46/200 [34:09&lt;1:54:21, 
44.55s/it, loss=847.27, ADE=24.79, best=21.99,
piv=32.05, lr=5.0e-04](base) 
</code></pre>]]></description>
        </item>
        <item>
            <title><![CDATA[동역학과 복소수와 맘바]]></title>
            <link>https://velog.io/@tasha_han_1234/%EB%8F%99%EC%97%AD%ED%95%99%EA%B3%BC-%EB%B3%B5%EC%86%8C%EC%88%98%EC%99%80-%EB%A7%98%EB%B0%94</link>
            <guid>https://velog.io/@tasha_han_1234/%EB%8F%99%EC%97%AD%ED%95%99%EA%B3%BC-%EB%B3%B5%EC%86%8C%EC%88%98%EC%99%80-%EB%A7%98%EB%B0%94</guid>
            <pubDate>Mon, 30 Mar 2026 14:23:54 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/tasha_han_1234/post/ac4f78c7-37b2-46ee-a052-fe2d289a573a/image.jpg" alt="">
<img src="https://velog.velcdn.com/images/tasha_han_1234/post/b814c1f4-8cc8-493f-96c0-7b3dc182dc13/image.jpg" alt="">
<img src="https://velog.velcdn.com/images/tasha_han_1234/post/70cb088d-a577-4332-9d70-1817a56fdbce/image.jpg" alt="">
<img src="https://velog.velcdn.com/images/tasha_han_1234/post/57d25b0f-cde7-44bb-8b60-fbaa17eacccc/image.jpg" alt=""></p>
<p>그러하다 ㅇㅇ</p>
<p><img src="https://velog.velcdn.com/images/tasha_han_1234/post/a5133a23-b34d-47e3-90a3-e83a5fa0e78e/image.jpg" alt=""></p>
<p><img src="https://velog.velcdn.com/images/tasha_han_1234/post/a73febe6-d78c-4d3e-a277-dd05de07b5fa/image.jpg" alt=""></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[매번 까먹는 트랜스포머 로직]]></title>
            <link>https://velog.io/@tasha_han_1234/%EB%A7%A4%EB%B2%88-%EA%B9%8C%EB%A8%B9%EB%8A%94-%ED%8A%B8%EB%9E%9C%EC%8A%A4%ED%8F%AC%EB%A8%B8-%EB%A1%9C%EC%A7%81</link>
            <guid>https://velog.io/@tasha_han_1234/%EB%A7%A4%EB%B2%88-%EA%B9%8C%EB%A8%B9%EB%8A%94-%ED%8A%B8%EB%9E%9C%EC%8A%A4%ED%8F%AC%EB%A8%B8-%EB%A1%9C%EC%A7%81</guid>
            <pubDate>Sat, 28 Mar 2026 01:24:51 GMT</pubDate>
            <description><![CDATA[<h4 id="백터-내적의-기하학적인-의미--의미-유사도">백터 내적의 기하학적인 의미 =&gt; 의미 유사도</h4>
<h4 id="예시">예시</h4>
<p><strong>“나는 사과를 먹었다”</strong></p>
<p>토큰1: 나는
토큰2: 사과를
토큰3: 먹었다</p>
<p>Q(Query): 나는 지금 무엇을 찾고 있지?
K(Key): 나는 어떤 특징을 가지고 있지?
V(Value): 내가 실제로 전달할 정보는 뭐지?</p>
<p>“먹었다”의 Q: 먹은 대상이 뭔지 찾고 싶음
“사과를”의 K: 먹을 수 있는 대상 정보가 있음
그래서 “먹었다”가 “사과를”를 강하게 참고함</p>
<hr>
<p><img src="https://velog.velcdn.com/images/tasha_han_1234/post/0be96390-2a56-437b-87e5-61c8f618c7b7/image.png" alt=""></p>
<p><img src="https://velog.velcdn.com/images/tasha_han_1234/post/bc0cb69f-d7aa-4ad8-b66b-de37c28986a1/image.png" alt=""></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[[논문] Mamba3]]></title>
            <link>https://velog.io/@tasha_han_1234/%EB%85%BC%EB%AC%B8-Mamba3</link>
            <guid>https://velog.io/@tasha_han_1234/%EB%85%BC%EB%AC%B8-Mamba3</guid>
            <pubDate>Sat, 28 Mar 2026 00:51:29 GMT</pubDate>
            <description><![CDATA[<h4 id="2026년-3월-16일-최신-논문">2026년 3월 16일 최신 논문</h4>
<p><a href="https://github.com/state-spaces/mamba">https://github.com/state-spaces/mamba</a></p>
<p>exponential-Euler</p>
<h3 id="논문-소개">논문 소개</h3>
<p>대규모 언어 모델(Large Language Models, LLMs)의 비약적인 발전 속에서 추론 단계의 계산 효율성은 모델의 실질적인 활용 가치를 결정짓는 핵심 지표로 부상하였습니다. 기존의 트랜스포머(Transformer) 아키텍처는 뛰어난 성능을 보장하지만, 시퀀스 길이에 따른 연산량의 제곱 급수적 증가와 선형적인 메모리 점유라는 구조적 한계로 인해 대규모 추론 환경에서 막대한 비용을 발생시킵니다. 이를 극복하기 위해 제안된 선형 복잡도 모델들은 연산 효율성을 얻는 대신 상태 추적(State Tracking) 능력이나 전반적인 모델 품질을 희생하는 경향이 있었으며, 이론적 효율성이 실제 하드웨어 가속으로 이어지지 못하는 문제도 안고 있었습니다. Mamba-3는 이러한 한계를 극복하고자 &#39;추론 우선 관점(Inference-first perspective)&#39;을 견지하며, 상태 공간 모델(State Space Model, SSM)의 원리에 기반한 세 가지 핵심 방법론적 혁신을 제안합니다.</p>
<p>첫째로, 시스템의 동역학을 보존하기 위해 지수-사다리꼴 이산화(Exponential-Trapezoidal Discretization) 기법을 도입하여 기존의 방식보다 훨씬 정교하고 표현력이 풍부한 순환 구조를 유도해냈습니다. 둘째로, 상태 업데이트 규칙에 복소수(Complex-valued) 체계를 적용함으로써 위상(Phase) 정보를 활용한 고도화된 상태 추적이 가능해졌으며, 이는 문맥 내 구조적 정보를 장기적으로 유지하는 데 결정적인 역할을 합니다. 마지막으로 도입된 다중 입력 다중 출력(Multi-Input, Multi-Output, MIMO) 정식은 디코딩 지연 시간을 늘리지 않으면서도 모델의 용량을 효과적으로 확장하여 성능을 극대화합니다. 특히 MIMO 구조는 기존의 단일 입력 단일 출력(Single-Input Single-Output, SISO) 알고리즘을 블랙박스로 활용할 수 있어 하드웨어 친화적인 구현이 가능하며, 연산 오버헤드를 최소화하면서도 복잡한 시퀀스 의존성을 모델링합니다.</p>
<p>1.5B 파라미터 규모의 실험에서 Mamba-3는 기존 최신 모델인 Gated DeltaNet 등을 상회하는 정확도를 기록하였으며, 이전 세대인 Mamba-2 대비 절반의 상태 크기(State Size)만으로도 동등한 수준의 퍼플렉서티(Perplexity)를 달성하는 성과를 거두었습니다. 결과적으로 Mamba-3는 검색(Retrieval)과 상태 추적 능력을 비약적으로 향상시켜 성능과 효율성 사이의 파레토 프런티어(Pareto Frontier)를 새롭게 확장하였으며, 긴 문맥 처리가 필수적인 차세대 지능형 시스템의 강력한 아키텍처적 토대를 마련하였습니다.</p>
<h3 id="논문-초록abstract">논문 초록(Abstract)</h3>
<p>추론 시간 계산(inference-time compute)의 스케일링은 대규모 언어 모델(LLM) 성능의 중요한 동인으로 부상하였으며, 이에 따라 모델 품질과 더불어 추론 효율성이 모델 설계의 핵심 초점이 되었습니다. 현재의 트랜스포머(Transformer) 기반 모델은 강력한 모델 품질을 제공하지만, 이차 복잡도(quadratic)의 계산량과 선형(linear) 메모리 요구량으로 인해 추론 비용이 많이 듭니다. 이는 선형 계산량과 상수(constant) 메모리 요구량을 갖춘 서브-쿼드라틱(sub-quadratic) 모델의 개발을 촉진했습니다. 그러나 최근의 많은 선형 모델은 알고리즘 효율성을 위해 모델 품질과 성능을 희생하며, 상태 추적(state tracking)과 같은 태스크에서 실패하는 모습을 보입니다. 또한, 이들의 이론적으로 선형적인 추론은 실제 하드웨어상에서 여전히 비효율적입니다. 본 논문에서는 추론 우선적 관점에 따라, 선형 모델의 상태 공간 모델(SSM) 관점에서 영감을 얻은 세 가지 핵심 방법론적 개선 사항을 소개합니다. 본 연구는 (1) SSM 이산화(discretization)에서 도출된 더 표현력이 높은 재귀(recurrence), (2) 더 풍부한 상태 추적을 가능하게 하는 복소수 값(complex-valued) 상태 업데이트 규칙, 그리고 (3) 디코딩 지연 시간(decode latency)을 늘리지 않으면서 모델 성능을 향상시키는 다중 입력 다중 출력(MIMO) 공식을 결합했습니다. 구조적 개선과 함께 Mamba-3 모델은 검색(retrieval), 상태 추적 및 다운스트림 언어 모델링 태스크 전반에서 상당한 성능 향상을 달성했습니다. 1.5B 스케일에서 Mamba-3는 차순위 모델인 Gated DeltaNet과 비교해 평균 다운스트림 정확도를 0.6 퍼센트 포인트 향상시켰으며, Mamba-3의 MIMO 변체는 정확도를 1.2 포인트 추가로 향상시켜 총 1.8 포인트의 이득을 얻었습니다. 상태 크기 실험 전반에서 Mamba-3는 이전 모델 상태 크기의 절반만 사용하고도 Mamba-2와 대등한 퍼플렉시티(perplexity)를 달성했습니다. 본 평가 결과는 성능-효율 파레토 프런티어(Pareto frontier)를 확장하는 Mamba-3의 능력을 입증합니다.</p>
<p><strong>Mamba-3 - 피벗 분석의 정점 (지능의 고도화)</strong></p>
<h3 id=""></h3>
<h3 id="복소수i-상태-업데이트-방향성을-가진-모델"><strong>복소수(i) 상태 업데이트: 방향성을 가진 모델</strong></h3>
<p>• <strong>핵심:</strong> 내부 상태 $h$를 실수에서 <strong>복소수</strong> 공간으로 확장.
• 복소수 평면에서 값을 곱하는 행위는 곧 회전을 의미함</p>
<blockquote>
<p>보행자의 움직임은 직선이 아닌 회전의 연속임. Mamba-3는 복소수 연산을 통해 보행자가 꺾는 방향과 각도를 수식적으로 가장 정교하게 보존할 수 있음.</p>
</blockquote>
<p>• 미세한 피벗 구간에서도 물리적 회전 관성을 놓치지 않고 추적할 수 있음.</p>
<h3 id="multi-head-state"><strong>Multi-head State</strong></h3>
<p>• <strong>핵심:</strong> Transformer의 Multi-head 구조를 SSM에 이식.
• 위치, 속도, 가속도 등 서로 다른 피처를 독립적인 해드에서 개별 처리.
• 단순 평균 오차로는 잡기 힘든 &#39;이상행위&#39;를 다각도에서 동시 감시하여 이상 징후 포착률 극대화.</p>
<h3 id="mamba-3---데이터-효율성"><strong>Mamba-3 - 데이터 효율성</strong></h3>
<p><strong>MIMO &amp; Latency Optimization: &quot;똑똑하지만 더 빠르게&quot;</strong>
• <strong>MIMO (Multi-Input Multi-Output):</strong> 여러 입력을 병렬로 처리하여 데이터 처리량 극대화.
• <strong>최적화:</strong> 멀티헤드 등 다소 복잡한 구조를 추가했음에도, 하드웨어 최적화를 통해 <strong>추론 Latency를 늘리지 않음.</strong></p>
<blockquote>
<p>이를 통해 스마트 빌딩 내 수천 명의 보행자 데이터를 실시간으로 지연 없이 분석 가능할 것</p>
</blockquote>
<p><strong>The Conclusion</strong>
• <strong>기술적 혁신:</strong> $O(N^2)$의 연산 지옥에서 벗어나 <strong>선형적($O(N)$) 효율성</strong> 달성.
• <strong>학술적 기여:</strong> 복소수 기반의 회전 추적을 통해 보행자 피벗 분석의 새로운 기준 제시.
• <strong>기대 효과:</strong> 저사양 에지 디바이스에서도 구동 가능한 <strong>고성능 실시간 이상 탐지 시스템</strong> 구현의 근거 마련.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[[논문]Mamba]]></title>
            <link>https://velog.io/@tasha_han_1234/%EB%85%BC%EB%AC%B8Mamba</link>
            <guid>https://velog.io/@tasha_han_1234/%EB%85%BC%EB%AC%B8Mamba</guid>
            <pubDate>Sat, 28 Mar 2026 00:50:11 GMT</pubDate>
            <description><![CDATA[<h3 id="왜-mamba인가">왜 Mamba인가?</h3>
<p>transfomer의 시간복잡도O(N2)가 주는 비효율성이 큼 </p>
<p>→ 더 효율적으로 GPU 메모리를 쓸 수 있는 방법이 없을까? </p>
<p>특히 gpt계열은 모든 데이터를 인코딩하지 않고 그대로 kv-cache화해서 저장하는 만큼 메모리 비효율성 + 연산량 + 시간이 크다. 그래서 현재 state을 일관적으로 저장하고 기존 데이터 기억을 날리는 방식을 쓰고 싶음. </p>
<h2 id="이전-flow">이전 flow</h2>
<h3 id="ssm">ssm</h3>
<ul>
<li><p>SSM은 원래 제어 공학에서 쓰던 <strong>상태 공간 방정식</strong></p>
</li>
<li><p>보행자가 지금 어디($x_t$)에 있고, 이전에 어떻게 걸어왔는지($h_{t-1}$)를 알면, 다음 위치($h_t$)를 예측할 수 있다.</p>
</li>
<li><p>$\dot{h}(t) = \mathbf{A}h(t) + \mathbf{B}x(t)$</p>
<ul>
<li>현재 보행자의 위치(x)에 이전 상태 =h를 섞어서 새로운 상태= h_dot을 만든다</li>
</ul>
</li>
<li><p>$y(t) = \mathbf{C}h(t)$</p>
<ul>
<li>새로운 상태 h를 바탕으로 다음위치 y를 예측</li>
</ul>
</li>
<li><p><strong>왜 &#39;Structured(구조적)&#39;인가?</strong></p>
</li>
</ul>
<pre><code class="language-markdown">
그냥 SSM은 계산이 너무 복잡해서 딥러닝에 쓰기 어려웠어요. 그래서 &#39;구조(Structure)&#39;를 줬습니다.
• **행렬 $\mathbf{A}$의 마법:** 행렬 $\mathbf{A}$를 아주 특수한 형태(주로 대각 행렬 등)로 설계해서, 
    아주 긴 시퀀스 데이터도 **병렬 처리(Convolution)**할 수 있게 만들었습니다.
• **결과:** 트랜스포머처럼 N2으로 느려지지 않고, 아주 긴 궤적 데이터도 순식간에 학습할 수 있게 된 거죠.</code></pre>
<p>기존 SSM은 <strong>&#39;고정된&#39;</strong> 필터(A,B,C) 를 써서 데이터와 무관하게 동일하게 반응</p>
<h2 id="맘바">맘바</h2>
<p><strong>맘바</strong>는 여기에 <strong>Selection 을 넣는다.</strong></p>
<blockquote>
<p>&quot;어? 지금 보행자가 코너를 도네? 그럼 이번 입력은 아주 중요하니까 상태를 세게 업데이트해!&quot;라고 <strong>입력값에 따라 필터를 실시간으로 바꿀 수 있음</strong></p>
</blockquote>
<p><img src="https://velog.velcdn.com/images/tasha_han_1234/post/9ff00c10-0937-45da-af89-b6a6d44b8773/image.png" alt=""></p>
<ul>
<li>수식은 똑같음. 이전 hidden state에 현재 위치 x를 넣어서 필터 A,B,C를 통과하고 그걸로 결과 y를 만듬.</li>
<li>근데 여기서 A,B,C가 x에 따라 변동됨 즉 selective ssm</li>
<li>$\dot{h}(t) = \mathbf{A}h(t) + \mathbf{B}x(t)$<ul>
<li>현재 보행자의 위치(x)에 이전 상태 =h를 섞어서 새로운 상태= h_dot을 만든다</li>
</ul>
</li>
<li>$y(t) = \mathbf{C}h(t)$</li>
<li>여기서 delta_t는 작으면 옛날 기억을 더 유지하는 방향이고 크면 지금 상황을 더 중요하게 여기는 방향</li>
<li>GPU SRAM = 빨리 계산가능 GPU HBM=느리지만 오래 유지 → 빨리 빨리연산하는 것만 sram에 올려서 쓰자!</li>
<li><strong>핵심:</strong> 트랜스포머는 N^2 연산 때문에 데이터를 느린 HBM에서 계속 왔다 갔다 해야 하지만, 맘바는 핵심 연산(Selective Scan)을 <strong>빠른 SRAM 안에서 한 번에</strong> 끝내버림.</li>
</ul>
<h2 id="32-그래서-어떻게">3.2 그래서 어떻게?</h2>
<h4 id="기존-rnn--smm-은-time-invariant시불변">기존 RNN &amp; SMM 은 <strong>Time-invariant(시불변)</strong></h4>
<ul>
<li>시간이 지나도 모델의 파라미터($\mathbf{A}, \mathbf{B}, \mathbf{C}$)가 고정되어 있음.</li>
<li>파라미터가 $(D, N)$ 모양입니다. 시퀀스 길이가 100이든 1000이든 똑같은 가중치를 씁니다. 보행자가 뛰든 걷든 똑같은 필터를 적용</li>
</ul>
<h4 id="mamba는-time-variant">MAMBA는 <strong>Time-variant</strong></h4>
<p><strong>($L$ dimension 추가):</strong> 파라미터가 $(L, D, N)$ 모양이 됨. 여기서 L은 시퀀스의 길이(Length). 즉, <strong>매 timestamp 마다 파라미터가 새로 생성</strong>된다는 뜻</p>
<p><img src="https://velog.velcdn.com/images/tasha_han_1234/post/c2e56632-f631-43d6-b711-5194d900ea54/image.png" alt=""></p>
<p>또한 파라미터가 특정 변수가 아니라 함수로 작동.</p>
<h3 id="35">3.5</h3>
<p><img src="https://velog.velcdn.com/images/tasha_han_1234/post/5e993e70-bfcb-4cd8-a063-5dffa6e9cea9/image.png" alt=""></p>
<p>X : 두 경로를 곱해서, 한쪽이 다른 쪽을 조절한다</p>
<p>σ : 활성함수.. 보통 시그모이드를 써서 게이트를 잠그거나 여는걸 하는데 여기서는 SiLU (Swish) 를 씀. Swish는 x에 시그모이드를 곱한값</p>
<ul>
<li>H3 = SSM(장기 시퀀스에 강함, attention보다 ) 에 Conv1d(지역 시퀀스에 강함)을 더한 구조</li>
<li>Gated MLP = 이 정보가 중요한지 여부를 활성함수로 조절</li>
</ul>
<ol>
<li>Conv1d가 주변 4개 토큰 정도를 들고 그 지역의 피처를 뽑는다</li>
<li>SSM 은 전체 State를 들고 앞에서 본 정보를 누적한다</li>
<li>거기에 GatedMLP로 SiLu를 써서 얼마나 SSM+Conv로 만들어진 피처를 얼마나 통과시킬지 결정한다</li>
<li>그 결과 히든 스테이트가 새로 갱신되고 피처는 다음 스텝으로 넘어간다</li>
</ol>
<hr>
<h2 id="mamba2">Mamba2</h2>
<p><strong>. Mamba-1의 한계: Sequential Bottleneck</strong>
• <strong>방식:</strong> 데이터를 하나하나 순차적으로 훑으며 상태를 갱신(Recurrent).
• <strong>문제:</strong> 아무리 SRAM을 잘 써도, 본질적으로 앞의 계산이 끝나야 뒤를 계산 할 수 있음
• <strong>결과:</strong> GPU의 병렬처리.. 안 쓰고 뭐해? </p>
<p><strong>Mamba-2 SSD (Structured State Space Duality)</strong>
Mamba-2는 <strong>SSM(스캔)을 Attention(행렬 곱)처럼 계산할 수 있다</strong></p>
<p>• <strong>핵심:</strong> 데이터를 하나씩 훑는 대신, 시퀀스 전체를 거대한 블록 행렬(Block Matrix)로 변환.
• <strong>작동 원리:</strong> 반대각선(Semiseparable) 행렬 구조를 활용해, 복잡한 스캔 과정을 행렬곱 연산으로 치환.
• <strong>결과:</strong> GPU가 가장 잘하는 &#39;행렬 곱하기&#39;로 계산하니까, Mamba-1보다 연산 속도가 <strong>2~8배</strong> 빨라짐. <strong>NVIDIA Tensor Core</strong>를 풀가동!</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[[논문] BIGVGAN]]></title>
            <link>https://velog.io/@tasha_han_1234/%EB%85%BC%EB%AC%B8-BIGVGAN</link>
            <guid>https://velog.io/@tasha_han_1234/%EB%85%BC%EB%AC%B8-BIGVGAN</guid>
            <pubDate>Sat, 28 Mar 2026 00:46:34 GMT</pubDate>
            <description><![CDATA[<h2 id="기초개념">기초개념</h2>
<h3 id="1-gan--generative-adversary-network">1. GAN  (generative adversary network)</h3>
<ul>
<li>이미지를 생성하는 생성자 모델, ai가 만든 이미지와 진짜 이미지를 판별하는 판별자 모델을 만들어서</li>
<li>둘을 경쟁시켜서 모델의 생성된 이미지의 결과를 높이는 모델</li>
<li></li>
</ul>
<h3 id="2-멜-스펙트로그램mel-spectrogram">2. 멜-스펙트로그램(Mel-spectrogram)</h3>
<ul>
<li>오디오 신호 처리에서 AI가 소리를 이해하기 가장 좋게 가공한 &#39;소리의 지도’</li>
<li><strong>Mel Scale:</strong> 인간의 청각 특성을 반영하여, 저음역대는 세밀하게 나누고 고음역대는 뭉뚱그려서 표현한 척도</li>
<li>스펙트로그램 (Spectrogram) : 소리는 시간에 따라 변하는 파동이지만 이 파동 데이터만 봐서는 어떤 주파수(고음/저음)가 섞여 있는지 알기 어려움<ul>
<li><strong>푸리에 변환(STFT):</strong> 복잡한 파동을 쪼개서 &quot;이 시간에는 100Hz가 이만큼, 2000Hz가 이만큼 들어있어&quot;라고 주파수 성분으로 분해</li>
<li>이걸 이미지로 시각화한 것이 스펙트로그램.<ul>
<li><strong>X축:</strong> 시간 (Time)</li>
<li><strong>Y축:</strong> 주파수 (Frequency)</li>
<li><strong>밝기(색상):</strong> 해당 주파수의 에너지 강도 (Magnitude)</li>
<li></li>
</ul>
</li>
</ul>
</li>
</ul>
<p><img src="https://velog.velcdn.com/images/tasha_han_1234/post/799a0634-fba6-49bf-89df-7898d564ccef/image.png" alt=""></p>
<ul>
<li>Periodic activation function (주기적 활성화 함수): 활성함수를 보통 ReLu나 뭐 시그모이드 이런거 쓰겠지. 그런데 여기서는 소리의 주기성을 표현하기 위해 사인 함수를 사용.</li>
<li><strong>Anti-aliased representation (안티-앨리어싱 표현):</strong> 디지털 신호를 처리할 때 고주파 성분이 깨지거나 왜곡되는 현상을 &#39;앨리어싱&#39;이라고 하는데, 이걸 막는 기법을 넣어서 소리를 더 매끄럽게 만들었다는 것.</li>
<li><strong>Inductive bias (귀납적 편향):</strong> &quot;오디오는 원래 이런 거야&quot;라는 일종의 사전 지식을 모델 구조 자체에 심음</li>
<li>scale up to 112M parameters :대규모 파라미터</li>
<li>제로샷</li>
</ul>
]]></description>
        </item>
        <item>
            <title><![CDATA[[논문] CLIP & SigLIP 2]]></title>
            <link>https://velog.io/@tasha_han_1234/%EB%85%BC%EB%AC%B8-CLIP-SigLIP-2</link>
            <guid>https://velog.io/@tasha_han_1234/%EB%85%BC%EB%AC%B8-CLIP-SigLIP-2</guid>
            <pubDate>Sat, 28 Mar 2026 00:44:43 GMT</pubDate>
            <description><![CDATA[<h2 id="clip류-모델이란">CLIP류 모델이란?</h2>
<p>CLIP류 모델은 이미지와 텍스트를 동일한 의미 공간(embedding space)에 매핑하는 모델이다.</p>
<p>즉, 이미지 하나와 문장 하나를 각각 벡터로 변환했을 때, 서로 의미적으로 일치하는 쌍은 가깝게, 일치하지 않는 쌍은 멀어지도록 학습한다.</p>
<p>쉽게 말해, CLIP류 모델은 이미지를 단순히 고정된 클래스 중 하나로 분류하는 데 그치지 않고, 이미지와 자연어 문장을 직접 연결하여 이해하는 모델이다. 예를 들어 고양이 사진과 “a cat on a sofa”라는 문장을 서로 가깝게 배치하도록 학습하는 방식이다. 따라서 CLIP류 모델은 본질적으로 “이미지를 언어와 연결 가능한 표현으로 바꾸는 모델”이라고 할 수 있다.</p>
<hr>
<h2 id="clip의-강점과-한계">CLIP의 강점과 한계</h2>
<p>CLIP류 모델의 가장 큰 강점은 범용성이다. 기존의 이미지 분류 모델이 정해진 클래스 라벨을 기반으로 학습되었다면, CLIP은 이미지-문장 쌍을 기반으로 학습되기 때문에 훨씬 더 일반적인 시각 표현을 획득할 수 있다. 이러한 장점은 zero-shot classification, image-text retrieval, 그리고 비전-언어 모델(VLM)의 vision encoder 활용으로 이어진다.</p>
<p>첫째, zero-shot classification이 가능하다. 즉, 별도의 추가 학습 없이도 “a photo of a dog”, “a photo of a car”와 같은 텍스트 프롬프트와 이미지의 유사도를 비교하여 분류를 수행할 수 있다.</p>
<p>둘째, retrieval 작업에 강하다. 텍스트를 입력하면 관련 이미지를 찾고, 반대로 이미지를 입력하면 가장 잘 맞는 설명 문장을 찾을 수 있다.</p>
<p>셋째, 이후 대규모 언어모델과 결합되는 멀티모달 시스템에서 강력한 vision encoder로 활용될 수 있다.</p>
<p>그러나 CLIP류 모델에는 분명한 한계도 존재한다. 기존 CLIP 스타일 모델은 전역적인 의미 이해에는 강하지만, localization이나 dense semantic representation이 요구되는 작업에서는 상대적으로 약하다.</p>
<p>즉, CLIP은 “이 사진이 개와 관련 있다”, “이 문장이 이 사진과 잘 맞는다”와 같은 전역적 의미 판단에는 강하지만, “개가 사진 안의 정확히 어디에 있는가”, “각 patch가 어떤 의미를 가지는가”, “픽셀 또는 영역 단위의 세밀한 이해가 필요한 작업”에서는 한계를 가진다. 이러한 점이 SigLIP 2가 해결하고자 하는 핵심 문제의식이다.</p>
<hr>
<h2 id="siglip-clip과-loss가-어떻게-다른가">SigLIP: CLIP과 loss가 어떻게 다른가</h2>
<p>SigLIP은 CLIP과 같은 이미지-텍스트 정렬 계열의 모델이지만, 학습 손실 함수(loss)에서 중요한 차이를 가진다.</p>
<p>CLIP의 contrastive loss는 하나의 미니배치 안에 여러 이미지와 여러 텍스트를 함께 두고, 올바른 이미지-텍스트 쌍은 가깝게, 나머지 잘못된 쌍은 상대적으로 멀게 만드는 방식이다. 즉, 배치 내에서 어떤 이미지에 가장 잘 맞는 문장이 무엇인지, 또는 어떤 문장에 가장 잘 맞는 이미지가 무엇인지 경쟁시키는 구조라고 볼 수 있다.</p>
<p>반면 SigLIP은 미니배치 내의 모든 이미지 임베딩과 모든 텍스트 임베딩의 조합을 대상으로, 각 쌍이 서로 맞는지 아닌지를 독립적인 이진 분류(binary classification)처럼 다룬다. 다시 말해, CLIP이 “누가 가장 잘 맞는 짝인가”를 비교하는 방식이라면, SigLIP은 “이 이미지와 이 문장이 서로 맞는가 아닌가”를 각각 판별하는 방식이다.</p>
<p>이 차이는 SigLIP 2를 이해하는 데 중요하다. SigLIP 2는 완전히 새로운 계열의 모델이 아니라, 기본적으로 SigLIP의 sigmoid loss 기반 학습 구조를 유지한 채 그 위에 여러 보강 기법을 추가한 모델이기 때문이다. 따라서 개념적으로는 CLIP에서 SigLIP으로, 그리고 다시 SigLIP 2로 발전하는 흐름으로 이해하면 자연스럽다.</p>
<hr>
<h2 id="siglip-2-무엇을-추가했고-왜-좋아졌는가">SigLIP 2: 무엇을 추가했고 왜 좋아졌는가</h2>
<p>SigLIP 2는 기존 SigLIP의 기본 구조 위에 여러 학습 기법을 통합적으로 추가한 모델이다. 단순한 이미지-텍스트 정렬을 넘어 semantic understanding, localization, dense feature quality를 전반적으로 향상시키는 방향으로 확장되었다고 볼 수 있다.</p>
<p>첫째, decoder-based pretraining이 추가되었다. 구체적으로는 captioning, referring expression comprehension, grounded captioning과 같은 보조 과제를 함께 학습한다. 이는 단순히 이미지와 텍스트가 맞는지 판단하는 수준을 넘어서, 이미지의 내용을 설명하고, 문장이 가리키는 구체적인 영역을 이해하도록 만드는 역할을 한다. 이 학습은 OCR 및 localization 성능 향상에 직접적으로 기여한다.</p>
<p>둘째, self-distillation이 추가되었다. 여기서는 teacher가 전체 이미지를 보고 생성한 표현을 student가 부분적인 view만 보고도 비슷하게 따라가도록 학습한다. 이 방식은 모델이 이미지 일부만 보더라도 전체 의미를 보존하는 표현을 학습하게 하며, 보다 견고한 시각 표현 형성에 도움을 준다.</p>
<p>셋째, masked prediction이 추가되었다. 이미지 patch의 절반가량을 가린 뒤, 가려진 위치의 feature를 teacher feature에 맞추도록 학습한다. 이는 patch 단위의 표현 학습을 강화하며, segmentation이나 depth estimation처럼 dense prediction이 필요한 작업에 유리한 feature를 형성하게 한다.</p>
<p>넷째, multilingual data와 debiasing 기법이 도입되었다. SigLIP 2는 다양한 언어 데이터를 함께 활용하여 학습하며, 편향을 줄이기 위한 filtering도 적용한다. 그 결과 영어 중심 성능을 유지하면서도 다국어 retrieval 성능과 fairness를 향상시키는 방향을 추구한다.</p>
<p>다섯째, NaFlex가 도입되었다. 이는 다양한 해상도와 원본 종횡비(native aspect ratio)를 최대한 유지하면서 입력을 처리할 수 있도록 한 방식이다. 기존에는 이미지를 정사각형 입력으로 맞추는 과정에서 왜곡이 발생하는 경우가 많았지만, NaFlex는 이러한 왜곡을 줄여 문서 이미지, OCR, 화면 캡처와 같이 비율 유지가 중요한 입력에서 더 나은 성능을 기대할 수 있게 한다.</p>
<p>정리하면, 기존 CLIP/SigLIP이 전역적 의미 정렬에 강했다면, SigLIP 2는 여기에 decoder 기반 학습을 통한 설명 및 위치 이해, self-distillation과 masked prediction을 통한 patch 및 dense feature 강화, multilingual 학습을 통한 다국어 확장, NaFlex를 통한 입력 유연성 확보를 결합한 모델이라고 볼 수 있다. 즉, “이미지-텍스트 정렬을 잘하던 모델을 보다 세밀하게 이해할 수 있도록 확장한 버전”이라고 요약할 수 있다.</p>
<hr>
<h2 id="결과-classification--retrieval--localization--dense-task">결과: classification / retrieval / localization / dense task</h2>
<p>논문은 SigLIP 2의 성능을 classification, retrieval, localization, dense task 등 여러 관점에서 평가한다.</p>
<p>먼저 classification과 retrieval 측면에서, SigLIP 2는 기존 SigLIP 및 여러 baseline 대비 전반적으로 더 우수한 zero-shot classification과 image-text retrieval 성능을 보인다. 특히 다국어 지원 모델임에도 불구하고 영어 중심 벤치마크에서도 강한 성능을 유지한다는 점이 강조된다. 또한 multilingual retrieval 성능 역시 기존 SigLIP 대비 크게 향상되었다.</p>
<p>다음으로 VLM encoder로서의 활용성도 개선되었다. SigLIP 2를 vision encoder로 사용할 경우, 기존 SigLIP보다 더 나은 성능을 제공한다. 이는 SigLIP 2가 단지 독립적인 retrieval 모델로만 강한 것이 아니라, 이후 대규모 멀티모달 시스템의 시각 인코더로 사용될 때도 더 우수한 표현을 제공할 수 있음을 의미한다.</p>
<p>Dense task 측면에서도 성능 향상이 나타난다. segmentation, depth, normals와 같은 dense prediction 작업에서 SigLIP 2는 여러 공개형 CLIP 스타일 모델들보다 우수한 성능을 보이는 경우가 많다. 이는 앞서 설명한 self-distillation과 masked prediction이 local semantics와 dense feature 학습을 강화한 결과로 해석할 수 있다.</p>
<p>Localization 관련 성능 역시 중요하게 다루어진다. 특히 referring expression comprehension 결과에서 SigLIP 2는 SigLIP, CLIP, captioning-only pretraining 모델보다 큰 폭으로 향상된 성능을 보인다. 이는 decoder-based pretraining이 문장과 이미지 내 지역 정보를 정교하게 연결하는 능력을 강화했기 때문으로 설명할 수 있다. 예를 들어 “빨간 옷을 입은 사람”, “왼쪽 아래에 있는 컵”, “창문 옆의 고양이”처럼 문장이 지목하는 특정 대상을 정확히 찾는 과제에서 더 잘 작동한다는 의미이다. 또한 open-vocabulary detection에서도 SigLIP 2가 기존 SigLIP보다 우수한 성능을 보인다.</p>
<hr>
<h2 id="종합-정리">종합 정리</h2>
<p>SigLIP 2 논문은 다음과 같은 흐름으로 이해할 수 있다.</p>
<p>우선 CLIP류 모델은 이미지와 텍스트를 동일한 의미 공간에 정렬함으로써 zero-shot classification, retrieval, 그리고 VLM의 vision encoder로서 강력한 성능을 보이는 범용 비전-언어 인코더 계열이다.</p>
<p>그러나 기존 CLIP류 모델은 전역적인 의미 이해에는 강한 반면, localization이나 dense feature가 중요한 작업에서는 한계를 가진다.</p>
<p>SigLIP은 이러한 CLIP류 모델 중 하나로, CLIP의 contrastive loss 대신 sigmoid loss를 사용한다는 점에서 구별된다.</p>
<p>SigLIP 2는 이 SigLIP 기반 위에 decoder-based pretraining, self-distillation, masked prediction, multilingual 학습, NaFlex를 추가함으로써 모델의 능력을 확장하였다. 그 결과 classification과 retrieval뿐 아니라 localization, dense prediction, 그리고 VLM vision encoder로서의 활용성까지 전반적으로 개선되었다는 것이 논문의 핵심 주장이다.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[[논문]You Only Cache Once]]></title>
            <link>https://velog.io/@tasha_han_1234/%EB%85%BC%EB%AC%B8You-Only-Cache-Once</link>
            <guid>https://velog.io/@tasha_han_1234/%EB%85%BC%EB%AC%B8You-Only-Cache-Once</guid>
            <pubDate>Sat, 28 Mar 2026 00:43:34 GMT</pubDate>
            <description><![CDATA[<h1 id="llm-아키텍처의-진화-transformer에서-yoco까지">LLM 아키텍처의 진화: Transformer에서 YOCO까지</h1>
<h2 id="1-아키텍처-변천사-역할-분담에서-효율의-극치로">1. 아키텍처 변천사: &quot;역할 분담에서 효율의 극치로&quot;</h2>
<ul>
<li><strong>Classic Transformer (Encoder + Decoder)</strong>: <code>번역기형</code><ul>
<li><strong>구조</strong>: 입력(인코더)과 출력(디코더)이 분리됨.</li>
<li><strong>특징</strong>: 질문을 완전히 읽은 뒤 답변을 생성. 인코더-디코더 사이를 잇는 &#39;가교(Cross-Attention)&#39;가 필수적.</li>
</ul>
</li>
<li><strong>GPT 시리즈 (Decoder-Only)</strong>: <code>현재의 표준</code><ul>
<li><strong>구조</strong>: 인코더를 없애고 디코더만 사용.</li>
<li><strong>특징</strong>: 모든 토큰이 이전 토큰을 참조하며 다음 단어를 예측. 현재 Llama, GPT-4 등 메인스트림 모델의 99%가 채택.</li>
</ul>
</li>
<li><strong>YOCO (Decoder-Decoder)</strong>: <code>차세대 초경량 구조</code><ul>
<li><strong>구조</strong>: 디코더 위에 디코더를 또 쌓음 (<strong>Self-Decoder + Cross-Decoder</strong>).</li>
<li><strong>특징</strong>: 앞단에서 &#39;핵심 요약&#39;을 한 번만 수행하고, 뒷단 레이어들은 이를 재사용함.</li>
</ul>
</li>
</ul>
<hr>
<h2 id="2-gptdecoder-only의-한계-시간복잡도-on2">2. GPT(Decoder-only)의 한계: 시간복잡도 $O(N^2)$</h2>
<p>현재의 표준인 GPT 구조가 가진 가장 큰 숙제는 <strong>비용과 메모리</strong>입니다.</p>
<ul>
<li><strong>제곱의 법칙 ($O(N^2)$)</strong>: 문장이 2배 길어지면 계산량은 4배, 10배 길어지면 100배가 늘어납니다.</li>
<li><strong>KV 캐시의 저주</strong>: GPT는 모든 레이어(예: 80층)마다 대화 내용을 별도로 저장(Caching)해야 합니다. 문맥이 길어질수록 GPU 메모리가 기하급수적으로 소모되는 근본적 이유입니다.</li>
</ul>
<hr>
<h2 id="3-yoco-you-only-cache-once-핵심-로직">3. YOCO (You Only Cache Once) 핵심 로직</h2>
<p>YOCO는 <strong>귀찮게 층마다 메모리를 만들지 말고, 한 번만 만들어서 나눠 쓰자</strong> 는 혁신적인 설계를 제안합니다.</p>
<ol>
<li><strong>Self-Decoder (요약층)</strong>: 전체 문맥을 훑으며 가장 중요한 정보를 딱 <strong>한 번만</strong> 캐싱합니다. 이때 $O(N^2)$ 대신 선형 복잡도($O(N)$) 기법인 <strong><code>Gated Retention</code></strong>을 사용합니다.</li>
<li><strong>Cross-Decoder (생성층)</strong>: 이후의 레이어들은 직접 캐시를 만들지 않고, 1단계에서 만든 <strong>&#39;공유 캐시&#39;</strong>에 빨대를 꽂아 정보만 가져와 답변을 생성합니다.</li>
</ol>
<hr>
<h2 id="4-핵심-수식과-알못을-위한-이해-가이드">4. 핵심 수식과 &quot;알못&quot;을 위한 이해 가이드</h2>
<p>팀원들에게 수식의 의미를 전달할 때 아래의 비유를 활용해 보세요.</p>
<h3 id="①-gated-retention-정보-압축-기술">① Gated Retention (정보 압축 기술)</h3>
<p>$S_t = f_t \odot S_{t-1} + i_t \odot (K_t^\top V_t)$</p>
<blockquote>
<p>💡 <strong>비유</strong>: <strong>&quot;기억 = (망각 필터 × 어제의 메모) + (중요도 필터 × 오늘의 정보)&quot;</strong></p>
</blockquote>
<ul>
<li><strong>해설</strong>: 과거의 모든 데이터를 일일이 뒤지는 대신, &#39;어제의 요약본&#39;에 &#39;오늘의 핵심&#39;만 더해 &#39;새 요약본&#39;을 만듭니다. 이 덕분에 계산량이 문장 길이에 비례($O(N)$)해서만 늘어납니다.</li>
</ul>
<h3 id="②-shared-kv-공유-기술">② Shared KV (공유 기술)</h3>
<p>$\text{Output} = \text{Cross-Attention}(Q, \text{Shared_KV})$</p>
<blockquote>
<p>💡 <strong>비유</strong>: <strong>&quot;답변 = 질문 × 아까 만든 그 요약본&quot;</strong></p>
</blockquote>
<ul>
<li><strong>해설</strong>: 모든 층이 각자 백과사전을 들고 있는 게 아니라, 1층에서 만든 &#39;단 한 권의 요약본&#39;을 전 층이 돌려봅니다. 메모리 사용량을 수십 배 아낄 수 있는 비결입니다.</li>
</ul>
<hr>
<h2 id="🌟-결론-yoco가-우리-팀에-주는-의미">🌟 결론: YOCO가 우리 팀에 주는 의미</h2>
<ul>
<li><strong>인프라 절감</strong>: 동일한 GPU 자원으로 기존 대비 최대 10배 많은 사용자를 수용 가능합니다.</li>
<li><strong>초장문 처리</strong>: 100만 토큰(책 수십 권 분량)을 넣어도 메모리 부족 없이 정확하게 정보를 찾아냅니다.</li>
<li><strong>사용자 경험</strong>: 첫 토큰이 나오는 속도(TTFT)가 기존 대비 약 3배 빨라집니다.</li>
</ul>
]]></description>
        </item>
        <item>
            <title><![CDATA[[논문]pplx-embed]]></title>
            <link>https://velog.io/@tasha_han_1234/%EB%85%BC%EB%AC%B8pplx-embed</link>
            <guid>https://velog.io/@tasha_han_1234/%EB%85%BC%EB%AC%B8pplx-embed</guid>
            <pubDate>Sat, 28 Mar 2026 00:42:08 GMT</pubDate>
            <description><![CDATA[<p><a href="https://arxiv.org/abs/2602.11151">https://arxiv.org/abs/2602.11151</a></p>
<h3 id="왜-퍼플랙시티는-이렇게-빠를까">왜 퍼플랙시티는 이렇게 빠를까???</h3>
<p>웹 규모의 검색을 위한 다국어 임베딩 모델 패밀리</p>
<p>웹 스케일 검색·RAG에서 <strong>고품질 텍스트 임베딩</strong> 제공.</p>
<table>
<thead>
<tr>
<th>backbone</th>
<th>디퓨전(diffusion) 사전학습 LM</th>
</tr>
</thead>
<tbody><tr>
<td>traning</td>
<td>다단계 대조 학습(multi-stage contrastive learning)</td>
</tr>
</tbody></table>
<p><strong>모델 종류</strong></p>
<ul>
<li><p><strong>pplx-embed-v1 - 0.6B</strong></p>
<p>  표준 검색용</p>
</li>
<li><p><strong>pplx-embed-context-v1 - 4B</strong></p>
<p>  문서 전체 문맥을 청크에 유지하는 임베딩용</p>
</li>
</ul>
<p><img src="https://velog.velcdn.com/images/tasha_han_1234/post/50b8ba22-ea81-402c-9b13-461ad7fecca5/image.png" alt=""></p>
<h2 id="디퓨전">디퓨전?</h2>
<ul>
<li>= 노이즈 복원 학습 방식</li>
<li>완전 노이즈에서 스탭별로 점진적으로 노이즈를 줄여가면서 생성하는 생성형 모델</li>
</ul>
<p><img src="https://velog.velcdn.com/images/tasha_han_1234/post/d7476bf1-114b-442d-91e1-3c974d90b2fe/image.png" alt=""></p>
<h2 id="각-모델별-학습-방식">각 모델별 학습 방식</h2>
<ul>
<li><strong>GPT</strong><ul>
<li>I love → [ ? ]</li>
<li>이전 토큰을 기반으로 이후 토큰을 예측</li>
<li>단방향</li>
</ul>
</li>
<li><strong>BERT</strong><ul>
<li>I [mask] you</li>
<li>랜덤하게 마스킹 하는 방식으로 학습</li>
<li>양방향</li>
</ul>
</li>
<li><strong>Diffusion</strong><ul>
<li>I [noise] you [noise] much → I [noise] you so much → I love you so much</li>
<li>스탭별로 점진적 노이즈 제거</li>
<li>양방향</li>
</ul>
</li>
</ul>
<hr>
<h2 id="pplx-embedding-학습-과정">PPLX Embedding 학습 과정</h2>
<p><img src="https://velog.velcdn.com/images/tasha_han_1234/post/c272a935-cc86-4a49-988d-40de7c7eedb8/image.png" alt=""></p>
<p><strong>1. Continued Pretraining</strong></p>
<p>Decoder-only LLM(Qwen3)을 diffusion objective로 재학습해 bidirectional attention 기반 인코더로 전환한다. 이후 모든 단계의 베이스 모델이 된다.</p>
<p><strong>2. Pair Training</strong></p>
<p>쿼리–문서 쌍을 InfoNCE 기반 contrastive loss로 학습한다. English → cross-lingual → multilingual 순서의 커리큘럼으로 진행된다.</p>
<p><strong>3. Triplet Training</strong></p>
<p>Pair Training 체크포인트에서 hard negative를 포함한 triplet 형식으로 추가 학습한다. 의미적으로 유사하지만 관련 없는 문서 간 구분력을 높이는 단계다.</p>
<p><strong>4. Contextual Training</strong></p>
<p>Pair Training과 병렬로 진행된다. 문서를 청크로 나눌 때 청크 임베딩에 문서 전체의 전역 컨텍스트를 반영하도록 학습한다. pplx-embed-context-v1 전용 단계다.</p>
<p><strong>5. Merging &amp; Selection</strong></p>
<p>Triplet Training 결과와 Contextual Training 결과 두 체크포인트를 spherical interpolation으로 병합해 최종 모델 두 가지를 산출한다.</p>
<hr>
<p><strong>최종 출력</strong></p>
<ul>
<li><strong>pplx-embed-v1</strong>: 범용 검색용 임베딩 모델</li>
<li><strong>pplx-embed-context-v1</strong>: 긴 문서의 전역 컨텍스트를 청크 단위 임베딩에 반영한 모델</li>
</ul>
]]></description>
        </item>
        <item>
            <title><![CDATA[[논문]AdaptEvolve]]></title>
            <link>https://velog.io/@tasha_han_1234/%EB%85%BC%EB%AC%B8</link>
            <guid>https://velog.io/@tasha_han_1234/%EB%85%BC%EB%AC%B8</guid>
            <pubDate>Sat, 28 Mar 2026 00:38:50 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/tasha_han_1234/post/838eef0f-a2c6-419d-8012-1f8733617a2d/image.png" alt=""></p>
<h1 id=""></h1>
<p><a href="https://github.com/raypretam/adaptive_llm_selection">https://github.com/raypretam/adaptive_llm_selection</a></p>
<p><a href="https://arxiv.org/abs/2602.11931">https://arxiv.org/abs/2602.11931</a></p>
<hr>
<h1 id="모델-선택-자동화-llm-orchestration-framework">모델 선택 자동화 LLM orchestration Framework</h1>
<h2 id="문제-정의-">문제 정의 :</h2>
<ul>
<li>모델을 선택할때의 이슈는 토큰이 적은대신 정확도가 낮은 slm 을 사용할것인가, 아니면 토큰 사용량이 비싼 대형 모델을 사용할것인가의 트레이드 오프 문제</li>
</ul>
<h2 id="as-is">AS-IS:</h2>
<ul>
<li>기존에는 정적 규칙  즉 정확도의 threshold를 인간이 설정하는 방식으로 멀티 모델 선택을 자동화 했었음.</li>
</ul>
<h2 id="그림-이해">그림 이해</h2>
<ol>
<li>population은 해결해야하는 문제의 답. 즉 문제 학습을 여러번 루프를 돌면서 하는데 이것은 한 타임스텝에 대한 도표임.</li>
<li>이걸 먼저 작은 모델에 돌림.</li>
<li>그 결과를 AdaptiveEvolve 프레임워크에서는 엔트로피 4가지 기준으로 점수를 냄.<ol>
<li>lgc: 가장 신뢰도 낮은 토큰 그룹</li>
<li>mc: 평균 신뢰도</li>
<li>tc: 가장 낮은 신뢰도 영역</li>
<li>bwc: 신뢰도 낮은 토큰 K%</li>
</ol>
</li>
<li>이걸 decision tree =if 문 을 통해 좀더 큰 모델로 갈지 말지를 고민. </li>
<li>신뢰도가 1이면 작은 모델로 남고, 0이면 더 큰 모델로 넘어감.</li>
<li>이 프레임워크를 사용하려면 샘플로 50개 질문을 학습시켜야함.</li>
</ol>
<h2 id="여기서-질문-population이-정확히-어떤-개념임">여기서 질문 population이 정확히 어떤 개념임?</h2>
<p>질문이 “통영시에서 가장 오래된 노인정을 찾는 sql을 생성해줘” 이면</p>
<p>population = [”sql1”, “sql2”, “sql3” ]</p>
<h2 id="여기서-질문-entropy-신뢰도는-어떻게-나오는-값임">여기서 질문! entropy 신뢰도는 어떻게 나오는 값임?</h2>
<p>이걸 설명하려면 llm이 다음 토큰을 찾을때 어떻게 찾는지 알아야함.</p>
<p>llm은 다음 토큰을 낼때, 각 토큰 후보 <code>예) 서울, 도쿄, 부산</code> 와 도큰 후보의 확률 <code>서울:0.9, 도쿄:0.05, 부산:0.01</code> 을 계산함.</p>
<p>[ 신뢰도 높음 ] </p>
<p>A → 0.95</p>
<p>B → 0.02</p>
<p>C → 0.02</p>
<p>D → 0.01</p>
<p>[ 신뢰도 낮음 ] </p>
<p>A → 0.25</p>
<p>B → 0.25</p>
<p>C → 0.25</p>
<p>D → 0.25</p>
<h2 id="그래서-결과">그래서 결과</h2>
<p>l* lm 토큰 비용 38% 절감</p>
<ul>
<li>정확도 97%</li>
</ul>
<h2 id="의의">의의</h2>
<ul>
<li>우리 회사 챗봇에 사용해볼만한 프레임워크라 생각함. 실제 깃허브도 있어서 시도해볼만함.</li>
<li>웍스 ai 블로그에도 모델 선택 자동화에 대한 이야기가 있었던 만큼 실제 챗봇 시장에서 유의미한</li>
<li>다만 테스트셋 50개가 필요한데, 통영처럼 타게팅된 질문이 있는 경우에 더욱 적절하다 생각.</li>
</ul>
]]></description>
        </item>
        <item>
            <title><![CDATA[ㅇㄹㄴㅇㄹ]]></title>
            <link>https://velog.io/@tasha_han_1234/%E3%85%87%E3%84%B9%E3%84%B4%E3%85%87%E3%84%B9</link>
            <guid>https://velog.io/@tasha_han_1234/%E3%85%87%E3%84%B9%E3%84%B4%E3%85%87%E3%84%B9</guid>
            <pubDate>Wed, 31 Dec 2025 03:23:54 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[zero to hero]]></title>
            <link>https://velog.io/@tasha_han_1234/zero-to-hero</link>
            <guid>https://velog.io/@tasha_han_1234/zero-to-hero</guid>
            <pubDate>Thu, 20 Nov 2025 09:01:55 GMT</pubDate>
            <description><![CDATA[<p>나 올해 꽤 열심히 살음.
누가 뭐라해도 좀 나 대단한거 같음.
스스로 자신이 있으니까 남이 내 멘탈을 못 깨네</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[TIL | Rust]]></title>
            <link>https://velog.io/@tasha_han_1234/TIL-Rust</link>
            <guid>https://velog.io/@tasha_han_1234/TIL-Rust</guid>
            <pubDate>Thu, 13 Nov 2025 05:36:50 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/tasha_han_1234/post/e4149cc6-bd96-4de4-a40b-224986eb5379/image.png" alt="">
m의 타입을 &amp;PyModulel 로 쓰고 잇었는데  버전 업 되면서 타입이 &amp;Bound&lt; PyModule&gt;로 바뀌었다는 이야기. </p>
<p>PyModule을 GIL에 묶어서 더 안전한 객체로 사용하겠다는것</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[Sementic Versioning]]></title>
            <link>https://velog.io/@tasha_han_1234/Sementic-Versioning</link>
            <guid>https://velog.io/@tasha_han_1234/Sementic-Versioning</guid>
            <pubDate>Fri, 07 Nov 2025 05:50:09 GMT</pubDate>
            <description><![CDATA[<p>내 가장 큰 문제는 버릇이 나쁘다는것이다.</p>
<p>버전 규칙 같은 버릇... 필요</p>
<hr>
<ol>
<li>기본 개념</li>
</ol>
<p>버전 형식: MAJOR.MINOR.PATCH (예: 1.4.2)</p>
<p>MAJOR(메이저): API가 호환 안 되게 깨질 때 올린다.</p>
<p>MINOR(마이너): 기존과 호환되는 기능 추가나 개선이 있을 때 올린다.</p>
<p>PATCH(패치): 버그 수정처럼 기존 기능을 깨지 않는 수정일 때 올린다.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[TIL| 개발일기는 꾸준히 쓰자!]]></title>
            <link>https://velog.io/@tasha_han_1234/TIL-%EA%B0%9C%EB%B0%9C%EC%9D%BC%EA%B8%B0%EB%8A%94-%EA%BE%B8%EC%A4%80%ED%9E%88-%EC%93%B0%EC%9E%90</link>
            <guid>https://velog.io/@tasha_han_1234/TIL-%EA%B0%9C%EB%B0%9C%EC%9D%BC%EA%B8%B0%EB%8A%94-%EA%BE%B8%EC%A4%80%ED%9E%88-%EC%93%B0%EC%9E%90</guid>
            <pubDate>Sun, 28 Sep 2025 06:11:08 GMT</pubDate>
            <description><![CDATA[<p>꾸준하게 성실하지 못할수도 있다.
그렇다면 가끔이라도 성실하려고 노력해야지.</p>
<h2 id=""></h2>
<p>[✅] 겹치는거 없게 하기
[✅] 번호매기기
[✅]] 옵션값 선택했을때 현재 선택된 값 테이블에 리액티브하게 반영되게 하기
[] 데이터가 약간 이상한거 같은데 그래프 이쁘게 나오는 데이터 있는지 찾아보기
[] 으아
[✅]] 코드 이쁘게 짜기.. 
[] 그 코드가 왜 나빴을까....</p>
<h2 id="생각해보기">생각해보기</h2>
<p>[] 어떻게 실제 환경에 integration 할지 생각해보기
[] 각 옵션값들 중에 내가 모르는것들 정리하기</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[오늘의 오늘]]></title>
            <link>https://velog.io/@tasha_han_1234/%EC%98%A4%EB%8A%98%EC%9D%98-%EC%98%A4%EB%8A%98</link>
            <guid>https://velog.io/@tasha_han_1234/%EC%98%A4%EB%8A%98%EC%9D%98-%EC%98%A4%EB%8A%98</guid>
            <pubDate>Fri, 19 Sep 2025 07:32:14 GMT</pubDate>
            <description><![CDATA[<p>멍청한 한예슬은
코딩, 진짜 단순 코딩을 개 열심히 해야합니다.
한예슬 정신차려!!</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[[쿠버네티스] | 쿠버네티스 클러스터 구축 1시간]]></title>
            <link>https://velog.io/@tasha_han_1234/%EC%BF%A0%EB%B2%84%EB%84%A4%ED%8B%B0%EC%8A%A4-%EC%BF%A0%EB%B2%84%EB%84%A4%ED%8B%B0%EC%8A%A4-%ED%81%B4%EB%9F%AC%EC%8A%A4%ED%84%B0-%EA%B5%AC%EC%B6%95-1%EC%8B%9C%EA%B0%84</link>
            <guid>https://velog.io/@tasha_han_1234/%EC%BF%A0%EB%B2%84%EB%84%A4%ED%8B%B0%EC%8A%A4-%EC%BF%A0%EB%B2%84%EB%84%A4%ED%8B%B0%EC%8A%A4-%ED%81%B4%EB%9F%AC%EC%8A%A4%ED%84%B0-%EA%B5%AC%EC%B6%95-1%EC%8B%9C%EA%B0%84</guid>
            <pubDate>Fri, 19 Sep 2025 02:56:41 GMT</pubDate>
            <description><![CDATA[<p>쿠버네티스 클러스터 구축 1시간 컷 실화 맞나요? </p>
<p>네 그렇습니다.
<a href="https://kurl.sh/">https://kurl.sh/</a> </p>
<pre><code>No resources found

                Installation
                  Complete ✔


The UIs of Prometheus, Grafana and Alertmanager have been exposed on NodePorts 30900, 30902 and 30903 respectively.

To access Grafana use the generated user:password of admin:vtm8LwLrX .



To access the cluster with kubectl:

    bash -l
Kurl uses /etc/kubernetes/admin.conf, you might want to unset KUBECONFIG to use .kube/config:

    echo unset KUBECONFIG &gt;&gt; ~/.bash_profile



Node join commands expire after 24 hours.

To generate new node join commands, run curl -fsSL https://kurl.sh/version/v2025.08.29-0/8165de7/tasks.sh | sudo bash -s join_token on this node.

To add worker nodes to this installation, run the following script on your other nodes:
    curl -fsSL https://kurl.sh/version/v2025.08.29-0/8165de7/join.sh | sudo bash -s kubernetes-master-address=192.168.0.211:6443 kubeadm-token=3wf10c.0npd1i5w6y9egitx kubeadm-token-ca-hash=sha256:ab213e4b3b3507621f22a9eff599e5c7429b63094ca0ec6f3fdb5822f40e7980 kubernetes-version=1.29.15 ekco-address=192.168.0.211:31880 ekco-auth-token=bjLVT6dkjSOa72bFXW7s1kEaLRBuPaPU8YAuW4hj59wiOi0OGhuQxrI67oTQ6PT9 docker-registry-ip=10.96.1.217 additional-no-proxy-addresses=10.96.0.0/22,10.32.0.0/20 primary-host=192.168.0.211
</code></pre>]]></description>
        </item>
    </channel>
</rss>