마이크를 정상적으로 연결하였으나, Google Meet(hangout) 등의 사이트에서 마이크 인식이 안되는 경우가 발생할 수 있다.

해결 방법은 아래와같이 해당 사이트 설정에서 마이크 권한을 허용해주면 된다.

 

[해결 방법]

1. 사이트 주소 옆 '자물쇠 모양 버튼' 클릭

2. '사이트 설정' 클릭

2. 마이크가 '요청(기본값)' 또는 '차단'으로 되어있을 텐데, 이를 '허용'으로 변경

3. 새로고침하면(또는 껐다가 다시 들어가면) 잘 인식되는 것을 볼 수 있음

 

[설치]

1. docker 설치

curl -fsSL https://get.docker.com/ | sudo sh

2. nvidia-docker 설치

아래 사이트를 참고하여 설치

https://github.com/NVIDIA/nvidia-docker

 

3. [선택] sudo 명령 간소화

 

sudo usermod -aG docker $USER

위 명령어를 수행 후 재부팅

 

[Docker 기초 커맨드]

docker pull [NAME]: 도커 허브로부터 도커 이미지 다운로드

docker create [IMAGE]: 이미지로부터 컨테이너 생성

docker exec [CONTAINER] [COMMAND] : 특정 컨테이너를 대상으로 커맨드 수행

docker attach [CONTAINER]: 특정 컨테이너 접속

docker run [IMAGE]: docker pull/create/exec를 동시에 수행 (디폴트 커맨드: /bin/bash)

 - ex) docker run --gpus all --name pytorch -it --rm pytorch/pytorch /bin/bash

   => --gpus all: GPU 사용 선언 (nvidia-docker 전용, 선언하지 않으면 cuda 사용 불가)

   => --name pytorch: 컨테이너 이름(사용자 지정, 중복불가)

   => -it: tty로 도커 컨테이너를 사용하도록 함 (자세한건 참조 페이지 1 확인)

   => --rm: 도커 컨테이너가 종료되면 컨테이너를 자동 제거

   => pytorch/pytorch: 도커 이름 (레포지토리+태그)

   => /bin/bash: 수행할 커맨드 (nvidia-smi 등의 명령어를 의미)

 

docker rm (--force) [CONTAINER_ID]: 생성한 컨테이너 제거

  - ID의 풀네임 대신 앞글자 일부만 입력 가능 (단, 중복되는 ID가 없어야함)

  - ex) container_id: 37b81722dadc => docker rm 3 or 37 or 37b ...

docker rmi [IMAGE_ID]: 이미지 제거

docker ps -a : 컨테이너 상태 확인

docker images : 이미지 확인

 

 

참조 페이지

1. https://www.popit.kr/%EA%B0%9C%EB%B0%9C%EC%9E%90%EA%B0%80-%EC%B2%98%EC%9D%8C-docker-%EC%A0%91%ED%95%A0%EB%95%8C-%EC%98%A4%EB%8A%94-%EB%A9%98%EB%B6%95-%EB%AA%87%EA%B0%80%EC%A7%80/

2. https://velog.io/@lazysoul/Docker-Basic-Usage

 

'실습 > Ubuntu' 카테고리의 다른 글

terminal에서 google drive 파일 받기  (0) 2019.12.02
requirements.txt 생성  (0) 2019.02.05
Ubuntu 설치 시 nouveau 오류, 빈화면 문제  (0) 2018.10.31
우분투에서 폴더 삭제하기  (0) 2018.07.10
ppa 추가 및 제거  (0) 2018.05.10

아직 작성중..

 

Benchmark Analysis of Representative Deep Neural Network Architectures

 

※ General Network

1. LeNet (1998)

LeNet-1 (1990): CNN 개념 수립

LeNet-5 (1998):

 - Average Pooling 사용 (Subsampling)

 - 각 feature를 구하기 위해 이전 conv layer의 output feature 중 일부만을 사용. (다양한 조합의 feature들을 사용하여 global feature를 추출하고자함)

 

