분류 전체보기 130

[창업 프로젝트 plip] 문제 접근

어떤 오브젝트의 텍스처를 인식하는 것은 어려운 문제이고 그 오브젝트의 형태가 정해져 있지 않다면 특히 더 어렵습니다. 빵 같은 경우에는 다양한 형태가 존재하기에 기존에 적용된 object detection 방법으로만은 인식하기 힘들다고 판단했고 다른 방법이 필요하다고 생각이 들었습니다. 비슷한 사업을 진행 중인 기업들을 살펴봤는데 각 기업들은 여러 방향으로 카메라를 달아 depth를 뽑아 3D 모델을 만들어 정확한 개수를 측정했습니다. 하지만 이 경우 여러 대의 카메라가 필요했기에 비용이 높았습니다. 저희 팀의 경우 스마트폰을 사용하여 접근도가 높고 초기 비용이 저렴하다는 경쟁력을 가지고 있기 때문에 해당 방법을 사용하는 것은 힘들다고 생각했습니다. 그렇기에 조금 더 세밀한 텍스처 인식이 가능한 inst..

[창업 프로젝트 plip] 2022 대학생 창업 유망팀 300 페스티벌

BOAZ 활동 중 2022 대학생 창업 유망팀 300 페스티벌에 참여하는 plip팀에 합류하여 같이 프로젝트를 진행했습니다. plip은 스마트폰 촬영으로 AI 음식 결제 솔루션 개발을 목적으로 둔 팀이였습니다. 바로가기: http://festival.u300.kr/cms/process/invest/view.asp?c_show_no=71&c_check_no=64&c_relation=809&c_relation2=903&c_team_no=3784&c_festival_type=&s_text=Plip 다음과 같은 모의투자 수치를 달성했습니다, 저희 팀은 AI 비전 키오스크 셀프 결제 매장의 증가를 통해 사업가능성을 확인했습니다. 빵을 잘 나열하면 결제가 잘 이루어지지만 겹쳐있을 때는 빵의 개수를 잘 인식하지 못하..

SNIP: Single-shot Network Pruning based on Connection Sensitivity - ICLR 2019

