======================================================================

                  DNNɂ鉹F̎s

						   v.4.3.1 2014/01/31
======================================================================

 ͂߂ //////////////////////////////////////////////////////////

DNN (Deep Neural Network)ł̃VXeł͍xȉf
gp܂D̂ߏdȂC܂菇GɂȂ܂C
GMMłFxサ܂D

DNŇvZCPÛ݁C܂CPU+GPUɂs܂D̏ꍇ
DNNł͓Lbgł͎sł܂D炩߉L̗v̂
Kvȃ\tgEFAVXeɃZbgAbvĂD
ZbgAbvɂ̓VXeɊւmǗ҂̌KvłD

ȂCGPUɂĂWindowsLinuxΏۂƂĂ܂D


 \ƃZbgAbv ////////////////////////////////////////////////

GMMłłJuliusɑ΂ĉ𒼐ړ͂ĔFs܂C
DNNłł (1)̓́C(2)ʂւ̕ϊC(3)F
ꂼʂ̃vOŎs܂(TCP/IPoRŐڑ
܂)D̂(2)ɂāCPythonƂ̃CuNumpy
pĎs邽߁C̃ZbgAbvKvłD

Python̓o[W2n𐄏܂(o[W3nł̌؂
sĂ܂)DLinuxMacOSX̏ꍇ͊ɃCXg[
邱Ƃ܂CłȂꍇ̓pbP[W}l[W
pāC邢̓\[XR[h_E[hERpC
CXg[ĂDWindows̏ꍇ̓VXeɊ܂܂
܂̂ŁC_E[h̏CXg[ĂD

ȂCNumpyCuł́CWindowsŏɒxȂ
ۂmFĂ܂D̃Cuł͉ł܂D

  [QlURL]
  Python:
    http://www.python.org/
  PythonCu:
    http://www.lfd.uci.edu/~gohlke/pythonlibs/


 N //////////////////////////////////////////////////////////////

DNNł run-dnn.bat (Windows) run-dnn.sh (Linux/MacOSX)s
邱ƂŋN܂DLinuxEMacOSXłGUIŋNĉD

̒ł́C3̃vOɋN悤ɂȂĂ܂D
܂JuliusNāC΂炭Pythonadintoolʂ
EBhEŋN܂D͂ɂĂadintool̃EBhEɁC
FʂJulius̃EBhEɕ\܂D

LinuxłłJuliusobNOEhvZXƂē삵Ă܂D
܂ɏIɎcĂ܂Ƃ܂̂ŁC̏ꍇ͎蓮
IĉD


 GPU̎gp /////////////////////////////////////////////////////////

Pythonɂʂ̌vŹCݒłCPÛ݂ōs܂C
GPUpč邱Ƃł܂D

̏ꍇ́CNVIDIA CUDAɑΉOtBbNJ[hGPGPU
J[hKvłD܂CCUDAɉcudamatCu
ZbgAbv܂(ɂ͊JKvł)D

ȉɃZbgAbv菇̊T܂DƂɓẮC
\tgEFA̐Ccudamat̐悭ǂłD
ȂCGPU̎gpɂĂWindowsLinuxΏۂłD

(i) CUDAEcudamat̃CXg[

Windows̏ꍇ́Ccudamatrh邽߂ɁCMicrosoft Visual
Studio 2008KvłD炩߃ZbgAbvĂD

OSvbgtH[ɑΉCUDApbP[WNVIDIAWebTCg
_E[hăCXg[ĂD̍ہCWindows
łVisual StudioCUDAW[ZbgAbv܂D

cudamat̃pbP[W_E[hāCpbP[W̐
]ăCurhĂDꂽCu
t@C(WindowsȂ libcudamat.dllCLinuxł libcudamat.so)
cudamat.py  rnd_multipliers_32bit.txt t@CƂƂ
fBNe[VLbg bin fBNgɃRs[܂D

  [QlURL]
  NVIDIA CUDA ZONE:
    https://developer.nvidia.com/category/zone/cuda-zone
  cudamat:
    https://code.google.com/p/cudamat/
  cudamat with Windows support:
    https://github.com/surban/cudamat

(ii) GPU̗pݒ

Linuxł́CCUDACu(CUDÃCXg[ɂliblib64)
 libcudamat.so sɎQƂł悤C̃pX
ϐ LD_LIBRARY_PATH ɐݒ肵ĂD

Ⴆ΁C/var/tmp/dictation-kit-linux ɂ̃LbgCCUDA
/usr/local/cuda ɂƂƁCC̃pX LD_LIBRARY_PATH 
܂D

  /usr/local/cuda/lib   (32-bit̏ꍇ)
  /usr/local/cuda/lib64 (64-bit̏ꍇ)
  /var/tmp/dictation-kit-linux/bin

run-dnn.bat  run-dnn.sh ́CCPÛ݂ŌvZ dnnclient.py 
g悤ɂȂĂ܂DGPUgpꍇ  dnnclient-gpu.py 
ւ(run-dnn.bat  run-dnn.sh ̓e)D


 ӎ //////////////////////////////////////////////////////////

̃t@CɋLڂꂽe͓쌟؎̊ɊÂ̂łD
pɂĂ͎菇ݒ肪قȂC邢͓삵Ȃ\
܂DGPUp̓쌟؂ɗp͎̒ʂłD

  [Windows]
  Core i7 (2.8GHz) + 8GB memory + NVIDIA Quadro FX 580
  Windows7 Ultimate SP1 (64-bit)
  Microsoft Visual Studio 2008 Professional Edition
  NVIDIA CUDA 5.5.20 (Desktop 64-bit)
  Python 2.7.6 + Numpy 1.8.0  (64-bit) + cudamat 0.3

  [Linux]
  Xeon (3.5GHz) + 32GB memory + NVIDIA Quadro K4000
  CentOS 6.4 (64-bit)
  NVIDIA CUDA 5.5 (64-bit)
  Python 2.6.6 + Numpy 1.4.1 (64-bit) + cudamat 0.3

̃t@CɋURL(WebTCg)́Cp҂̕֋X̂߂ɋL
̂ŁCJuliusуfBNe[VLbgƂ͊֌W܂D
WebTCgC_E[h\tgEFA
Sɂĉ̕ۏ؂̂ł܂D
ȐӔCłpD
