Accuracy, Apps Advance Speech Recognition 내용 정리

Posted on January 26th, 2015

혼자 보다가 정리해본 내용..오랜만에 feedly 들어갔더니 역시 읽을 꺼리가 쌓여있다.;
SPM에 나온 인터뷰

Li Deng - Microsoft Research에서 deep learning, 음성인식 쪽 연구
Vlad Sejnoha - Nuance communications에서 CTO

인터뷰 내용:
지난 과거의 음성 기술 개발은?
- 지난 5년간의 발전으로 (deep learning) 음성인식은 이제 활용가능한 수준까지 올라왔다.
- 그리고 머신러닝 커뮤니티와 교류로, 점점 나아질 것이라고 확신.
- 이제는 `빅 데이터`에서 `빅 널리지(knowledge)`로 이동

앞으로 할 부분은?
- 아무리 좋아지더라도 신호 수집과 관련된 부분에서는 여전히 breakthrough가 필요한 상황.
- 멀티플 마이크, 스피커 트래킹, 화자인식

Deep learning에 대한 요약

- DSP 커뮤니티 방향은?
- 무게중심이 Machine Learning (ML)로 많이 이동
- 특히 feature에 대한 이야기는 고심해봐야함.

TTS(Text-to-speech, 음성합성)은?
- 뉘앙스에서는 USS에서 하이브리드로 방향 + deep learning
- MSR에서는 deep learning 기반의 Heiga Zen 논문에 관심, 실제로 돌려보고 논문도 냄.

음성인식이 보다 발전하기 위해서?
- `칵테일 톡`에서 인간이 가지는 능력을 어떻게 컴퓨터로 가지고 올 것인지 고민
- 이에 대해 이미 눈여겨볼만한 결과가 paper로 나옴
- NLP (Natural Language Processing)와 deap learning과의 만남도 유심히 봐야함 (LM (Language Modeling) 쪽에서 개선이 가능!)

마지막으로 음성기술에 전문가가 되려면?
- DSP, 모델링, AI (Artificial Intelligence), ML, 프로그래밍, 언어학 (다 잘해야함..-_-)

Dr. Memory

Posted on January 15th, 2015

리눅스의 Valgrind처럼 memory leak에 대해서 확인할 수 있는 프로그램.
valgrind와 달리 applicatoin을 컴파일 할 때 몇가지 옵션을 넣어줘야 하는데 내용은 아래를 참조.
이후 drmemory.exe -- myapp.exe args_to_my_app 으로 실행하면 결과가 나옴

Dr. memory는 인스톨 or 포터블 가능하니 구미에 맞게 사용.

아래 내용으로 VS에서 설정하고 사용 가능.

Unaddressable access, uninitialized read, leak 체크하는데 도움이 됨.
일반적으로는 error 위치가 잡히는 것 같은데 dll로 체크해봐서 안나오는지
디렉토리가 너무 길어지면 error위치가 다 출력되지 않음. 아니면 dll에서도 잘 동작.

Windows Visual Studio

Visual Studio builds 32-bit applications by default, so no action is required on that front.

To include debug information, use the /Zi flag to the Visual Studio compiler. From the IDE, Press Alt-F7 to bring up the configuration properties of your build target. Under "Configuration Properties | C/C++ | General", the "Debug Information Format" entry should either say "Program Database (/Zi)" or "Program Database for Edit and Continue (/ZI)". Additionally, under "Configuration Properties | Linker | Debugging", the "Generate Debug Info" entry should say "Yes (/DEBUG)".
(기본 설정되어 있음)

To disable inlining as recommended above, use the /Ob0 parameter. In the Visual Studio IDE, press Alt-F7 and then under "Configuration Properties | C/C++ | Optimization" ensure "Inline Function Expansion" says "Disabled (/Ob0)".
(수정 필요)

To disable frame pointer optimization as recommended above, use the Oy- parameter. In the Visual Studio IDE, press Alt-F7 and then under "Configuration Properties | C/C++ | Optimization" ensure "Omit Frame Pointers" says "No (/Oy-)".
(기본 설정)

C Library Interactions

All combinations of the debug or release C library, linked statically or dynamically, are supported. When using static versions of msvcrt (the /MTd or /MT flags), if your application does not have symbols then Dr. Memory will not be able to identify memory allocation calls, which may lead to false positives and/or false negatives. Be sure to build with debugging information included using the instructions above.

The debug C library (specified with the /MDd or /MTd flags) contains its own redzone and heap error checks. Dr. Memory completely replaces these checks with its own, more complete checks.

Disable Runtime Checks

The Visual Studio compiler's /RTC1 flag can prevent Dr. Memory from reporting uninitialized reads of local variables, and the /RTC1 checks for uninitialized reads themselves may not catch everything that Dr. Memory finds. However, /RTC1 does perform additional stack checks that Dr. Memory does not, so for best results, your application should be run under Dr. Memory without /RTC1, and run natively with /RTC1.

In the Visual Studio IDE, press Alt-F7 and then under "Configuration Properties | C/C++ | Code Generation" ensure "Basic Runtime Checks" says "Default".

Parameter Summary

Here is a sample command line for Visual Studio:

cl /Zi /MT /EHsc /Oy- /Ob0 /Femyapp.exe *.cpp

Dr. Memory as a Visual Studio Tool

Dr. Memory has support for running within the Visual Studio IDE as an External Tool. The Windows installer automatically creates a new Tools menu entry for launching Dr. Memory for each version of Visual Studio detected at install time. If you are using a local install, or if you installed Visual Studio after installing Dr. Memory, or if you are using Visual Studio Express 2010 and it was in Basic mode at the time you installed Dr. Memory, you will need to follow the following instructions in order to add Dr. Memory as an External Tool.

If using Visual Studio Express 2010, first enable the full menu system by selecting Tools | Settings | Expert Settings (this step is not necessary for Visual Studio Professional or later versions of Visual Studio Express).

Next, for Visual Studio 2005 through 2012, select the Tools | External Tools... menu option to open the External Tools dialog box. Click Add and fill in the fields as follows (adjusting the path to drmemory.exe if you installed it somewhere else):

Title: Dr. Memory
Command: C:\Program Files (x86)\Dr. Memory\bin\drmemory.exe
Arguments: -visual_studio -- $(TargetPath)
Initial Directory: $(TargetDir)

Check the Use Output window checkbox. Click OK.

For Visual Studio 6, select Tools | Customize, then the Tools tab, and then click the New button. Fill in the fields as above, though the Title field is instead the input box in the main list. Also, you'll want quotes around the TargetPath variable (but you do not want quotes for any later Visual Studio version):

Command: C:\Program Files\Dr. Memory\bin\drmemory.exe
Arguments: -visual_studio -- "$(TargetPath)"
Initial Directory: $(TargetDir)

Now you can select Tools | Dr. Memory and Visual Studio will run your application. The output of Dr. Memory (along with your program) will be printed to the Output Window. You can double-click on a source file on any callstack frame in order to automatically open up that file to the line number indicated.

To pass arguments to your application, in the External Tools dialog box entry for Dr. Memory, either directly add them for all runs, or check the "Prompt for arguments" checkbox to be prompted for arguments on each invocation. Add application arguments at the end, after the pre-filled-in string:

-visual_studio -- $(TargetPath) ADD ARGUMENTS HERE


For Dr. Memory as an External Tool set up by the Dr. Memory installer, prompting for arguments is on by default.

망했다 ㅠ.ㅠ

Posted on January 14th, 2015

망했다 ㅠ.ㅠ

Young Han Lee

길게 쓰진 못하지만 sns에 남기긴 좀 그런 글을 정리하는 곳.