공부하고 기록하는, 경제학과 출신 개발자의 노트

학습일지/AI 21

데이터야놀자 2023 - Whisper 모델의 불필요한 Weight 줄여서 학습비용 절약하기

https://youtu.be/MDE2HRsfr7g?si=7s4yRsOlUSZ8_nnu Socar AI Research 조충현님. STT 모델 경량화 연구내용의 소개. 카셰어링 업체가 자체 STT를 구축해야 했던 이유? CS 상담사의 업무에는 여러 가지가 있다. 상담가이드 문서 검색, 유저 정보 확인, 예약내역 확인, 상담내용 기록... 이걸 매 상담마다 반복해야 함. 이렇다보니 상담이 많아지면 대기시간이 길어짐... CS만족도 하락. 상담원은 고객업무에만 집중하도록, 상담 외 업무는 AI를 사용하는 방향으로. 그러려면, 고객과 상담원의 대화 내역을 문서화하는 작업은 필수. 문서가 있어야 AI가 뭐라도 할 수 있기 때문. Whisper: OpenAI에서 공개한 오픈소스 STT. 코드와 weight 공개되..

학습일지/AI 2024.01.18

NHN Forward 22 - 벡터 검색 엔진에 ANN HNSW 알고리즘 도입기

https://youtu.be/hCqF4tDPNBw?si=wYvWqiYFzX5UDr6R 대충? 거의 정확하다! 벡터 검색 엔진에 ANN HNSW 알고리즘 도입기 NHN Cloud 로그플랫폼개발팀 권성재. 벡터 검색엔진 운영하면서 새로운 알고리즘 도입하기까지. 기존 방식의 문제점, 해결책, C++ 구현체 말고 Golang에 적용하기까지. 헷갈릴 수 있어서 용어 정리하자면 ML 기술 결과물로 나온 Vector 값의 검색 관련 내용임. ML이나 AI 기술 자체에 관련된 건 아니다. HNSW 도입 배경 기존 방식인 KNN: 점 두개의 L2 Distance 계산. 검색 대상으로 들어온 Vector가 있으면 기존 DB에 있던 모든 Vector 간 거리를 일일이 계산 -> 가장 거리가 가까운 K개 응답. 따라서, 데..

학습일지/AI 2024.01.01

데이터야놀자 2022 - ElasticSearch에서 NLP 처리를 위한 Vector 데이터 검색하기

https://youtu.be/aW5_voFk938?si=hEwqM1kQCDBAwbd0 ES Advocate 김종민님 전통 검색엔진으로서의 ES '사용자가 입력한 query'가 포함된 Docs를 Text Matching 방식으로 찾는다. Docs 저장할 때 Tokenizer 사용해서 text -> index 변환 해당 docs가 query를 얼마나 많이 포함하고 있는지를 TF 같은 요소를 기반으로 점수 계산. -> 연관도 높은 결과를 가져온다. LLM 등장으로 '검색엔진이 질문 의미를 이해하고, 적합한 결과를 가져오는 형태'의 서비스를 제공하려는 시도가 늘었음. query와 매칭되지는 않지만, query의 해답인 'connection speed requirements' 정보를 포함한 docs를 리턴하는 ..

학습일지/AI 2023.12.10

Naver Engineering Day 2023 - AI 경량화: 더 빠르고 저렴한 AI 서비스

AI 경량화: 더 빠르고 저렴한 AI 서비스 https://www.youtube.com/watch?v=NVNCPGWe5Ss Naver Biz CIC / AI Serving Dev Inference Latency 서버 부하 전력소모 효율 ... 모델의 아키텍처가 성능을 좌우하는데, 서비스 상황에 맞춰 아키텍처 자체를 실험적으로 바꾸며 최적값을 찾기 위한 작업은 어렵다. 아키텍처를 고정한 채, 효율성을 더 높이기 위한 삽질기. 실험에 사용한 조건 중 num_thread 고정 dynamic allocation에서 발생하는 속도차이 무시하기 위함. 같은 모델이라도 다소 느린 속도. 경량화 이론은 매우 어렵지만, 서비스 적용을 위한 코드 수정은 (이론에 비하면) 쉬운 편이다. AI 모델 트렌드는 '더 큰 모델, ..

학습일지/AI 2023.11.07

[AIFactory 세미나] 오픈소스 기반 LLM의 ChatGPT 추격 히스토리

영상 제목은 LLM 기반 챗봇 만들기이지만, 영상내용은 제목과 다르다. LLM 히스토리 / 오픈소스 진영에서 LLM Fine-tuning에 어떤 어려움을 겪었고 어떻게 해결방법을 찾고 있나 그렇게 만들어진 오픈소스 LLM에는 어떤 것들이 있나 수많은 오픈소스 LLM의 성능 비교는 어떻게 해야 하나 세 가지 질문을 대답해나가는 강연이라고 보면 된다. 내용이 쉽지는 않지만, LLM에 관심이 있다면 재미있게 들어볼 수 있다. https://aifactory.space/learning/2419/discussion/339 [챗GPT 러닝데이 | 챗GPT말고 LLM] LLM 기반 챗봇 만들기 - 박찬성 ChatGPT 이후 Large Language Model(LLM)과 챗봇 서비스에 대한 관심이 급증하는 가운데, ..

