소소한 코딩일지
·
공지
안녕하세요! CSE 관련 공부한 내용을 기록하는 공간입니다.부족한 부분은 알려주시면 감사하겠습니다. 깃헙 블로그: https://kimsoyeong.github.io/ https://kimsoyeong.github.io/Soyeong Kim Interest AI/ML/DLWeb/App development What can I do Python, Java/Kotlin, C++Android, iOS appGarmin watch app Check my resume by clicking the memo app.kimsoyeong.github.io Github: github.com/kimsoyeong kimsoyeong - Overview@SiliconValleyInternship-Lambda @PA-roketd..

Popular 💖

[대학원 준비] CV(영문 이력서) 작성법, 양식
·
대학원 도비
CV가 뭘까?CV는 Curriculum Vitae의 줄임말이다.연구직 구직 또는 대학원 입시에서 자신의 연구 또는 프로젝트 경험 등을 담아 제출하는 영문 이력서라고 할 수 있다. 나는 사전 컨택없이 대학원을 준비했다. 따라서 CV도 대학원 원서를 준비하면서 동시에 작성해나갔다.사실 학부 수업 중 IT영어1, 2라는 수업에서 영문이력서 작성법을 배웠는데 그게 큰 도움이 되었던 것 같다.또한, 우리 학교에는 미국의 개발 문화를 접할 수 있는 다양한 방법이 존재하는 데, 나는 대부분에 모두 참여했다.작년 글로벌 SW인재트랙에 지원하면서 영문이력서를 작성했고, 또한 올해 MI-333 해외인턴십에 지원하면서 또다시 영문이력서를 작성했다. 그리고 여름방학때는 기업인턴에 지원하면서 영문은 아니었지만 이력서를 작성했던..
[JAVA] https Error: PKIX path building failed 해결 방법
·
JAVA 자바
InstallCert를 사용해 SSL/TLS Server 인증서 생성 javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to re..
Nginx - Streamlit 프록시 설정 방법
·
Streamlit과 Nginx 각각에서의 설정을 해줘야 하다. Streamlit아무것도 설정할 필요 없다. 기본값으로 8501번 포트에서 streamlit app이 실행된다.만약 port 등을 설정하고 싶다면, 프로젝트 디렉토리 내 .streamlit/config.toml 에서 설정할 수 있다.# 예시[server]port=8000 Nginx/etc/nginx/nginx.conf 에서 nginx가 지켜볼 port와 이 port로 들어오는 요청을 전달할 주소, 즉, streamlit이 실행되고 있는 주소를 연결해줘야 한다. http.server 설정을 아래와 같이 해준다.proxy_pass에는 streamlit app이 실행되고 있는 주소를 넣어줘야 한다.따로 설정해준 게 없다면, http://localh..
19645: 햄최몇?
·
백준
19645번: 햄최몇?문제세 모질이들 관우, 철환, 길원이가 모였다. 모질이들은 모이면 서로 '햄버거 최대 몇 개 드실 수 있나요?'의 준말인 '햄최몇?'을 시전하며 자랑을 하기 바쁘다.막내 길원이는 문득 중요한 사실을 깨달았다. 바로, 개수가 중요한 것이 아니라 최대 효용이 중요하다는 것이었다! 이들은 바로 N개의 햄버거를 준비했다. 그리고 이 햄버거를 사이좋게 나누어 먹었다. 각 모질이들이 얻을 수 있는 효용은 이들이 먹은 햄버거들의 효용의 합이다. 또한 나름의 서열과 규칙이 있어, 존경하는 선배님들보다는 높은 효용을 누려서는 안 된다.막내 길원이는 선배님들을 존경하기 때문에 규칙을 따라야 하는 한편, 햄버거를 잘 분배하여 본인이 얻을 수 있는 효용이 최대가 되도록 하고 싶다.예제입력결과104 37 ..
From Local to Global: A Graph RAG Approach to Query-Focused Summarization
·
📓 Papers
RAG (Retrieval-Augmented Generation): Query가 주어졌을 때, 데이터베이스에서 관련된 정보를 검색하여 프롬프트에 contxt를 추가.장점Hallucination 최소화Fine-tuning 대비 저렴한 비용으로 관련 정보 검색 가능한계전체 corpus에 대한 추상적 요약이 어려움Context window 한계로 인한 정보 손실 (”lost in the middle” 현상)Graph RAG (GraphDB + RAG)데이터를 지식 그래프 구조로 변환 → 그래프 검색을 활용한 RAG더보기Knowledge graph 지식 그래프:Knowledges의 구조화된 표현Node: entities or conceptsEdge: relationships between entities Mic..
docker-compose (node.js, MySQL) 실행 순서 동기화
·
Docker 도커
docker-compose를 사용해 node.js 서버와 mysql db 서버 컨테이너를 만들고 node.js 서버에서 mysql db 서버에 연결을 시도하면, closed 오류가 발생한다. 이는 node.js 서버가 mysql db에 연결을 시도할 때, 아직 mysql db 서버가 완전히 실행되지 않았기 때문에 발생하는 문제이다.이를 해결하기 위해 node.js 서버가 mysql db 서버 구동 완료 후에 실행될 수 있게 해야 한다.이는 node.js와 mysql 외의 다른 서버와 DB에 모두 적용가능한 방법이다.  디렉토리 구조📦 ┣ 📂 db ┃ ┣ 📂 conf.d # MySQL configuraiton (선택) ┃ ┃ ┗ 📜 my.cnf ┃ ┣ 📂 initdb.d # MySQL 초기 D..