LeNet-5 Architecture

 

2. AlexNet (2012), [ILSVRC 2012]

 - ILSVRC(ImageNet Large-Scale Visual Recognition Challenge) 2012에서 우승

 - 네트워크를 크게 두 부분으로 나눈 뒤 GPU 병렬 연산 수행 (단순히 큰 네트워크를 처리하기 위함)

 - ReLU와 Droout 사용

AlextNet Architecture

 

3. ZFNet (2013) [ILSVRC 2013]

 - ILSVRC 2013에서 우승

 - 학습된 Conv layer들의 시각화

ZFNet Architecture

 

Network In Network (ICLR14, arXiv:2013.12) https://arxiv.org/abs/1312.4400

 - 1x1 Conv (point-wise conv) 최초 사용

 - Global Average Pooling 최초 사용

 

4. GoogLeNet (Inception V1) (2014) [ILSVRC 2014]

 - ILSVRC 2014에서 우승

 - Inception Module을 구성

 - 다양한 크기의 필터 사용

 - 1x1 Conv (point-wise conv)를 사용하여 feature-wise 특징 추출(1x1)과 spatial-wise 특징 추출(?x?)을 분리하도록 함

https://datascienceschool.net/view-notebook/8d34d65bcced42ef84996b5d56321ba9/

 

5. VGG-16 (arXiv:2014.09) [ILSVRC 2014] https://arxiv.org/abs/1409.1556

 - ILSVRC 2014에서 2위

 - 3x3만을 이용한 간단한 구조 (5x5 => 3x3 두 번, 7x7 => 3x3 세 번)

 

6. ResNet (2015) [ILSVRC 2015]

 - ILSVRC 2015에서 우승 (최초로 사람의 성능을 넘음)

 - Skip Connection 개념 도입

 - 4개의 ResBlock(Bottlenect) 사용

 

7. Inception V2, V3

 - VGG-16의 3x3 conv 철학을 사용 (5x5를 3x3 두 개로 대체)

 - 또한 3x3을 3x1과 1x3 두 개로 대체

 - 참고 자료 : https://datascienceschool.net/view-notebook/8d34d65bcced42ef84996b5d56321ba9/

 

8. Inception V4, Inception-ResNet [ILSVRC 2016]

 - ILSVRC 2016에서 우승

 - 참고 자료 : https://datascienceschool.net/view-notebook/2537461edbac4ab081b8d7f2acb0d30d/

 

9. Xception (2016)

 - Depth-wise Seperable Convolution

 - ResNet의 Skip Connection 적용

 - 참고 자료 : https://datascienceschool.net/view-notebook/0faaf59e0fcd455f92c1b9a1107958c4/

 

10. ResNet v2

 - ResNet에서 activation function 위치를 변형

 

11. ResNeXt

 - ResNet에서 Group Convolution 사용 (Cadinality 개념 사용)

 

12. Wide ResNet

 - ResNet의 Bottleneck에서 채널의 크기를 늘림

 

13. DenseNet

 - dense하게 skip connection 사용

 

14. NasNet (ICLR17, arXiv:2016.11) https://arxiv.org/abs/1611.01578

 - AutoML의 architecture search를 통해 찾아낸 CNN

 

Residual Attention Network (CVPR17, arXiv:2017.04) https://arxiv.org/abs/1704.06904

 - ResNet에 Self-Attention 사용

 - spatial, channel 모두를 고려하여 attention

 

15. SENet (CVPR18, arXiv:2017.09) [ILSVRC 2017] https://arxiv.org/abs/1709.01507

 - ILSVRC 2017에서 우승

 - Residual Attention Network의 구조를 경량화함

 - Squeeze와 Excitation을 통해 channel 별로 attention 수행 (spatial은 고려 안함)

 

16. BAM (BMVC18) / CBAM (ECCV18)

 - SENet에서 spatial 까지 추가적으로 고려

 

