일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 빅데이타
- WebGL
- openCV
- No SQL
- node.js
- probability
- 김양재 목사님
- Machine Learning
- 딥러닝
- 우리들교회
- Statistics
- 빅 데이타
- nodeJS
- 통계
- data science
- Big Data
- 주일설교
- 빅 데이터
- c++
- 김양재 목사
- 빅데이터
- 김양재
- 몽고디비
- 인공지능
- R
- Deep learning
- Artificial Intelligence
- MongoDB
- 확률
- 데이터 과학
- Today
- Total
목록Scientific Computing (22)
Scientific Computing & Data Science
by Geol Choi | Jun. 25, 2017 R의 EBImage 라이브러리 패키지를 이용하여 랜덤 컬러 이미지 생성하는 법을 소개한다.EBImage 패키지 설치 및 로딩12345## try http:// if https:// URLs are not supportedsource("https://bioconductor.org/biocLite.R")biocLite("EBImage") base::require(EBImage)cs이미지 사이즈 정의12nWidth
이번 글에서는 R에서 병렬처리를 하는 방법에 대하여 소개하도록 한다.R-bloggers의 글, How-to go parallel in R - basics + tips의 내용을 최대한 참고하여 정리해 보았다. [목차]1. lapply에 대하여2. parallel 패키지3. foreach 패키지4. 디버깅5. 캐싱(Caching)6. 계산 부하 밸런싱7. 이미지 프로세싱 예제 1. lapply에 대하여R이 기본적으로 제공하는 함수들 중 가장 많이 사용되는 함수가 lapply일 것이다.이와 유사한 함수로 apply, sapply, tapply 등이 있는데 각자의 쓰임새가 있으며, 자신이 R유저라고 자신한다면 이 함수들이 어느 상황에 적절히 쓰이는지 이해하고 자유자재로 다룰 수 있어야 한다고 생각한다. 다음 코..
[글 순서]1. Numerical Analysis] 물리 현상의 컴퓨터 모델링2. 보존 법칙3. 모델 방정식과 분류 연속체 역학(Continuum Mechanics)의 지배방정식은 일반적으로 보존 법칙이라 일컬어지며, 질량, 에너지, 운동량 보존 법칙으로 유도된다.동일한 법칙에 의해 유도되므로 고체, 유체에 동일하게 적용이 가능하지만 이것들의 거동은 각각의 구성 방정식(Constitutive Equation)으로 설명된다. 일반적인 보존 법칙은 체적 V내의 물리량 u(x, t)의 변화량은 경계 A를 통해 유입/유출되는 u의 유량(Flux)과 체적 V내에서 S(u, x, t)로 표현되는 u의 생성/소멸량의 합과 같다. 즉, (Vector Form) ...(1-1) 또는, (Tensor Form) ...(1..
[글 순서]1. Numerical Analysis] 물리 현상의 컴퓨터 모델링2. 보존 법칙3. 모델 방정식과 분류 이번 글에서는 물리 현상의 컴퓨터 모델링 과정에 대해 알아보도록 하겠다. 이에 대한 절차는 다음과 같이 세 가지로 구분할 수 있다. 1. 문제 정의하기물리 현상에 대한 컴퓨터 모델링의 첫번째 과정은 해결하고자 하는 문제를 정의하는 것이다.즉, 정량화가 가능한(측정이 가능한) 관련 물리량들을 이용하여 문제를 정의하도록 한다.이 과정에서 우리는 정의된 문제가 유일한 해를 갖는 우량조건문제(Well-posed Problem)이기를 기대하겠지만, 종종 물리현상에 대한 이해가 부족하여 유일한 해를 갖는 조건이 항상 보장될 수는 없다.가령, 핵반응과 같은 복잡한 환경에 대하여서는 물리량 측정이 매우 ..
이번 글에서는 R을 이용하여 필기된 숫자가 포함된 이미지를 0과 1의 binary text 형식으로 변환하는 방법에 대하여 알아보겠다. 우선 R의 Image Processing Package인 EBImage를 다운로드한다. source("http://bioconductor.org/biocLite.R") biocLite("EBImage") 다음과 같이 필기된 숫자가 포함된 이미지를 0과 1의 binary text 형식으로 변환하는 R 함수를 작성하였다: #################################################################################################### # @function : ConvertImageToText # @author..
CUDA 프로그래밍을 하다보면 2차원 또는 3차원의 Grid, Block 메모리 구조를 1차원의 배열 인덱스로 변환해야 할 경우가 있다.예를 들어 다음과 같이 block과 thread 메모리 공간을 할당할 수 있다. dim3 blocks( GridDimX, GridDimY ); dim3 threads( BlockDimX, BlockDimY ); blocks는 Grid 내의 block 메모리 공간의 차원을 정의하며, threads는 Block 내의 thread 메모리 공간의 차원을 정의한다.두 개 모두 기본적으로는 3차원의 구조를 가지고 있으며, Z에 대한 차원이 정의되지 않은 경우 Z의 차원은 1로 정의된다.즉, GrdiDimZ = 1, BlockDimZ = 1이다. 다음과 같이 kernel 함수를 정의..
Fourier Series는 신호의 주파수 성분을 분석하는데 있어 매우 중요한 테크닉이다.Fourier Series의 주요 개념은, 주기적인 신호는 무한개의 하모닉 함수 및 복소 지수(Complex Exponential)의 합으로 표현할 수 있다는 것이다.가령, 주기 T0를 갖는 주기 신호 x(t)는 다음과 같이 정의된다: ...(1)여기서,ck : Fourier Series 계수ω0 : (Fundamental Frequency)kω0 : k-번째 하모닉의 주파수k-번째 Fourier Series 계수 ck는 다음과 같이 계산된다:...(2)특히, c0를 DC 성분이라고 하는데, 한 개의 주기에 대한 x(t)의 평균값과 같기 때문이다....(3) Euler 공식을 활용하면 (1)을 다음과 같이 sine과..
이번 글에서는 CUDA를 이용하여 열전달 시뮬레이션을 병렬로 계산하는 예제에 대하여 다루도록 하겠다. J. Sanders와 E. Kandrot의 CUDA by Example의 Chapter 7. Texture Memory 를 참고하여 재구성하였으며, 좀 더 심도있는 설명을 하기 위해 노력하였다. [실행환경] OS: Microsoft Windows 7 Professional 64 CUDA: 7.0 IDE: Microsoft Visual Studio 2012 Include: book.h, cpu_anim.h 1. Texture Memory Overview Texture memory는 constant memory와 마찬가지로 온-칩(on-chip)에 캐시(cache)된다. 따라서 오프-칩(off-chip) D..
[VectorAdd.cu]#include "cuda_runtime.h" #include "device_launch_parameters.h" #include #define arraySize 1000 __global__ void addKernel( int *c, const int *a, const int *b ) { int i = threadIdx.x; if( i < arraySize ) c[i] = a[i] + b[i]; } int main() { int a[arraySize]; int b[arraySize]; int c[arraySize]; int *dev_a = 0; int *dev_b = 0; int *dev_c = 0; // fill the arrays 'a' and 'b' on the CPU fo..
개발환경MS Windows 7 x64MS Visual Studio 2012nVidia CUDA 6.5 1. FILE > New > Project 2. New Project > Templates > NVIDIA > CUDA 6.5 3. CUDA 6.5 Runtime 4. Project Name: DeviceInfo 5. kernel.cu 코드 내용 삭제 6. 다음과 같이 코드 입력#include int main() { cudaDeviceProp prop; int count; cudaGetDeviceCount( &count ); for (int i=0; i< count; i++) { cudaGetDeviceProperties( &prop, i ); printf( " --- General Information..