juhyuk3000의 등록된 링크

 juhyuk3000로 등록된 네이버 블로그 포스트 수는 25건입니다.

Tensorflow Decision Forests(TF-DF) 활용하기 [내부링크]

Reference: https://blog.tensorflow.org/2021/05/introducing-tensorflow-decision-forests.html https://www.tensorflow.org/decision_forests https://www.tensorflow.org/decision_forests/tutorials/beginner_colab https://github.com/google/yggdrasil-decision-forests 해당 글은 위 URL들을 필자의 입맛에 맞게 번역하고 이해한 내용을 바탕으로 작성하였습니다. ️ 개요 ️ Tabular Data(정형 데이터)를 활용하는 대회인 Kaggle의 Tabluar Playground Series를 보면 일반적으로 신경망이 많이 쓰이는 Audio, Image data가 아님에도 불구하고 Tabular data에 신경망을 활용하려는 시도가 많이 보입니다. 신경망의 성능은 누구나 인정하지만 적은 데이터 혹은

Tokenizer 정리 [내부링크]

참고 링크 : HuggingFace https://huggingface.co/docs/transformers/tokenizer_summary SentencePiece Tokenizer Demystified , towardsdatascience https://towardsdatascience.com/sentencepiece-tokenizer-demystified-d0a3aac19b15 HuggingFace Tokenizers https://huggingface.co/docs/tokenizers/index https://huggingface.co/docs/tokenizers/pipeline Unicode Normalization https://towardsdatascience.com/what-on-earth-is-unicode-normalization-56c005c55ad0 관련 링크 : Unicode equivalence , Wikipedia https://en.wikipedia.

자동 미분 (torch.autograd) [내부링크]

Automatic Differentiation with Torch.autograd https://pytorch.org/tutorials/beginner/basics/autogradqs_tutorial.html The Fundamentals of Autograd https://pytorch.org/tutorials/beginner/introyt/autogradyt_tutorial.html torch.autograd https://pytorch.org/docs/stable/autograd.html Pytorch Function Class https://pytorch.org/docs/stable/autograd.html#function 위 링크들에서 몇 가지 주요 내용을 뽑아왔습니다. Autograd pytorch는 torch.autograd라는 내장 미분 엔진을 가지고 있다. 이것은 복잡한 연산 속에서 gradient라고도 하는 여러 편미분을 빠르고 쉽게 만들어 준다. autog

상위 랭커 solution 분석 - Feedback Prize 1st [내부링크]

대회 링크 https://www.kaggle.com/competitions/feedback-prize-2021/overview Feedback Prize - Evaluating Student Writing Analyze argumentative writing elements from students grade 6-12 www.kaggle.com 대회 설명 6-12학년의 미국 학생들이 쓴 argumentative essay를 각 문장별에 대하여 7 가지로 분류하는 것 [ Lead, Position, Claim, Counterclaim, Rebuttal, Evidence, Concluding Statement ] [다만, 모든 문장들이 분류되는 것은 아니다. ] 대회 데이터 설명 링크 : https://www.kaggle.com/competitions/feedback-prize-2021/data Feedback Prize - Evaluating Student Writing Analy

DeBERTa, DeBERTaV2 분석 [내부링크]

논문 내용 중 기록해 놓고 싶은 내용을 발췌한 후 저자의 Github 코드와 Huggingface Github 코드를 활용하여 코드를 간단히 살펴봅니다. DeBERTa v1 논문 : https://arxiv.org/pdf/2006.03654.pdf 논문 내용 발췌 Syntactical nuances depend, to a large degree, upon the words'absolute positions. DeBERTa incorporates absolute word position embeddings right before the softmax layer where the model decodes the masked words based on the aggregated contextual embeddings of word contents and positions. the attention weights among words are computed using disentangl

DeBerta V3 relative position 관련 몇 가지 코드 정리 [내부링크]

Bucket Algorithm NLP에서 relative position을 사용하는 T5, DeBERTa 등의 모델들은 relative position encoding할 때 bucket을 사용한다. DeBERTa bucket Link : https://github.com/microsoft/DeBERTa/blob/c558ad99373dac695128c9ec45f39869aafd374e/DeBERTa/deberta/da_utils.py#L8 DeBERTa/da_utils.py at c558ad99373dac695128c9ec45f39869aafd374e · microsoft/DeBERTa The implementation of DeBERTa. Contribute to microsoft/DeBERTa development by creating an account on GitHub. github.com 위 링크를 seq_len 15로 설정하여 결과를 확인한다. import torch i

