반응형

컴퓨터/Etc 15

[NNI] Dependency-aware Mode

*본 포스팅은 NNI 도큐먼트의 'Dependency-aware Mode' 항목을 번역한 것입니다. (nni.readthedocs.io/en/latest/Compression/DependencyAware.html) Dependency-aware Mode for Filter Pruning 지금까지 FPGM, L1, L2 APoZ Filter Pruner와 같이 컨볼루션 레이어를 위한 필터 프루닝 알고리즘을 봤다. 필터 프루닝 알고리즘은 컨볼루션 신경망을 독립적으로 프루닝한다. 그리고, 컨볼루션 레이어를 프루닝하는 동안 알고리즘은 각 규칙(예: L1-norm)에 따라 필터의 중요도를 계산하고 덜 중요한 필터를 프루닝한다. Dependency analysis utils에서 봤던 것처럼 두 개의 컨볼루션 레이어..

컴퓨터/Etc 2020.10.29

Neural Processor (NPU)

뉴럴 프로세서는 머신러닝 알고리즘을 실행하는데 필요한 control이나 arithmetic logic을 갖고 있는 특화된 프로세서다. 종종 tpu, nnp, ipu와 같은 이름으로도 불린다. cnn같은 dnn을 실행하는건 보통 수십회의 iteration을 돌려야한다. 근데 특징은 반복되는 연산을 한다는 거. 가령 cnn의 연산량의 대부분을 차지하는 것은 convolution인데, 이는 규칙성을 갖고 있으니 이 점을 이용해 전용 뉴럴 프로세서를 개발한다. 대개 systolic array를 사용한다. 이는 convolution의 연산결과가 어차피 다음 레이어에서도 쓰일 것이니 이걸 메모리에 저장하지 않고 systolic array라는 임시 저장 장치에 넣어두고 계산할 때마다 바로바로 쓰면 메모리 접근 횟수를..

컴퓨터/Etc 2020.07.30

Pycharm 원격 인터프리터로 빌드하기

1. 파이참 톱니바퀴 모양 configuration을 눌러 Prefences를 클릭 2. Default Project 항목의 Project Interpreter를 클릭 3. Project Interpreter에서 톱니바퀴 모양을 클릭하면 Add가 나오는데 클릭 4. SSH Interpreter에서 New server configuration에 있는 Host에 서버 주소, Port에는 포트 번호 입력, Username에는 서버 아이디 입력 5. 비밀번호 입력한 뒤에 서버 내에서 자기가 쓸 인터프리터 클릭 (Anaconda3를 사용하는 경우에는 보통 Anaconda3 > envs > 가상환경 > bin > python 요렇게 드가면 있다.) 여기까지 하면 원격 인터프리터를 파이참에 등록. 6. Create ..

컴퓨터/Etc 2020.04.27

CVE (Common Vulnerabilities and Exposure)

https://cve.mitre.org/index.html CVE - Common Vulnerabilities and Exposures (CVE) CVE® is a list of entries—each containing an identification number, a description, and at least one public reference—for publicly known cybersecurity vulnerabilities. CVE Entries are used in numerous cybersecurity products and services from around the worl cve.mitre.org 공개적으로 알려진 소프트웨어의 보안 취약점을 가리키는 표기를 이야기한다. 보안 취..

컴퓨터/Etc 2020.04.20

Ahmdal's law

암달의 법칙은 컴퓨터 시스템에서 일부를 개선하였을 때, 전체적으로는 얼마나 개선될 수 있는지를 알려준다. 간단한 공식이지만 이는 두가지 인사이트를 준다. 첫번째로 개선 가능의 여지가 많은 태스크라면 우선적으로 처리하는 것이 좋다는 것, 두번째는 개선 가능한 정도가 예측되는 경우에는 전체 효율을 얼마나 올릴 수 있을지 대강 알 수 있다는 거다. 이는 때때로 암달의 저주로 불리기도 한다. 왜냐하면 현대에 이르러서는 병렬 컴퓨팅을 하는 것이 중요한데 거의 모든 경우 특정 태스크를 병렬화할 수 있는 정도에 따라서 효율을 올릴 수 있는 것이 제한되기 때문이다. 이는 아래 그래프를 통해 확인할 수 있다. 즉, 병렬화할 수 있는 부분이 제한된다면 프로세서의 수를 늘리더라도 성능 개선에는 제한이 있다.

컴퓨터/Etc 2020.04.05
반응형