기존 pruning 기법들이 성능에 있어 불투명한 hyperparmeter를 사용하거나 여러 번에 거쳐서 pruning을 진행하는 것을 지적하며 single-shot pruning을 제안! 1. 기존 pruning 기법의 한계 Dataset $\mathcal{D}=\{(\mathbf{x}_i, \mathbf{y}i)\}{i=1}^{n}$가 주어지고, 목표로 하는 sparsity level이 $k$인 NN Pruning을 constrained optimization 문제로 표현할 수 있다. $$\begin{aligned} \min_{\mathbf{c}, \mathbf{w}}L( \mathbf{w};\mathcal{D})&=\min \frac{1}{n}\sum_{i=1}^{n}\mathcal{l}(\math..

미니 프로젝트: GAN을 통한 Image Super-Resolution

Image Super-Resolution은 저해상도(LR) 영상/이미지를 고해상도(HR) 영상/이미지로 변환하는 알고리즘입니다. 오늘날에 카메라 기술이 많이 발달하여 굉장히 먼 거리에 있는 물체들도 선명하게 촬영할 수 있게 되었습니다. 하지만 노후화나 비용적인 문제, 주변 환경 등 여러 요인으로 인해 저해상도 이미지들을 쉽게 접할 수 있습니다. 그렇기 때문에 미디어, 의료, 보안 등 다양한 산업 분야에서 Image Super-Resolution은 중요한 문제로 대두되고 있습니다. Image Super-Resolution에 접근하는 방식은 크게 2가지로 나뉩니다. 1. Convolution layer를 사용한 Supervised Learning - 저해상도 이미지로 고해상도 이미지를 예측하는 Supervi..

Attention Is All You Need

본 논문에서 제안된 Transformer는 seq2seq의 구조인 인코더 디코더를 따르면서도 attention만으로 구현된 모델입니다. 기존 모델들은 정확도와 병렬화에 대해 문제가 존재했습니다. 1. 정확도 Sequential Model의 LSTM이나 GRU의 경우 번역 업무를 처리하기 위해 문장 전체를 하나의 벡터(Context vector)로 나타낼 필요가 있습니다. 이 경우 길이가 긴 문장의 경우 정해진 크기의 fixed vector로 줄어들기 때문에 정보 손실이 일어나게 되며 구조 상 뒤쪽의 정보가 아닌 앞쪽의 정보 대부분이 소실되어 문맥을 고려하지 못하는 경우가 많습니다. 2. 병렬화 번역 모델에서는 모두 이전의 셀에 대한 정보를 기반으로 현재의 셀을 업데이트하여 시간에 의존한 학습이 진행됩니다..

Sequence to Sequence Learningwith Neural Networks

기존 Machine Translation 분야는 문장이 아닌 단어 단위의 번역에 그쳤기에 문장 구조나 문법을 고려하는 번역이 아닙니다. 고정된 길이의 input만 받는 DNN 역시 문장 길이에 맞게 유연하게 대처하지 못합니다. RNN 모델과 Seq2Seq와 같은 모델들은 단어와 이웃하는 단어 간의 관계를 고려하며 번역이 가능합니다. Sequence: 순서가 있는 data, Text에는 문맥이라는 순서가 있고 시계열 데이터에는 시간이라는 순서가 있습니다. 마찬가지로 영상, 음성 등 전부 순서와 함께 흘러가는 데이터입니다. Sequence model: Sequence data를 다루는 모델, 순서가 있는 Sequence data에서 특징들을 추출하여 여러 가지 문제를 해결하고 예측합니다. 대표적인 모델로는 ..

Efficient Estimation Of Word Representations In Vector Space

본 논문에서 다루는 내용은 다음과 같습니다. 1. 많은 양의 데이터에서 퀄리티 높은 단어 벡터를 학습 2. 이전 모델 NNLM, RNNLM 소개 3. 새로운 모델 구조 CBOW, Skip-gram 제안 4. 모델 훈련 시간의 최소화, 정확도의 최대화 Introdution Word2Vec 이전의 자연어 처리는 One-Hot encoding으로 표현하고 싶은 단어의 인덱스에 1을 부여하고 다른 인덱스에 0을 부여하는 형식으로 진행되었습니다. 하지만 이 방법은 단어 개수가 늘어나면 벡터 차원이 늘어난다는 점, sparse matrix, 단어 간 유사성을 계산할 수 없다는 한계들이 존재했습니다. 여기서 Distributed Representation(분산 표현)이란 방법을 사용할 경우 단어의 의미를 여러 차원에..

2. Docker

- Docker는 복잡한 리눅스 애플리케이션을 컨테이너로 묶어서 실행이 가능합니다. - 서버에서 여러 개의 컨테이너를 실행하고 이미지 저장과 배포가 가능합니다. 애플리케이션을 신속하게 구축, 테스트, 배포할 수 있는 플랫폼으로 소프트웨어를 컨테이너라는 표준화된 유닛으로 패키징 합니다. 컨테이너: 라이브러리, 시스템 도구, 코드 등 소프트웨어 실행에 필요한 모든 것을 포함! (도커는 컨테이너 환경에서 독립적으로 애플리케이션을 실행할 수 있도록 도와주는 도구입니다.) 가상화 기존의 가상화 기술은 하이퍼 바이저를 이용해 여러 개의 운영체제를 하나의 호스트에서 생성해 사용하는 방식입니다. 소프트웨어를 사용하여 프로세서, 메모리, 스토리지 등과 같은 단일 컴퓨터의 하드웨어 요소를 다수의 가상 컴퓨터로 분할할 수 ..

6. GAN and Reinforcement Learning

GAN은 생산적 적대 신경망(Generative Adversarial Network)의 약자이며 비지도학습(Unsupervised Learing) 입니다. Generator가 위조 데이터를 만들면 Discrminator가 진짜인지 가짜인지 구분을 하여 판별기를 속일 수 있도록 Generator를 훈련해야 합니다. Discriminator는 실제 데이터로 훈련을 진행해야 합니다. Loss function $min_Gmax_D \, V(D,G) = E_{x ~ p_{data}}(x) [log \, D(x)] + E_{z~p_z}(z)[log(1 - D(G(z)))]$ 실제 데이터 분포에서 샘플링한 데이터 x와 임의의 데이터 분포에서 샘플링한 데이터 z D(x)는 1이 나오도록 학습하고 D(z)는 0이 나오도..

5. RNN and LSTM

일반적인 feed forward 신경망은 흐름이 단방향이라 시계열 데이터의 성질을 충분히 학습하기 어렵습니다. 다음과 같이 문장 내 단어 순서가 무시되거나 아니면 맥락의 크기에 비례해 가중치 매개변수가 늘어나게 됩니다. 이러한 문제를 해결하기 위해 RNN(순환 신경망)을 통해 과정의 정보를 기억하는 동시에 최신 데이터를 갱신하는 신경망이 등장하게 됩니다. 입력은 $(x_t, h_{t-1})$이고 각 t일 때 RNN의 입력은 $x_t$와 한 시각 전의 RNN 계층으로부터의 출력인 $h_{t-1}$로 이루어져 있습니다. 출력은 $h-t = tanh(h_{t-1}W_h + x_tW_x + b)$으로 현재 출력과 그 이전의 출력을 통해 출력이 결정됩니다. (과거의 정보를 기억한다.) 이러한 RNN은 Long-T..

반응형