최적화 알고리즘 ( torch.optim ) [내부링크]

Optimizing Model Parameters https://pytorch.org/tutorials/beginner/basics/optimization_tutorial.html Torch.optim docs https://pytorch.org/docs/stable/optim.html Torch.optim.optimizer source code https://pytorch.org/docs/stable/_modules/torch/optim/optimizer.html#Optimizer 위 링크들에서 몇 가지 내용을 뽑아왔습니다. 이론적인 내용 Loss function : To measure the degree of dissimilarity of obtained results to the target value Optimization : process of adjusting model parameters to reduce model error in each training ste

초등 고학년 & 중등 코딩 교육 참고 사이트 정리 [내부링크]

초등 고학년 및 중학생의 코딩 교육을 진행할 때 참고할 만한 사이트 몇 가지 모아 보았습니다. 수업 준비 자료 소프트웨어야 놀자 https://www.playsw.or.kr/artificial/video?currentTab=ai_data_video_for_teachers EBS 소프트웨어 이솝 https://www.ebssw.kr/ 이솦 | EBS 소프트웨어 이솦 | EBS 소프트웨어 www.ebssw.kr 엔트리 공식 교육 자료 특히 엔트리 고고!에는 학년별 자료에 교육과정과 학습지, 해설서가 포함되어 있어 유익합니다. https://playentry.org/material 교육 자료 : 엔트리 소프트웨어를 통해 미래를 꿈꾸고 함께 성장합니다. playentry.org 소프트웨어 교육 교재 https://www.playsw.or.kr/software?currentTab=software_textbook 소프트웨어 : 소프트웨어야 놀자 소프트웨어의 기초부터 응용까지, 누구나 시작

엔트리를 활용한 파이썬 학습 [내부링크]

엔트리 스터디에 있는 작품을 파이썬 코드로 제작해 봅니다. 작품 링크 : https://playentry.org/study/lecture/5892ce84aea45c1ffeffb6ea 스터디 - 숫자맞히기 놀이 : 엔트리 무엇을 만들어 볼까? playentry.org 작품 설명: 무작위로 1에서 100까지의 수를 선택해 놓은 후 사용자로부터 숫자를 입력받아 입력값이 랜덤한 수보다 큰지 작은지 가르쳐줌으로써 답을 맞히게 하는 작품입니다. 엔트리를 활용한다면 주어진 블록을 활용해 간단히 구현할 수 있겠지만 처음 파이썬으로 구현한다면 고민이 필요할 수 있습니다. 제가 만든 코드는 아래와 같습니다. import random random_number = random.randint(1,100) count = 0 answer = 0 while answer != random_number: answer = int(input("\n1부터 100까지 수 중 하나를 입력해 보세요. \n")) if ans

헷갈리는 웹 기본 용어 바로 알기 (인터넷과 웹, URL과 도메인) [내부링크]

인터넷과 웹, URL과 도메인 주소는 웹을 이용하면서 자주 보았던 용어들이지만 막상 웹 개발에 관심을 갖게 되어 입문하게 되었을 때 다소 헷갈리는 개념들이다. 간단하게 개념을 생각해보며 정리해보자. 먼저 인터넷과 웹의 차이는 무엇인가? 인터넷은 웹보다 더 상위 개념이다. 인터넷이라는 세계 최대의 통신망 속에서 운영되는 서비스가 바로 웹(World Wide Web) 서비스이기 때문이다. 하지만 인터넷이라는 망 속에서 웹이 차지하는 비율이 압도적이기 때문에 일반적으로 "인터넷을 여세요", "인터넷에 검색해봐" 라고 말하지 "월드 와이드 웹을 여세요.", W3에서 검색해봐" 라고 하진 않는다. 이번에는 URL과 도메인의 차이를 알아보자. 먼저 URL이 도메인 주소보다 더 상위(?) 개념, 더 넓은 의미라고 생각하는 것이 편하지 않을까 싶다. URL 안에 도메인 주소가 포함되어야 하기 때문이다. 모든 컴퓨터가 각자의 고유의 IP 주소를 가지고 있지만 인터넷상에서 매번 소통할 때마다 긴 숫자

