본문 바로가기

인공지능57

LlamaIndex로 검색 엔진 구축하기 (라마인덱스, openai-cookbook) 목차 포스팅 개요 사내 ChatGPT 유즈 케이스 분석 스터디에서 사용할 예제를 찾던 중, 23/06/23(지금 기준 지난주)에 openai-cookbook에 올라온 예시가 재미져보여서 한 번 쭉 훑어보고 해석한 내용을 작성하였다. 이번 기회를 통해 생소한 툴인 라마인덱스가 도대체 뭐고, 어떻게 활용되는지를 간단하게 나마 이해할 수 있어서 만족스러웠다! 주제: LlamaIndex를 통해 대용량 문서를 읽고, 언어모델로 임베딩하고, 유사도에 기반하여 query를 처리하는 것을 매우 간단한 코드를 통해 수행할 수 있다. 심지어 하위 쿼리도 만들어서 처리해준다. 예제 내용: LlamaIndex를 이용하여 큰 크기의 재무제표에서 필요한 정보를 신속하게 추출하고, 여러 문서의 인사이트를 종합하여 재무 분석가를 지.. 2023. 6. 29.
[tensorflow] 텐서플로우 행렬 곱 연산 (성분곱, 내적, 외적) 목차 행렬의 곱셈은 크게 성분 곱(Hadamard product), 내적(inner product) 그리고 외적(outer product)이 있다. 일반적인 행렬곱은 외적에 해당한다. 각각의 연산은 아래와 같이 A, B 행렬이 있을 때, 다음과 같이 계산될 수 있다. 위와 같은 행렬 곱 연산을 텐서플로우(tensorflow)로는 아래와 같이 나타낼 수 있다. 행렬의 곱 연산에 사용할 수 있는 함수는 크게 tf.matmul(), tf.multiply(), tf.tensordot() 세 개가 있다. 환경 정보 Tensorflow == 2.13.0rc1 import tensorflow as tf 위 코드로 모듈 임포트 후 실행함 1. Element-wise 곱 연산 성분 곱 연산 = Hadamard produ.. 2023. 6. 15.
[tensorflow] 텐서플로우 랜덤 시드 고정하기 주피터 노트북 상단 또는 파이썬 파일 맨 상단에 다음 코드를 입력한다 import tensorflow as tf tf.random.set_seed(SEEDNUM) 2023. 6. 15.
[openai-cookbook] 임베딩과 이웃 기반 검색을 사용한 추천 예제 (리뷰문서) 목차 포스팅 개요 자료 위치: https://github.com/openai/openai-cookbook/blob/main/examples/Recommendation_using_embeddings.ipynb 주제: 추천을 위해 유사한 아이템을 찾는 데에 임베딩을 사용하는 방법에 대해 기술. AG의 뉴스 아티클 코퍼스를 사용함 특이점 다른 유사도 기반 검색의 경우, 질의-위키피디아, 리뷰 키워드-리뷰전문 등 있었음. 이번에는 기사-유사한 기사의 검색임. 즉, 아이템 간의 유사도 검색을 하여 A 기사를 보고 있는 사람이 관심 있을만한 유사한 다른 기사를 추천하는 데에 의미가 있음. openai에 유사도를 계산하는 모듈이 있음. 이걸 사용함. 특별한 것은 아님. 공식 도큐먼트가 없음? 핵심 내용 “기사가 주어.. 2023. 6. 4.
n-gram과 n-gram 언어 모델 n-gram 주어진 텍스트 또는 음성 샘플에서 연속적으로 배열된 n개 항목을 말함. 항목은 음절, 문자, 단어 쌍이 될 수 있고, 일반적으로 코퍼스에서 수집됨. shingles이라고 불리기도 함. n에 따라 다음과 같이 불리기도 함 n=1: unigram n=2: bigram 또는 digram n=3: trigram four-gram, give-gram… 참고 계산 생물학에서는 k-mer라고 부름. 1-mer, 2-mer, 3-mer 또는 monomer, dimer, trimer, tetramer, pentamer, etc.. n-gram model 카운트에 기반한 통계적 접근을 사용하는 SLM(Statistic language model)의 일종. 모든 단어를 고려하는 것이 아니라, 일부 단어만 고려... 2023. 5. 31.
어텐션 개념 이해하기 (어텐션과 K, Q, V) 초기 제안된 어텐션 메커니즘에 기반하여, 개념과 구성, 원리에 대해 정리해보자. 목차 - 등장 배경 - 개념 - 원리 - K, Q, V? - 파생 개념 이해 * 어텐션 함수 * self-attention * multi-head attention 등장 배경 Attention은 주목, 집중의 의미를 가지는 명사로, 여기서도 같은 의미로 사용됨 기계 번역을 위한 딥러닝 모델(구체적으로는 RNN Encoder-Decoder)에 처음 도입하여 세상에 등장함 번역은 A라는 언어로 기술된 글을 같은 의미를 갖으나 B 언어로 표현된 글로 변환하는 것을 말함. A언어로 기술된 글을 이해한 뒤, 그 언어를 B의 언어로 재탄생시키는 원리에서 착안하여, 글을 이해하는 Encoder와 글을 생성하는 Decoder로 구성된 구조.. 2023. 5. 26.