전체보기 164

[JavaScript #8] JSON Property Name 다루기

■ JSON Property name 다루기 Json의 property name을 원활하게 다루고, 그 성질에 대해 정리해보자 합니다. Json의 형태는 object형태와 보통 동일하게 이루어져 있습니다. 기본적인 형태는 아래와 같아요. 예를 들어 object를 하나 만들어보겠습니다. var testObj = { "name":"John", "age":13, "city":"Seoul", "grade":"A" }; 보통 이렇게 property name : value 형태로 구성되어 있습니다. 그리고 property name은 보통 String 형태로 되어 있죠. 그렇기에 object에서 값을 가져올 때는 다음과 같이 사용이 가능합니다. 쉬운 예제를 위해 alert을 사용하겠습니다. alert(testObj...

JavaScript 2018.06.16

[Prophet] Prophet Tutorial #2 - Saturating Forecasts

■ [Ai] Prophet Tutorial #2 - Saturating Forecasts오늘은 Prophet의 두 번째 튜토리얼은 진행해보겠습니다. 오늘의 주제는 Saturating Forecasts 입니다.https://facebook.github.io/prophet/docs/saturating_forecasts.html ● Saturating Forecasts Prophet의 Logistic growth를 사용하여 트렌드를 예측을 할 때, 그 예측치의 최대 상한값과 하한값을 제어하고자 할 때 사용합니다. Prophet은 Linear한 모델을 사용하기 때문에 이를 제어하지 않는다면 해당 카테고리의 최대 사이즈를 넘을 수 있기 때문입니다. 전체 시장 크기, 전체 인구 수 등 이미 정해진 최대치를 넘어설 ..

AI/Prophet 2018.06.15

[Prophet] Prophet Tutorial #1 - Installation & Quick Start

■ [Ai] Prophet Tutorial #1 - Installation & Quick Start 오늘은 지난포스팅에 이어 Prophet을 좀 더 자세히 살펴보도록 하겠습니다. https://facebook.github.io/prophet/docs/installation.html 여기 있는 문서를 참고로 한 번 tutorial을 진행해보려고 합니다. Jupyter notebook을 사용하여 Python언어를 사용할 예정입니다.Jupyter notebook은 아래 링크를 참고하셔서 설치하시면 됩니다.http://jupyter.org/install Jupyter notebook, Python이 설치가 완료되었다면 이제 Prophet을 정말로 시작해보도록 하겠습니다. ● Install Prophet을 설치하..

AI/Prophet 2018.06.10

[Prophet] Facebook의 Prophet Tool

■ [AI] Facebook의 Prophet Tool Facebook에서 제공하는 오픈소스 중 하나인 Prophet Tool에 대해서 알아보겠습니다. 6월 1일에 0.3버전이 릴리즈되면서 알게되었는데요. Prophet은 시계열 데이터에 대한 예측/분석을 쉽게 해주는 도구라고 합니다. Prophet은 영어로 '예언자'라는 뜻입니다. 그 뜻에 맞게 시계열 데이터를 통해 미래의 데이터를 예측/분석해주는 역할을 합니다. Prophet은 주기적인 특성을 갖는 시계열 데이터에서 가장 잘 동작을 한다고 합니다. non-daily data도 다룰 수 있으며, outlier에 대해서도 잘 다룰 수 있다고 하네요 ● Prophet의 Advantages Facebook의 github 문서에 따르면 4가지 장점이 있다고 표현..

AI/Prophet 2018.06.09

[ML 개념] 활성화 함수(Activation Function)란?

■ [용어정리] 활성화 함수(Activation Function)란? 인공지능분야에서 중요한 개념인 활성화 함수란 무엇인지에 대해 정리하고자 합니다. 활성화 함수는 인공지능의 많은 알고리즘에서 다양한 형태로 사용되고 있는데요. 어떠한 활성화 함수를 사용하느냐에 따르 그 출력 값이 달라지기 때문에, 적절한 활성화 함수를 사용하는 것이 매우 중요합니다. 쉽게 말해 활성화 함수란 어떠한 신호를 입력받아 이를 적절한 처리를 하여 출력해주는 함수입니다. 이를 통해 출력된 신호가 다음 단계에서 활성화 되는지를 결정합니다. 그림을 보면 이해가 좀 더 쉬우실 것 같습니다. (출처:http://cs231n.github.io/neural-networks-1/) 위에서 설명한 활성화 함수의 개념을 표현한 식입니다. inpu..

AI/ML 기본 개념 2018.06.06

[JavaScript #7] 클래스 (Class)

■ 클래스 (Class) 오늘은 클래스라는 개념을 정리해보겠습니다. ES6에서는 클래스 선언이 추가가 되었습니다. 클래스 타입으로 클래스를 정의하고 new키워드를 통해 해당 클래스의 인스턴스를 만들 수 있습니다. 그리고 이를 사용할 수 있습니다. 먼저 어떻게 클래스 타입을 사용하는지 예제를 보겠습니다. Class Info { constructor(name, age) { this.name = name this.age = age } print() { console.log('이름 : ${this.name} , 나이 : ${this.age}') }} 위와 같이 Info라는 클래스를 정의했습니다. Info클래스는 이름과 나이 정보를 가지고 있고, 이를 출력하는 메소드가 있습니다. 이를 사용하기 위해서는 위에 말한..

JavaScript 2018.06.04

[스프링 #6] Custom Annotation

■ 스프링 #6. Custom Annotation ● Annotation Custom Annotation을 생성하는 방법에 대해서 정리해보겠습니다. 먼저 Annotation이란 무엇인지 간단히 정의하면 사전적의미로는 '주석'이라는 뜻입니다. 즉, 코드에 주석처럼 달아주어 특정한 의미를 부여해준다고 보시면 됩니다. 보통 @Controller와 같이 미리 정의된 Annotation을 많이 사용하는데요. 사용자가 필요에 의해 직접 Annotation을 추가할 수도 있습니다. ● Custom Annotation 간단하게 보면 아래와 같은 형태를 가집니다. @Target(ElementType.METHOD) @Retention(RetentionPolicy.Runtime) public @interface MyAnno..

Spring 2018.05.30

[JavaScript #6] 프라미스 (Promise)

■ 프라미스 (Promise)오늘 정리할 개념은 프라미스입니다. 프라미스는 비동기 처리를 위한 방법 중 하나입니다. 프라미스가 성공한 경우에는 정상적으로 명령이 실행되며, 실패할 경우는 에러가 발생해요 간단한 예시와 함께 정리해보겠습니다. const get = () => new Promise((resolve, reject) => { var req = new XMLHttpRequest() req.open('GET', url) req.onload = () => (req.status == 200) ? resolve(req.response) : reject(Error(req.statusText)) req.onerror = (error) => reject(error) req.send()}) 위와 같이 특정 url..

JavaScript 2018.05.27

[JavaScript #5] ES6의 객체와 배열

■ ES6의 객체와 배열 ES6의 객체와 배열을 다루기 위한 다양한 방법이 있습니다. 그 중에서 구조 분해, 객체 리터럴 개선, 스프레드 연산자 사용법을 정리하겠습니다. ● 구조 분해 (Destructuring) 구조 분해를 통해 객체 안의 필드 값을 사용할 수 있고, 원하는 변수에 대입할 수 있어요 먼저 객체의 구조 분해를 살펴보겠습니다. 예시로 객체를 하나 만들어 볼게요 var car = { color: "black", engine: "turbo", type: "SUV"} 위와 같이 3개의 필드를 가지는 car 객체가 있다고 가정하겠습니다. 여기서 color 필드의 값을 가져와 변수로 사용하고자 합니다. 방법은 아래와 같이 간단하며, 변수의 값을 변경해도 원래 필드의 값은 변경되지 않습니다. car ..

JavaScript 2018.05.20

[JavaScript #4] 화살표 함수 (arrow function)

■ 화살표 함수 (arrow function) ES6에서 유용하게 사용되는 화살표 함수에 대해서 보겠습니다. 화살표 함수를 사용하면 함수 키워드 없이도 함수를 만들고, return 없이도 계산 결과가 자동으로 반환이 됩니다. 위 모습이 화살표 함수의 기본 모습이라고 할 수 있습니다. 다만, 파라미터가 단 하나인 경우는 괄호를 생략해도 됩니다. ● 비교 기존 사용하는 함수 형태와 화살표 함수의 형태를 비교해보겠습니다. var printText = function(txt) { return '입력 : ${txt}'}var printText = txt => '입력 : ${txt}' 한 줄로 간략하게 줄어든 것이 보이나요? 파라미터가 2개의 경우도 보겠습니다. var printText = function(txt1..

JavaScript 2018.05.15