CoAtNet 코트넷 relative attention 코드 공부 [내부링크]

참고 링크 https://github.com/chinhsuanwu/coatnet-pytorch/blob/master/coatnet.py coatnet-pytorch/coatnet.py at master · chinhsuanwu/coatnet-pytorch A PyTorch implementation of "CoAtNet: Marrying Convolution and Attention for All Data Sizes". - coatnet-pytorch/coatnet.py at master · chinhsuanwu/coatnet-pytorch github.com 위 링크에 있는 Attention class를 분석해보겠습니다. 해당 블로그 글을 바로 읽는 것보단 위 코드를 한 번 훑어보고 읽는 것을 추천드립니다. 실습에 필요한 라이브러리 Import (Colab) import numpy as np import math import seaborn as sns import matplotl

YOLOX [ 논문 요약 + 코드 ] - 5) 코드 분석 - 추론 [내부링크]

논문 링크: https://arxiv.org/abs/2107.08430 Github 링크: https://github.com/Megvii-BaseDetection/YOLOX MMDetection 링크 : https://github.com/open-mmlab/mmdetection/tree/master/configs/yolox Docs 링크 : https://yolox.readthedocs.io/en/latest/ 아래 순서대로 읽으면 편리합니다. 논문 요약 글: -> https://blog.naver.com/juhyuk3000/222639571578 코드 분석 - 모델 -> https://blog.naver.com/juhyuk3000/222639572909 코드 분석 - 데이터 -> https://blog.naver.com/juhyuk3000/222639574026 코드 분석 - 학습 -> https://blog.naver.com/juhyuk3000/222639575323 코드 분

Numpy method (where, pad, ravel) 정리 [내부링크]

️ np.where ️ 문서 URL : https://numpy.org/doc/stable/reference/generated/numpy.where.html?highlight=np%20where numpy.where — NumPy v1.21 Manual numpy. where numpy. where ( condition [ , x , y ] ) Return elements chosen from x or y depending on condition . Note When only condition is provided, this function is a shorthand for np .asarray(condition).nonzero() . Using nonzero directly should be preferred, as it behaves correctly for subclasses... numpy.org 공식 문서에 따르면 np.where은 아래와 같이 사용하고 numpy.where

2D Convolutional Operation 이해 w/ Pytorch [내부링크]

2D Convolution을 이해해 보도록 한다. 기본적인 library를 불러온다. import torch import torch.nn as nn 결과를 직관적으로 이해할 수 있도록 conv2d의 weight을 arange값으로 bias는 모두 0으로 초기화한다. image는 7x7 shape에 3 채널로 만들 것인데 채널별로 어떻게 다르게 작용하는지 보기 위해 첫 번째 채널은 1로, 두 번째 채널은 1.5로 세 번째 채널은 2로 값을 채운다. kernel_size = 3 conv = nn.Conv2d(in_channels = 3,out_channels=8,kernel_size=kernel_size) conv.weight.data = torch.arange(8*3*3*3, dtype=torch.float32).view(8,3,3,3) conv.bias.data.zero_() image_list = [torch.ones(1,1,7,7), torch.full((1,1,7,7),1.5)

CoAtNet 코트넷 논문 읽기 [내부링크]

논문 링크: https://arxiv.org/abs/2106.04803 코드(Paperwithcodes) 링크 : https://paperswithcode.com/paper/coatnet-marrying-convolution-and-attention 필자의 입맛에 맞게 번역, 요약한 글입니다. 오역의 여지가 있는 부분은 영문도 표기해 놓았고 Abstract 부분의 주요 내용은 영문 그대로 옮겨 놓기도 했습니다. Abstract Transformer는 computer vision 분야에서 매력적인 요소로 여겨지고 있다. 하지만 SOTA conv 모델에 비해 다소 성능이 떨어지는 경향이 있다. 적절한 inductive bias가 부족하기 때문에 큰 모델 용량(model capacity)을 가지고 있긴 하지만 일반화 성능이 Conv network보다 떨어짐을 이번 논문에서 나타낸다. 두 가지 Two insights를 통해 CNN과 Transformer를 결합시켜 볼 것이다. 1)

YOLOX [ 논문 요약 + 코드 ] - 2) 코드 분석 - 모델 [내부링크]

