<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>CepstraResearch</title>
	<atom:link href="https://cepstraresearch.com/feed/" rel="self" type="application/rss+xml" />
	<link>https://cepstraresearch.com</link>
	<description></description>
	<lastBuildDate>Sun, 31 May 2020 11:21:41 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=5.4.2</generator>

<image>
	<url>https://cepstraresearch.com/wp-content/uploads/2020/05/favicon.ico</url>
	<title>CepstraResearch</title>
	<link>https://cepstraresearch.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>How logging affect code performance?</title>
		<link>https://cepstraresearch.com/artist-based-personalization-2/</link>
					<comments>https://cepstraresearch.com/artist-based-personalization-2/#respond</comments>
		
		<dc:creator><![CDATA[Ceptsra Research LLP]]></dc:creator>
		<pubDate>Wed, 27 May 2020 18:48:18 +0000</pubDate>
				<category><![CDATA[News & Analytics]]></category>
		<guid isPermaLink="false">http://cepstraresearch.com/?p=6057</guid>

					<description><![CDATA[<p>By Application Development team, Cepstra Research LLPAdding logs to code or logging requests-responses in any application has become an essential part of programming these days. Nearly every software application contains TBs of log files. Often programmers take logging for granted [&#8230;]</p>
<p>The post <a rel="nofollow" href="https://cepstraresearch.com/artist-based-personalization-2/">How logging affect code performance?</a> appeared first on <a rel="nofollow" href="https://cepstraresearch.com">CepstraResearch</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h4>By Application Development team, Cepstra Research LLP</h4>



<p>Adding logs to code or logging requests-responses in any application has become an essential part of programming these days. Nearly every software application contains TBs of log files. Often programmers take logging for granted because of easy logging frameworks like slf4j, log4j. We hardly worry about the role of logs in our application performance.</p>



<p>Logging is indeed essential, but we need to keep in mind the extent of its usage. So let&#8217;s discuss how much logging is healthy for a code. Here We have created a small code exercise to identify differences in the method execution time using methods containing log and dull method execution.</p>



<p>We have used Google <a rel="noreferrer noopener" href="https://github.com/google/caliper" target="_blank">Caliper</a> for micro benchmarking my methods and <a rel="noreferrer noopener" href="http://logging.apache.org/log4j/2.x/" target="_blank">Log4J</a> for adding logs to the code.</p>



<div style="height:41px" aria-hidden="true" class="wp-block-spacer"></div>



<pre class="wp-block-preformatted">import com.google.caliper.Runner;
import com.google.caliper.SimpleBenchmark;
import org.apache.log4j.Logger;

public class LoggingBenchMark extends SimpleBenchmark {
    final static Logger logger = Logger.getLogger(LoggingBenchMark.class);

    public static void main(String[] args) throws Exception {
        new Runner().run(
                LoggingBenchMark.class.getName()
        );
    }

    private static final int SET_SIZE = 100000;

    public void timeWithoutLog(int reps) throws InterruptedException {
        for (int i = 0; i &lt; reps; i++) {
            for (int j = 0; j &lt; SET_SIZE; j++) {
                try {
                    performSomething(j);
                } catch (Exception e) {
                }
            }
        }
    }


    public void timeWithPlainLog(int reps) throws InterruptedException {
        for (int i = 0; i &lt; reps; i++) {
            for (int j = 0; j &lt; SET_SIZE; j++) {
                try {
                    logger.info("testing logs adding here");
                    performSomething(j);
                } catch (Exception e) {
                }
            }
        }
    }

    public void timeWithLogExecively(int reps) {
        for (int i = 0; i &lt; reps; i++) {
            for (int j = 0; j &lt; 10000; j++) {
                try {
                    logger.info("testing logs adding here");
                    performSomething(j);
                } catch (Exception e) {
                    logger.error("exception in method : {}",e);
                }
                logger.debug("debug exception in method");

            }
            logger.info("some more logs");
        }
    }


    public void performSomething(int number) {
        if (number / 100 == 0) {
            throw new RuntimeException();
        }

    }
}</pre>



<div style="height:56px" aria-hidden="true" class="wp-block-spacer"></div>



<p>Just copy and run this code on your local,&nbsp;you will&nbsp;see the difference in the method execution time with log and without log is more than &nbsp;2500%. With method performance, excessive logging also affects CPU usage for file I/O and the server space too.</p>



<p>The logging application flow is indeed necessary, but the overuse of logs to code flows has its drawbacks. Some ways of keeping logs to a minimum are by having a proper log level configured in the application, avoiding the use of calculations/fetching data in the logging statements.</p>
<p>The post <a rel="nofollow" href="https://cepstraresearch.com/artist-based-personalization-2/">How logging affect code performance?</a> appeared first on <a rel="nofollow" href="https://cepstraresearch.com">CepstraResearch</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://cepstraresearch.com/artist-based-personalization-2/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Frequency Band Segregation</title>
		<link>https://cepstraresearch.com/frequency-band-segregation/</link>
					<comments>https://cepstraresearch.com/frequency-band-segregation/#respond</comments>
		
		<dc:creator><![CDATA[Ceptsra Research LLP]]></dc:creator>
		<pubDate>Wed, 27 May 2020 18:30:42 +0000</pubDate>
				<category><![CDATA[News & Analytics]]></category>
		<guid isPermaLink="false">http://cepstraresearch.com/?p=6051</guid>

					<description><![CDATA[<p>By Data Science Team, Cepstra Research LLPIn music personalization, people tend to prefer a particular set of instruments over others. For instance, listeners may prefer a song with acoustic instruments like guitar and cello over electronically generated bass. For this [&#8230;]</p>
<p>The post <a rel="nofollow" href="https://cepstraresearch.com/frequency-band-segregation/">Frequency Band Segregation</a> appeared first on <a rel="nofollow" href="https://cepstraresearch.com">CepstraResearch</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h4>By Data Science Team, Cepstra Research LLP</h4>



<p><em>I</em>n music personalization, people tend to prefer a particular set of instruments over others. For instance, listeners may prefer a song with acoustic instruments like guitar and cello over electronically generated bass. For this purpose, we decided to dive into a branch of research that can distinguish between the songs containing a different set of instrument mixture and add this as a feature to the music recommendation system.</p>



<p>After a brief research period, we recognized that a certain set of instruments, if played together, produces a frequency that is similar to the same set of instruments played in a different song.</p>



<p>In other words, there seems to be a behavioral pattern that is followed when the same instruments are played together in different songs. This finding leads us to craft a code that can segregate these frequencies and help us improve the music recommendation system.</p>



<p>The song is loaded and chunked into lumps of 10 milliseconds file. The individual files are processed with Fast Fourier Transform (FFT) to convert the chunk from a time domain to a frequency domain. Since there are multiple frequencies present in the frequency band we needed the find the maximum frequency and load it into a list to further process it down.</p>



<p>To do this,&nbsp; We study&nbsp; FFT(Fast Fourier Transform) of the chunk of frequencies.</p>



<p>To calculate the frequency in hertz</p>



<figure class="wp-block-image"><img src="https://s0.wp.com/latex.php?latex=X%28k%29%3D%5Csum_%7Bn%3D0%7D%5E%7BN-1%7D+x%28n%29%5E%7B%2A%7D+e%5E%7B-i%5E%7B%2A%7D+2%5E%7B%2A%7D+%5Cpi%C2%A0+n%5E%7B%2A%7D+k+%2F+N%7D&amp;bg=ffffff&amp;fg=888888&amp;s=0" alt="X(k)=\sum_{n=0}^{N-1} x(n)^{*} e^{-i^{*} 2^{*} \pi  n^{*} k / N}" title="X(k)=\sum_{n=0}^{N-1} x(n)^{*} e^{-i^{*} 2^{*} \pi  n^{*} k / N}"/></figure>



<p>When the frequency at every chunk is obtained, the task remains to segregate them to their respective frequency bands. We have given a summary of the theory on which we have based this research on.</p>



<p>The deepness of music is actually the low range frequency which produces the frequency range from 20 Hz to 200 Hz. That means any song having a base feature like a free kick in a soccer match will have a low-frequency range. The low frequencies have a greater wavelength, as a result, it sounds thick and deep. This frequency range is produced by&nbsp;</p>



<p>Lower mid-range carries the musical bass in your song for example notes from a bass guitar, a low note in saxophone or a thick flute. You can think of it as the flooring of your music as it provides the heaviness to your music. This frequency range, as well as the higher mid-range, is produced by the surround of the diaphragm in a speaker.</p>



<p>The treble part lies between 1000 Hz to 5000 Hz of the song and this where most of the magic happens. From high-pitched voice to the guitar solos this is the most important part of the frequency regarding the melody and therefore it is also known as the full range of presence. This frequency is also the result of the surrounding part in a speaker.</p>



<p>This section of the frequency range above 5000Hz is the high pitched section. The bright music everyone talks about, that’s the outcome of the frequency in this range. The whistle and the sharp pieces of the triangle you hear in a piece of music belongs to this range. This frequency range is produced by a driver called tweeter in a speaker.</p>



<p>At Cepstra we study music keeping these values in the base of the algorithm, and generate various human-understandable characteristic of the music.&nbsp;</p>
<p>The post <a rel="nofollow" href="https://cepstraresearch.com/frequency-band-segregation/">Frequency Band Segregation</a> appeared first on <a rel="nofollow" href="https://cepstraresearch.com">CepstraResearch</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://cepstraresearch.com/frequency-band-segregation/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Artist based personalization</title>
		<link>https://cepstraresearch.com/artist-based-personalization/</link>
					<comments>https://cepstraresearch.com/artist-based-personalization/#respond</comments>
		
		<dc:creator><![CDATA[Ceptsra Research LLP]]></dc:creator>
		<pubDate>Wed, 27 May 2020 17:58:24 +0000</pubDate>
				<category><![CDATA[News & Analytics]]></category>
		<guid isPermaLink="false">http://cepstraresearch.com/?p=6040</guid>

					<description><![CDATA[<p>By Data Science Team, Cepstra Research LLPIn music personalization, listeners have a tendency to incline towards a single artist or if no similar songs available from the same artist listeners inclined towards listening songs from other artists have a similar [&#8230;]</p>
<p>The post <a rel="nofollow" href="https://cepstraresearch.com/artist-based-personalization/">Artist based personalization</a> appeared first on <a rel="nofollow" href="https://cepstraresearch.com">CepstraResearch</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h4>By Data Science Team, Cepstra Research LLP</h4>



<p>In music personalization, listeners have a tendency to incline towards a single artist or if no similar songs available from the same artist listeners inclined towards listening songs from other artists have a similar style, language or from the artists who might belong to the same ethnic background. For example at mass, listeners may not like to switch the songs from Justin Bieber to Nusrat Fateh Ali Khan or from Skrillex to Alan Jackson. At Cepstra, we developed a pure Artificial Intelligence-based system that identifies and group artists with a similar style based on the information available on the world wide web.</p>



<p>We have a collection of artists’ information, including their career, area of expertise, music albums and songs, mixes, and other music-related productions gathered from various sources throughout the internet.</p>



<p>We executed an algorithm based on Latent semantic analysis, analyzing the relationship between a set of documents and the terms they contain by producing a set of concepts related to the materials.</p>



<p>LSA can be mathematically shown as, </p>



<p>Where,</p>



<div style="height:29px" aria-hidden="true" class="wp-block-spacer"></div>



<figure class="wp-block-image is-resized"><img src="https://s0.wp.com/latex.php?latex=X_k+%3D+U_k+%5Csum_k+V_k%5ET&amp;bg=ffffff&amp;fg=888888&amp;s=0" alt="X_k = U_k \sum_k V_k^T" width="113" height="19" title="X_k = U_k \sum_k V_k^T"/></figure>



<p><img src="https://s0.wp.com/latex.php?latex=X_k&amp;bg=ffffff&amp;fg=888888&amp;s=0" alt="X_k" srcset="https://s0.wp.com/latex.php?latex=X_k&amp;bg=ffffff&amp;fg=888888&amp;s=0&amp;zoom=2 1.5x" width="19" height="14"> is matrix defining similarity(co-occurrence).</p>



<p><img srcset="https://s0.wp.com/latex.php?latex=U_k&amp;bg=ffffff&amp;fg=888888&amp;s=0&amp;zoom=2 1.5x" width="16" height="14" src="https://s0.wp.com/latex.php?latex=U_k&amp;bg=ffffff&amp;fg=888888&amp;s=0" alt="U_k"> &amp;&nbsp;<img srcset="https://s0.wp.com/latex.php?latex=V_k%5ET&amp;bg=ffffff&amp;fg=888888&amp;s=0&amp;zoom=2 1.5x" width="22" height="19" src="https://s0.wp.com/latex.php?latex=V_k%5ET&amp;bg=ffffff&amp;fg=888888&amp;s=0" alt="V_k^T"> are decomposition matrices for values k.</p>



<div style="height:32px" aria-hidden="true" class="wp-block-spacer"></div>



<p>The collections of crawled content are converted into a matrix with the importance of different concepts throughout the artists’ information catalog, The model decomposed into its constituent parts in order to make precise subsequent matrix calculations simpler using Truncated Singular-Value Decomposition. This matrix is further normalized to its unit norm and based on similarity calculations, we create multiple groups of similar artists and their similarity strength.</p>
<p>The post <a rel="nofollow" href="https://cepstraresearch.com/artist-based-personalization/">Artist based personalization</a> appeared first on <a rel="nofollow" href="https://cepstraresearch.com">CepstraResearch</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://cepstraresearch.com/artist-based-personalization/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
