728x90

분류 전체보기 427

[python/Tensorflow2.0] GANs ; StyleGAN (Style-based Generative Adversarial Networks)

1. StyleGAN(Style-based Generative Adversarial Networks)이란? 먼저 StyleGAN의 논문은 링크를 참고바란다. StyleGAN은Progressive Growing을 이용한 고해상도 이미지를 생성하고, AdaIn을 이용해 각 층에 이미지의 Style을 캡쳐한다는 두 가지 특징이 있다. 먼저 이 두 가지 특징에 대해 설명하고, StyleGAN의 상세 구성에 대해 이야기하도록 하겠다. ① Progressive Growing Progressive Growing이란 Progressive Growing GAN에서 제안된 고행도 이미지를 생성하는 방법이다. 간단하게 이야기 하자면 '저해상도 이미지의 생성으로부터 시작해 점차 고해상도용의 Generator, Discrimi..

IT/AI\ML 2020.04.23

[IT 회사 생활] 테스트 사양서

1. 테스트 ​프로그램 코딩을 완료하고 릴리즈 전 실시하는 테스트 오류 발생은 주로 요건 정의나 설계 단계에서 나타나며, 검출은 수용 테스트나 릴리즈 후에 실제 환경에서 많이 나타난다. 테스트를 소홀히 하면, 릴리즈 후 발생한 오류에 대해 유저에게 사과를 하거나 환불이 필요하다. 그리고 한 기업으로 손실, 신뢰가 없어지는 결과가 생긴다. 미리 계획이나 대책을 생각하고 테스트를 경시하지 말 것. 오류에 대한 비용을 생각해 볼 때, 릴리즈 후의 오류 비용은 단체 테스트의 오류 비용의 수백배의 비용이 든다. ​1. 단체 테스트 (単体テスト) 2. 결합 테스트 (結合テスト) 3. 기능 테스트 (機能テスト) 4. 시스템 테스트 (システムテスト)(부하 테스트, 볼륨 테스트, 보안 테스트 등) 5. 시나리오 테스트 ..

[IT 회사 생활] 테스트의 종류

1. 단체 테스트 (単体テスト) 단체 테스트란 클래스나 함수 단위의 프로그램 템스트이다. 주로 설계한 대로 그들이 움직이는지 테스트하고, 논리구조가 적절한지 확인한다. 1) 기능확인 테스트 (機能確認テスト) 하나의 모듈이 설계서나 사양서대로 동작하는지 확인하는 테스트 2) 제어 흐름 테스트 (制御フローテスト) 프로그램의 논리구성에 따라, 명령이나 분기 등이 실행되는지 확인하는 테스트 3) 데이터 흐름 테스트 (データフローテスト) 데이터나 변수가 '정의', '사용', '소멸'의 순서대로 실행되는가를 확인하는 테스트 2. 결합 테스트 (結合テスト) 결합테스트란 단체 테스트로 검증한 프로그램을 조합하여 실행하는 테스트이다. 1) 상태전이테스트 (機能確認テスト) 상태전이도나 상태전이표를 토대로 동작을 확인하는 ..

[IT 용어] PoC(Proof of Concept)란

​1. PoC(Proof of Concept)란 2. PoC로 검증하는 것 3. Poc의 단계 1) 프로토 타입 및 배포 2) 검증 3) 실현 여부 판단 1. PoC(Proof of Concept)란 ​ 일본어로 '개념 실증'이라고도 불리는 PoC(Proof of Concept). 새로운 프로젝트가 실제로 실현 가능성이 있는가, 효과와 효용, 기술적인 관점에서부터 검증을 하는 과정을 의미한다.​ 이제 PoC(Proof of Concept)란 IT세계에서 한정된 용어가 아닌, 예를 들면 의료 업계에 있어서 신약의 유효성을 검증하거나, 영화 업계에서 스토리가 CG로 재연 가능한 것을 검증하는 것을 일컫는 용어로도 사용된다. PoC(Proof of Concept)가 IT업계에 중시되는 배경에는 기업에서 IT ..

IT/기초 지식 2020.04.22

[네트워크] 네트워크의 기초

현재 인터넷은 당연하게 이용되게 되었다. 향후에는 컴퓨터끼리만이 아니라 모든 것이 네크워크로 연결되는 시대가 온다고 전해진다. 더욱 더 중요성이 높아지는 네트워크에 관한 기초 용어나 구성 등의 지식에 대해 설명할 것이다. 특히, 지금부터 IT 시스템관련 일에 종사하는 신입담당자를 위한 내용이 될 것이다. 1. 네트워크란? 2. 네트워크의 구성 요소 3. 네트워크의 종류는 크게 3 가지 4. 네트워크 통신의 구성 5. OSI 참조 모델을 예로 네트워크 통신의 흐름을 이해 1. 네트워크란? ​네트워크란 일반적으로 '사람이나 물건을 그물로 엮는 것'이라고 할 수 있다.IT 시스템의 세계에서는 '컴퓨터간 상호접속을 하는 것'을 의미한다. 그리고 '정보가 흐르는 경로'라고 바꿔 불러도 좋을지도 모른다. 통신회로나..

IT/기초 지식 2020.04.22