논문 링크: https://arxiv.org/abs/2107.08430 Github 링크: https://github.com/Megvii-BaseDetection/YOLOX MMDetection 링크 : https://github.com/open-mmlab/mmdetection/tree/master/configs/yolox Docs 링크 : https://yolox.readthedocs.io/en/latest/ 아래 순서대로 읽으면 편리합니다. 논문 요약 글: -> https://blog.naver.com/juhyuk3000/222639571578 코드 분석 - 모델 -> [ 현재 글 ] 코드 분석 - 데이터 -> https://blog.naver.com/juhyuk3000/222639574026 코드 분석 - 학습 -> https://blog.naver.com/juhyuk3000/222639575323 코드 분석 - 추론 -> https://blog.naver.com/juhyu

YOLOX [ 논문 요약 + 코드 ] - 3) 코드 분석 - 데이터 [내부링크]

논문 링크: https://arxiv.org/abs/2107.08430 Github 링크: https://github.com/Megvii-BaseDetection/YOLOX MMDetection 링크 : https://github.com/open-mmlab/mmdetection/tree/master/configs/yolox Docs 링크 : https://yolox.readthedocs.io/en/latest/ 아래 순서대로 읽으면 편리합니다. 논문 요약 글: -> https://blog.naver.com/juhyuk3000/222639571578 코드 분석 - 모델 -> https://blog.naver.com/juhyuk3000/222639572909 코드 분석 - 데이터 -> [ 현재 글 ] 코드 분석 - 학습 -> https://blog.naver.com/juhyuk3000/222639575323 코드 분석 - 추론 -> https://blog.naver.com/juhyu

YOLOX [ 논문 요약 + 코드 ] - 4) 코드 분석 - 학습 [내부링크]

논문 링크: https://arxiv.org/abs/2107.08430 Github 링크: https://github.com/Megvii-BaseDetection/YOLOX MMDetection 링크 : https://github.com/open-mmlab/mmdetection/tree/master/configs/yolox Docs 링크 : https://yolox.readthedocs.io/en/latest/ 아래 순서대로 읽으면 편리합니다. 논문 요약 -> https://blog.naver.com/juhyuk3000/222639571578 코드 분석 - 모델 -> https://blog.naver.com/juhyuk3000/222639572909 코드 분석 - 데이터 -> https://blog.naver.com/juhyuk3000/222639574026 코드 분석 - 학습 -> [현재 글] 코드 분석 - 추론 -> https://blog.naver.com/juhyuk3000

[albumentations] 이미지에 적절한 증강 기법 선택하는 방법 [내부링크]

Demo-PlayGround 링크 : https://albumentations-demo.herokuapp.com/ Streamlit Please wait... albumentations-demo.herokuapp.com 사용한 사진 : Photo by Mathias P.R. Reding on Unsplash Computer Vision 관련 Task를 수행하다 보면 가지고 있는 데이터에 따라 무엇이 적절한 증강 기법일지 선택하는 것이 고민될 때가 있습니다. 이럴 때 유용한 albumentations의 사이트를 하나 소개하고자 합니다. 우선, 다른 방법으로 아래와 같이 시각화를 위한 코드를 작성하여 일일이 확인해 보는 방법도 존재합니다. # 실험해 볼 증강 기법을 리스트에 담습니다. augmentation_list = [ A.RandomSunFlare(p=1, src_radius=100), A.RandomFog(p=1), A.RandomBrightness(p=1), A.ToGray

[케라스 중급] fit()를 customizing하여 사용하기 [내부링크]

원문 링크 : https://keras.io/guides/customizing_what_happens_in_fit/ Keras documentation: Customizing what happens in `fit()` Customizing what happens in fit() Author: fchollet Date created: 2020/04/15 Last modified: 2020/04/15 Description: Complete guide to overriding the training step of the Model class. View in Colab • GitHub source Introduction When you're doing supervised learning, you can use fit() and everything wor... keras.io 원문 코랩 노트북 : https://colab.research.google.com/github/keras-team/

Pytorch Tensors Tutorial [내부링크]

