분류 전체보기 45

ai tech 28일차

특강이므로 느낀점만 작성 할 수 있다고 한다. # 캐글 그랜드 마스터의 경진대회 노하우 캐글에서 좋은 성적을 얻으려면 좋은 장비가 필수라는것에 조금 놀랐다. 코랩 프로로 진행될 수 있을줄 알았는데, 데이터 입출력 속도가 느리기 때문에 코랩에 제한이 있다고 한다. 아담이 주로 사용되는것 같고, 많이 해봐야 되는게 답인것 같다. # Fullstack ML engineer 머신러닝 풀스택 엔지니어면 웹 백엔드와 프론트엔드도 할줄 알고 최종적으로 프로덕션도 만들수 있어야 한다고 한다. 나에게는 이 방향이 유리할 것 같다.

ai tech 2021.03.03

ai tech 27일차

# 서비스향 AI 모델 개발하기 실무에서는 데이터 모델링 작업은 전체 작업에서의 아주 일부분만 차지하고, 학습데이터셋부터 해서 모든 것을 다 만들어야 한다. 그리고 모델링 작업을 하나로 통째로 진행하는 것이 아니라 세분화하고 모듈화해서 각각의 기능을 하는 모델들을 개발하는 식으로 작업이 이루어진다. 요구사항을 시작으로 개발이 진행되는데, 처리시간, 목표정확도, 성능, 장비 사양 등 세부적인 내용까지 처음에 모두 확인하고 정리해야 개발 진행이 가능하다. 팀에는 데이터 큐레이터, 모델러, 프론트 개발자, 모델엔지니어, 백엔드 개발자 등 모델링을 위주로 하는 개발자보다도 서빙을 위한 개발자들이 더 수요가 많고 필요하다. # AI 커리어 역시나 팀에는 모델링 하는 사람 뿐만 아니라 데이터 엔지니어, 개발자 등 ..

ai tech 2021.03.02

ai tech 25일차

# 정점 표현 학습 정점 표현학습은 그래프의 정점들을 벡터의 형태로 표현하는 것이다. 그래서 정점 임베딩이라고 부르기도 한다. 그래프에서의 정점간 유사도를 임베딩 공간에서도 보존해야 한다. 임베딩 공간에서는 내적을 해서 유사도를 구한다. 그래프에서의 두 정점의 유사도는 인접성, 거리, 경로, 중첩, 임의보행 기반 접근법으로 나뉜다. 여태까지의 정점 임베딩 방법들은 변환식 방법이다. 변환식 방법은 학습의 결과로 정점의 임베딩 자체를 얻는다. 귀납식 방법은 정점을 임베딩으로 변화시키는 함수, 인코더 자체를 얻는다. # 변환식 임베딩 방법의 한계 1. 학습이 진행된 이후에 추가된 정점에 대해서는 임베딩을 얻을 수 없다. 2. 모든 정점에 대한 임베딩을 미리 계산하여 저장해두어야 한다. 3. 정점이 속성 정보를..

ai tech 2021.02.26

ai tech 24일차

# 정점 표현 학습 그래프의 정점들을 벡터의 형태로 표현하는 것이다. 정점 임베딩이라고도 부르는데, 정점을 벡터공간에 임베딩하는 것이다. # 정점 표현 학습의 이유 다양한 벡터 형태의 데이터를 위한 도구들을 사용할 수 있다. # 정점 표현 학습의 목표 # 인접성 기반 접근법 # 거리 기반 접근법 위에서는 거리가 2일때까지는 유사도가 1이고, 2를 초과하는 경우에는 유사도가 0이 된다. # 경로 기반 접근법 # 중첩 기반 접근법 유명인처럼 연결성이 매우 높은 노드의 경우 가중치를 낮춘다. 연결성이 적은 노드의 경우 가중치를 높인다. # 임의보행 기반 접근법 일단 정점에서 출발시키고 그 결과를 리스트에 담는다. 임베딩으로 추정한 결과로 도달할 확률을 계산한다. 그 확률과 실제 출발해서 리스트에 담길 확률의 ..

카테고리 없음 2021.02.25

ai tech 23일차

# 군집 다음 조건들을 만족하는 정점들의 집합이다. 1. 집합에 속하는 정점 사이에는 많은 간선이 존재한다. 2. 집합에 속하는 정점과 그렇지 않은 정점 사이에는 적은 수의 간선이 존재한다. 많고 적은 것이 모호하기 때문에 수학적으로 엄밀한 정의는 아니다. # 실제 그래프에서의 군집 온라인 소셜 네트워크에서의 군집은 사회적 무리(social circle)들을 의미하는 경우가 많다. 부정행위와 관련된 경우도 있다. 트위터에서 부정행위와 관련된 계정은 다른 부정행위와 관련된 계정과 팔로우 되어있는 경우가 많다. 조직 내의 분란이 소셜 네트워크 상의 군집으로 표현되는 경우도 있다. 아래 그림에서 동아리가 두개 군집으로 나뉘어져 있다. 인접행렬으로 나타내게되면 0이 아닌값들이 몰려있는 것을 확인할 수 있다. 키..

카테고리 없음 2021.02.24

