딥러닝을 위한 Norm, 노름

딥러닝을 위한 Norm, 노름

기계학습 자료에서 간혹 Norm과 관련된 수식이나 표기법을 나오면 당황스러울 때가 있습니다. 선형대수에 익숙하지 않다면 Norm이 이상하게 보일 수 있습니다. 본 문서에서는 인공신공망과 기계학습 일고리즘에서 사용되는 Norm을 이해하는 것을 목표로 최소한도의 Norm 개념을 정리합니다. 일반적으로 딥러닝에서 네트워크의 Overfitting(과적합) 문제를 해결하는 방법으로 다음과 같은 3가지 방법을 제시합니다. 더 많은 데이터를 사용할 것 C ......
Hidden Layer의 오차 계산

Hidden Layer의 오차 계산

Neural Network에서는 Forward Propagation 결과로 계산된 Output Layer 출력과 해당 입력 데이터 레이블의 차이를 계산하여 오차(손실, Error/Loss)를 계산합니다. 그리고 이 오차 최소화를 목표로 Hidden Layer들의 Weight(가중치)와 Bias(편향)를 업데이트합니다. 이렇게 딥러닝에서는 Neural Network에 데이터를 지속해서 흘려보내고, 오차를 계산한 후 Weight와 Bias를 수정하 ......
Neural Network 표기법(Feat: Andrew NG)

Neural Network 표기법(Feat: Andrew NG)

그림 1: Neural Network 예제 Neural Network에 대한 Forward Propagation, Backpropagation, predict, Cost Function 등을 정리할 때 뉴럴 네트워크의 구성 요소와 각 위치가 혼동되어 어려움을 겪는 경우가 많습니다. Coursera에서 deeplearning.ai가 진행하는 Neural Networks and Deep Learning 강의에서 Neural Network 표기 ......
Terraform Jupyter Installer: Machine Learning 환경 프로비저닝

Terraform Jupyter Installer: Machine Learning 환경 프로비저닝

Terraform은 클라우드 인프라의 생성, 변경 및 형상 버전을 관리하는 툴입니다. Terraform을 이용하면 클라우드 자원을 효과적으로 사용하고 관리할 수 있습니다. Terraform을 활용하여 오라클 클라우드의 쉬운 접근법 제시를 목적으로 “Terraform Installer On Oracle Cloud“1 프로젝트를 준비하고 있습니다. Terraform으로 자원 할당, VM 생성, 소프트웨어 설치, 보안룰 적용 등 ......
tanh 미분 정리

tanh 미분 정리

Hyperbolic Tangent(tanh) 함수는 Sigmoid의 대체제로 사용될 수 있는 활성화 함수입니다. Hyperbolic Tangent(tanh)는 Sigmoid와 매우 유사합니다. 실제로, Hyperbolic Tangent 함수는 확장 된 시그모이드 함수입니다. tanh와 Sigmoid의 차이점은 Sigmoid의 출력 범위가 0에서 1 사이인 반면 tanh와 출력 범위는 -1에서 1사이라는 점입니다. Sigmoid와 비교하여 tan ......
Sigmoid 함수 미분 정리

Sigmoid 함수 미분 정리