Tensors Tutorial Link : https://pytorch.org/tutorials/beginner/basics/tensorqs_tutorial.html#tensors 제가 생각하기에 제가 추가로 알아야할 내용 혹은 주요한 내용들을 요약했습니다. Tensors Tensor는 배열이나 행렬과 매우 유사한 전문화된 데이터 구조를 의미합니다. Pytorch에선 모델의 파라미터뿐만 아니라 입력값과 출력값도 모두 텐서로써 사용합니다. Tensor는 GPU와 같은 다양한 하드웨어 가속기들에서 실행될 수 있다는 것 제외하고 Numpy의 array와 굉장히 비슷하며 종종 Numpy array와 tensor는 서로 copy 하지 않아도 되도록 같은 메모리를 공유하기도 합니다. Tensor를 만드는 다양한 방법은 아래와 같습니다. # 데이터로부터 직접 만들기 data = [[1, 2],[3, 4]] x_data = torch.tensor(data) # Numpy 배열로부터 만들기 np

YOLOX [ 논문 요약 + 코드 ] - 1) 논문 요약 [내부링크]

논문 링크: https://arxiv.org/abs/2107.08430 Github 링크: https://github.com/Megvii-BaseDetection/YOLOX Docs 링크 : https://yolox.readthedocs.io/en/latest/ 아래 순서대로 읽으면 편리합니다. 논문 요약 글: -> [ 현재 글 ] 코드 분석 - 모델 -> https://blog.naver.com/juhyuk3000/222639572909 코드 분석 - 데이터 -> https://blog.naver.com/juhyuk3000/222639574026 코드 분석 - 학습 -> https://blog.naver.com/juhyuk3000/222639575323 코드 분석 - 추론 -> https://blog.naver.com/juhyuk3000/222639576418 필자의 입맛에 맞게 중요 내용을 요약한 글입니다. 각 부분마다 한글로 간단히 요약 후 주요 내용을 영문 그대로 옮겨왔

[TensorFlow] Transformer 모델 만들기 [내부링크]

시작하기 전에.. 참조 : https://www.tensorflow.org/text/tutorials/transformer https://arxiv.org/abs/1706.03762 https://wikidocs.net/31379 해당 원어 예제는 Transformer를 활용하여 포르투갈어를 영어로 번역해보는 것입니다. 원어 예제에서는 데이터셋 불러오기, 토크나이저 학습 등을 모두 다루지만 이 블로그 글에서는 Transformer와 직접적으로 관련되지 않은 내용들은 다루지 않았습니다. 개요 Transformer 모델의 핵심 아이디어는 "self-attention"입니다. "self-attention"은 입력 받은 sequence의 각 원소를 어떤 수치로 표현(representation)할지를 결정할 때 해당 sequence의 다양한 위치의 값들을 상황에 맞게 주목하여 결정하는 능력을 의미합니다. Transformer 모델은 RNN이나 CNN 대신 self-attention

[Huggingface] 간단한 텍스트 요약(Summarization) 실습 [내부링크]

시작하기 전에.. 원문 링크 : https://github.com/huggingface/notebooks/blob/master/examples/summarization.ipynb notebooks/summarization.ipynb at master · huggingface/notebooks Notebooks using the Hugging Face libraries c. Contribute to huggingface/notebooks development by creating an account on GitHub. github.com Huggingface의 공식 깃허브에 있는 (주피터) notebook을 실습해 보며 Text summarization에 대한 내용들을 토대로 글을 작성했습니다. 원본 노트북의 모든 코드를 게시하진 않았으며 핵심적인 내용들만 게시하였고 몇 가지 코드를 추가하기도 했습니다. 기본적으로 Colab을 사용하는 것으로 생각하며 설명하였습니다. ️ 원본 노

[albumentations] 분류를 위한 이미지 증강(augmentation) [내부링크]

원문 링크 : https://albumentations.ai/docs/getting_started/image_augmentation/ Albumentations Documentation - Image augmentation for classification Albumentations: fast and flexible image augmentations albumentations.ai 사용한 사진 : Photo by Satyabrata sm on Unsplash 개요 이미지 증강 과정(process of image augmentation)을 아래와 같이 총 네 단계로 나눌 수 있습니다. 1️ albumentations와 이미지를 읽는데 사용할 라이브러리(ex. OpenCV) 불러오기(Import) 2️ 증강 파이프라인(augmentation pipeline) 정의하기 3️ 디스크에 있는 이미지 읽어 들이기 4️ 증강 파이프라인에 이미지를 넣고 증강된 이미지 받기 단계 1: 필