diff --git a/figures/fig_features_cross_species.pdf b/figures/fig_features_cross_species.pdf index d238127..c4cb861 100644 Binary files a/figures/fig_features_cross_species.pdf and b/figures/fig_features_cross_species.pdf differ diff --git a/main.aux b/main.aux index 0d7d0d7..f1d68b7 100644 --- a/main.aux +++ b/main.aux @@ -256,48 +256,47 @@ \@writefile{lof}{\contentsline {figure}{\numberline {5}{\ignorespaces \textbf {Intensity invariance through logarithmic compression and adaptation is restricted by the noise floor and decreases SNR.} Input $x_{\text {filt}}(t)$ consists of song component $s(t)$ scaled by $\alpha $ with optional noise component $\eta (t)$ and is successively transformed into envelope $x_{\text {env}}(t)$, logarithmically compressed envelope $x_{\text {log}}(t)$, and intensity-adapted envelope $x_{\text {adapt}}(t)$. \textbf {Top}:~Example representations of $x_{\text {env}}(t)$, $x_{\text {log}}(t)$, and $x_{\text {adapt}}(t)$ for different $\alpha $. \textbf {a}:~Noiseless case. \textbf {b}:~Noisy case. \textbf {Bottom}:~Intensity metrics over a range of $\alpha $. \textbf {c}:~Noiseless case: Standard deviations $\sigma _x$ of $x_{\text {env}}(t)$, $x_{\text {log}}(t)$, and $x_{\text {adapt}}(t)$. \textbf {d}:~Noisy case: Ratios of $\sigma _x$ of $x_{\text {env}}(t)$, $x_{\text {log}}(t)$, and $x_{\text {adapt}}(t)$ to the respective reference standard deviation $\sigma _{\eta }$ for input $x_{\text {filt}}(t)=\eta (t)$. Shaded areas indicate $5\,\%$ (dark grey) and $95\,\%$ (light grey) curve span for $x_{\text {adapt}}(t)$. \textbf {e}:~Ratios of $\sigma _x$ to $\sigma _{\eta }$ of $x_{\text {adapt}}(t)$ as in \textbf {d} for different species (averaged over songs and recordings, see appendix Fig\,\ref {fig:app_log-hp_curves}). Dots indicate $95\,\%$ curve span per species. }}{15}{}\protected@file@percent } \newlabel{fig:log-hp}{{5}{15}{}{}{}} \@writefile{toc}{\contentsline {subsection}{\numberline {3.3}Thresholding nonlinearity \& temporal averaging}{16}{}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {6}{\ignorespaces \textbf {Intensity invariance through thresholding and temporal averaging is mediated by the interaction of threshold value and noise floor.} Input $x_{\text {adapt}}(t)$ consists of song component $s(t)$ scaled by $\alpha $ with optional noise component $\eta (t)$ and is transformed into single kernel response $c(t)$, binary response $b(t)$, and feature $f(t)$. Different color shades indicate different threshold values $\Theta $ (multiples of reference standard deviation $\sigma _{\eta }$ of $c(t)$ for input $x_{\text {adapt}}(t)=\eta (t)$, with darker colors for higher $\Theta $). \textbf {Left}:~Noisy case: Example representations of $x_{\text {adapt}}(t)$ as well as $c(t)$, $b(t)$, and $f(t)$ for different $\alpha $. \textbf {a}:~$x_{\text {adapt}}(t)$ with kernel $k(t)$ in black. \textbf {b\,-\,d}: $c(t)$, $b(t)$, and $f(t)$ based on the same $x_{\text {adapt}}(t)$ from \textbf {a} but with different $\Theta $. \textbf {Right}:~Average value $\mu _f$ of $f(t)$ for each $\Theta $ from \textbf {b\,-\,d}, once for the noisy case (solid lines) and once for the noiseless case (dotted lines). Dots indicate $95\,\%$ curve span (noisy case). \textbf {e}:~$\mu _f$ over a range of $\alpha $. \textbf {f}:~$\mu _f$ over the standard deviation of noisy input $x_{\text {adapt}}$ corresponding to the values of $\alpha $ shown in \textbf {e}. }}{17}{}\protected@file@percent } -\newlabel{fig:thresh-lp_single}{{6}{17}{}{}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {7}{\ignorespaces \textbf {Feature representation of different species-specific songs saturates at different points in feature space.} Same input and processing as in Fig.\,\ref {fig:thresh-lp_single} but with three different kernels $k_i$, each with a single kernel-specific threshold value $\Theta _i=0.5\cdot \sigma _{\eta _i}$. \textbf {a}:~Examples of species-specific grasshopper songs. \textbf {Middle}:~Average value $\mu _{f_i}$ of each feature $f_i(t)$ over $\alpha $ per species (averaged over songs and recordings, see appendix Figs.\,\ref {fig:app_thresh-lp_pure} and \ref {fig:app_thresh-lp_noise}). Different color shades indicate different kernels $k_i$. Dots indicate $95\,\%$ curve span per $k_i$. \textbf {b}:~Noiseless case. \textbf {c}:~Noisy case. \textbf {Bottom}:~2D feature spaces spanned by each pair of $f_i(t)$. Each trajectory corresponds to a species-specific combination of $\mu _{f_i}$ that develops with $\alpha $ (colorbars). Horizontal dashes in the colorbar indicate $5\,\%$ (dark grey) and $95\,\%$ (light grey) curve span of the norm across all three $\mu _{f_i}$ per species. \textbf {d}:~Noiseless case. \textbf {e}:~Noisy case. Shaded areas indicate the average minimum $\mu _{f_i}$ across all species-specific trajectories. }}{18}{}\protected@file@percent } -\newlabel{fig:thresh-lp_species}{{7}{18}{}{}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {8}{\ignorespaces \textbf {Step-wise emergence of intensity-invariant song representation along the full model pathway.} Input $x_{\text {raw}}(t)$ consists of song component $s(t)$ scaled by $\alpha $ with added noise component $\eta (t)$ and is processed up to the feature set $f_i(t)$. Different color shades indicate different types of Gabor kernels with specific lobe number $n$ and either $+$ or $-$ sign, sorted (dark to light) first by increasing $n$ and then by sign~($1\,\leq \,n\,\leq \,4$; first $+$, then $-$ for each $n$; five kernel widths $\sigma $ of 1, 2, 4, 8, and $16\,$ms per type; 8 types, 40 kernels in total). \textbf {a}:~Example representations of $x_{\text {filt}}(t)$, $x_{\text {env}}(t)$, $x_{\text {log}}(t)$, $x_{\text {adapt}}(t)$, $c_i(t)$, and $f_i(t)$ for different $\alpha $. \textbf {b}:~Intensity metrics over $\alpha $. For $c_i(t)$ and $f_i(t)$, the median over kernels is shown. Dots indicate $95\,\%$ curve span for $x_{\text {log}}(t)$, $x_{\text {adapt}}(t)$, $c_i(t)$, and $f_i(t)$. \textbf {c}:~Average value $\mu _{f_i}$ of each feature $f_i(t)$ over $\alpha $. \textbf {d}:~Ratios of intensity metrics to the respective reference value for input $x_{\text {raw}}(t)=\eta (t)$. For $c_i(t)$ and $f_i(t)$, the median over kernel-specific ratios is shown. \textbf {e}:~Ratios of standard deviation $\sigma _{c_i}$ of each $c_i(t)$. \textbf {f}:~Ratios of $\mu _{f_i}$. \textbf {g}:~Distributions of kernel-specific $\alpha $ that correspond to $95\,\%$ curve span for $c_i(t)$ and $f_i(t)$. Dots indicate the values from \textbf {b}. }}{19}{}\protected@file@percent } -\newlabel{fig:pipeline_full}{{8}{19}{}{}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {9}{\ignorespaces \textbf {Step-wise emergence of intensity invariant song representation along the model pathway without logarithmic compression.} Input $x_{\text {raw}}(t)$ consists of song component $s(t)$ scaled by $\alpha $ with added noise component $\eta (t)$ and is processed up to the feature set $f_i(t)$, skipping $x_{\text {log}}(t)$. Different color shades indicate different types of Gabor kernels with specific lobe number $n$ and either $+$ or $-$ sign, sorted (dark to light) first by increasing $n$ and then by sign~($1\,\leq \,n\,\leq \,4$; first $+$, then $-$ for each $n$; five kernel widths $\sigma $ of 1, 2, 4, 8, and $16\,$ms per type; 8 types, 40 kernels in total). \textbf {a}:~Example representations of $x_{\text {filt}}(t)$, $x_{\text {env}}(t)$, $x_{\text {adapt}}(t)$, $c_i(t)$, and $f_i(t)$ for different $\alpha $. \textbf {b}:~Intensity metrics over $\alpha $. For $c_i(t)$ and $f_i(t)$, the median over kernels is shown. Dots indicate $95\,\%$ curve span for $f_i(t)$. \textbf {c}:~Average value $\mu _{f_i}$ of each feature $f_i(t)$ over $\alpha $. \textbf {d}:~Ratios of intensity metrics to the respective reference value for input $x_{\text {raw}}(t)=\eta (t)$. For $c_i(t)$ and $f_i(t)$, the median over kernel-specific ratios is shown. \textbf {e}:~Ratios of $\mu _{f_i}$. \textbf {f}:~Distribution of kernel-specific $\alpha $ that correspond to $95\,\%$ curve span for $f_i(t)$. Dots indicate the value from \textbf {b}. }}{20}{}\protected@file@percent } -\newlabel{fig:pipeline_short}{{9}{20}{}{}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {10}{\ignorespaces \textbf {Interspecific and intraspecific feature variability.} Average value $\mu _{f_i}$ of each feature $f_i(t)$ against its counterpart from a 2nd feature set based on a different input $x_{\text {raw}}(t)$. Each dot within a subplot represents a single feature $f_i(t)$. Different color shades indicate different types of Gabor kernels with specific lobe number $n$ and either $+$ or $-$ sign, sorted (dark to light) first by increasing $n$ and then by sign~($1\,\leq \,n\,\leq \,4$; first $+$, then $-$ for each $n$; five kernel widths $\sigma $ of 1, 2, 4, 8, and $16\,$ms per type; 8 types, 40 kernels in total). Data is based on the analysis underlying Fig\,\ref {fig:pipeline_full}. \textbf {Lower triangular}:~Interspecific comparisons between single songs of different species. \textbf {Upper triangular}:~Intraspecific comparisons between different songs of a single species (\textit {O. rufipes}). \textbf {Lower left}:~Distribution of correlation coefficients $\rho $ for each interspecific and intraspecific comparison. Dots indicate single $\rho $ values. }}{21}{}\protected@file@percent } -\newlabel{fig:feat_cross_species}{{10}{21}{}{}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {11}{\ignorespaces \textbf {Step-wise emergence of intensity invariant song representation along the model pathway.} }}{22}{}\protected@file@percent } -\newlabel{fig:pipeline_field}{{11}{22}{}{}{}} -\newlabel{eq:pdf_split}{{17}{23}{}{}{}} -\newlabel{eq:feat_avg}{{18}{23}{}{}{}} -\newlabel{eq:feat_prop}{{19}{23}{}{}{}} +\newlabel{eq:pdf_split}{{17}{16}{}{}{}} +\newlabel{eq:feat_avg}{{18}{16}{}{}{}} +\newlabel{eq:feat_prop}{{19}{16}{}{}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {6}{\ignorespaces \textbf {Intensity invariance through thresholding and temporal averaging is mediated by the interaction of threshold value and noise floor.} Input $x_{\text {adapt}}(t)$ consists of song component $s(t)$ scaled by $\alpha $ with optional noise component $\eta (t)$ and is transformed into single kernel response $c(t)$, binary response $b(t)$, and feature $f(t)$. Different color shades indicate different threshold values $\Theta $ (multiples of reference standard deviation $\sigma _{\eta }$ of $c(t)$ for input $x_{\text {adapt}}(t)=\eta (t)$, with darker colors for higher $\Theta $). \textbf {Left}:~Noisy case: Example representations of $x_{\text {adapt}}(t)$ as well as $c(t)$, $b(t)$, and $f(t)$ for different $\alpha $. \textbf {a}:~$x_{\text {adapt}}(t)$ with kernel $k(t)$ in black. \textbf {b\,-\,d}: $c(t)$, $b(t)$, and $f(t)$ based on the same $x_{\text {adapt}}(t)$ from \textbf {a} but with different $\Theta $. \textbf {Right}:~Average value $\mu _f$ of $f(t)$ for each $\Theta $ from \textbf {b\,-\,d}, once for the noisy case (solid lines) and once for the noiseless case (dotted lines). Dots indicate $95\,\%$ curve span (noisy case). \textbf {e}:~$\mu _f$ over a range of $\alpha $. \textbf {f}:~$\mu _f$ over the standard deviation of noisy input $x_{\text {adapt}}$ corresponding to the values of $\alpha $ shown in \textbf {e}. }}{18}{}\protected@file@percent } +\newlabel{fig:thresh-lp_single}{{6}{18}{}{}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {7}{\ignorespaces \textbf {Feature representation of different species-specific songs saturates at different points in feature space.} Same input and processing as in Fig.\,\ref {fig:thresh-lp_single} but with three different kernels $k_i$, each with a single kernel-specific threshold value $\Theta _i=0.5\cdot \sigma _{\eta _i}$. \textbf {a}:~Examples of species-specific grasshopper songs. \textbf {Middle}:~Average value $\mu _{f_i}$ of each feature $f_i(t)$ over $\alpha $ per species (averaged over songs and recordings, see appendix Figs.\,\ref {fig:app_thresh-lp_pure} and \ref {fig:app_thresh-lp_noise}). Different color shades indicate different kernels $k_i$. Dots indicate $95\,\%$ curve span per $k_i$. \textbf {b}:~Noiseless case. \textbf {c}:~Noisy case. \textbf {Bottom}:~2D feature spaces spanned by each pair of $f_i(t)$. Each trajectory corresponds to a species-specific combination of $\mu _{f_i}$ that develops with $\alpha $ (colorbars). Horizontal dashes in the colorbar indicate $5\,\%$ (dark grey) and $95\,\%$ (light grey) curve span of the norm across all three $\mu _{f_i}$ per species. \textbf {d}:~Noiseless case. \textbf {e}:~Noisy case. Shaded areas indicate the average minimum $\mu _{f_i}$ across all species-specific trajectories. }}{19}{}\protected@file@percent } +\newlabel{fig:thresh-lp_species}{{7}{19}{}{}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {8}{\ignorespaces \textbf {Step-wise emergence of intensity-invariant song representation along the full model pathway.} Input $x_{\text {raw}}(t)$ consists of song component $s(t)$ scaled by $\alpha $ with added noise component $\eta (t)$ and is processed up to the feature set $f_i(t)$. Different color shades indicate different types of Gabor kernels with specific lobe number $n$ and either $+$ or $-$ sign, sorted (dark to light) first by increasing $n$ and then by sign~($1\,\leq \,n\,\leq \,4$; first $+$, then $-$ for each $n$; five kernel widths $\sigma $ of 1, 2, 4, 8, and $16\,$ms per type; 8 types, 40 kernels in total). \textbf {a}:~Example representations of $x_{\text {filt}}(t)$, $x_{\text {env}}(t)$, $x_{\text {log}}(t)$, $x_{\text {adapt}}(t)$, $c_i(t)$, and $f_i(t)$ for different $\alpha $. \textbf {b}:~Intensity metrics over $\alpha $. For $c_i(t)$ and $f_i(t)$, the median over kernels is shown. Dots indicate $95\,\%$ curve span for $x_{\text {log}}(t)$, $x_{\text {adapt}}(t)$, $c_i(t)$, and $f_i(t)$. \textbf {c}:~Average value $\mu _{f_i}$ of each feature $f_i(t)$ over $\alpha $. \textbf {d}:~Ratios of intensity metrics to the respective reference value for input $x_{\text {raw}}(t)=\eta (t)$. For $c_i(t)$ and $f_i(t)$, the median over kernel-specific ratios is shown. \textbf {e}:~Ratios of standard deviation $\sigma _{c_i}$ of each $c_i(t)$. \textbf {f}:~Ratios of $\mu _{f_i}$. \textbf {g}:~Distributions of kernel-specific $\alpha $ that correspond to $95\,\%$ curve span for $c_i(t)$ and $f_i(t)$. Dots indicate the values from \textbf {b}. }}{20}{}\protected@file@percent } +\newlabel{fig:pipeline_full}{{8}{20}{}{}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {9}{\ignorespaces \textbf {Step-wise emergence of intensity invariant song representation along the model pathway without logarithmic compression.} Input $x_{\text {raw}}(t)$ consists of song component $s(t)$ scaled by $\alpha $ with added noise component $\eta (t)$ and is processed up to the feature set $f_i(t)$, skipping $x_{\text {log}}(t)$. Different color shades indicate different types of Gabor kernels with specific lobe number $n$ and either $+$ or $-$ sign, sorted (dark to light) first by increasing $n$ and then by sign~($1\,\leq \,n\,\leq \,4$; first $+$, then $-$ for each $n$; five kernel widths $\sigma $ of 1, 2, 4, 8, and $16\,$ms per type; 8 types, 40 kernels in total). \textbf {a}:~Example representations of $x_{\text {filt}}(t)$, $x_{\text {env}}(t)$, $x_{\text {adapt}}(t)$, $c_i(t)$, and $f_i(t)$ for different $\alpha $. \textbf {b}:~Intensity metrics over $\alpha $. For $c_i(t)$ and $f_i(t)$, the median over kernels is shown. Dots indicate $95\,\%$ curve span for $f_i(t)$. \textbf {c}:~Average value $\mu _{f_i}$ of each feature $f_i(t)$ over $\alpha $. \textbf {d}:~Ratios of intensity metrics to the respective reference value for input $x_{\text {raw}}(t)=\eta (t)$. For $c_i(t)$ and $f_i(t)$, the median over kernel-specific ratios is shown. \textbf {e}:~Ratios of $\mu _{f_i}$. \textbf {f}:~Distribution of kernel-specific $\alpha $ that correspond to $95\,\%$ curve span for $f_i(t)$. Dots indicate the value from \textbf {b}. }}{21}{}\protected@file@percent } +\newlabel{fig:pipeline_short}{{9}{21}{}{}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {10}{\ignorespaces \textbf {Interspecific and intraspecific feature variability.} Average value $\mu _{f_i}$ of each feature $f_i(t)$ against its counterpart from a 2nd feature set based on a different input $x_{\text {raw}}(t)$. Each dot within a subplot represents a single feature $f_i(t)$. Different color shades indicate different types of Gabor kernels with specific lobe number $n$ and either $+$ or $-$ sign, sorted (dark to light) first by increasing $n$ and then by sign~($1\,\leq \,n\,\leq \,4$; first $+$, then $-$ for each $n$; five kernel widths $\sigma $ of 1, 2, 4, 8, and $16\,$ms per type; 8 types, 40 kernels in total). Data is based on the analysis underlying Fig\,\ref {fig:pipeline_full}. \textbf {Lower triangular}:~Interspecific comparisons between single songs of different species. \textbf {Upper triangular}:~Intraspecific comparisons between different songs of a single species (\textit {O. rufipes}). \textbf {Lower left}:~Distribution of correlation coefficients $\rho $ for each interspecific and intraspecific comparison. Dots indicate single $\rho $ values. }}{22}{}\protected@file@percent } +\newlabel{fig:feat_cross_species}{{10}{22}{}{}{}} \abx@aux@cite{0}{stumpner1991auditory} \abx@aux@segm{0}{0}{stumpner1991auditory} -\@writefile{toc}{\contentsline {section}{\numberline {4}Discriminating species-specific song\\patterns in feature space}{24}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {5}Conclusions \& outlook}{24}{}\protected@file@percent } -\abx@aux@page{73}{24} -\@writefile{lof}{\contentsline {figure}{\numberline {12}{\ignorespaces \textbf {} }}{26}{}\protected@file@percent } -\newlabel{fig:app_env-sd}{{12}{26}{}{}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {13}{\ignorespaces \textbf {} }}{26}{}\protected@file@percent } -\newlabel{fig:app_rect-lp}{{13}{26}{}{}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {14}{\ignorespaces \textbf {} }}{27}{}\protected@file@percent } -\newlabel{fig:app_log-hp_curves}{{14}{27}{}{}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {15}{\ignorespaces \textbf {} }}{27}{}\protected@file@percent } -\newlabel{fig:app_log-hp_saturation}{{15}{27}{}{}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {16}{\ignorespaces \textbf {} }}{28}{}\protected@file@percent } -\newlabel{fig:app_thresh-lp_pure}{{16}{28}{}{}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {17}{\ignorespaces \textbf {} }}{28}{}\protected@file@percent } -\newlabel{fig:app_thresh-lp_noise}{{17}{28}{}{}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {18}{\ignorespaces \textbf {} }}{29}{}\protected@file@percent } -\newlabel{fig:app_thresh-lp_kern-sd}{{18}{29}{}{}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {19}{\ignorespaces \textbf {} }}{29}{}\protected@file@percent } -\newlabel{fig:app_full_kern-sd}{{19}{29}{}{}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {20}{\ignorespaces \textbf {} }}{30}{}\protected@file@percent } -\newlabel{fig:app_short_kern-sd}{{20}{30}{}{}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {21}{\ignorespaces \textbf {} }}{30}{}\protected@file@percent } -\newlabel{fig:app_field_kern-sd}{{21}{30}{}{}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {22}{\ignorespaces \textbf {} }}{31}{}\protected@file@percent } -\newlabel{fig:app_cross_species_thresh}{{22}{31}{}{}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {11}{\ignorespaces \textbf {Step-wise emergence of intensity invariant song representation along the model pathway.} }}{23}{}\protected@file@percent } +\newlabel{fig:pipeline_field}{{11}{23}{}{}{}} +\@writefile{toc}{\contentsline {section}{\numberline {4}Conclusions \& outlook}{23}{}\protected@file@percent } +\abx@aux@page{73}{23} +\@writefile{lof}{\contentsline {figure}{\numberline {12}{\ignorespaces \textbf {} }}{25}{}\protected@file@percent } +\newlabel{fig:app_env-sd}{{12}{25}{}{}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {13}{\ignorespaces \textbf {} }}{25}{}\protected@file@percent } +\newlabel{fig:app_rect-lp}{{13}{25}{}{}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {14}{\ignorespaces \textbf {} }}{26}{}\protected@file@percent } +\newlabel{fig:app_log-hp_curves}{{14}{26}{}{}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {15}{\ignorespaces \textbf {} }}{26}{}\protected@file@percent } +\newlabel{fig:app_log-hp_saturation}{{15}{26}{}{}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {16}{\ignorespaces \textbf {} }}{27}{}\protected@file@percent } +\newlabel{fig:app_thresh-lp_pure}{{16}{27}{}{}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {17}{\ignorespaces \textbf {} }}{27}{}\protected@file@percent } +\newlabel{fig:app_thresh-lp_noise}{{17}{27}{}{}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {18}{\ignorespaces \textbf {} }}{28}{}\protected@file@percent } +\newlabel{fig:app_thresh-lp_kern-sd}{{18}{28}{}{}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {19}{\ignorespaces \textbf {} }}{28}{}\protected@file@percent } +\newlabel{fig:app_full_kern-sd}{{19}{28}{}{}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {20}{\ignorespaces \textbf {} }}{29}{}\protected@file@percent } +\newlabel{fig:app_short_kern-sd}{{20}{29}{}{}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {21}{\ignorespaces \textbf {} }}{29}{}\protected@file@percent } +\newlabel{fig:app_field_kern-sd}{{21}{29}{}{}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {22}{\ignorespaces \textbf {} }}{30}{}\protected@file@percent } +\newlabel{fig:app_cross_species_thresh}{{22}{30}{}{}{}} \gdef\svg@ink@ver@settings{{\m@ne }{inkscape}{\m@ne }} \abx@aux@read@bbl@mdfivesum{1380DC8C93D2855FDB132CC5A40AD52F} -\gdef \@abspage@last{31} +\gdef \@abspage@last{30} diff --git a/main.blg b/main.blg index b18edff..b7f3f35 100644 --- a/main.blg +++ b/main.blg @@ -1,71 +1,71 @@ [0] Config.pm:307> INFO - This is Biber 2.19 [0] Config.pm:310> INFO - Logfile is 'main.blg' -[37] biber:340> INFO - === Mo Mai 4, 2026, 19:48:34 +[37] biber:340> INFO - === Di Mai 5, 2026, 14:08:58 [45] Biber.pm:419> INFO - Reading 'main.bcf' -[75] Biber.pm:979> INFO - Found 55 citekeys in bib section 0 -[80] Biber.pm:4419> INFO - Processing section 0 -[85] Biber.pm:4610> INFO - Looking for bibtex file 'cite.bib' for section 0 -[87] bibtex.pm:1713> INFO - LaTeX decoding ... -[117] bibtex.pm:1519> INFO - Found BibTeX data source 'cite.bib' -[296] UCollate.pm:68> INFO - Overriding locale 'en-US' defaults 'variable = shifted' with 'variable = non-ignorable' -[296] UCollate.pm:68> INFO - Overriding locale 'en-US' defaults 'normalization = NFD' with 'normalization = prenormalized' -[296] Biber.pm:4239> INFO - Sorting list 'nyt/global//global/global' of type 'entry' with template 'nyt' and locale 'en-US' -[296] Biber.pm:4245> INFO - No sort tailoring available for locale 'en-US' -[320] bbl.pm:660> INFO - Writing 'main.bbl' with encoding 'UTF-8' -[331] bbl.pm:763> INFO - Output to main.bbl -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 10, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 21, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 38, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 49, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 58, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 73, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 82, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 91, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 100, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 109, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 118, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 127, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 136, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 157, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 178, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 187, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 196, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 207, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 218, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 229, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 240, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 249, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 258, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 269, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 278, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 289, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 300, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 309, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 328, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 337, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 400, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 419, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 428, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 437, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 456, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 491, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 526, warning: 6 characters of junk seen at toplevel -[331] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 535, warning: 6 characters of junk seen at toplevel -[332] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 556, warning: 6 characters of junk seen at toplevel -[332] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 565, warning: 6 characters of junk seen at toplevel -[332] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 576, warning: 6 characters of junk seen at toplevel -[332] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 587, warning: 6 characters of junk seen at toplevel -[332] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 619, warning: 6 characters of junk seen at toplevel -[332] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 648, warning: 6 characters of junk seen at toplevel -[332] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 658, warning: 6 characters of junk seen at toplevel -[332] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 667, warning: 6 characters of junk seen at toplevel -[332] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 688, warning: 6 characters of junk seen at toplevel -[332] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 709, warning: 6 characters of junk seen at toplevel -[332] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 720, warning: 6 characters of junk seen at toplevel -[332] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 729, warning: 6 characters of junk seen at toplevel -[332] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 749, warning: 6 characters of junk seen at toplevel -[332] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 766, warning: 6 characters of junk seen at toplevel -[332] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 775, warning: 6 characters of junk seen at toplevel -[332] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 800, warning: 6 characters of junk seen at toplevel -[332] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_vMHw/347c261ec4135a5723bef5c751f5078f_55959.utf8, line 817, warning: 6 characters of junk seen at toplevel -[332] Biber.pm:133> INFO - WARNINGS: 55 +[76] Biber.pm:979> INFO - Found 55 citekeys in bib section 0 +[82] Biber.pm:4419> INFO - Processing section 0 +[87] Biber.pm:4610> INFO - Looking for bibtex file 'cite.bib' for section 0 +[88] bibtex.pm:1713> INFO - LaTeX decoding ... +[119] bibtex.pm:1519> INFO - Found BibTeX data source 'cite.bib' +[302] UCollate.pm:68> INFO - Overriding locale 'en-US' defaults 'variable = shifted' with 'variable = non-ignorable' +[302] UCollate.pm:68> INFO - Overriding locale 'en-US' defaults 'normalization = NFD' with 'normalization = prenormalized' +[302] Biber.pm:4239> INFO - Sorting list 'nyt/global//global/global' of type 'entry' with template 'nyt' and locale 'en-US' +[302] Biber.pm:4245> INFO - No sort tailoring available for locale 'en-US' +[327] bbl.pm:660> INFO - Writing 'main.bbl' with encoding 'UTF-8' +[338] bbl.pm:763> INFO - Output to main.bbl +[338] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 10, warning: 6 characters of junk seen at toplevel +[338] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 21, warning: 6 characters of junk seen at toplevel +[338] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 38, warning: 6 characters of junk seen at toplevel +[338] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 49, warning: 6 characters of junk seen at toplevel +[338] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 58, warning: 6 characters of junk seen at toplevel +[338] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 73, warning: 6 characters of junk seen at toplevel +[338] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 82, warning: 6 characters of junk seen at toplevel +[338] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 91, warning: 6 characters of junk seen at toplevel +[338] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 100, warning: 6 characters of junk seen at toplevel +[338] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 109, warning: 6 characters of junk seen at toplevel +[338] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 118, warning: 6 characters of junk seen at toplevel +[338] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 127, warning: 6 characters of junk seen at toplevel +[338] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 136, warning: 6 characters of junk seen at toplevel +[338] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 157, warning: 6 characters of junk seen at toplevel +[338] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 178, warning: 6 characters of junk seen at toplevel +[338] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 187, warning: 6 characters of junk seen at toplevel +[338] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 196, warning: 6 characters of junk seen at toplevel +[338] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 207, warning: 6 characters of junk seen at toplevel +[338] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 218, warning: 6 characters of junk seen at toplevel +[338] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 229, warning: 6 characters of junk seen at toplevel +[338] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 240, warning: 6 characters of junk seen at toplevel +[338] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 249, warning: 6 characters of junk seen at toplevel +[338] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 258, warning: 6 characters of junk seen at toplevel +[338] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 269, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 278, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 289, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 300, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 309, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 328, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 337, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 400, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 419, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 428, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 437, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 456, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 491, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 526, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 535, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 556, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 565, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 576, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 587, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 619, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 648, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 658, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 667, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 688, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 709, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 720, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 729, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 749, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 766, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 775, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 800, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:131> WARN - BibTeX subsystem: /tmp/biber_tmp_MhxB/347c261ec4135a5723bef5c751f5078f_14936.utf8, line 817, warning: 6 characters of junk seen at toplevel +[339] Biber.pm:133> INFO - WARNINGS: 55 diff --git a/main.fdb_latexmk b/main.fdb_latexmk index 9038eba..a95c49c 100644 --- a/main.fdb_latexmk +++ b/main.fdb_latexmk @@ -1,14 +1,14 @@ # Fdb version 4 -["biber main"] 1777916914.1072 "main.bcf" "main.bbl" "main" 1777916953.0495 0 +["biber main"] 1777982938.29623 "main.bcf" "main.bbl" "main" 1777985047.02445 0 "cite.bib" 1770904753.08918 27483 4290db0c91f7b5055e25472ef913f6b4 "" - "main.bcf" 1777916952.98174 112931 2a478116d80ebb1ada7083a24facd6e3 "pdflatex" + "main.bcf" 1777985046.95151 112931 2a478116d80ebb1ada7083a24facd6e3 "pdflatex" (generated) "main.bbl" "main.blg" (rewritten before read) -["pdflatex"] 1777916951.95758 "/home/hartling/phd/paper/paper_2025/main.tex" "main.pdf" "main" 1777916953.04972 0 +["pdflatex"] 1777985045.92518 "/home/hartling/phd/paper/paper_2025/main.tex" "main.pdf" "main" 1777985047.02466 0 "/etc/texmf/web2c/texmf.cnf" 1761560044.43676 475 c0e671620eb5563b2130f56340a5fde8 "" - "/home/hartling/phd/paper/paper_2025/main.tex" 1777916950.72576 68778 147a74bc47f134671ded4038c7c927f6 "" + "/home/hartling/phd/paper/paper_2025/main.tex" 1777984769.73354 69673 ef6f706ba5140e1be5fb0de6a4a701ad "" "/usr/share/texlive/texmf-dist/fonts/map/fontname/texfonts.map" 1577235249 3524 cb3e574dea2d1052e39280babc910dc8 "" "/usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/cmextra/cmex7.tfm" 1246382020 1004 54797486969f23fa377b128694d548df "" "/usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/cmextra/cmex8.tfm" 1246382020 988 bdf658c3bfc2d96d3c8b02cfc1c94c20 "" @@ -155,7 +155,7 @@ "/var/lib/texmf/web2c/pdftex/pdflatex.fmt" 1761648508 8213325 7fd20752ab46ff9aa583e4973d7433df "" "figures/fig_auditory_pathway.pdf" 1771593904.14638 1153923 3df8539421fd21dc866cc8d320bd9b1d "" "figures/fig_feat_stages.pdf" 1777568594.52063 11308299 aa000e352d557e9395028dd7235cf375 "" - "figures/fig_features_cross_species.pdf" 1777569988.90598 58996 ac2c8a9c32fb447ab6461246cfe6a1c3 "" + "figures/fig_features_cross_species.pdf" 1777984976.24602 145978 207f2e0de08b5ff0465d12d6450563c3 "" "figures/fig_invariance_cross_species_thresh_appendix.pdf" 1777568946.883 302422 5f33b50142db8b69ae9735c4aa8be688 "" "figures/fig_invariance_field.pdf" 1776952657.04263 9131898 e9d9acff1d03fdf60ddc9e32b87ae6c2 "" "figures/fig_invariance_full_Omocestus_rufipes.pdf" 1777914919.48322 4817854 489437547b91e2c147d390725d05c6bd "" @@ -175,10 +175,10 @@ "figures/fig_noise_env_sd_conversion_appendix.pdf" 1776328774.43347 45466 c2be20312c1572203bdbeb9c8e32525e "" "figures/fig_pre_stages.pdf" 1777568592.25966 441645 7231cde61e83c7ce28a9e6cfaceac8d3 "" "figures/fig_saturation_log-hp_appendix.pdf" 1777378621.26288 28579 137855d03bab8dc5f6d31b70d404e082 "" - "main.aux" 1777916952.97474 24854 b90e0090dcf1a7382cc45749d2a95136 "pdflatex" - "main.bbl" 1777916914.74899 91039 1380dc8c93d2855fdb132cc5a40ad52f "biber main" - "main.run.xml" 1777916952.98174 2335 a049bc26a7f032e842ce55de5bc38328 "pdflatex" - "main.tex" 1777916950.72576 68778 147a74bc47f134671ded4038c7c927f6 "" + "main.aux" 1777985046.94451 24702 95b5d062e9eb7f91c411bd5a4b793a20 "pdflatex" + "main.bbl" 1777982938.9619 91039 1380dc8c93d2855fdb132cc5a40ad52f "biber main" + "main.run.xml" 1777985046.95151 2335 a049bc26a7f032e842ce55de5bc38328 "pdflatex" + "main.tex" 1777984769.73354 69673 ef6f706ba5140e1be5fb0de6a4a701ad "" (generated) "main.aux" "main.bcf" diff --git a/main.log b/main.log index a81ff37..f0471d6 100644 --- a/main.log +++ b/main.log @@ -1,4 +1,4 @@ -This is pdfTeX, Version 3.141592653-2.6-1.40.25 (TeX Live 2023/Debian) (preloaded format=pdflatex 2025.10.28) 4 MAY 2026 19:49 +This is pdfTeX, Version 3.141592653-2.6-1.40.25 (TeX Live 2023/Debian) (preloaded format=pdflatex 2025.10.28) 5 MAY 2026 14:44 entering extended mode restricted \write18 enabled. file:line:error style messages enabled. @@ -773,122 +773,121 @@ Package pdftex.def Info: figures/fig_invariance_rect_lp.pdf used on input line File: figures/fig_invariance_log_hp.pdf Graphic file (type pdf) -Package pdftex.def Info: figures/fig_invariance_log_hp.pdf used on input line 766. +Package pdftex.def Info: figures/fig_invariance_log_hp.pdf used on input line 765. (pdftex.def) Requested size: 483.69687pt x 483.85846pt. [14] LaTeX Warning: Text page 15 contains only floats. -[15 <./figures/fig_invariance_log_hp.pdf>] - +[15 <./figures/fig_invariance_log_hp.pdf>] [16] + File: figures/fig_invariance_thresh_lp_single.pdf Graphic file (type pdf) -Package pdftex.def Info: figures/fig_invariance_thresh_lp_single.pdf used on input line 802. +Package pdftex.def Info: figures/fig_invariance_thresh_lp_single.pdf used on input line 887. (pdftex.def) Requested size: 483.69687pt x 483.69566pt. - [16] + [17] -LaTeX Warning: Text page 17 contains only floats. +LaTeX Warning: Text page 18 contains only floats. Overfull \vbox (7.05988pt too high) has occurred while \output is active [] - [17 <./figures/fig_invariance_thresh_lp_single.pdf>] - + [18 <./figures/fig_invariance_thresh_lp_single.pdf>] + File: figures/fig_invariance_thresh_lp_species.pdf Graphic file (type pdf) -Package pdftex.def Info: figures/fig_invariance_thresh_lp_species.pdf used on input line 837. +Package pdftex.def Info: figures/fig_invariance_thresh_lp_species.pdf used on input line 922. (pdftex.def) Requested size: 483.69687pt x 483.69566pt. - + File: figures/fig_invariance_full_Omocestus_rufipes.pdf Graphic file (type pdf) -Package pdftex.def Info: figures/fig_invariance_full_Omocestus_rufipes.pdf used on input line 893. +Package pdftex.def Info: figures/fig_invariance_full_Omocestus_rufipes.pdf used on input line 978. (pdftex.def) Requested size: 483.69687pt x 483.69566pt. - [18 <./figures/fig_invariance_thresh_lp_species.pdf>] [19 <./figures/fig_invariance_full_Omocestus_rufipes.pdf>] - + [19 <./figures/fig_invariance_thresh_lp_species.pdf>] [20 <./figures/fig_invariance_full_Omocestus_rufipes.pdf>] + File: figures/fig_invariance_short_Omocestus_rufipes.pdf Graphic file (type pdf) -Package pdftex.def Info: figures/fig_invariance_short_Omocestus_rufipes.pdf used on input line 931. +Package pdftex.def Info: figures/fig_invariance_short_Omocestus_rufipes.pdf used on input line 1016. (pdftex.def) Requested size: 483.69687pt x 483.69566pt. - [20 <./figures/fig_invariance_short_Omocestus_rufipes.pdf>] - + [21 <./figures/fig_invariance_short_Omocestus_rufipes.pdf>] + File: figures/fig_features_cross_species.pdf Graphic file (type pdf) -Package pdftex.def Info: figures/fig_features_cross_species.pdf used on input line 968. +Package pdftex.def Info: figures/fig_features_cross_species.pdf used on input line 1053. (pdftex.def) Requested size: 483.69687pt x 483.69566pt. - + File: figures/fig_invariance_field.pdf Graphic file (type pdf) -Package pdftex.def Info: figures/fig_invariance_field.pdf used on input line 998. +Package pdftex.def Info: figures/fig_invariance_field.pdf used on input line 1083. (pdftex.def) Requested size: 483.69687pt x 483.69566pt. - [21 + [22 - <./figures/fig_features_cross_species.pdf>] [22 <./figures/fig_invariance_field.pdf>] [23] + <./figures/fig_features_cross_species.pdf>] [23 <./figures/fig_invariance_field.pdf>] -LaTeX Warning: Reference `eq:toy_snr' on page 24 undefined on input line 1125. +LaTeX Warning: Reference `eq:toy_snr' on page 24 undefined on input line 1120. [24] - + File: figures/fig_noise_env_sd_conversion_appendix.pdf Graphic file (type pdf) -Package pdftex.def Info: figures/fig_noise_env_sd_conversion_appendix.pdf used on input line 1157. +Package pdftex.def Info: figures/fig_noise_env_sd_conversion_appendix.pdf used on input line 1152. (pdftex.def) Requested size: 483.69687pt x 241.84782pt. - [25] - + File: figures/fig_invariance_rect-lp_appendix.pdf Graphic file (type pdf) -Package pdftex.def Info: figures/fig_invariance_rect-lp_appendix.pdf used on input line 1166. +Package pdftex.def Info: figures/fig_invariance_rect-lp_appendix.pdf used on input line 1161. (pdftex.def) Requested size: 483.69687pt x 241.84782pt. - + File: figures/fig_invariance_log-hp_appendix.pdf Graphic file (type pdf) -Package pdftex.def Info: figures/fig_invariance_log-hp_appendix.pdf used on input line 1175. +Package pdftex.def Info: figures/fig_invariance_log-hp_appendix.pdf used on input line 1170. (pdftex.def) Requested size: 483.69687pt x 241.84782pt. - [26 <./figures/fig_noise_env_sd_conversion_appendix.pdf> <./figures/fig_invariance_rect-lp_appendix.pdf>] - + [25 <./figures/fig_noise_env_sd_conversion_appendix.pdf> <./figures/fig_invariance_rect-lp_appendix.pdf>] + File: figures/fig_saturation_log-hp_appendix.pdf Graphic file (type pdf) -Package pdftex.def Info: figures/fig_saturation_log-hp_appendix.pdf used on input line 1184. +Package pdftex.def Info: figures/fig_saturation_log-hp_appendix.pdf used on input line 1179. (pdftex.def) Requested size: 483.69687pt x 241.84782pt. - + File: figures/fig_invariance_thresh-lp_pure_appendix.pdf Graphic file (type pdf) -Package pdftex.def Info: figures/fig_invariance_thresh-lp_pure_appendix.pdf used on input line 1193. +Package pdftex.def Info: figures/fig_invariance_thresh-lp_pure_appendix.pdf used on input line 1188. (pdftex.def) Requested size: 483.69687pt x 241.84782pt. - [27 <./figures/fig_invariance_log-hp_appendix.pdf> <./figures/fig_saturation_log-hp_appendix.pdf>] - + [26 <./figures/fig_invariance_log-hp_appendix.pdf> <./figures/fig_saturation_log-hp_appendix.pdf>] + File: figures/fig_invariance_thresh-lp_noise_appendix.pdf Graphic file (type pdf) -Package pdftex.def Info: figures/fig_invariance_thresh-lp_noise_appendix.pdf used on input line 1202. +Package pdftex.def Info: figures/fig_invariance_thresh-lp_noise_appendix.pdf used on input line 1197. (pdftex.def) Requested size: 483.69687pt x 241.84782pt. - + File: figures/fig_kernel_sd_perc_thresh_lp_appendix.pdf Graphic file (type pdf) -Package pdftex.def Info: figures/fig_kernel_sd_perc_thresh_lp_appendix.pdf used on input line 1211. +Package pdftex.def Info: figures/fig_kernel_sd_perc_thresh_lp_appendix.pdf used on input line 1206. (pdftex.def) Requested size: 483.69687pt x 241.84782pt. - [28 <./figures/fig_invariance_thresh-lp_pure_appendix.pdf> <./figures/fig_invariance_thresh-lp_noise_appendix.pdf>] - + [27 <./figures/fig_invariance_thresh-lp_pure_appendix.pdf> <./figures/fig_invariance_thresh-lp_noise_appendix.pdf>] + File: figures/fig_kernel_sd_perc_full_appendix.pdf Graphic file (type pdf) -Package pdftex.def Info: figures/fig_kernel_sd_perc_full_appendix.pdf used on input line 1220. +Package pdftex.def Info: figures/fig_kernel_sd_perc_full_appendix.pdf used on input line 1215. (pdftex.def) Requested size: 483.69687pt x 241.84782pt. - + File: figures/fig_kernel_sd_perc_short_appendix.pdf Graphic file (type pdf) -Package pdftex.def Info: figures/fig_kernel_sd_perc_short_appendix.pdf used on input line 1229. +Package pdftex.def Info: figures/fig_kernel_sd_perc_short_appendix.pdf used on input line 1224. (pdftex.def) Requested size: 483.69687pt x 241.84782pt. - [29 <./figures/fig_kernel_sd_perc_thresh_lp_appendix.pdf> <./figures/fig_kernel_sd_perc_full_appendix.pdf>] - + [28 <./figures/fig_kernel_sd_perc_thresh_lp_appendix.pdf> <./figures/fig_kernel_sd_perc_full_appendix.pdf>] + File: figures/fig_kernel_sd_perc_field_appendix.pdf Graphic file (type pdf) -Package pdftex.def Info: figures/fig_kernel_sd_perc_field_appendix.pdf used on input line 1238. +Package pdftex.def Info: figures/fig_kernel_sd_perc_field_appendix.pdf used on input line 1233. (pdftex.def) Requested size: 483.69687pt x 241.84782pt. - + File: figures/fig_invariance_cross_species_thresh_appendix.pdf Graphic file (type pdf) -Package pdftex.def Info: figures/fig_invariance_cross_species_thresh_appendix.pdf used on input line 1248. +Package pdftex.def Info: figures/fig_invariance_cross_species_thresh_appendix.pdf used on input line 1243. (pdftex.def) Requested size: 483.69687pt x 483.69566pt. - [30 <./figures/fig_kernel_sd_perc_short_appendix.pdf> <./figures/fig_kernel_sd_perc_field_appendix.pdf>] [31 <./figures/fig_invariance_cross_species_thresh_appendix.pdf>] (./main.aux) + [29 <./figures/fig_kernel_sd_perc_short_appendix.pdf> <./figures/fig_kernel_sd_perc_field_appendix.pdf>] [30 <./figures/fig_invariance_cross_species_thresh_appendix.pdf>] (./main.aux) *********** LaTeX2e <2023-11-01> patch level 1 L3 programming layer <2024-01-22> @@ -910,10 +909,10 @@ Here is how much of TeX's memory you used: 1143 hyphenation exceptions out of 8191 94i,18n,93p,1751b,1738s stack positions out of 10000i,1000n,20000p,200000b,200000s -Output written on main.pdf (31 pages, 39084860 bytes). +Output written on main.pdf (30 pages, 39172242 bytes). PDF statistics: - 2555 PDF objects out of 2984 (max. 8388607) - 1132 compressed objects within 12 object streams + 2556 PDF objects out of 2984 (max. 8388607) + 1129 compressed objects within 12 object streams 0 named destinations out of 1000 (max. 500000) 123 words of extra memory for PDF output out of 10000 (max. 10000000) diff --git a/main.pdf b/main.pdf index 84d9f6f..7989fe4 100644 Binary files a/main.pdf and b/main.pdf differ diff --git a/main.synctex.gz b/main.synctex.gz index a3f8c76..7e9196b 100644 Binary files a/main.synctex.gz and b/main.synctex.gz differ diff --git a/main.tex b/main.tex index 1e738c3..0769e6e 100644 --- a/main.tex +++ b/main.tex @@ -103,8 +103,8 @@ \newcommand{\xvar}{\sigma_{x}^{2}} % Variance of synthetic mixture \newcommand{\svar}{\sigma_{\text{s}}^{2}} % Song component variance \newcommand{\nvar}{\sigma_{\eta}^{2}} % Noise component variance -\newcommand{\pc}{p(c_i,\,T)} % Probability density (general interval) -\newcommand{\pclp}{p(c_i,\,\tlp)} % Probability density (lowpass interval) +\newcommand{\pc}{p(c,\,T)} % Probability density (general interval) +\newcommand{\pclp}{p(c,\,\tlp)} % Probability density (lowpass interval) \section{Exploring a grasshopper's sensory world} @@ -758,8 +758,7 @@ saturation regime is, of course, desirable in the context of intensity invariance, but it also means to pass up on the higher SNR values that are achieved by $\env(t)$ for the same $\sca$ (up to several orders of magnitude, Fig.\,\ref{fig:log-hp}d). This trade-off between intensity invariance and SNR ---- and the consequences it has further downstream along the pathway --- are -adressed in the following sections. +is a recurring phenomenon that is further addressed in the following sections. \begin{figure}[!ht] \centering @@ -797,6 +796,92 @@ adressed in the following sections. \subsection{Thresholding nonlinearity \& temporal averaging} +The third nonlinear transformation along the model pathway is the thresholding +nonlinearity $\nl$ that transforms each kernel response $c_i(t)$ into a binary +binary response $b_i(t)$, Eq.\,\ref{eq:binary}. This transformation takes place +after the convolutional filtering of $\adapt(t)$ with kernel $k_i(t)$, +Eq.\,\ref{eq:conv}, and is followed by the temporal averaging of $b_i(t)$ into +the feature set $f_i(t)$ by a lowpass filter, Eq.\,\ref{eq:lowpass}. The +effects of thresholding and temporal averaging are best illustrated based on a +single kernel~(Fig.\,\ref{fig:thresh-lp_single}) instead of the full set. For +this analysis, input $\adapt(t)$ was +rescaled~(Fig.\,\ref{fig:thresh-lp_single}a) and convolved with kernel $k(t)$. +The resulting kernel response $c(t)$ was passed through $H(c\,-\,\Theta)$ with +three different threshold values +$\Theta$~(Fig.\,\ref{fig:thresh-lp_single}b-d). Each resulting binary response +$b(t)$ was transformed into $f(t)$, whose average feature value serves as a +measure of intensity~(Fig.\,\ref{fig:thresh-lp_single}ef). The thresholding +nonlinearity $H(c\,-\,\Theta)$ categorizes the values of $c(t)$ into "relevant" +($c(t)>\Theta$, $b(t)=1$) and "irrelevant" ($c(t)\leq\Theta$, $b(t)=0$) +response values. It thereby splits the probability density $\pc$ of $c(t)$ +within some observed time interval $T$ into two complementary parts around +$\Theta$: +\begin{equation} + \int_{\Theta}^{+\infty} \pc\,dc\,=\,1\,-\,\int_{-\infty}^{\Theta} \pc\,dc\,=\,\frac{T_1}{T}, \qquad \infint \pc\,dc\,=\,1 + \label{eq:pdf_split} +\end{equation} +The right-sided part of the split $\pc$ corresponds to time $T_1$ where +$c(t)>\Theta$, while the left-sided part corresponds to time $T_0=T-T_1$ where +$c(t)\leq\Theta$. The semi-definite integral over the right-sided part of $\pc$ +represents the ratio of time $T_1$ to total time $T$ because the indefinite +integral of a probability density is normalized to 1. The lowpass filtering of +$b(t)$ can be approximated as temporal averaging over a suitable time interval +$\tlp>\frac{1}{\fc}$ in order to express $f(t)$ as a similar temporal ratio +\begin{equation} + f(t)\,\approx\,\frac{1}{\tlp} \int_{t}^{t\,+\,\tlp} b(\tau)\,d\tau\,=\,\frac{T_1}{\tlp}, \qquad b(t)\,\in\,\{0,\,1\} + \label{eq:feat_avg} +\end{equation} +of time $T_1$ during which $b(t)$ is 1 within the averaging interval $\tlp$. +Therefore, the value of $f(t)$ at every time point $t$ approximately signifies +the cumulative probability that $c(t)$ exceeds $\Theta$ during the +corresponding averaging interval $\tlp$: +\begin{equation} + f(t)\,\approx\,\int_{\Theta}^{+\infty} \pclp\,dc\,=\,P(c\,>\,\Theta,\,\tlp) + \label{eq:feat_prop} +\end{equation} +In a sense, $f(t)$ can be interpreted as some sort of duty cycle with respect +to $\Theta$. For example, a feature value of $f(t)=0.4$ means that $c(t)$ +exceeds $\Theta$ for approximately 40\,\% of the time within $\tlp$ around $t$. +In the most extreme cases, $\Theta$ lays either above the maximum of $c(t)$ or +below the minimum of $c(t)$, which results in a minimum or maximum possible +feature value of $f(t)=0$~(Fig.\,\ref{fig:thresh-lp_single}d, left column) or +$f(t)=1$, respectively. + +Importantly, $f(t)$ neither retains information about the timing of individual +threshold crossings nor the precise values of $c(t)$ apart from their relation +to $\Theta$. Accordingly, for a given $\Theta$, different $\sca$ can still +result in similar $T_1$ segments (and hence similar feature values) depending +on the magnitude of the derivative of $c(t)$ in temporal proximity to time +points at which $c(t)$ crosses $\Theta$: The steeper the slope of $c(t)$, the +less $T_1$ changes with variations in $\sca$. The most reliable way of +exploiting this invariant porperty of $f(t)$ is to set $\Theta$ to a value near +0, because these values are least affected by different scales of $c(t)$. For +sufficiently large $\sca$, $f(t)$ then approaches the same constant value in +both the noiseless and the noisy case~(Fig.\,\ref{fig:thresh-lp_single}e, +saturation regime). + +The value of $f(t)$ in the saturation regime is independent of the precise +value of $\Theta$, but the value of $\sca$ at which the saturation regime is +reached decreses with $\Theta$~(Fig.\,\ref{fig:thresh-lp_single}e). Therefore, +a threshold value of $\Theta=0$ would be the optimal choice for achieving +intensity invariance at the lowest possible $\sca$. In stark contrast, the +closer $\Theta$ is to 0, the higher the pure-noise response of $f(t)$ and the +lower the resulting SNR of $f(t)$ between noise regime and saturation +regime~(Fig.\,\ref{fig:thresh-lp_single}b-d, left column, and +Fig.\,\ref{fig:thresh-lp_single}e). It is even possible to achieve an +"unlimited" SNR of $f(t)$ by setting $\Theta$ above the maximum of the +pure-noise $c(t)$, so that any value of $f(t)$ greater than 0 indicates the +presence of the song component $\soc(t)$ in input $\adapt(t)$ at the cost of +requiring a higher $\sca$ to reach the saturation regime. This trade-off +between intensity invariance and SNR has already been observed during the +previous analysis on logarithmic compression and +adaptation~(Fig.\,\ref{fig:log-hp}d). However, the parameters that determine +the SNR of $\adapt(t)$ are much less understood and likely relate to properties +of the signal, whereas the SNR of $f(t)$ depends on the choice of $\Theta$ and +can be more directly manipulated by the system. + +Finally, + \begin{figure}[!ht] \centering \includegraphics[width=\textwidth]{figures/fig_invariance_thresh_lp_single.pdf} @@ -1003,96 +1088,6 @@ adressed in the following sections. \end{figure} \FloatBarrier -The second key mechanism for the emergence of intensity invariance along the -model pathway takes place during the transformation of the kernel responses -$c_i(t)$ over the binary responses $b_i(t)$ into the finalized features -$f_i(t)$. Kernel response $c_i(t)$ quantifies the degree of similarity between -kernel $k_i(t)$ and the preprocessed signal $\adapt(t)$. The thresholding -nonlinearity $\nl$ categorizes the value of $c_i(t)$ at every time point $t$ -into "relevant" ($c_i(t)>\thr$, $b_i(t)=1$) and "irrelevant" ($c_i(t)\leq\thr$, -$b_i(t)=0$) response values - -By passing $c_i(t)$ through the thresholding -nonlinearity $\nl$, its amplitude values are binned -into one of two categories~(Eq.\,\ref{eq:binary}). - -: $c_i(t)>\thr$ - - - - -This mechanism is mediated by the thresholding nonlinearity $\nl$. By -passing $c_i(t)$ through the thresholding nonlinearity~(Eq.\,\ref{eq:binary}), -its probability density $\pc$ within some observed time interval $T$ is split -around threshold value $\thr$ into two complementary parts: -\begin{equation} - \int_{\thr}^{+\infty} \pc\,dc_i\,=\,1\,-\,\int_{-\infty}^{\thr} \pc\,dc_i\,=\,\frac{T_1}{T}, \qquad \infint \pc\,dc_i\,=\,1 - \label{eq:pdf_split} -\end{equation} -The right-sided part of the split $\pc$ corresponds to time $T_1$ where -$c_i(t)>\thr$, while the left-sided part corresponds to time $T_0=T-T_1$ where -$c_i(t)\leq\thr$. The semi-definite integral over the right-sided part of $\pc$ -represents the ratio of time $T_1$ to total time $T$ because the indefinite -integral of a probability density is normalized to 1. Following the -thresholding nonlinearity, the resulting binary responses $b_i(t)$ are -lowpass-filtered~(Eq.\,\ref{eq:lowpass}) to obtain $f_i(t)$, which can be -approximated as temporal averaging over a suitable time interval -$\tlp>\frac{1}{\fc}$ -\begin{equation} - f_i(t)\,\approx\,\frac{1}{\tlp} \int_{t}^{t\,+\,\tlp} b_i(\tau)\,d\tau\,=\,\frac{T_1}{\tlp}, \qquad b_i(t)\,\in\,\{0,\,1\} - \label{eq:feat_avg} -\end{equation} -Feature $f_i(t)$ - -If the lowpass -filter~(Eq.\,\ref{eq:lowpass}) over $b_i(t)$ is approximated as temporal -averaging over a suitable time interval $\tlp>\frac{1}{\fc}$, then $f_i(t)$ can -be linked to a similar temporal ratio -% \begin{equation} -% f_i(t)\,\approx\,\frac{1}{\tlp} \int_{t}^{t\,+\,\tlp} b_i(\tau)\,d\tau\,=\,\frac{T_1}{\tlp}, \qquad b_i(t)\,\in\,\{0,\,1\} -% \label{eq:feat_avg} -% \end{equation} -of time $T_1$ during which $b_i(t)$ is 1 within the total averaging interval -$\tlp$. Therefore, the value of $f_i(t)$ at every time point $t$ approximately -signifies the cumulative probability that $c_i(t)$ exceeds $\thr$ during the -corresponding averaging interval $\tlp$: -\begin{equation} - f_i(t)\,\approx\,\int_{\thr}^{+\infty} \pclp\,dc_i\,=\,P(c_i\,>\,\thr,\,\tlp) - \label{eq:feat_prop} -\end{equation} -In a sense, $f_i(t)$ resembles a duty cycle of some sort, which quantifies -purely temporal relations in the structure of $c_i(t)$ with no regard for -precise amplitude values apart from their relation to $\thr$. - -Accordingly, a substantial amount of information about the degree of similarity -between signal $\adapt(t)$ and kernel $k_i(t)$ that is contained in $c_i(t)$ is -lost during its transformation into $f_i(t)$. Instead, $f_i(t)$ only retains -information about the temporal relation of $c_i(t)$ relative to $\thr$ - - -This loss of amplitude information is the key to the intensity -invariance of $f_i(t)$: For a given $\thr$, different scales of $c_i(t)$ can -still result in similar $T_1$ segments depending on the magnitude of the -derivative of $c_i(t)$ in temporal proximity to time points at which $c_i(t)$ -crosses $\thr$. The steeper the slope of $c_i(t)$ around the threshold -crossings, the less $T_1$ changes with scale variations. - - - -In a sense, $f_i(t)$ resembles a duty -cycle of some sort, as it quantifies purely temporal relations in the structure -of $c_i(t)$ with no regard for precise amplitude values apart from their -relation to $\thr$. This near-complete loss of amplitude information is the key -to the intensity invariance of $f_i(t)$: For a given $\thr$, different scales -of $c_i(t)$ can still result in similar $T_1$ segments depending on the -magnitude of the derivative of $c_i(t)$ in temporal proximity to time points at -which $c_i(t)$ crosses $\thr$. The steeper the slope of $c_i(t)$ around the -threshold crossings, the less $T_1$ changes with scale variations. - - - -\section{Discriminating species-specific song\\patterns in feature space} - \section{Conclusions \& outlook} \textbf{Song recognition pathway: Grasshopper vs. model:}\\ diff --git a/python/fig_features_cross_species.py b/python/fig_features_cross_species.py index ae43c0d..91b2728 100644 --- a/python/fig_features_cross_species.py +++ b/python/fig_features_cross_species.py @@ -14,9 +14,9 @@ from IPython import embed # GENERAL SETTINGS: cross_species = [ - # 'Chorthippus_biguttulus', + 'Chorthippus_biguttulus', # 'Chorthippus_mollis', - # 'Chrysochraon_dispar', + 'Chrysochraon_dispar', # 'Euchorthippus_declivus', 'Gomphocerippus_rufus', 'Omocestus_rufipes', @@ -45,7 +45,7 @@ save_path = '../figures/fig_features_cross_species.pdf' # ANALYSIS SETTINGS: -thresh_rel = np.array([0, 0.5, 1, 1.5, 2, 2.5, 3])[4] +thresh_rel = np.array([0, 0.5, 1, 1.5, 2, 2.5, 3])[5] single_spec_file = True # Only use example files for cross-species comparison equalize_spec_files = False # Prune to minimum available across species n_song = n_spec#None # Limit to n first songs of in-species dataset (None for all) @@ -121,7 +121,7 @@ ylab_up_kwargs = dict( ha='center', va='top', ) -loc = 0.5 +loc = 1 dot_spec_kwargs = dict( ls='none', marker='o', @@ -171,7 +171,7 @@ text_song_kwargs = dict( text_spec_prefix = '$\\rho\\,=\\,$' text_song_prefix = ['$\\rho\\,=\\,$', ''][0] if test_regression: - test_ax_side = 0.15 + test_ax_side = 0.1 test_ax_bounds = [ song_grid_kwargs['right'] - test_ax_side, spec_grid_kwargs['bottom'], @@ -179,7 +179,7 @@ if test_regression: test_ax_side ] ylab_test = '$\\rho$' - yloc_test = 0.5 + yloc_test = 1 ylab_test_kwargs = dict( x=-0.3, fontsize=fs['lab_norm'], diff --git a/python/save_inv_data_full.py b/python/save_inv_data_full.py index f1d99ac..d19f4e9 100644 --- a/python/save_inv_data_full.py +++ b/python/save_inv_data_full.py @@ -18,7 +18,7 @@ target_species = [ # 'Gomphocerippus_rufus', # 'Omocestus_rufipes', # 'Pseudochorthippus_parallelus', -][0] +][1] example_file = { 'Chorthippus_biguttulus': 'Chorthippus_biguttulus_GBC_94-17s73.1ms-19s977ms', 'Chorthippus_mollis': 'Chorthippus_mollis_DJN_41_T28C-46s4.58ms-1m15s697ms', @@ -28,7 +28,7 @@ example_file = { 'Omocestus_rufipes': 'Omocestus_rufipes_DJN_32-40s724ms-48s779ms', 'Pseudochorthippus_parallelus': 'Pseudochorthippus_parallelus_GBC_88-6s678ms-9s32.3ms' }[target_species] -data_paths = search_files(target_species, dir='../data/processed/') +data_paths = search_files(target_species, incl='GBC', dir='../data/processed/') noise_path = '../data/processed/white_noise_sd-1.npz' thresh_path = '../data/inv/full/thresholds.npz' stages = ['filt', 'env', 'log', 'inv', 'conv', 'feat'] @@ -55,10 +55,13 @@ thresh_abs = thresh_rel[:, None] * thresh_data['sds'][None, :] for data_path, name in zip(data_paths, crop_paths(data_paths)): save_detailed = example_file in name print(f'Processing {name}') + if 'BM04' in name: + continue # Get song recording (prior to anything): data, config = load_data(data_path, files='raw') song, rate = data['raw'], config['rate'] + print(song.shape, song.size) # Reduce to kernel subset: if any(var is not None for var in [kernels, types, sigmas]):