본문 바로가기
728x90

Study (Data Science)122

DNN 0️⃣ 왜 아직도 DNN을 배워야 하나?✔️ 목적“Transformer 시대인데 DNN을 왜 배워?”→ DNN은 모든 딥러닝의 문법✔️ 핵심 메시지CNN, RNN, Transformer, LLM👉 전부 DNN 위에 쌓인 구조Backprop, 활성함수, 표현학습 없으면 전부 성립 ❌CNN = DNN + 공간 구조RNN = DNN + 시간Transformer = DNN + AttentionLLM = 초거대 DNN1️⃣ DNN 이전과 이후 – 패러다임 전환✔️ DNN 이전Raw Data → Feature Engineering (사람) → Classifier (SVM, LR)포인트 : 사람이 '무엇이 중요한지'를 정의하던 시대. 피쳐 엔지니어링과 분류기 학습이 완전히 다른 단계로 존재하고 있음.사람이 Fea.. 2026. 1. 2.
Langchain / Retriever 참고 : https://wikidocs.net/234016문맥 압축 검색기 ContextualCompressionRetriever검색 시스템에서 직면하는 어려움 중 하나는 데이터를 시스템에 수집할 때 어떤 특정 질의를 처리해야 할지 미리 알 수 없다는 점입니다.이는 질의와 가장 관련성이 높은 정보가 많은 양의 무관한 텍스트를 포함한 문서에 묻혀 있을 수 있음을 의미합니다.이러한 전체 문서를 애플리케이션에 전달하면 더 비용이 많이 드는 LLM 호출과 품질이 낮은 응답으로 이어질 수 있습니다.ContextualCompressionRetriever 은 이 문제를 해결하기 위해 고안되었습니다.아이디어는 간단합니다. 검색된 문서를 그대로 즉시 반환하는 대신, 주어진 질의의 맥락을 사용하여 문서를 압축함으로써 관련.. 2024. 5. 23.
Langchain / Splitter 참고: https://velog.io/@dlsrks0631/LangChain-3.-RAGLangChain - Text SplittersText Splitter는 토큰 제한이 있는 LLM이 여러 문장을 참고해 답변할 수 있도록 문서를 분할하는 역할이다.여러개의 문서를 더 작은 단위로 나눈 chunking을 통해 chunk들이 만들어지고 임베딩 벡터로 변환되는 과정을 거치고 사용자 질문을 하나의 임베딩 벡터로 수치화하는 과정을 거친다. 그것과 가장 유사한 수치를 벡터 스토어에서 찾고 이 임베딩 벡터에 해당하는 chunk와 사용자의 질문이 합쳐져서 최종 prompt가 완성되고 이 prompt를 통해 LLM이 답변을 한다. 또한 chunk 하나당 하나의 vector가 매칭이 된다. vector store안에 있.. 2024. 5. 23.
Langchain / Document_loader # pdf or docx를 확장자 기준으로 나눠 한번에 로드하는 코드from langchain_community.document_loaders import Docx2txtLoader, PyPDFLoaderfrom langchain.document_loaders import DirectoryLoaderdef doc_loader(file_path): _, file_ext = os.path.splitext(file_path) if file_ext.lower() == 'docx': txt_loader = DirectoryLoader(os.path.dirname(file_path), glob=os.path.basename(file_path), loader_cls=Docx2txtLoader) docu.. 2024. 5. 23.
데이터를 많이 줄래, 에포크를 많이 줄래? many data vs. many epochs 학습이 잘되게 하는 법은 데이터를 늘이거나, 에포크를 늘이거나.즉 학습할 지식이 많거나, 반복학습으로 잘 익히거나.지식을 더 때려 넣을것이냐 vs 학습을 더 많이 시킬것이냐.정답은? 지식을 많이 주고, 에포크를 낮추는게 더 좋았다.(N = data 수, D = diversity. 10개로 1번 학습하면 d=1, 10번 학습하면 d=0.1) 그럼 데이터셋을 확장하려고 한다면, 어떻게 다양성을 증가시킬 수 있는가? 더 다양한 소스에서 데이터를 수집하거나, 다양한 언어로 수집하거나, 라벨링된 데이터를 추가로 수집하거나, 데이터셋 내의 불균형 문제를 해결해서 특정 클래스에 치우치는 것을 줄이거나, 혹은 생성모델이나 코드로 augmentation할 수 있다.하지만 우.. 2024. 5. 21.
PDF file - RAG 0. 라이브러리 및 모듈 임포트!pip install docx==0.2.4!pip install langchain==0.1.16!pip install langchain_community==0.0.32!pip install langchain_core==0.1.42!pip install langchain_openai==0.1.3!pip install numpy==1.23.5!pip install pandas==2.2.2!pip install faiss-cpu doc2txt pypdf langchain_pineconefrom langchain_community.document_loaders import Docx2txtLoader, PyPDFLoaderfrom langchain.document_loaders i.. 2024. 5. 21.
구글 서치 API Google Search API 구글 검색 API 발급받기 구글 검색결과 크롤링 액션을 사용하기 위한, 구글 검색 API 발급받는 방법을 알려드리겠습니다. 간단한 클릭만으로 발급이 가능하며 자세한 방법은 아래 순서를 참고해 주세요. 🔎Click! 이미지를 클릭하면 예시 화면을 크게 볼 수 있습니다. 구글 로그인 후 API 발급 페이지에 접속합니다. https://developers.google.com/custom-search/v1/overview?hl=ko 페이지 중단의 키 가져오기버튼을 클릭합니다. 검색 API 발급 팝업이 실행되면 이용약관에 동의 후 다음 단계로 이동하세요. API KEY 영역에 발급된 KEY 정보가 나타납니다. KEY 정보는 바티에 계정 연동 시 복사해서 붙여 넣어주세요. KEY 발급 후 관리자 페이지에 접속 후 .. 2024. 4. 14.
Exception: Install MeCab in order to use it: http://konlpy.org/en/latest/install/ konlpy.. 설치가 너무 힘든데 이거밖에 없다. 급하신 분들을 위해 되는 코드부터 먼저 올린다. # 코랩용 # Mecab 설치 !apt-get update !apt-get install g++ openjdk-8-jdk !pip3 install konlpy JPype1-py3 !bash 2024. 1. 5.
크롬드라이버 에러; service, option, browser, driver... case chrome_options = Options() chrome_options.add_experimental_option("detach", True) chrome_options.add_experimental_option("excludeSwitches", ["enable-logging"]) service = Service(executable_path=ChromeDriverManager().install()) browser = webdriver.Chrome(service=service, options=chrome_options) error types AttributeError: 'NoneType' object has no attribute 'split' TypeError: ChromeDriverMana.. 2023. 12. 7.
프롬프트 엔지니어링 Book Summary (저자: 반병현) 개념 정리 프롬프트 컴퓨터가 사용자에게 보여주는 문구 프롬프트 엔지니어링 AI가 사용자에게 보여주는 응답을 잘 할 수 있게 엔지니어링 하는 것 가스라이팅이나 제일브레이크 시도 역시 우리 입맛에 맞도록 AI의 응답을 수정하기 위한 것 (단순하게 질문 잘하는 방법이 아님) 태스크 프롬프트 (Task Prompt) AI에게 업무를 지시하는 것. 평문형 태스크 프롬프트 "아재개그는 즐거워" 영어로 번역해줘. 하이퍼파라미터형 테스크 프롬프트 Task: translation (Korean->English) "아재개그는 즐거워" 이 외에도 인코더기반 Task: 요약, 분석, 감정분석 디코더기반 Task: 텍스트확장 (한두문장 주고 이 문장을 토대로 확장된 작문작업 하는것) 아주 잘함. 특히 요약은 어텐션 주력분야라 .. 2023. 12. 6.
728x90