728x90

<금융 AI의 이해>가 출간되었습니다.

 

금융 분야 종사자들이라면 직접 모델링을 하지 않더라도, 프로젝트 기획, 리딩 등을 해야할 일이 많을텐데, 좋은 참고자료가 될 수 있을 것이라 생각합니다.

신용 평가 모델, 사기 탐지 및 방지 모델, LLM 등 다루려는 내용이 많다보니 한 가지 토픽에 대해 깊게 다루진 못했던 것 같아 아쉬움이 남네요. 

 

로보어드바이저, 그래프 임베딩, LLM 관련해서는 추가적으로 (시간이 허락된다면...) 블로그에 올려 볼 계획입니다 :) 

 

 

728x90

유도식 12.1 정리

유도식 12.1은 다음과 같습니다:

\[
E(h; \mathcal{D}) = P_{x \sim \mathcal{D}}(h(x) \neq y)
\]

이를 통해 \( E(h; \mathcal{D}) \)를 정의하고 정리해보겠습니다.

정리

  1. **정의에 따라, 일반화 오차 \( E(h; \mathcal{D}) \)는 가설 \( h \)가 데이터 분포 \( \mathcal{D} \)로부터 샘플링된 입력 \( x \)에 대해 실제 레이블 \( y \)와 일치하지 않는 확률을 의미합니다:**

\[
E(h; \mathcal{D}) = P_{x \sim \mathcal{D}}(h(x) \neq y)
\]

  1. **데이터 세트 \( D \)가 독립적이고 동일한 분포(i.i.d.)에서 샘플링된 경우, 경험 오차 \( \hat{E}(h; \mathcal{D}) \)는 다음과 같이 정의됩니다:**

\[
\hat{E}(h; \mathcal{D}) = \frac{1}{m} \sum_{i=1}^{m} \mathbf{1}(h(x_i) \neq y_i)
\]

여기서 \( \mathbf{1} \)은 지시 함수(indicator function)로, \( h(x_i) \)가 \( y_i \)와 일치하지 않으면 1, 일치하면 0의 값을 가집니다.

  1. **큰 수의 법칙에 따라, 샘플 크기 \( m \)이 커질수록 경험 오차는 일반화 오차에 수렴합니다:**

\[
\hat{E}(h; \mathcal{D}) \rightarrow E(h; \mathcal{D}) \quad \text{as } m \rightarrow \infty
\]

  1. **따라서, 유도식 12.1을 다시 정리하면 다음과 같은 결론에 도달합니다:**

\[
E(h; \mathcal{D}) = P_{x \sim \mathcal{D}}(h(x) \neq y)
\]

이는 가설 \( h \)가 주어진 데이터 분포 \( \mathcal{D} \)에 대해 얼마나 잘 일반화하는지를 나타내는 지표입니다.

 

728x90

보조 정리 12.1 증명

보조 정리 12.1의 내용은 다음과 같습니다:

\[
E(h; \mathcal{D}) = P_{x \sim \mathcal{D}}(h(x) \neq y)
\]

이를 증명해보겠습니다.

증명

  1. **정의에 따라 일반화 오차는 다음과 같이 정의됩니다:**

    \[
    E(h; \mathcal{D}) = P_{x \sim \mathcal{D}}(h(x) \neq y)
    \]

  2. **경험 오차는 다음과 같이 정의됩니다:**

    \[
    \hat{E}(h; \mathcal{D}) = \frac{1}{m} \sum_{i=1}^{m} \mathbf{1}(h(x_i) \neq y_i)
    \]

    여기서 \( \mathbf{1} \)은 지시 함수(indicator function)로, 조건이 참일 때 1, 거짓일 때 0의 값을 갖습니다.

  3. **확률적 관점에서 일반화 오차와 경험 오차의 차이는 데이터를 무작위로 샘플링한 결과로 나타날 수 있습니다. 이는 크게 두 가지 요소로 설명될 수 있습니다:**

    • **샘플의 크기 \( m \):** 샘플의 크기가 클수록, 경험 오차는 일반화 오차에 가까워집니다.
    • **샘플링 분포 \( \mathcal{D} \):** 샘플이 독립적이고 동일한 분포(i.i.d.)에서 추출된 경우, 경험 오차는 일반화 오차의 좋은 추정치가 됩니다.
  4. **독립적이고 동일한 분포(i.i.d.)에서 샘플링된 경우, 큰 수의 법칙에 따라 경험 오차는 일반화 오차로 수렴합니다:**

    \[
    \hat{E}(h; \mathcal{D}) \rightarrow E(h; \mathcal{D}) \quad \text{(as \( m \rightarrow \infty \))}
    \]

  5. **이를 바탕으로, 다음이 성립함을 보일 수 있습니다:**

    \[
    \hat{E}(h; \mathcal{D}) = \frac{1}{m} \sum_{i=1}^{m} \mathbf{1}(h(x_i) \neq y_i) \rightarrow P_{x \sim \mathcal{D}}(h(x) \neq y) = E(h; \mathcal{D})
    \]

