해당 포스팅은 2020년 꿈꾸는아이 Drone Competition에 참가한 내용을 바탕으로 작성했습니다. 이번 본선 포스팅에서는 제가 맡은 파트인 1차전에 대한 내용을 위주로 설명하고, 2, 3차전의 창업 아이디어에 대해서는 디테일하게 설명해 드리지 못하는 점 양해를 부탁드립니다. 1. 본선 진행 과정 위의 그림처럼 Mobility부문의 본선은 총 3단계로 진행됩니다. 예선을 통해서 자율주행 부문(AWS)과 드론 부문(INTEL)의 팀을 4개씩 선발해서 총 8개 팀이 본선에 진출했습니다. 각 부문별로 토너먼트 방식을 통해서 전체 8개 팀 중에 1개의 팀을 뽑게 됩니다. 1차전은 예선과 동일한 방식으로, 2,3차전은 해당 기술(자율주행, 드론)을 활용한 창업 경진대회로, 준비한 창업 계획을 발표하는 방식..
전체 글
SOOHO 개발공부노트해당 포스팅은 네이버 부스트캠프 AI Tech 학습 정리 자료임을 알려드립니다. 1. 강의를 듣고 느낀점 오늘 강의는 특강 내용으로 다뤄졌기 때문에 말씀해주신 부분보다는 저에 대한 적용 위주로 작성되었습니다. 글을 읽으실 때 참고해주시면 감사하겠습니다. 박성준 마스터님 - NLP를 위한 언어 모델의 학습, 평가 NLP 분야에서는 언어 모델을 평가하는 다양한 Task가 존재합니다. 대표적으로 GLUE가 있고, 이를 바탕으로 다양한 언어적 특성을 고려해서 FLUE, CLUE, KLUE 등으로 각 나라의 모델을 평가합니다. KLUE에는 다양한 Task가 존재하지만 각 테스크 별로 어떤 metric을 사용해야 하는 가에 대한 논쟁이 계속 이뤄지고 있습니다. 특히, 새로 만들어지는 Task에 대해서는 더더욱 그런..
해당 포스팅은 네이버 부스트캠프 AI Tech 학습 정리 자료임을 알려드립니다. 1. 강의를 듣고 느낀점 오늘 강의는 특강 내용으로 다뤄졌기 때문에 말씀해주신 부분보다는 저에 대한 적용 위주로 작성되었습니다. 글을 읽으실 때 참고해주시면 감사하겠습니다. 김상훈 마스터님 - 캐글 그랜드마스터 노하우 대방출 15년째 머신러닝 분야를 공부하고 계시면서 꾸준히 캐글에 도전하시는 모습이 대단하다고 생각했습니다. 물론, 좋은 등수를 얻기 위해서는 환경이 갖춰지는 것이 중요하지만, 최근 Riiid 대회에서는 구글 코랩 프로 여러 계정을 사용한 사람이 1등을 하기도 했습니다. 그렇기 때문에 도전해보는 것이 중요하다고 생각하게 되었습니다. 또한 좋은 성적을 거두지 못해도 그것이 아예 의미가 없는 것은 아니고, compe..
해당 포스팅은 네이버 부스트캠프 AI Tech 학습 정리 자료임을 알려드립니다. Day 26은 3.1절 휴강이었습니다. 1. 강의를 듣고 느낀점 오늘 강의는 특강 내용으로 다뤄졌기 때문에 말씀해주신 부분보다는 저에 대한 적용 위주로 작성되었습니다. 글을 읽으실 때 참고해주시면 감사하겠습니다. AI Engineer는 모델링 외에도 학습데이터를 구성하거나, 테스트방법을 구상하는 일도 하게 됩니다. 마스터님께서 알려주신 데이터셋 구성 과정은 KISTI 기계학습 데이터 구축에서 검수했던 경험과 매우 유사했습니다. 그곳에서도 가이드를 바탕으로 구축자가 구축하면서 궁금한 것들을 Q&A로 문의하고 이를 답변하고 데이터 검수하는 과정을 진행했는데, 현업에서도 동일한 과정에 의해서 데이터셋이 구성된다는 점에서 신기하고 ..
해당 포스팅은 PEP 8과 파이썬 클린 코드 책을 참고하며 작성했습니다. 파이썬을 공부하다가 "내 코드는 괜찮을까?"라는 생각이 머릿속을 스쳐지나갔습니다. "진짜 이대로 취업하면 팀에 도움이 될 수 있을까?"라는 고민과 아무리 살펴봐도 마음에 들지 않는 코드들 속에서 허우적 거리는 제 모습을 볼 수 있었습니다. 어떻게 "이 코드를 사람들이 읽을만한 코드로 바꿀 수 있을 것인가?"에 대해서 오늘 이야기 해보려고 합니다. 포스팅에서는 아래의 내용을 다루고 있습니다. 클린코드란 무엇인가 PEP-8에 대하여 클린코드를 만들기 위한 라이브러리 소개(Pylint) 1. 클린 코드란 무엇일까? 클린 코드에 대한 유일하고 엄격한 정의는 존재하지 않습니다. 또한 클린 코드를 측정할 방법도 없을 것입니다. "아니! 클린 ..
해당 포스팅은 네이버 부스트캠프 AI Tech 학습 정리 자료임을 알려드립니다. 1. 강의 정리 신기정 교수님 - 그래프 신경망이란 무엇일까? (기본) 1) 귀납식 정점 표현 출력으로 임베딩 자체를 얻는 변환식 임베딩 방법에 대해서 이미 배웠습니다. 하지만, 이 방법은 학습이 진행된 이후에 추가된 정점에 대해서는 임베딩을 얻을 수 없고, 모든 정점에 대해서 임베딩을 미리 계산해서 저장해놔야 합니다. 또 정점이 부가 정보를 가진 경우에 이를 활용하기 어렵다는 한계가 있습니다. 그래서 이번에는 출력으로 인코더를 얻는 귀납식 임베딩 방법에 대해서 알아보고자 합니다. 귀납식 임베딩 방법은 앞에서 언급했던 변환식 임베딩 방법의 한계를 모두 해결합니다. 그래프 신경망(Graph Neural Network)은 대표적..
해당 포스팅은 네이버 부스트캠프 AI Tech 학습 정리 자료임을 알려드립니다. 1. 강의 정리 신기정 교수님 - 그래프의 정점을 어떻게 벡터로 표현할까? 1) 정점 표현 학습 정점 표현 학습은 그래프의 정점들을 벡터의 형태로 표현하는 것을 말합니다. 이를 간단하게 정점 임베딩(Node Embedding)이라고도 부릅니다. 정점 임베딩은 벡터 형태의 표현 그 자체를 의미하기도 합니다. 이렇게 정점이 표현되는 벡터 공간을 임베딩 공간이라고 부릅니다. 주어진 그래프의 정점 $u$에 대한 임베딩 즉, 위에서 표현한 것과 같이 $Z_{u}$가 정점 임베딩의 출력입니다. 위의 그림처럼 정점을 벡터로 임베딩하게 되면 벡터 형태의 데이터를 위한 도구들을 그래프에도 적용이 가능해집니다. 한가지 예시로 로지스틱 회귀분석..
해당 포스팅은 네이버 부스트캠프 AI Tech 학습 정리 자료임을 알려드립니다. 1. 강의 정리 신기정 교수님 - 그래프의 구조를 어떻게 분석할까? 1) 군집 구조와 군집 탐색 문제 군집은 다음 조건들을 만족하는 정점들의 집합입니다. 집합에 속하는 정점 사이에는 많은 간선이 존재합니다 집합이 속하는 정점과 그렇지 않은 정점 사이에는 적은 수의 간선이 존재합니다. 위에서 언급한 조건들은 많고 적다의 정확한 기준이 없어서 수학적으로 엄밀한 정의는 아닙니다. 위의 그림에서는 총 11개의 군집이 있는 것을 확인할 수 있습니다. 온라인 소셜 네트워크의 군집들은 사회적 무리(Social Circle)를 의미하는 경우가 많습니다. 위에 있는 그림에는 가족으로 이뤄진 군집, 고등학교 친구들 군집 등 다양한 군집이 존재..
해당 포스팅은 네이버 부스트캠프 AI Tech 학습 정리 자료임을 알려드립니다. 1. 강의 정리 신기정 교수님 - 검색 엔진에서는 그래프를 어떻게 활용할까? 페이지 랭크의 배경 1) 웹과 그래프 웹은 웹페이지와 하이퍼링크로 구성된 거대한 방향성이 있는 그래프입니다. 여기서 정점은 웹페이지가 되고, 웹페이지가 포함하고 있는 하이퍼링크는 해당 웹페이지에서 나가는 간선에 해당합니다. 단, 웹페이지는 추가적으로 키워드 정보를 포함하고 있습니다. 2) 구글 이전의 검색 엔진 구글 이전의 검색 엔진들은 어떻게 검색이 되도록 노력했을까요? 첫 번째 시도는 웹을 거대한 디렉토리로 정리하는 것이었습니다. 하지만, 이 방법은 웹페이지의 수가 증가함에 따라 카테고리의 수와 깊이가 무한정 커지는 문제가 있습니다. 또한 카테고..
해당 포스팅은 네이버 부스트캠프 AI Tech 학습 정리 자료임을 알려드립니다. 1. 강의 정리 신기정 교수님 - 그래프란 무엇이고 왜 중요할까? 1) 그래프란 무엇일까? 그래프는 정점 집합과 간선 집합으로 이루어진 수학적 구조입니다. 간선은 두 개의 정점을 연결하며, 모든 정점은 반드시 간선으로 연결되는 것은 아닙니다. 여기서의 간선은 엣지, 링크로 , 정점은 노드로, 그래프는 네트워크로 표현하기도 합니다. 그렇다면 이 그래프란 것이 왜 중요할까요? 그래프의 중요성을 이해하기 위해서는 가장 먼저 복잡계(Complex System)을 알아야 합니다. 복잡계는 말로만 들어도 어렵게 느껴지기에 어떤한 것들이 복잡계인지 설명하면, 우리가 살고 있는 사회, 전자 장치로 구성된 통신시스템 외에도 정보, 뇌, 신체..