2019년을 되돌아보며 세운 2020년 목표

수정 이력 ​20.04.10 [1차 수정] Java에 대한 공부 내용 부분을 전부 삭제하고 python과 deep learning위주로 재편성 20.05.20 [2차 수정] 통계, 수학적 지식 내용 부분 추가 나의 2020년 목표 2020년이 되고 벌써 3달째, 늦었지만 2019년을 되돌아보며 지난 해의 행동을 되돌아보며 반성하고 앞으로 나아갈 방향에 대해 공유를 하고자 한다. 올 한 해 동안 변경 사항이 생길 때 마다 체크하여 기록을 남겨 둘 생각이다.​ 1. 성장 - 웹 프로그래밍을 할 수 있게 됨 - 일본어로 간단한 회회 및 면접을 볼 수 있는 수준까지 도달 2. 당장 개선이 필요한 점 - 시간 사용의 비효율성 ▶ 뽀모도로 기법을 통해 25분 간 내가 할 수 있는 업무나 일의 양의 파악한 후 조금 ..

[python/Tensorflow2.0]U-Net (U자형 뉴럴 네트워크,U字型のニューラルネットワーク)

1. U-Net이란? 보통의 CNN에 의해 실행되는 이미지의 클래스 분류(이미지 인식)에서는 Convolution층이 물체의 국소적인 특징을 추출하는 역할을 담당하고, Pooling층이 물체의 전반적인 위치 정보를 애매하게 하는 (위치의 어긋남을 허용) 역할을 담당한다. 그러므로 더욱 층이 깊어질수록 추출되는 특징은 보다 더 국소적이 되고, 그 특징의 전반적인 위치 정보가 보다 더 애매하게 되어버린다. 즉, Pooling층으로 인해 위치의 어긋남과 크기의 차이에 영향을 받지 않고 견고한 패턴 인식이 가능하다는 것이다. 한편, 영역 추출에서는 '물체의 국소적인 특징과 전반적인 위치정보'의 둘 다를 원본 이미지에서 특정해야한다. 즉, Pooling층에서 애매하게 된 국소적 특징의 위치정보를 원본 이미지에서 ..

IT/AI\ML 2020.04.22

[python/Tensorflow2.0]GANs(Generative Adversarial Networks) ; basic & DCGAN

1. GANs(Generative Adversarial Networks, 敵対的生成ネットワーク)란? 두 개의 모델이 적대적인 과정을 통해 동시에 훈련된다. 생성자(예술가)는 진짜 처럼 보이는 이미지를 생성하도록 배우는 와중에, 감별자(예술비평가)는 가짜의 이미지로부터 진짜를 구별하게 되는 것을 배우게 되는 것을 의미한다. 훈련과정 동안 생성자는 점차 실제같은 이미지를 더욱 잘 생성하게 되고, 감별자는 진짜와 가짜를 더욱 잘 구별하게 된다. 이 과정은 감별자가 가짜 이미지에서 진짜 이미지를 더 이상 구별하지 못하게 될 때 평행 상태에 도달하게 된다. 조금 더 구체적으로는 얘기하자면 생성자가 균일한 분포나 정규 분포로 랜덤 벡터를 생성해 가짜 이미지를 만들어 내면 감별자는 그 이미지에 대해 진짜라고 판별되면..

IT/AI\ML 2020.04.22

[python/Tensorflow2.0] AutoEncoder(오토인코더) ; Variational autoencoder(VAE)

1. VAE(Variational AutoEncoder)란? VAE(Variational AutoEncoder)는 2014년 D.Kingma와 M.Welling이 Auto-Encoding Variational Bayes논문에서 제안한 오토인코더의 한 종류이다. VAE는 이전에 살펴 본 오터인코더와 다음과 같은 차이점이 있다. - VAE는 확률적 오터인코더(probabilistic autoencoder)다. 즉, 학습이 끝난 후에도 출력이 부분적으로 우연에 의해 결정된다. - VAE는 생성 오토인코더(generatic autoencoder)이며, 학습 데이터셋에서 샘플링된 것과 같은 새로운 샘플을 생성할 수 있다. VAE의 구조는 다음의 그림과 같다. VAE의 코딩층은 다른 오토인코더와는 다른 부분이 있는..

IT/AI\ML 2020.04.22

[python/Tensorflow2.0] AutoEncoder(오토인코더) ; basic

1. AutoEncoder이란? AutoEncoder는 아래의 그림과 같이 단순히 입력을 출력으로 복사하는 신경망이다. 그러나 단순한 복사가 아닌 네트워크에 여러가지 방법으로 제약을 준다. 예를 들어 아래 그림처럼 hidden layer의 뉴런 수를 입력층(input layer)보다 작게 하여 데이터를 압축(=차원 축소)한다거나, 입력 데이터에 노이즈(nosie)를 추가한 후 원본 입력을 복원할 수 있도록 네트워크를 학습시키는 등 다양한 AutoEncoder가 있다. 이를 통해 데이터를 효율적으로 표현(representation)하는 방법을 학습하도록 제어한다. 즉 AutoEncoder이란 차원 축소 등을 위해 표현학습(Representation Learning) 또는 특징학습(Feature Learni..

IT/AI\ML 2020.04.21
728x90