ai tech 22일차

# 웹과 그래프 웹은 웹페이지와 하이퍼링크로 구성된 거대한 방향성 그래프이다. 정점은 웹페이지다 간선은 하이퍼링크다 웹페이지는 추가적인 키워드 정보를 포함하고 있다. # 구글 이전의 검색 엔진 초창기의 검색엔진은 모든 웹페이지를 디렉토리로 정리하려고 하였다. 그러나 웹페이지 수가 커지면서 카테고리의 수와 깊이도 무한대로 커지는 문제가 있었다. 또한, 카테고리 구분이 모호해서 저장하거나 검색하기가 어려웠다. 그 이후 검색엔진은 키워드가 여러번 포함된 웹페이지를 반환하려고 하였다. 그러나 스팸성 사이트가 너무 많이등장해서 실질적으로 유용한 페이지를 보여주기가 어려웠다. 페이지 랭크 알고리즘은 키워드와 관련성이 높고 신뢰할 수 있는 웹페이지를 찾고자 하는 알고리즘이다. # 페이지 랭크: 투표 관점 투표를 통해..

카테고리 없음 2021.02.23

ai tech 21회차

# 그래프 정점 집합과 간선 집합으로 이루어진 수학적 구조 하나의 간선은 두개의 정점을 연결한다 하지만 모든 정점 쌍이 반드시 간선으로 직접 연결되는 것은 아니다 그래프는 네트워크로도 불린다. 정점은 노드로, 간선은 엣지 혹은 링크로 불린다. # 복잡계 사회는 70억 인구로 구성된 복잡계 통신 시스템은 전자 장치로 구성된 복잡계 정보과 지식, 뇌, 신체도 복잡계 복잡계는 구성 요소간의 복잡한 상호작용이 특성이다. 그래프는 복잡계를 효과적으로 표현하고 분석하기 위한 언어이다. SNS 같은 복잡계는 사용자들이 노드이고 사용자들간의 연결이 엣지이다. 쇼핑몰 같은 복잡계는 사용자와 각각의 물건들이 노드이고, 사용자와 물건간의 연결이 엣지이다. 인터넷도 라우터들간의 상호작용 연결, 웹도 웹페이지간의 하이퍼링크 연..

ai tech 2021.02.22

ai tech 20일차

# self-supervised pre-training models GPT-1 BERT # pre-training model의 최근동향 트랜스포머 모델과 셀프 어텐션 블록은 범용적인 시퀀스 인코더 디코더로서 좋은 성능을 보여주고 있다. 트랜스포머는 셀프어텐션블록을 6개정도 쌓아서 사용했다면, 최근에는 더 깊게 쌓아서 만들고 대규모 데이터로 학습하고 transfer learning으로 fine tuning을 해서 더 좋은 성능을 보여주고 있다. 하지만 한글자 다음에 다음 한글자를 추론하는 그리디 디코딩을 벗어나지 못하는 한계점이 있다. # GPT-1 일론머스크가 세운 openAI에서 나온 모델 자연어 생성에서의 놀라운 성능을 보여준다. 텍스트 시퀀스에 포지션 임베딩을 더하고, 셀프 어텐션 블록을 총 12개..

ai tech 2021.02.19

ai tech 19일차

# transformer 시퀀스투시퀀스 모델의 성능을 개선한 모델이다. 트랜스포머 모델은 attention is all you need라는 제목의 논문으로 제안되었다. 시퀀스 데이터를 처리할때 RNN 계열을 사용하지 않고, 어텐션만으로 처리하는 것이다. RNN계열에서는 그래디언트 배니싱이나 롱텀 디펜던시 등의 문제가 있었다. # bi directional RNN forward RNN과 backward RNN을 병렬적으로 만들어서 히든 벡터를 concat하여 사용한다. # transfomer 쿼리벡터를 통해 어떤 키 벡터가 높은 유사도를 갖고있는지 알아낸다. 그리고 그 유사도에 소프트맥스를 취하고, 밸류벡터들과 내적을 해서 최종적인 인코딩 벡터를 얻을 수 있다. 결론적으로는 어떤 단어에 해당하는 인코딩 벡..

카테고리 없음 2021.02.18

ai tech 18일차

# sequence to sequence seq to seq는 many to many인 방식이다. 위 예에서는 챗봇이 문장을 입력받아서 출력인 답변을 생성하는 구조이다. 이 방식은 인코더와 디코더로 구성되어있는데, 입력단어를 한개씩 받아들이는 RNN 부분을 인코더라고 하고, 출력단어를 한개씩 뱉는 RNN 부분을 디코더라고 한다. 인코더와 디코더는 서로 별개의 파라미터를 사용한다. 그리고 세부적인 내부 구현은 LSTM이 적용되어있다. 인코더에서의 최종 히든스테이트 벡터는, 디코더에서의 최초 히든스테이트 벡터가 된다. 디코더의 첫 입력으로는 start를 의미하는 토큰을 사전에 넣어두고 이를 입력으로 넣어준다. 그리고 마지막 최종출력인 end가 출력 될때 까지 디코더를 진행하게 된다. 만약 end가 출력되면 ..

ai tech 2021.02.17