티스토리

DevHwi
검색하기

블로그 홈

DevHwi

devhwi.tistory.com/m

엉금엉금

구독자
17
방명록 방문하기

주요 글 목록

  • Elasticsearch (3) Mapping과 Field MappingElasticsearch에서는 index에 document 형태로 데이터들을 정의한다. 이때, index(DB의 테이블에 해당)에 저장될 document(DB의 각 row에 해당)의 구조와 document 내의 field(DB의 테이블 칼럼에 해당)의 속성을 정의하는 설정을 mapping이라고 한다. DB의 DDL의 개념과 유사하다.Mapping은 기본적으로 JSON 형식을 띤다. GET [index 이름]/_setting의 결과 중 mappings 부분을 통해 mapping 정보를 확인할 수 있다.  동적 Mapping, 명시적 MappingElasticsearch에서는 사용자가 정의하지 않은 mapping에 대해서 정보를 추론하여 자동으로 mapping해주는 동적 Mapping을 제공한다.. 공감수 7 댓글수 1 2025. 1. 8.
  • EfficientViT: Memory Efficient Vision Transformer with Cascaded Group Attention 논문 리뷰 EfficientViT 배경 설명EfficientViT는 2023년 발표된 논문이다. ViT의 memory 효율성을 개선하기 위해, 샌드위치 구조의 레이아웃과 cascaded group attention을 도입한 EfficientViT model을 제안하였다.model 속도와 accuracy가 매우 좋다. AbstractViT는 성능이 좋지만, 연산 비용이 너무 커서, 실사용에 문제가 있다.이 논문에서는 EfficientViT라는 빠른 속도의 ViT 모델을 소개한다. 기존 transformer 구조의 모델들이 memory를 효과적으로 사용하지 못하는 MHSA(Multi-Head Self-Attention)의 tensor reshaping이나 element-wise function으로 인해 제약이 있음을 .. 공감수 4 댓글수 1 2024. 12. 30.
  • Elasticsearch (2) 주요 용어 & Lucene Elasticseach 주요 용어Document : Elasticsearch가 저장하고 색인을 생성하는 JSON 형태의 데이터를 의미한다. 굳이 DB와 비교하면 Table의 각 row 개념이다.Index : 비슷한 Document를 모아놓은 단위이다. DB에서 Table과 대응된다.Shard : Index는 그 안의 document를 여러 shard로 분산 저장하여 고가용성을 보장한다. 원본 document는 primary shard에, 복제본은 replication shard에 저장된다._id : Index 내 document에 부여하는 고윳값이다. 사용자가 직접 정해줄 수 있고, 정하지 않으면 Elasticsearch에서 중복되지 않도록 알아서 생성한다. 굳이 DB와 비교하면 primary key 개.. 공감수 3 댓글수 0 2024. 11. 26.
  • ElasticSearch (1) 기본 개념 ElasticSearchElasticsearch는 2010년 Apache의 Lucene 라이브러리 기반으로 만들어진 분산 검색 엔진이다. Elasticsearch는 JSON 기반의 문서를 저장하고, 색인하여 검색할 수 있도록 한다.  데이터 시각화를 위한 도구인 Kibana와 데이터 수집 변환을 위한 Logstash, 경량 데이터 수집 플랫폼인 Beats와 함께 ELK 스택을 구성한다. ElasticSearch 특징[검색 엔진]Inverted Index : 검색엔진이기 때문에 키워드 검색을 위한 Inverted Index를 사용하여 빠른 검색 속도의 이점을 가진다. 이때, Analyzer를 검색 요구사항에 맞게 미리 지정하여 구성할 수 있어, 다양한 검색 조건에서 유용하게 사용될 수 있다.→ Invert.. 공감수 43 댓글수 25 2024. 11. 18.
  • Prefix-Tuning: Optimizing Continuous Prompts for Generation 논문 리뷰 Prefix-Tuning 배경 설명Prefix-Tuning은 NLP 모델의 fine-tuning 과정의 비효율을 해결하기 위해 발표된 방법론으로 2021년 ACL에서 발표되었다.Pretrained model 전체를 fine-tuning하지 말고, prompting에 착안한 소규모의 parameter 학습만으로 fine-tuning과 비견하는 좋은 성능을 보인다. AbstractFine-tuning은 대규모 데이터에서 학습한 pre-trained model을 down-stream task에서 활용할 수 있게 하여 좋은 성능을 낸다.하지만, model의 모든 parameter를 바꾸기 때문에, 각 task마다 전체 parameter를 저장해놔야 한다.이 논문에서는 prefix-tuning이라는 자연어 생성 .. 공감수 3 댓글수 1 2024. 8. 6.
  • GQA: Training Generalized Multi-Query Transformer Models fromMulti-Head Checkpoints 논문 리뷰 GQA 배경 설명GQA는 2023년에 발표된 논문이다. GQA는 llama 2에서 도입된 기술로 유명하다. language model에서 transformer의 multi-head attention 구조 때문에,  inference 시간이 너무 오래 걸린다는 문제가 있었고, 이를 해결하기 위한 방법을 제시하였다. (사실, 전에 등장한 multi-query attention과 multi-head attention 방식의 절충안을 제시한 논문이다.)최근에는 당연하게 받아들여져, 대규모 AI 모델에는 당연하게 사용된다고 한다.  AbstractMulti-query attention(MQA)는 하나의 key-value head를 사용하여 decoder의 inference 시간을 줄인다.하지만, MQA는 mode.. 공감수 47 댓글수 33 2024. 8. 1.
  • LoRA: Low-Rank Adaptation of Large Language Models 논문 리뷰 LoRA 배경 설명LoRA는 2021년 ICLR에 발표된 논문이다. 당시에는 GPT2, GPT3 등 LLM을 혁신하는 모델들이 등장하고 있던 시기이지만, 새로운 downstream task 학습을 위해서는 pretrained model에 대한 fine-tuning이 필요하다는 고정관념(?)이 자리 잡고 있던 시기이다.이 논문에서는 fine-tuning 과정에서 전체 parameter를 학습하는 것이 연산 cost가 매우 크다는 점을 지적하면서, 적은 양의 parameter 학습만으로 fine-tuning을 진행할 수 있는 방법을 제시한다.LLM들의 parameter가 비대해지면서 소규모 computing 자원에서는 거의 학습이 불가능했는데, 이 부분을 가능하게 만든 논문이기도 하다.또한, 단순 LLM 뿐.. 공감수 40 댓글수 27 2024. 7. 30.
  • [이슈 해결] Github action "The SSL connection could not be established, see inner exception." 에러 해결 현재 fast api를 통해 개발 중인 코드가 있는데, 폐쇄망 내에서 빠른 적용 및 테스트를 위해, github action으로 배포를 자동화해 놓았다. 개발 환경은 nginx를 이용해 2개의 서버를 load balacing으로 묶어놓았고, 각각 서버에 github action runner를 돌려놓았다. 문제 아주 바보 같은 실수를 해버렸다. nginx restart를 한다는 것이 모르고 서버를 reboot 시켜버렸다. 하필이면, nginx가 구동 중인 서버를 종료시켰다. 서버가 reboot 된 후, nginx를 켜고, runner 동작을 위한 run.sh를 수행하였는데, 아래와 같은 문구가 뜨면서 runner가 동작하지 않았다. The SSL connection could not be establish.. 공감수 29 댓글수 10 2024. 4. 1.
  • Layer Normalization 논문 리뷰 Layer Normalization 배경 설명 Layer Normalization은 토론토 대학에서 2016년 발표한 논문이다. Geoffrey E. Hinton이 저자로 포함되어 있다. CNN에서 BN이 주목을 받게 되면서, RNN에 적용 가능한 LN을 소개하였다. BN의 단점을 극복하는 것(RNN에 적용이 안된다는 점)이 논문의 시작이기 때문에 BN에 대해 먼저 알아야 한다. 2023.11.10 - [머신러닝] - Batch Normalization (Accelerating DeepNetwork Training by Reducing Internal Covariate Shift) 논문 리뷰 Batch Normalization (Accelerating DeepNetwork Training by Reduc.. 공감수 4 댓글수 1 2024. 4. 1.
  • Group Normalization 논문 리뷰 Group Normalization 배경 설명Group Normalization은 Kaming He가 저자로 포함된 ECCV 2018년 논문이다. Computer vision 분야의 필수 component인 Batch Normalization의 한계와 그를 해결하기 위한 Group Normalization을 제시하고 있다.Batch Normalization 관련 내용은 아래를 참고 바란다!2023.11.10 - [머신러닝] - Batch Normalization (Accelerating DeepNetwork Training by Reducing Internal Covariate Shift) 논문 리뷰 Batch Normalization (Accelerating DeepNetwork Training by .. 공감수 50 댓글수 25 2024. 3. 28.
  • BitNet: Scaling 1-bit Transformers for Large Language Models 논문 리뷰 BitNet 배경 설명 BitNet은 Microsoft와 칭화대학교에서 23년 10월에 제출한 논문이다. 커뮤니티에서 해당 논문에 대해 우연히 접하게 되어 리뷰를 하게 되었다. LLM은 성능 향상을 위해 model의 parameter를 키우는 방향으로 성장하고 있다. Parameter가 늘어나면서, model의 성능은 점점 좋아지지만, 1) model 자체의 용량이 커지면서 필요한 storage 용량의 증가 2) 연산을 위해 필요한 memory의 증가 3) 프로세서의 연산 속도 한계 등의 H/W의 제약이 대두되었다. 특히, mobile phone과 같은 제한된 resource 내에서 on-device LLM 동작을 위해서는 단순히 H/W의 spec을 늘리는 방향으로 model parameter의 증가세를.. 공감수 48 댓글수 24 2024. 3. 26.
  • [이슈 해결] Airflow에서 cx_Oracle 관련 에러 (dpi-1047) Airflow를 이용한 oracle batch job을 개발 중, cx_Oracle을 인식하지 못하는 현상이 발생하였다. 결론적으로는 매우 어이없는 실수지만, 동일한 이슈를 겪는 사람들이 분명 있을 것으로 생각하여 해결 과정을 정리하고자 한다. 문제 기존 postgresql 관련된 dag만 존재하던 airflow에 Oracle 관련 job을 추가하였다. Airflow 스케줄러에서 cx_Oracle을 호출하여, connection을 시도하니, 아래와 같은 오류가 발생하였다. cx_oracle.databaseerror: dpi-1047: cannot locate a 64-bit oracle client library: "libclntsh.so: cannot open shared object file: no .. 공감수 65 댓글수 24 2024. 2. 19.
  • MLops 등장: Hidden Technical Debt in Machine Learning Systems 논문 리뷰 최근 AI 분야가 각광을 받고, 다양한 ML 기반 서비스들이 제공되면서, MLops라는 용어가 널리 알려지게 되었다. 과거에는 AI 연구 영역과 엔지니어링 영역이 너무 멀게만 느껴져서, MLops에 그렇게 주목하지 않았지만, 실제 머신러닝 코드들을 개발하고, 배포하다 보니, MLops가 왜 필요하고, 어떤 기능을 포함해야 하는지에 대해 공감하게 되었다. 오늘 리뷰할 논문은 MLops의 시작이라고 할 수 있는 2015년 Google에서 발표한 "Hidden Technical Debt in Machine Learning Systems"이라는 논문이다. 사실, 머신러닝이 본격적으로 서비스로 제공되기 한참 이전의 논문이라, 현재의 MLops의 모습과 많이 달라져있을 수 있지만, 어떻게 MLops가 논의되기 시작.. 공감수 52 댓글수 17 2024. 2. 18.
  • Scikit-learn 주요 함수 정리 -(1) 전처리, 특성추출, 평가 함수 Scikit-learn 이란? Python 기반의 머신러닝 라이브러리로, 머신러닝 관련 다양한 알고리즘과 함수들을 포함하고 있어, 머신러닝 프로젝트에서는 필수 라이브러리이다. 설치 방법 pip install scikit-learn Scikit-learn 주요 함수 사실 Scikit-learn은 계속 새로운 버전이 등장하는 라이브러리이기 때문에, 라이브러리 내의 모든 함수를 보기 위해서는 공식 홈페이지에 방문하는 것이 좋다. 아래 정리된 내용은 지금껏 Scikit-learn을 사용해 오면서, 순전히 주관적인 기준으로 Scikit-learn의 주요 함수를 정리한 것이다. Scikit-learn은 크게 분류하면, Classification, Regression , Clustering 등의 특정 알고리즘을 구현.. 공감수 60 댓글수 48 2024. 1. 18.
  • MobileViT v2 논문 리뷰 GPU 없는 환경에서 Image Classification을 해야 할 상황이 되었다. MobileNet으로 실험할까 하다, 성능도 어느 정도 챙기고 싶어, MobileViT 논문을 읽게 되었다. MobileViT v2 배경 설명 MobileVIT v2는 2022년 Apple에서 발표한 "Separable Self-attention for Mobile Vision Transformers" 논문에서 소개된 모델이다. 기존 MobieViT가 model의 parameter 경량화에 성공하면서, CNN 기반의 mobilenet보다 좋은 성능을 보였지만, inference 속도가 느리다는 점을, separable self-attention 개념으로 해결한 논문이다. Abstract MobileVit가 적은 para.. 공감수 65 댓글수 34 2024. 1. 8.
  • 2023년 개발자 회고 원래, 일기도 거의 쓰지 않는 나지만, 올해보다 발전된 2024년을 바라면서, 2023년도를 회고해보고자 한다. 2023년에 있던 일들2023년을 돌이켜보면 아쉬움은 많이 남지만, 나에게 많은 변화가 있던 해이다. 개발 블로그를 시작했으며, NLP 분야를 본격적으로 공부하기 시작했다. 평소 잘 알지 못했던 Clean Code에 대한 개념도 새로 배우게 되었고, 그 과정에서 수많은 코드들을 리팩터링 하였다. Spark를 공부하여, Plsql 기반 코드를 변환해보기도 하였고, 병렬 구조에 대한 이해가 더 생기기도 하였다. 개인적으로는 도전과 실패에 대한 무서움이 적어져, 예전보다 더 많은 도전을 하였지만, 그만큼 많은 실패를 하였다. 가끔 한숨이 나오기도 했지만, 다 내 삶에 자양분이 될 것이라고 생각한다... 공감수 63 댓글수 25 2024. 1. 2.
  • Fine-tuning Image Transformers using Learnable Memory 논문 리뷰 논문 배경 설명 Fine-tuning Image Transformers using Learnable Memory은 2022년 CVPR에 제출된 Google 논문이다. memory token 개념을 사용하여, ViT에서 과거 task에 대한 정보를 저장하여, 성능을 유지하고, 새로운 task에 대한 학습을 진행할 수 있는 방법을 소개했다. 저자들은 지속 & 확장 가능한 memory 개념으로 소개하는데, 만약 진짜라면, external memory 개념으로 탈부착 가능한 memory가 될 수도 있지 않을까? 하는 생각이 든다. Abstract 이 논문에서는 Vision Transformer model에 학습 가능한 memory token을 넣은 새로운 ViT 모델을 소개한다. 이 모델의 방법에서는 하나의 t.. 공감수 60 댓글수 21 2023. 12. 12.
  • MobileViT 논문 리뷰 MobileViT 배경 설명MobileViT은 2022년 Apple에서 ICLR 2022에 제출한 논문이다. (Apple이여서, mobile에 대한 CNN이 더욱 필요했을 것이다.)CNN에서 mobilenet이 나왔듯, ViT에서도 light cost에 초점을 맞춘 논문이 등장하였다. Abstractmobile 환경에서 구동 가능할 정도의 가벼운 vision task CNN 모델이 등장하였었다. (mobilenet) 하지만, CNN과 달리 ViT는 최근 많은 vision task에 사용됨에도 불구하고, global representation들을 활용하기 위한 self-attention 구조를 사용하기 때문에, CNN에 비해 모델이 무겁다.이 논문에서는 CNN과 ViT를 결합하여 mobile vision .. 공감수 63 댓글수 57 2023. 12. 7.
  • [이슈 해결] SSH 접속이 갑자기 느려졌을 때 해결 방법 회사에서 정상적으로 운영하던 서비스에 문제가 생겼다. 돌이켜보면 매우 간단한 이슈였지만, 해결과정이 재밌었고 비슷한 상황에 도움이 될 수 있을 것 같아서 기록으로 남기게 되었다. 문제 며칠 전부터 서버 간의 SSH 연결이 매우 늦어지는 상황이 일어났다. 특히, 특정일 10:00:00을 기준으로 특정 대역대 서버가 모두 영향을 받게 되었다. 특히, expect를 이용한 명령어 수행이 기본 1분 내외의 수행시간에서 30분이 지나도 해결되지 않는 문제가 발생하였다. 당장 서비스 중인 서버이기 때문에, 해당 대역대가 아닌 다른 서버로 연결을 바꾸어, 해결했지만 특정 대역대의 서버 전체의 "SSH"가 느려져서, 빠른 해결이 필요하였다. 가설 & 시도 처음으로 의심한 것은 서버 자체의 부하이다. 하지만, ps와 t.. 공감수 54 댓글수 50 2023. 11. 20.
  • Multiprocessing으로 Pandas Apply 속도 향상 하기 최근 회사에서 plsql로 수 천 줄이 넘는 query를 python으로 바꾸었다. 최초에는 기존 병렬 처리를 그대로 바꾸기 위해, pyspark로 바꾸는 방법을 선택했지만, 생각보다 속도가 매우 느리고, Python UDF 사용 시, 데이터 정합성이 틀어지는 문제등이 발생하였다. (아마 비동기 처리 때문일 것으로 예상된다.) 결국, 여러 가지 시도 후, 이 프로젝트에서는 pandas가 더 유용할 것이라고 판단되었고, 속도를 끌어올리기 위해 여러 방법을 사용해 보다가 발견한 방법을 소개한다. Pandas Apply의 문제 Pandas는 C를 이용한 연산을 하는 numpy 기반으로 되어 있기 때문에, 어느 정도의 벡터화는 가능하지만, 무거운 연산등을 apply로 수행할 때, 속도적 한계를 가진다. 이는 P.. 공감수 45 댓글수 41 2023. 11. 13.
  • Batch Normalization (Accelerating DeepNetwork Training by Reducing Internal Covariate Shift) 논문 리뷰 항상 문제에 봉착하기 전에는 내가 모르는 것이 뭐인지 모르게 된다. 항상 Batch Normalization은 당연하게 사용하였지, 그 의미에 대해서 대략적으로만 알고 있었던 것 같아서, 이번 기회에 Batch Normalization의 논문을 읽으면서 기본기부터 다시 쌓고자 한다. Batch Normalization 배경 설명 Batch Normalization은 딥러닝을 접해본 사람이면, 누구나 알 것이다. Batch Normalization은 2015년 구글에서 ICML에 발표한 논문이다. Internal Covariate Shift 문제를 정의하고, 이를 해결하기 위한 mini batch 단위의 Normalization 방법에 대해서 제안한다. Abstract DNN의 학습 과정에서 앞선 laye.. 공감수 54 댓글수 43 2023. 11. 10.
  • DETR : End-to-End Object Detection with Transformers 논문 리뷰 DETR 배경 설명 DETR은 2020년 Facebook AI 팀에 의해 발표된 논문이다. Transformer를 Object Detection 분야에 최초로 적용한 논문이다. Abstract 이 논문에서는 한 번에 물체의 위치와 classification을 진행할 수 있는 DETR이라는 새로운 네트워크를 소개한다. 기존에 Object Detection에서 존재하던 NMS(Non-maximum suppression)이나, anchor box 생성 같은 manual 작업들을 제거한 detection pipeline을 구성하였다. DETR의 주요 아이디어는 bipartite matching을 통한 unique predictions를 강제하는 "set-based global loss"와 transformer의.. 공감수 53 댓글수 47 2023. 11. 7.
  • Pandas 데이터 구조 & 함수 정리 Python으로 데이터를 다루는 업무에서 Pandas는 거의 필수적이다. Pandas는 쉽고, 빠르고(Python에 비해), 유용하고, 간편하기 때문이다. 또한, 테이블 형태의 구조를 가지고 있는 pandas DataFrame은 매우 친숙하고, 안정적인 느낌을 준다. 평소에는 Pandas의 사용하는 기능만 사용하고, 필요한 기능이 있으면 그때그때 알아보면서 사용하고 있는데, 이번 기회에 Pandas의 함수를 정리해보고자 한다. (사실 pandas의 전체 함수를 정리하는 것은 거의 불가능하다. 내 기준으로 많이 사용하고 유용할 것 같은 함수를 정리했다. 필요한 함수가 있다면 https://pandas.pydata.org/docs/reference/index.html 를 직접 참조하는 것이 좋을 것이다.) .. 공감수 4 댓글수 2 2023. 11. 2.
  • Oracle Database -(1) Oracle DB Overview 나는 업무 중에 Oracle Database(이하, Oracle)를 직접적으로 사용하지는 않는다. 간접적으로나마 Oracle을 사용 중인데, 그마저도 이젠 더 사용하지 않게 될 것 같다. 그럼에도 Oracle에 대해 알아보기로 결심한 건, Oracle의 내부 동작이 굉장히 복잡하고, 체계적이기 때문에 이번 기회에 공부해 놓으면, 다른 DB나 데이터 처리 동작 관련하여 더 잘 이해할 수 있게 될 것 같기 때문이다. 전문가가 아니라, Oracle의 내부 동작은 거의 모르고, Oracle 동작에 대한 별도의 서적을 찾지 못해, Release Note를 보면서 공부하기로 했다. Introduction[Database]Database는 Application 들이 사용할 수 있게, information을 수집하고,.. 공감수 42 댓글수 42 2023. 10. 20.
  • LLaVA: Vision Instruction Turing 논문 리뷰 LLaVa배경 설명 LLaVa는 2023년 NeurIPS 발표된 논문으로, multimodal LLM에 대해 다룬 논문이다. multimodal LLM에 대한 부분도 놀랍지만, 코드와 weight를 open source로 발표하여, 많은 관심을 받고 있다. https://llava-vl.github.io/ LLaVA Based on the COCO dataset, we interact with language-only GPT-4, and collect 158K unique language-image instruction-following samples in total, including 58K in conversations, 23K in detailed description, and 77k in comp.. 공감수 43 댓글수 41 2023. 10. 15.
  • DeepVit: Towards Deeper Vision Transformer 논문 리뷰 DeepViT 배경 설명 DeepVit는 2021년에 ViT에 후속으로 나온 논문이다. ViT의 등장 이후, CNN 처럼 ViT를 깊게 쌓기 위한 방법을 제시한 논문으로, ImageNet classification에서 기존 CNN 기반의 SOTA를 넘어서는 성능을 보였다고 한다. Abstract 이 논문에서는 Image Classification에서 Layer가 깊어질수록 좋은 성능을 내는 CNN과 달리, ViT의 performance는 layer가 깊어질수록 성능이 더 빨리 saturate 되는 것을 발견했다. 이것은 transformer의 사이즈가 커지면서, attention map들이 점점 비슷한 형태를 띠는 "attention collapse issue" 때문이다. 이것은 ViT에 deeper l.. 공감수 4 댓글수 1 2023. 10. 11.
  • Apache Spark(아파치 스파크) - (4). 구조적 API - 집계 연산 함수 SQL에서 가장 유용하다고 생각하는 기능을 집계함수이다. 테이블 내에서 Grouping을 통해 통계값을 추출하고, 값을 모아 연산하는 과정이 다른 절차형 언어들에 비해 SQL이 가지는 특장점이라고 생각한다. Spark의 구조적 API도 SQL의 기본적인 기능을 제공하기 때문에, 마찬가지로 집계 연산 함수를 위한 API를 제공한다. Spark 집계 연산 함수란?집계함수는 키나 그룹을 지정하고, 하나 이상의 칼럼을 특정 연산으로 모아서, 그룹별로 결과 내는 데 사용하는 함수이다.기본적으로 Spark의 집계함수는 pyspark.sql.functions 내에 정의되어 있다.SQL의 문법과 거의 비슷하게 지원하지만, SQL의 모든 기능을 100% 지원하지는 않는다. (2023년 9월 기준) Spark의 group.. 공감수 6 댓글수 1 2023. 9. 13.
  • Apache Spark(아파치 스파크) - (3). 구조적 API 개요 업무에서 Cluster 기반의 Database 엔진을 사용하고 있다. Database 서버 내에서 굉장히 많은 양의 PL/SQL Function을 사용 중인데, 이것을 Spark로 바꾸고 있다. 성격상 이론보다 개발부터 진행 중이지만, 이론도 꼭 필요하다고 생각하여 공부 중이다. Spark의 구조적 API란? 구조적 API는 주로 정형 데이터 (CSV, JSON, Table) 등의 데이터를 처리하기 위한 고수준의 API이다. 정형화가 가능한 데이터들은 일반적으로 Table 형태로 표현할 수 있는데, Spark는 이러한 Table 구조의 데이터들을 빠르게 연산할 수 있는 다양한 API 등을 지원해 준다. 매우 쉽게 생각하면, Database의 Query 혹은 Function 등의 기능을 제공해 주는 기능이.. 공감수 42 댓글수 42 2023. 9. 5.
  • Decision Tree(의사결정나무 ) 사실, 비정형 데이터를 분석하는 게 더 재밌고 공부할 부분도 많지만, 내 기준으로 현업에서는 정형데이터를 다루는 경우가 많은 것 같다. 정형 데이터를 처리할 때, 처리 속도가 빠르고, 설명력이 좋은 머신러닝 알고리즘을 선호하는 경우가 많은데, 대표적인 것이 바로 의사결정나무이다. 의사결정나무란? 의사결정나무는 계층적으로 데이터를 분할하면서, 의사 결정 규칙을 학습하여, 데이터 분류와 회귀 분석에 사용할 수 있는 예측 모델이다. 의사결정나무의 가장 큰 장점은 해석력이다. 의사결정나무는 다른 머신러닝 기법들과는 다르게, 직관적으로 분할 규칙을 이해할 수 있다. 의사결정나무는 특성중요도(Feature Importance, 어떤 Feature가 예측에 큰 영향을 미치는지)를 쉽게 파악할 수 있다. 의사결정나무는.. 공감수 19 댓글수 17 2023. 8. 29.
  • Pypi 사용법 & 명령어 모음 & 폐쇄망 사용법 Pypi란? Pypi(Python Package Index)는 Python을 위한 오픈소스 패키지 저장소이다. Pypi는 오픈소스 패키지를 매우 쉽게 설치할 수 있게 하여, 지금의 Python의 인기를 만든 가장 큰 요인이다. Pypi 명령어 패키지 설치 기본적으로 패키지 설치는 pip install을 통해 가능하다. 특정 버전을 명시할 수 있지만, 버전을 명시하지 않으면, pip 버전 내 저장소 안에 있는 가장 최근 버전의 패키지를 설치한다. --upgrade를 붙여주면, pip 버전 내 저장소 안에 있는 가장 최근 버전의 패키지를 설치해 준다. 실제 코드에선 패키지가 매우 많고, 의존성이 복잡하기 때문에 별도의 파일로 관리하는데, (보통 requirements.txt) 이때, -r 옵션을 붙여주면, .. 공감수 10 댓글수 1 2023. 8. 16.
    문의안내
    • 티스토리
    • 로그인
    • 고객센터

    티스토리는 카카오에서 사랑을 담아 만듭니다.

    © Kakao Corp.