따라서, 보조 정리 12.1은 증명되었습니다.

728x90

젠센 부등식 증명 (Jensen's Inequality)

젠센 부등식은 모든 컨벡스 함수(convex function)에 대해 다음과 같은 식을 만족합니다.

\[
f(\mathbb{E}(x)) \leq \mathbb{E}(f(x))
\]

이를 증명해보겠습니다.

증명

컨벡스 함수 \( f \)의 정의에 따르면, \( f \)는 다음 조건을 만족합니다.

\[
f(\theta x_1 + (1-\theta) x_2) \leq \theta f(x_1) + (1-\theta) f(x_2)
\]
여기서 \( 0 \leq \theta \leq 1 \)입니다.

이를 수학적 기댓값을 이용하여 일반화하면,

\[
f\left(\sum_{i=1}^{n} \theta_i x_i\right) \leq \sum_{i=1}^{n} \theta_i f(x_i)
\]
여기서 \(\sum_{i=1}^{n} \theta_i = 1\)이고, 각 \(\theta_i \geq 0\)입니다.

이제, \( x \)가 확률 변수이고, \(\theta_i\)가 확률 변수 \( x \)가 \( x_i \) 값을 가질 확률이라고 가정합니다. 그러면 \(\mathbb{E}(x) = \sum_{i=1}^{n} \theta_i x_i\)입니다.

따라서, 컨벡스 함수의 정의에 따라,

\[
f\left(\mathbb{E}(x)\right) = f\left(\sum_{i=1}^{n} \theta_i x_i\right) \leq \sum_{i=1}^{n} \theta_i f(x_i) = \mathbb{E}(f(x))
\]

즉, 젠센 부등식이 성립함을 알 수 있습니다.

\[
f(\mathbb{E}(x)) \leq \mathbb{E}(f(x))
\]

따라서, 젠센 부등식은 증명되었습니다.

728x90

LLM을 활용한 프롬프트 엔지니어링에 관심이 생겨 찾다가 좋은 글이 있어 스크랩!

 

원본 및 번역본

https://huyenchip.com/2023/04/11/llm-engineering.html

 

 

Building LLM applications for production

[Hacker News discussion, LinkedIn discussion, Twitter thread]

huyenchip.com

https://docs.google.com/document/d/1AR1v7p4ckJBXn4zv2saFX4ssQDKYuU2gE_aVO2QFHrs/edit#heading=h.qcfvwsgyftx6

 

Building LLM applications for production

Building LLM applications for production by Chip Huyen 원본: https://huyenchip.com/2023/04/11/llm-engineering.html 번역: DeepL + mnncat@gmail.com 최근 제가 많이 받은 질문 중 하나는 대규모 언어 모델(LLM)이 머신 러닝 워크플

docs.google.com

 

 

제목: 대규모 언어 모델(LLM) 애플리케이션을 프로덕션에 사용하기 - Chip Huyen

1부: 프롬프트 엔지니어링 제품화의 어려움
이 부분에서는 LLM을 프로덕션에 사용하기 위한 주요 도전과제들을 다룹니다.

- 자연어의 모호성: 자연어는 모호하며, 이로 인해 LLM의 출력이 예측불가능하게 됩니다.
- 프롬프트 평가: LLM은 프롬프트에 따라 다르게 반응하므로, 프롬프트를 평가하는 것이 중요합니다.
- 프롬프트 버전 관리: 프롬프트 최적화 및 수정을 위한 버전 관리 시스템이 필요합니다.
- 비용 및 지연 시간: LLM의 실행은 비용이 들고 시간이 걸립니다. 그래서 비용 효율적인 방법을 찾고, 빠른 처리를 위한 방안이 필요합니다.
- 프롬프트 vs. 파인튜닝 vs. 대안: 프롬프트 튜닝, 파인튜닝, 임베딩 및 벡터 데이터베이스와 같은 대안적인 방법들에 대해 논의합니다.

2부: 작업 결합성
이 부분에서는 여러 작업을 구성하고 복잡한 애플리케이션을 구축하기 위해 제어 흐름과 도구를 사용하는 방법을 설명합니다.

- 여러 작업으로 구성된 애플리케이션: 복잡한 애플리케이션을 구축하기 위해 여러 작업을 어떻게 결합할 것인가에 대한 방법론을 다룹니다.
- 에이전트, 도구, 제어 흐름: 애플리케이션의 다양한 부분을 조정하고 제어하는 방법에 대해 논의합니다.
- 도구 vs. 플러그인: 두 가지 접근법의 장단점을 비교합니다.
- 제어 흐름: 순차, 병렬, if, for 루프 등 다양한 제어 흐름에 대해 설명합니다.
- 에이전트 테스트하기: LLM 에이전트를 테스트하고 개선하는 방법에 대해 논의합니다.

3부: 유망한 사용 사례
이 부분에서는 LLM을 기반으로 한 애플리케이션의 사용 사례들을 살펴봅니다.

- AI 어시스턴트: AI 어시스턴트는 복잡한 작업을 자동화하고 사용자의 작업을 돕습니다.
- 챗봇: LLM 기반 챗봇은 텍스트 기반 대화를 처리하며 사용자와 상호작용합니다.
- 프로그래밍과 게임: LLM은 코드 작성이나 게임 설계와 같은 작업에서 유용하게 사용될 수 있습니다.
- 학습에 활용하기: LLM은 교육 및 학습 환경에서 많은 잠재력을 가지고 있습니다.
- 내 데이터와 대화하기: 사용자가 자신의 데이터에 직접적으로 질문하거나 대화할 수 있는 시스템을 만드는 데 LLM을 사용할 수 있습니다.
- 검색과 추천: LLM은 검색 쿼리를 이해하고 결과를 개선하는데 도움을 줄 수 있습니다.
- 세일즈: LLM은 세일즈 활동을 자동화하고 개선할 수 있습니다.
- SEO: LLM은 웹 페이지의 SEO를 향상시키는 데 도움이 될 수 있습니다.

글의 주요 결론은 LLM이 높은 잠재력을 가지고 있지만, 그것을 제품화하고 실제 환경에 배포하는 것은 여전히 많은 도전과제를 안고 있다는 것입니다.

 

Building LLM applications for production

Building LLM applications for production by Chip Huyen 원본: https://huyenchip.com/2023/04/11/llm-engineering.html 번역: DeepL + mnncat@gmail.com 최근 제가 많이 받은 질문 중 하나는 대규모 언어 모델(LLM)이 머신 러닝 워크플

docs.google.com

 

 

 

personal notes:

- distillation을 적용한 파인튜닝 - https://github.com/tatsu-lab/stanford_alpaca

 

GitHub - tatsu-lab/stanford_alpaca: Code and documentation to train Stanford's Alpaca models, and generate the data.

Code and documentation to train Stanford's Alpaca models, and generate the data. - GitHub - tatsu-lab/stanford_alpaca: Code and documentation to train Stanford's Alpaca models, and generate...

github.com

- 2021년이 그래프 데이터베이스의 해였다면, 2023년은 벡터 데이터베이스의 해입니다.

- 유망한 사용 사례:

https://docs.google.com/spreadsheets/d/1tmfn8jKb7T1x7PpyO7rD023tH2zc_WDg_OHh0aVXIrw/edit#gid=174517450

https://docs.google.com/spreadsheets/d/1GqwPo1FpAbe_awmNZW5ZMH69yc5QtEr7ZYw-ckaz_mQ/edit#gid=795016726

 

제목 없는 스프레드시트

Results Name,Project 1 Liner,Demo / Code Link / Hugging Face Spaces (Proof of Code!) Andrew Kean Gao,Twilio text service for Hindus,<a href="http://VedasGPT.org">VedasGPT.org</a> Will Brown,Hire GPT3 to sell your product ,<a href="http://magicform.ai/">mag

docs.google.com

- LLM이 데이터 분석을 대신 해줄 수 있나요? <-- 현재는 코드 인터프리터가 추가되어  가능함!

+ Recent posts