Sigmoid 함수는 S자와 유사한 완만한 시그모이드 커브 형태를 보이는 함수입니다. Sigmoid는 대표적인 Logistic 함수입니다. Sigmoid 함수는 모든 실수 입력 값을 0보다 크고 1보다 작은 미분 가능한 수로 변환하는 특징을 갖습니다. 모든 입력에 대하여 sigmoid는 S와 같은 형태로 미분 가능한 0~1 사이의 값을 반환하기에 Logistic Classification과 같은 분류 문제의 가설과 비용 함수(Cost Funct ......
Numpy에서 np.sum 함수의 axis 이해

Numpy에서 np.sum 함수의 axis 이해

통계 및 데이터 분석, 딥러닝을 하다 보면 스칼라, 벡터, 행렬, 텐서와 같은 다양한 데이터 유형을 다루게 됩니다. 데이터 분석은 여러 유형의 데이터 합을 구하고 빈도수와 확률을 계산하는 반복적인 작업입니다. 다양한 데이터를 대상으로 선형대수(Linear Algebra) 연산에 numpy의 sum 함수을 사용하면 매우 편리합니다. 그러나 처음 numpy의 sum 함수를 접하면 axis 파라미터 때문에 굉장히 어렵게 느껴집니다. axis를 기준으 ......
2017 Oracle Code in Seoul: IaC 발표 동영상

2017 Oracle Code in Seoul: IaC 발표 동영상

2017 Oracle Code in Seoul에서 발표한 “Vagrant, Terraform, Ansible을 활용한 클라우드 인프라 관리법“의 발표 동영상이 올라 왔습니다. 발표 동영상, 발표 자료 및 데모 문서를 정리합니다. 이 세미나는 2017년 8월 30일 14시 30분에 여의도 콘래드 3층 그랜드 볼륨에서 진행되었습니다. 클라우드 서비스에 Infrastructure as Code(IaC) 개념을 적용하여, 클라우드 ......
파이썬 가상 개발 환경 구성: pyenv, virtualenv, autoenv, pip

파이썬 가상 개발 환경 구성: pyenv, virtualenv, autoenv, pip

파이썬에는 Python 2와 Python 3이 공존하고, 파이썬 별로 다수의 서브 버전이 존재합니다. 또한, 파이썬 커뮤니티는 엄청난 수의 패키지를 만들고 공유하고 있습니다. 이러한 패키지들은 개별적으로 여러 버전을 갖고 있습니다. 컴퓨터 한 대에 여러 파이썬 프로그램을 돌릴 경우, 파이썬 애플리케이션의 파이썬 런타임 버전과 파이썬 라이브러리 충돌 문제가 빈번하게 발생합니다. 이러한 문제는 개발 언어와 런타임 및 라이브러리가 전역적으로 설치되고 ......
Fork된 Git 레파지토리에 원본 레파지토리 업데이트

Fork된 Git 레파지토리에 원본 레파지토리 업데이트

Github을 사용할 때 fork 레파지토리를 만들어 코드 변경 작업을 수행하는 것이 일반적입니다. Fork 된 레파지토리가 너무 오래되거나, 원본 레파지토리 병합 요청(”pull request”)이 반려되는 경우, Fork 된 레파지토리에 원본 레파지토리 변경 사항을 적용해야 하는 경우가 있습니다. Fork 된 레파지토리에 원본 레파지토리 변경 사항을 반영하는 방법을 정리합니다. github에서 Fork를 왜하는가? gi ......
'오라클은 Java EE를 떠넘기려한다' 기사의 팩트 체크

'오라클은 Java EE를 떠넘기려한다' 기사의 팩트 체크

2017년 08월 18일에 “Itworld“에서 “오라클, 더 이상 자바 EE를 이끌 생각 없다”라는 기사가 공개되었습니다.1 기사의 내용을 요약하면 다음과 같습니다. 오라클은 엔터프라이즈 자바 개발에서 리더십을 내려놓기를 원하며 이를 맡아줄 오픈소스 재단을 찾고 있다. 아파치(Apache)와 이클립스(Eclipse)가 자바 EE를 인수할 가능성이 높다. 오라클은 오픈소스 커뮤니티, 라이선스 사용자, ......
2017 Oracle Code in Seoul을 마치며

2017 Oracle Code in Seoul을 마치며

Oracle Code in Seoul의 발표를 무사히 마쳤습니다. 오랜만에 개발자 행사에 참여하는 관계로 긴장도 많이 했고, 컨텐츠 개발에 많은 공을 들였습니다. 정말로 오라클이 주도하는 개발자 행사는 오랜만인것 같습니다. 오랜만에 진행한 개발자 행사다 아쉬운 점도 많지만, 개인적으로는 150% 만족하는 행사였습니다. 이런 행사가 더 자주 만이 진행되었으면 합니다. 제가 오랜만에 발표에 참여한 행사다 보니 애정이 생기네요. 확보한 이미지로 행상 ......
The Power Of The Java:2006 자바원 컨퍼런스 후기

The Power Of The Java:2006 자바원 컨퍼런스 후기

10년전 Javaone 컨퍼런스 후기 형식으로 2006년 7월에 마이크로 소프트웨어에 기고했던 기사입니다. 어렵게 원본을 발굴하여 복원한 문서입니다. ^^ 원본: http://www.zdnet.co.kr/news/news_view.asp?artice_id=00000039153641 “자바원 2006”은 5월 16일부터 19일까지 나흘 동안 센프란시스코에서 개최되었다. 138개 세션으로 구성된 “자바원 200 ......
Oracle Cloud 트라이얼 계정 지원 방식 변경

Oracle Cloud 트라이얼 계정 지원 방식 변경

오라클 클라우드는 트라이얼 계정1을 두 가지 방식으로 지원합니다. 첫 번째 유형은 6OCPU와 500GB 스토리지를 30일간 제약없이 사용하는 Non-Metered 방식입니다. 두 번째 유형은 $300 Credit을 지급하고 30일간 소진하는 Metered 방식입니다. 오라클 클라우드는 첫 번째 유형으로 트라이얼 계정 지원을 시작했고, 점진적으로 두 번째 방식으로 지원 유형을 전환하고 있습니다. 두번째 방식은 트라이얼 계정 등록 과정에 신용카드 ......
Oracle BDCSCE: 클러스터 생성

Oracle BDCSCE: 클러스터 생성

Oracle Big Data Cloud Service Compute-Edition(이하 Oracle BDCSCE)은 PaaS 형태로 제공되는 Oracle Pubic Cloud의 빅데이터 서비스입니다. 본 문서에서는 Oracle BDCSCE 서비스를 이용하여 하둡 클러스터를 생성하는 절차를 소개합니다. 본 문서는 오라클 클라우드 트라이얼 계정을 사용하여 진행하겠습니다. Oracle BDCSCE 서비스를 이용하여 하둡 클러스터를 생성하기 위해서는 ......