17. MnasNet (CVPR19, arXiv:2018.07) https://arxiv.org/abs/1807.11626

 - 기존 NasNet과 대비하여 적은 서치 스페이스 사용

 - acc와 latency를 보상으로 사용

 - 참고 자료 : https://www.youtube.com/watch?v=4uDZxefPd-I

 

17. EfficientNet (ICML19, arXiv:2019.05) https://arxiv.org/abs/1905.11946

 - 모델의 Depth(레이어 수), Width(conv layer의 채널 수), Resolution(입력 영상 크기)를 모델의 크기를 결정하는 하이퍼파라미터로 보고, 제한된 크기에 따라 효과적인 모델을 찾아냄

 - 적은 파라미터로 기존 sota 모델들에 비해 파라미터 대비 높은 성능을 이끌어냄

 - mobile inverted bottleneck (MobileNet V2, Inverted Resdual Block)과 Squeeze and Excitation(SENet)을 혼용하여 기본 블럭으로 사용 (기존 MNas와 같은 서치 스페이스에서 architecture search로 찾아냄)

 - 참고 자료 : https://www.youtube.com/watch?v=Vhz0quyvR7I

 

※ Efficient Network

1. SqueezeNet (2016)

 - Fire Module 사용

 - squeeze layer와 expand layer로 구성

 - squeeze layer : 1x1 conv를 이용하여 차원 축소

 - expand layer : 기존 resnet의 3x3를 일정 비율에 맞춰서 1x1로 대체

 - 기존 Resnet의 각 module을 fire module로 대체

 - AlexNet과 성능, 효율성 비교

 

2. MobileNet

 - 1x1 conv 사용 (차원 축소 + 선형 결합의 연산 이점 목적)

 - depth-wise separable convolution 사용 (Xception 영감)

 - deep compression을 함께 사용하면 모델 크기를 크게 줄일 수 있음을 보임 (inception v3와 비교)

 

3. ShuffleNet (CVPR18)

 - mobilenet 역시 sparse correlation matrix 문제가 발생

 - grouped convolution을 통해서 위 문제를 해결하고자 함

 - 하지만 grouped conv는 채널을 독립으로 나누기 때문에 서로 정보 교환이 없고 성능에 문제가 생김

 - grouped conv 후에 channel을 섞는 아이디어 제안

 - mobilenet보다 좋은 성능을 보임

 

4. MobileNet V2 (CVPR18)

 - Inverted Residual Connection 사용 : resnet의 bottleneck에서 1x1로 피쳐를 줄이는게 아니라, 오히려 늘임

  => 이를 통해 residual connection이 있는 부분의 피처 수를 줄이고, bottleneck 내부에서 피쳐를 늘리고 depth-wise separable conv 수행 (피쳐를 늘리기 때문에 depth-wise separable conv가 피쳐 간의 정보를 보기 어렵다는 단점을 보완)

 - MobileNet V1보다 성능과 효율을 높임. 또한 shuffle 보다 좀 더 좋은 성능을 보임

 - MobileNet V1, ShuffleNet, NASNet 과 비교

 

5. SqueezeNext (2018)

 -

 

6. ShuffleNet V2 (2018)

 - 

 

7. MobileNet V3 (ICCV19, arXiv:2019.05) https://arxiv.org/abs/1905.02244

 - network architecture search(NAS) 활용

 

 

Backbone Network

FPN

 - 

 

DarkNet

 - 

 

 

Modified Convolution

Deonvolution (CVPR10) https://ieeexplore.ieee.org/document/5539957

 - 

 

Dilated Convolution

 - 

 

Deformable Convolution

 - 

 

Deformable Convolution V2

 -

 

 

참고 자료

 - https://www.youtube.com/watch?v=Dvi5_YC8Yts

 - https://www.youtube.com/watch?v=ijvZsH4TlZc

 - S. Bianco, R. Cadene, L. Celona and P. Napoletano, "Benchmark Analysis of Representative Deep Neural Network Architectures," in IEEE Access, vol. 6, pp. 64270-64277, 2018.

 - https://kobiso.github.io/Computer-Vision-Leaderboard/imagenet

+ Recent posts