Recent 🌟

티스토리 LaTeX 적용하는 아주 쉬운 방법
·
카테고리 없음
업데이트된 hELLO 스킨을 새로 적용하면서, 기존의 LaTex 설정이 사라졌다.매번 찾아보기 귀찮으므로 LaTeX 적용방법을 정리해보겠다. 티스토리 블로그에 LaTeX(수식)을 작성할 수 있도록 Javasciprt로 작성된 KaTeX를 적용한다.KaTeX는 MathJax보다 빠른 렌더링을 제공하여 웹 페이지 로딩 시 거의 바로 수식을 출력할 수 있다. 티스토리 스킨 편집스킨 편집에서 다음 코드를 `` 바로 위에 복사 붙여넣기 한다. 그 아래에 두번째 코드를 복사 붙여넣기 한다.   KaTex 공식문서에서 브라우저에서의 사용법을 참고할 수 있다. KaTeX – The fastest math typesetting library for the webSimple API, no dependencies – yet..
Attention is All You Need: Transformer와 LLM의 발전 양상
·
📓 Papers
Transformer 모델: 기존 인코더-디코더 모델을 발전시킨 모델로, RNN 기반 인코더-디코더 모델보다 학습이 빠르고 성능이 좋다.병렬화RNN 기반 인코더-디코더: 입력으로 들어오는 텍스트의 단어들을 순차적으로 계산하여 인코딩.Transformer: 행렬곱으로 한 번에 병렬 처리. Positional encoding(RNN 사용 X) 순차 입력을 받지 않음 → 위치/순서 정보를 제공해줘야 한다.Positional encoding: 인코더 및 디코더의 입력 값마다 상대적인 위치 정보를 더하는 기술.Transformer는 단순 비트 인코딩이 아니라 Sin, Cos 함수를 사용한 positional encoding을 사용한다.장점Sin, Cos 함수) Positional encoding 값이 항상 -1에..
From Local to Global: A Graph RAG Approach to Query-Focused Summarization
·
📓 Papers
RAG (Retrieval-Augmented Generation): Query가 주어졌을 때, 데이터베이스에서 관련된 정보를 검색하여 프롬프트에 contxt를 추가.장점Hallucination 최소화Fine-tuning 대비 저렴한 비용으로 관련 정보 검색 가능한계전체 corpus에 대한 추상적 요약이 어려움Context window 한계로 인한 정보 손실 (”lost in the middle” 현상)Graph RAG (GraphDB + RAG)데이터를 지식 그래프 구조로 변환 → 그래프 검색을 활용한 RAG더보기Knowledge graph 지식 그래프:Knowledges의 구조화된 표현Node: entities or conceptsEdge: relationships between entities Mic..
Nginx - Flask 프록시 방법 (Feat. Gunicorn)
·
Flask와 Nginx, Gunicorn을 함께 사용하는 이유는 주로 성능, 안정성, 보안 등의 측면에서 애플리케이션을 더 효율적으로 운영하기 위해서이다. 각각의 역할을 이해하면, 왜 이 조합이 자주 사용되는지 명확해진다. FlaskPython으로 작성된 마이크로 웹 프레임워크역할: 애플리케이션의 비즈니스 로직과 API 엔드포인트 처리.제한 사항Flask의 내장 개발 서버는 단일 스레드로 동작하며, 고부하 상황에서 성능이 제한적.다중 클라이언트 요청을 효율적으로 처리하지 못함.프로덕션 환경에서의 고성능 처리를 위해 설계되지는 않음. GunicornWSGI(Web Server Gateway Interface) 서버역할Flask와 같은 WSGI 애플리케이션을 효율적으로 운영하기 위해 사용.다중 워커를 사용하..
2024 하반기 목표
·
🚩 목표 & 회고
🐌 열심히 살자🧩 게으르지 말자   🌼 2024 하반기 목표  🐱‍💻  9월◻ 사이드 프로젝트 README 작성 ☑  Google Cloud AI Study Jam ☑ 세미나 발표 ☑ AI by Hand (Workbook) 끝내기 이번에야 말로   🐱‍👓  10월◻ 사이드 프로젝트 README 작성☑ LLM 공부 (논문 2개 읽음) 🐱‍🚀 11월◻ 사이드 프로젝트 README 작성◻  🐱‍🐉 12월  😊 기타 목표 ◻ 12월 홍콩여행
Batch 배치
·
🤖 AI 인공지능
1. Batch란?Batch는 인공지능(특히 딥러닝)에서 데이터를 처리하는 단위를 의미한다. 신경망을 학습할 때 전체 데이터를 한꺼번에 처리하지 않고, 여러 개의 작은 묶음(즉, 배치)으로 나누어 처리한다. 이는 메모리 사용량을 줄이고, 병렬 처리의 효율성을 높이며, 학습 과정에서의 안전성을 높이는 등의 이점이 있다. 2. Batch의 종류1. 배치 학습 (Batch Learning): 전체 데이터를 한 번에 학습하는 방식. 일반적으로 메모리가 많이 소모되며 큰 데이터셋에서는 비효율적이다.2. 미니배치 학습 (Mini-Batch Learning): 전체 데이터를 작은 묶음으로 나누어 학습하는 방식. 일반적으로 많이 사용된다.3. 확률적 경사 하강법 (Stochastic Gradient Descent, S..