분류 전체보기

    [Event]. Langcon 2023 참가후기.

    2023년 2월 18일에 열린 LangCon 2023에 다녀왔다. 태크니컬한 얘기는 추후 포스팅하도록 하고 소감을 얘기하고 싶다. 일단 블로그와 깃허브 또는 오픈 채팅방에서 봤던 사람들을 실제로 발표자로 만나게 되어 너무 신기했다. 나에겐 BTS 보다 더 멋진 사람들이라 가슴이 벅차올랐다. 그리고 발표자분들 중 몇 명의 오픈 소스는 실제로 우리 서비스에 적용이 되어있기 때문에 감사인사를 전하고 싶었지만 내가 좀 더 훌륭한 개발자가 된 모습으로 감사인사를 전하고 싶어 참았다. 1. ELACTRA 2. Pecab 3. klue 등등.. 앞으로도 이런 콘퍼런스가 있으면 꼭 참여해야겠다. 자연어 처리 분야의 전문가들과 함께 하는 자리는 비록 얻어 가지 못할지라도, 큰 도움이 된다. (실제 얻어간 부분은 상당하다..

    [졸업]. 했습니다

    졸업식을 따로 하지 않아서 졸업한 지도 모르고 지내다가. 문득 생각이나서 학교홈페이지에 가서 확인해 보니 졸업이 되어있었다. 29살에 졸업하는게 뭔가 이상하지만 나에겐 좀 뜻깊은 일이다. 처음 전문대에 입학하고 게임기획자가 되고자 했던 나는 산업체를 경험하고 개발자의 필요성, 중요성을 깨달았고 뒤늦게 25살에 복학해서 프로그래밍을 배웠다. 물리를 싫어했던 나는 게임개발이 적성에 맞지 않았고 통계가 좋아 인공지능을 시작했다. 3번의 교육기관을 걸쳐 취업을 했고, 직장을 다니면서 야간으로 4년제 학위를 취득했다. 내 이전 전문대학교 성적은 2.7 , 3.0이 넘지 않지만 확실히 내가 흥미 있는 분야를 공부하니까 성적은 저절로 따라왔다. 단 한 번도 성적을 위해 공부했던 적이 없다, 그냥 재미있고 배우고 싶어..

    [NLP]. MultipleNegativesRankingLoss 적용기(Sentence Transfomer)

    BackGround 인공지능에게 질문에 대한 답변을 학습시킬 때, 한 가지 문제가 있는데 바로 적합한 질문/답변(Positive)데이터만 존재한다는 것이다. 지도학습을 할때는 정답과 오답을 같이 줘야 학습하는데 오답(Negative)이 없어 직접 만들어야 함. 그래서 오답 샘플을 만들어내는 많은 아이디어가 등장했다. 1. Random Sampling - 가장 일반적인 방법으로 여러 정답 데이터들 중에서 답변만 랜덤으로 섞어 오답이라고 하는 것이다. 배고프다. 얼른 밥먹어 ㅠㅠ Postive 피곤하다. 어제 밤샜어?? Postive 배고프다. 어제 밤샜어?? Negative 피곤하다. 얼른 밥먹어 ㅠㅠ Negative 실제로 이렇게만 학습해도 어느 정도 잘 된다. 2. Hard Negative Sampli..

    [NLP]. 인공지능에서 골드 라벨(Gold Label)은 뭘까? (feat. ChatGPT)

    가끔 논문이나 컨퍼런스에가면 골드 라벨, 실버 라벨 등의 용어를 자주 듣게된다. 지도학습에 필요한 라벨은 알겠는데 골드 라벨, 실버 라벨은 뭘까? 등급이 있는 것일까? 골드라벨(Gold Lable)이란? ChatGPT에게 한 번 물어봤다. 골드 라벨(Gold Label)은 보통 사람들이 만든 레이블이 아니라 전문가들이 만든 고품질의 레이블을 말합니다. 따라서, 골드 라벨이 부착된 데이터를 사용하면 보다 높은 정확도를 가진 모델을 만들 수 있습니다. 일반적으로, 골드 라벨을 가진 데이터를 얻는 방법은 두 가지입니다. 전문가에게 작업을 의뢰하여 골드 라벨을 만들어내는 방법: 전문가들이 작업한 데이터를 골드 라벨 데이터로 활용할 수 있습니다. 이전 연구나 대회에서 골드 라벨을 얻는 방법: 이전 연구나 대회에서..

    [AWS]. S3 Bucket 에서 데이터 다운받기 (with Python)

    BackGround 로컬에서 다양한 데이터 및 인공지능 모델들을 사용하다 배포하려고할때. 전부 데이터를 서버에 옮겨야한다. 이런경우 보통 SCP 명령어를 사용하거나 정말 귀찮을때는 그냥 VS code에서 드래그 엔 드롭하는데 용량이 클수록 시간이 오래걸린다. 그래서 이번에 데이터 및 모델을 불러올때 해당 파일이 없을 경우 AWS S3에서 파일을 다운받는 방법을 알아봤다. 한 번 해놓으면 다음부터 옮길일 없음 반복적인 일은 자동화하는게 프로그래머의 자세 What is AWS S3 ? S3는 워낙 유명한 AWS의 스토리지 서비스이다. Amazon Simple Storage Service(Amazon S3)는 업계 최고의 확장성, 데이터 가용성, 보안 및 성능을 제공하는 객체 스토리지 서비스입니다. (라고함...

    [MLops]. ONNX Runtime 문장 임베딩(sentence embedding) 속도 및 연산량 개선하기

    BackGround 우리 회사는 SentenceTransformer를 기반으로 파인튜닝한 문장 임베딩 모델을 사용하고 있다. 하지만 모델의 크기가 커질 수록 임베딩 시간은 늘어나고 많은 연산량을 요구하게된다. 그렇다고 모델의 크기를 줄이면 정확도가 떨어진다. 하지만 ONNX는 Inferance 속도를 최대한으로 높히면서 정확도 손실을 최소화하는 여러 가지 기능을 가지고있다. Sentence-Transfomer 모델을 ONNX Runtime으로 변환하면서 얻었던 장점들을 정리해보고자 한다. What is ONNX ? ONNX는 Open Neural Network Exchange의 줄인 말로서 이름과 같이 다른 DNN 프레임워크 환경(ex Tensorflow, PyTorch, etc..)에서 만들어진 모델들..

    [NLP]. 한국어 존댓말/반말 분류모델 (formal classifier)

    2021.10.14 - [Data Science/NLP] - [전처리]. 한국어 존댓말과 반말을 구별하는 방법(feat. komoran) [전처리]. 한국어 존댓말과 반말을 구별하는 방법(feat. komoran) 한국어는 영어와 다르게 존댓말(높힘말)과 반말(낮춤말)이 존재한다. 그래서 존댓말을 반말로 바꿔주고 반말을 존댓말로 바꿔주는 모델이 있으면 좋겠지만 (실제로 연구가 많이 진행되었지만 acdongpgm.tistory.com 1. 개발 배경 오래전에 존댓말 , 반말을 한국어 형태소 분석기로 분류하는 간단한 방법을 소개했다. 하지만 이 방법을 실제로 적용하려 했더니, 많은 부분에서 오류가 발생하였다. 예를 들면) '저번에 교수님께서 자료 가져오라했는데 기억나?' 라는 문구를 "께서"라는 존칭때문에 ..

    [NLP] KakaoGPT 사용해서 존댓말/반말 변환하기

    참고 : https://developers.kakao.com/docs/latest/ko/kogpt/rest-api#sample # coding=utf8 # REST API 호출에 필요한 라이브러리 import requests import json # [내 애플리케이션] > [앱 키] 에서 확인한 REST API 키 값 입력 REST_API_KEY = '{KEY}' # KoGPT API 호출을 위한 메서드 선언 # 각 파라미터 기본값으로 설정 def kogpt_api(prompt, max_tokens = 1, temperature = 1.0, top_p = 1.0, n = 1): r = requests.post( 'https://api.kakaobrain.com/v1/inference/kogpt/gener..

    [Python] .파일 실행시 인자값 전달하기 (argparse)

    import argparse​ Sbert.py if __name__ == "__main__": parser = argparse.ArgumentParser() parser.add_argument("--model_name", type=str) parser.add_argument("--batch_size", type=int, default=32) parser.add_argument("--num_epochs", type=int, default=4) parser.add_argument("--eval_steps", type=int, default=100000) parser.add_argument("--gpu_id", type=str, default="0") args = parser.parse_args() confi..

    [위로봇 프로젝트]. 오복이 육아일기 3일차 - 데이터 추가하기

    2022.12.06 - [Chatbot] - [위로봇 프로젝트]. 오복이 육아일기 2일차 - 설계 [위로봇 프로젝트]. 오복이 육아일기 2일차 - 설계 2022.12.06 - [Chatbot] - [위로봇 프로젝트]. 오복이 육아일기 1일차 - 소개 위로봇 오복이의 프로세스는 아주 간단하게 설계되어있습니다. 웹 서버는 Python 언어를 기반으로한 FastAPI를 사용했습니다. acdongpgm.tistory.com 챗봇 사용 데이터 1. 송영숙 님의 챗봇 데이터 https://github.com/songys/Chatbot_data 2. AI-HUB 웰니스 상담 데이터 https://aihub.or.kr/opendata/keti-data/recognition-laguage/KETI-02-006 3. AI..