m@6
|
1 {
|
m@6
|
2 "cells": [
|
m@6
|
3 {
|
m@6
|
4 "cell_type": "code",
|
m@6
|
5 "execution_count": 1,
|
m@6
|
6 "metadata": {
|
m@6
|
7 "collapsed": true
|
m@6
|
8 },
|
m@6
|
9 "outputs": [],
|
m@6
|
10 "source": [
|
m@6
|
11 "import numpy as np\n",
|
m@6
|
12 "import pickle"
|
m@6
|
13 ]
|
m@6
|
14 },
|
m@6
|
15 {
|
m@6
|
16 "cell_type": "code",
|
m@6
|
17 "execution_count": 2,
|
m@6
|
18 "metadata": {
|
m@6
|
19 "collapsed": true
|
m@6
|
20 },
|
m@6
|
21 "outputs": [],
|
m@6
|
22 "source": [
|
m@7
|
23 "filenames = ['/import/c4dm-04/mariap/train_data_melodia_8.pickle',\n",
|
m@6
|
24 " '/import/c4dm-04/mariap/val_data_melodia_8.pickle', \n",
|
m@6
|
25 " '/import/c4dm-04/mariap/test_data_melodia_8.pickle']"
|
m@6
|
26 ]
|
m@6
|
27 },
|
m@6
|
28 {
|
m@6
|
29 "cell_type": "code",
|
m@7
|
30 "execution_count": 13,
|
m@7
|
31 "metadata": {},
|
m@6
|
32 "outputs": [],
|
m@6
|
33 "source": [
|
m@6
|
34 "all_Yaudio = []\n",
|
m@7
|
35 "all_Y = []\n",
|
m@6
|
36 "for filename in filenames:\n",
|
m@7
|
37 " _, Y, Yaudio = pickle.load(open(filename, 'rb'))\n",
|
m@6
|
38 " all_Yaudio.append(Yaudio)\n",
|
m@7
|
39 " all_Y.append(Y)\n",
|
m@7
|
40 "all_Yaudio = np.concatenate(all_Yaudio)\n",
|
m@7
|
41 "all_Y = np.concatenate(all_Y)"
|
m@6
|
42 ]
|
m@6
|
43 },
|
m@6
|
44 {
|
m@6
|
45 "cell_type": "code",
|
m@7
|
46 "execution_count": 5,
|
m@7
|
47 "metadata": {},
|
m@7
|
48 "outputs": [],
|
m@6
|
49 "source": [
|
m@6
|
50 "uniq_audio, uniq_counts = np.unique(all_Yaudio, return_counts=True)"
|
m@6
|
51 ]
|
m@6
|
52 },
|
m@6
|
53 {
|
m@6
|
54 "cell_type": "markdown",
|
m@6
|
55 "metadata": {},
|
m@6
|
56 "source": [
|
m@6
|
57 "## Stats on audio files with very few music frames (after the speech/music discrimination)"
|
m@6
|
58 ]
|
m@6
|
59 },
|
m@6
|
60 {
|
m@6
|
61 "cell_type": "code",
|
m@7
|
62 "execution_count": 8,
|
m@7
|
63 "metadata": {},
|
m@6
|
64 "outputs": [
|
m@6
|
65 {
|
m@7
|
66 "name": "stdout",
|
m@7
|
67 "output_type": "stream",
|
m@7
|
68 "text": [
|
m@7
|
69 "63 files out of 8200 have less than 10 frames\n"
|
m@6
|
70 ]
|
m@6
|
71 }
|
m@6
|
72 ],
|
m@6
|
73 "source": [
|
m@6
|
74 "min_n_frames = 10\n",
|
m@7
|
75 "short_files_idx = np.where(uniq_counts<min_n_frames)[0]\n",
|
m@7
|
76 "print '%d files out of %d have less than %d frames' % (len(short_files_idx), len(uniq_counts), min_n_frames)"
|
m@7
|
77 ]
|
m@7
|
78 },
|
m@7
|
79 {
|
m@7
|
80 "cell_type": "markdown",
|
m@7
|
81 "metadata": {},
|
m@7
|
82 "source": [
|
m@7
|
83 "Countries for tracks with less than 10 frames"
|
m@7
|
84 ]
|
m@7
|
85 },
|
m@7
|
86 {
|
m@7
|
87 "cell_type": "code",
|
m@7
|
88 "execution_count": 17,
|
m@7
|
89 "metadata": {},
|
m@7
|
90 "outputs": [
|
m@7
|
91 {
|
m@7
|
92 "name": "stdout",
|
m@7
|
93 "output_type": "stream",
|
m@7
|
94 "text": [
|
m@7
|
95 "{'Italy': 1, 'Peru': 1, 'Solomon Islands': 2, 'France': 2, 'Ethiopia': 1, 'Somalia': 1, 'Ireland': 1, 'Swaziland': 1, 'Argentina': 1, 'Norway': 1, 'Nigeria': 1, 'Algeria': 1, 'Germany': 1, 'Puerto Rico': 1, 'Dominican Republic': 1, 'Poland': 3, 'Spain': 2, 'Netherlands': 1, 'Uganda': 4, 'Western Sahara': 5, 'Gambia': 2, 'Philippines': 2, 'Trinidad and Tobago': 1, 'Latvia': 1, 'South Sudan': 3, 'Mali': 1, 'Russia': 1, 'Romania': 1, 'Portugal': 1, 'South Africa': 3, 'Egypt': 1, 'Sierra Leone': 1, 'United Kingdom': 4, 'Lesotho': 1, 'Senegal': 2, 'Colombia': 2, 'Japan': 2, 'Nicaragua': 1, 'Botswana': 1}\n"
|
m@7
|
96 ]
|
m@7
|
97 }
|
m@7
|
98 ],
|
m@7
|
99 "source": [
|
m@7
|
100 "countries = np.array([all_Y[np.where(all_Yaudio==uniq_audio[audio_idx])[0][0]][0] for audio_idx in short_files_idx])\n",
|
m@7
|
101 "unique, counts = np.unique(countries, return_counts=True)\n",
|
m@7
|
102 "print dict(zip(unique, counts))"
|
m@6
|
103 ]
|
m@6
|
104 },
|
m@6
|
105 {
|
m@6
|
106 "cell_type": "markdown",
|
m@6
|
107 "metadata": {},
|
m@6
|
108 "source": [
|
m@6
|
109 "## Stats on average duration of the music segments for all tracks"
|
m@6
|
110 ]
|
m@6
|
111 },
|
m@6
|
112 {
|
m@6
|
113 "cell_type": "code",
|
m@7
|
114 "execution_count": 18,
|
m@7
|
115 "metadata": {},
|
m@6
|
116 "outputs": [
|
m@6
|
117 {
|
m@7
|
118 "name": "stdout",
|
m@7
|
119 "output_type": "stream",
|
m@7
|
120 "text": [
|
m@7
|
121 "mean 65.750000\n",
|
m@7
|
122 "median 44.000000\n",
|
m@7
|
123 "std 45.947865\n",
|
m@7
|
124 "mean duration 32.875000\n"
|
m@6
|
125 ]
|
m@6
|
126 }
|
m@6
|
127 ],
|
m@6
|
128 "source": [
|
m@6
|
129 "sr = 2.0 # with 8-second window and 0.5-second hop size the sampling rate is 2 about 2 samples per second\n",
|
m@6
|
130 "print 'mean %f' % np.mean(uniq_counts)\n",
|
m@6
|
131 "print 'median %f' % np.median(uniq_counts)\n",
|
m@6
|
132 "print 'std %f' % np.std(uniq_counts)\n",
|
m@6
|
133 "print 'mean duration %f' % (np.mean(uniq_counts) / sr)"
|
m@6
|
134 ]
|
m@6
|
135 },
|
m@6
|
136 {
|
m@6
|
137 "cell_type": "markdown",
|
m@6
|
138 "metadata": {},
|
m@6
|
139 "source": [
|
m@7
|
140 "## Stats on average duration of the music segments for the Smithsonian tracks"
|
m@7
|
141 ]
|
m@7
|
142 },
|
m@7
|
143 {
|
m@7
|
144 "cell_type": "code",
|
m@7
|
145 "execution_count": 23,
|
m@7
|
146 "metadata": {},
|
m@7
|
147 "outputs": [
|
m@7
|
148 {
|
m@7
|
149 "name": "stdout",
|
m@7
|
150 "output_type": "stream",
|
m@7
|
151 "text": [
|
m@7
|
152 "n tracks: 6132\n",
|
m@7
|
153 "mean 42.618885\n",
|
m@7
|
154 "median 44.000000\n",
|
m@7
|
155 "std 4.804534\n",
|
m@7
|
156 "mean duration 21.309442\n"
|
m@7
|
157 ]
|
m@7
|
158 }
|
m@7
|
159 ],
|
m@7
|
160 "source": [
|
m@7
|
161 "#British library tracks start with 'D:/Audio/...'\n",
|
m@7
|
162 "idx_SM_tracks = np.array([i for i in range(len(uniq_audio)) if len(uniq_audio[i].split('D:/'))==1])\n",
|
m@7
|
163 "sr = 2.0 # with 8-second window and 0.5-second hop size the sampling rate is 2 about 2 samples per second\n",
|
m@7
|
164 "print 'n tracks: %d' % len(idx_SM_tracks)\n",
|
m@7
|
165 "print 'mean %f' % np.mean(uniq_counts[idx_SM_tracks])\n",
|
m@7
|
166 "print 'median %f' % np.median(uniq_counts[idx_SM_tracks])\n",
|
m@7
|
167 "print 'std %f' % np.std(uniq_counts[idx_SM_tracks])\n",
|
m@7
|
168 "print 'mean duration %f' % (np.mean(uniq_counts[idx_SM_tracks]) / sr)"
|
m@7
|
169 ]
|
m@7
|
170 },
|
m@7
|
171 {
|
m@7
|
172 "cell_type": "markdown",
|
m@7
|
173 "metadata": {},
|
m@7
|
174 "source": [
|
m@6
|
175 "## Stats on average duration of the music segments for the British Library tracks"
|
m@6
|
176 ]
|
m@6
|
177 },
|
m@6
|
178 {
|
m@6
|
179 "cell_type": "code",
|
m@7
|
180 "execution_count": 22,
|
m@7
|
181 "metadata": {},
|
m@6
|
182 "outputs": [
|
m@6
|
183 {
|
m@7
|
184 "name": "stdout",
|
m@7
|
185 "output_type": "stream",
|
m@7
|
186 "text": [
|
m@7
|
187 "n tracks: 2068\n",
|
m@7
|
188 "mean 134.338008\n",
|
m@7
|
189 "median 163.000000\n",
|
m@7
|
190 "std 44.855790\n",
|
m@7
|
191 "mean duration 67.169004\n"
|
m@6
|
192 ]
|
m@6
|
193 }
|
m@6
|
194 ],
|
m@6
|
195 "source": [
|
m@6
|
196 "#British library tracks start with 'D:/Audio/...'\n",
|
m@6
|
197 "idx_BL_tracks = np.array([i for i in range(len(uniq_audio)) if len(uniq_audio[i].split('D:/'))>1])\n",
|
m@6
|
198 "sr = 2.0 # with 8-second window and 0.5-second hop size the sampling rate is 2 about 2 samples per second\n",
|
m@7
|
199 "print 'n tracks: %d' % len(idx_BL_tracks)\n",
|
m@6
|
200 "print 'mean %f' % np.mean(uniq_counts[idx_BL_tracks])\n",
|
m@6
|
201 "print 'median %f' % np.median(uniq_counts[idx_BL_tracks])\n",
|
m@6
|
202 "print 'std %f' % np.std(uniq_counts[idx_BL_tracks])\n",
|
m@6
|
203 "print 'mean duration %f' % (np.mean(uniq_counts[idx_BL_tracks]) / sr)"
|
m@6
|
204 ]
|
m@6
|
205 },
|
m@6
|
206 {
|
m@6
|
207 "cell_type": "code",
|
m@6
|
208 "execution_count": null,
|
m@6
|
209 "metadata": {
|
m@6
|
210 "collapsed": true
|
m@6
|
211 },
|
m@6
|
212 "outputs": [],
|
m@6
|
213 "source": []
|
m@6
|
214 }
|
m@6
|
215 ],
|
m@6
|
216 "metadata": {
|
m@6
|
217 "kernelspec": {
|
m@6
|
218 "display_name": "Python 2",
|
m@6
|
219 "language": "python",
|
m@6
|
220 "name": "python2"
|
m@6
|
221 },
|
m@6
|
222 "language_info": {
|
m@6
|
223 "codemirror_mode": {
|
m@6
|
224 "name": "ipython",
|
m@6
|
225 "version": 2
|
m@6
|
226 },
|
m@6
|
227 "file_extension": ".py",
|
m@6
|
228 "mimetype": "text/x-python",
|
m@6
|
229 "name": "python",
|
m@6
|
230 "nbconvert_exporter": "python",
|
m@6
|
231 "pygments_lexer": "ipython2",
|
m@6
|
232 "version": "2.7.12"
|
m@6
|
233 }
|
m@6
|
234 },
|
m@6
|
235 "nbformat": 4,
|
m@7
|
236 "nbformat_minor": 1
|
m@6
|
237 }
|