학습일지/AI 2023.05.15

[AIFactory 세미나] ChatGPT Learning Day - LangChain 설명 (2) - 사용사례

https://www.youtube.com/live/EekMq9cf1PQ?feature=share 강연에서 쓴 jupyter notebook https://aifactory.space/learning/2379/discussion/261 2.1. 에이전트 소스코드 공유 세미나에서 사용했던 코랩을 아래와 같이 첨부드립니다. aifactory.space https://aifactory.space/learning/2379/discussion/262 2.2. 사용사례 소스코드 송부 세미나에서 사용했던 코랩 소스코드를 아래와 같이 첨부드립니다. aifactory.space

학습일지/AI 2023.04.24

[AIFactory 세미나] ChatGPT Learning Day - LangChain 설명 (1) - 컴포넌트

ChatGPT에 날개를 달아줄 LangChain (1) - 컴포넌트 https://www.youtube.com/live/JBcWvMeOAes?feature=share LangChain 발전속도가 진짜 빠름. 내가 가진 정보를 학습시키거나 다른 서비스와 연동하거나 내가 정한 시나리오대로 활용하기 보통은 언어모델을 호출할 때 API call / 모델 자체를 직접 호출하는 식. LangChain은 아래 두 가지 문제를 해결하기 위해 만들어졌다. 외부 데이터를 모델에 인식시키기 - 너가 학습한 데이터 말고, 내가 제공하는 데이터를 써라. 타 시스템과의 상호작용하는 애플리케이션 개발 컴포넌트 얘네 특징: 문서 보기가 힘들다. 업데이트 속도도 빠른 편이고.. 크게 두 가지로 나뉨. Component: LangCha..

학습일지/AI 2023.04.17

[AIFactory 세미나] ChatGPT Learning Day - ChatGPT 기반 나만의 챗봇서비스 개발

https://www.youtube.com/live/n8hKjxCVNdo 제로베이스 상태인 사람을 대상으로, chatGPT 활용한 서비스 만드는 방법을 소개하는 강연의 정리글. Prompt 관련 Prompt Engineering 기법 간단한 소개 giving instruction. 지문과 지시문을 분리. role prompting. 원하는 역할을 명시하는 것. 어떤 역할을 맡기고 요청을 보냈을 때 좋은 답변을 주는지 prompt engineering 검색하면 나온다고 함. Standard prompt: 답변 유도문 Few Shot prompts: 몇 가지 예시를 제공하는 것. Chain of Thinking Prompt (COT) 즉답을 요구하는 대신, 순차적으로 답변을 유도하는 방식 과정이 중요할 때 ..

학습일지/AI 2023.04.09

머신러닝야학 2기 - Tensorflow 102. CNN

opentutorials.org/module/5268 Tensorflow 102 - 이미지 분류(CNN) 이 수업은 머신러닝 야학 진도에 맞춰서 공개됩니다. 공개일정은 진도표를 참고해주세요. 머신러닝 야학은 온라인으로 머신러닝을 학습하는 무료학교입니다. 머신러닝을 시작하고 싶다면 1월 opentutorials.org 데이터와 차원. 차원 (Dim)을 정의하는 두 가지 관점 '표'에서의 열 데이터의 포함 관계 데이터 공간 ('표 형태') 표에서 Column의 개수가 2개 = 2차원 평면의 한 점. 3개 = 3차원 공간의 한 점 n개 = n차원 공간의 한 점. 즉 관측치 = "N차원 공간의 한 점". 그러면 변수의 개수 (column의 개수) = 공간의 차원 수와 동일함. 데이터를 (관측치를) 차원의 한 점..

학습일지/AI 2021.01.12

성균관대 "AI로 글쓰기" 해커톤 - OpenAI GPT-2 한글 transfer learning 작업기 (2)

19.11.23 ~ 24일. 성균관대에서 진행한 딥러닝으로 글쓰기 해커톤 대회 참여 및 작업기. 교내 학부생 및 대학원생을 대상으로 처음 진행한 '딥러닝으로 글쓰기' 교내 해커톤이며. 마인즈랩 (https://mindslab.ai/kr) 에서 제공한 OpenAI GPT-2의 한글 pretrained 모델을 참여 팀에게 제공하고 교내 Tesla V100 GPU 1대씩 지원했다. 정원은 총 10팀이었으나 참여자가 많다는 이유로 추가 5팀을 받고, 5팀은 네이버 클라우드 쪽 회사의 서버를 이용할 수 있게 해 줬다. 본 행사를 시작하기 약 1주일 전부터 서버와 글 형식 (수필)을 공지했고, 일주일의 training 기간을 거쳐 행사 당일에 주제를 발표하는 방식이었다. 분량은 10,000자 이내. 주제는 '만약 ..

학습일지/AI 2020.01.21