This research considers Torch along with two other packages that student researchers could use to assess the content in audio recordings. Our prior efforts have involved biomedical engineering undergraduate senior projects in our college. This research has application in our bowel-sounds project, which assesses abdominal sounds in newborn babies as signs of digestion. The research can potentially be used to estimate statistics, such as when a baby is crying or snoring.
Our focus has shifted, from making recordings, which are large in file size and may be several hours to two days in length, to considering the contents of the recordings. Our recorder automatically splits a session across multiple files, as a single file would likely exceed the FAT32 file system limit. Initially we used the well-known Audacity sound editor to manually select segments of a given recording for analysis.
The goal of this specific research is to consider and compare three packages, namely Torch, MATLAB, and Octave, then pick one for our next phase in research. This paper presents two examples, comparing execution times for various data set sizes. In many institutions MATLAB as well as Octave which is similar, are standard tools. I considered Torch as an alternative as it uses Lua, which is a powerful, fast, lightweight, and dynamically typed scripting language. Also, in reviewing the listing of Torch packages, there are resources for handling audio files, natural language processing, visualization, and machine learning.
The examples in this paper are straightforward and can be understood by students having an introduction to signal processing. Students in our electrical engineering program as well as biomedical engineering with electrical engineering concentration will have some experience with MATLAB scripting. They should also be able to use prewritten Torch scripts.
My role is as an instructor, planning for and directing our student work. In our next step, we will use one package to develop tools for student researchers, to first assist and eventually automate the analysis of such sound files. Given the investigative nature of our overall research, I avoided compiled languages such as C, C++, or Java, as developer convenience is more important than execution performance. Due to time limitations I was not able to consider Scilab, Scientific Python, SageMath, or a number of others.
In reviewing this research I am convinced that Torch has potential for use as a tool at the undergraduate and graduate levels. I also found that MATLAB is more robust than I suspected. We see that in some cases the performance of Torch is comparable to and in other cases exceeds that of MATLAB and Octave. Both Torch and MATLAB each have resources for handling audio and machine learning.
Are you a researcher? Would you like to cite this paper?
Visit the ASEE document repository at
for more tools and easy citations.