Archive for the ‘dataset’ Category

geolokalizacja grupuje ‚the Graph’

2012.05.11

http://livehoods.org

Nowy sposób grupowania (Social) Grafu i badania dynamiki sieci (społecznej) na podstawie check-ins (głównie z foursquare). Choć tu check-ins są zanonimizowane, to fajne, jeśli mógłbym zobaczyć do których livehoods należę, poza tymi oczywistymi jak praca i dom. Czy to już byłby wystarczający bonus za to że Wielki Brat mnie (w sensie was, ‚paranoików’ ;P ) śledzi? Przepraszam, ale nie byłbym sobą 🙂

Ogólna koncepcja badań/prototypu

2011.03.30
  1. Określenie reguł dla improwizacji (solo) w danej skali (jak: najczęściej kolejne dźwięki skali, powtarzanie fraz, długości fraz – pauzy, synchro z beat’em, …)
  2. Parsowanie tabulatur solówek gitarowych (bo jest ich dużo) – problem z plain text’em, może jakieś ustruturalizowane formaty albo import z .mid’ów (Power_Tab_Editor) (mała baza)
  3. Data Mining -> reguły związków dla budowania fraz, może całych lick’ów czy nawet riff’ów (akordy w tabach?) – podział na style muzyczne/gitarzystów? da się w oderwaniu od harmonii (Brian May mówił, że zawsze woli grać solówki wokół danego (bieżącego) akordu niż w konkretnej tonacji)?
  4. Improwizator (dostaje/wykrywa tonację i beat… i gra improwizowane solo live)
  5. Altrnatywnie: harmonista (akompaniator) – do zadanej melodii znajduje harmonię i podkłada akompaniament
  6. Wizualizacja performace’u jak w AniMusic czy MIDIjam, a może nawet w postaci (fragmentu) humanoida z gitarą
  7. Scooped: oczywiście już ktoś o tym pomyślał:
    1. Impro-Visor (5 lat temu)
    2. Band-in-a-Box (20 lat temu)

Temat bardzo multimedialny 🙂

Wyjątkowo ‚comments are welcome’ 😉

Re: Wizualizacja danych wprost z DB

2009.07.13

dzieciou napisał:

Szukam jakiejś alternatywy dla niego, nie wymagającej pisania programu.

a ja to robię tak:
z różnych lokalizacji, więc zdalnie na Ubuntu Server przez VNC (te zielone okna to domyślny twm)

bar chart

bar chart

mysql -uroot -p -e "SELECT y INTO OUTFILE '/tmp/y' LINES TERMINATED BY ',' FROM vis.dane"
//zrzucam kolumnę z MySQL do pliku rozdzielając wartości przecinkami

sed 's/^/y=[/;s/$/];\n/' /tmp/y > o.m
//wstawiam na początku linii y=[, a na końcu ];(nowa linia) i zapisuję jako skrypt octave (czy matlab)

echo "bar(y);" >> o.m
//dodaję polecenie rysowania bar chart


run o
//w terminalu poniżej w odpalonej octave uruchamiam ten skrypt

ploted chart

ploted chart

a tak plotuję wygładzony wykres z tych 20 wartości (żeby nie była to prosta łamana)

octave:2> x=1:20
octave:3> xx=1:.1:20
octave:4> yy=spline(x,y,xx)
octave:5> plot(x,y,"+",xx,yy,"-")

xx to przedział <1;20>, ale nie co 1, tylko co 0,1
yy to aproksymacja 20-u y-ów do 200 wartości spline‚m (podobno tak też się wygładza wykresy w Calc’u czy Excel’u)
plotuję 20 wartości krzyżykiem („+”) i 200 linią („-„)

w praktyce te skrypty tworzę z poziomu PHP, a wykresy od razu zrzucam print’em do PNG
ewentualnie wcześniej ustawiam xlabel, ylabel i title

no i w octave łatwo plotować 3D (mesh) np. tak (trudniej o dane 🙂 :

example mesh

example mesh

XML is going… down?

2008.07.08

Google Open Source Blog: Protocol Buffers: Google’s Data Interchange Format

open, but binary… but not the way ODF and OOXML is… and not the first one (see 5th comment)…

but it’s GGL’s, ya know 🙂

One to url them all…

2008.06.25

WordPress announced sitemaps support, which I though might be a chance for me to get all the post – not just last 10… so wouldn’t have to do cyclic rss parsing…

but no (here’s  mine), it’s just the permalink’s list… no author, tag/category, summary info that goes along with atom…

So then I thought the pretty permalinks + atom is the answer, i.e.: these are my first ten posts here:

https://marekopel.wordpress.com/2006/11/page/2

and atom for another 10 posts (last 10 from November):

https://marekopel.wordpress.com/2006/11/feed/atom

so the answer to my problem (i.e. atom for first 10 posts) would be:

https://marekopel.wordpress.com/2006/11/page/2/feed/atom

…but it won’t work… why? ;(

still I can go through each day of the calendar, i.e.:

https://marekopel.wordpress.com/2006/11/5/feed/atom

– hopefully you won’t get more than 10 posts a day…

but now I can see I can’t compete with GGL and index all the wordpress.com

once I was moaning about getting only a few thousands of crawled blogs using Next link, when there are hundreds of thousands of WP blogs created each month

now I think I gained the critical mass, and parsing only blogrolls (also the non-XFN ones) I got:

  • 2006.06.15: 25 996 WP blog URLs
  • a few days later: 55 689 WP blog URLs

and I only managed to parse half of it…

I can have 1000 WP blog’s atoms parsed in ~6 days… even when going parallel  (say 5 sessions – my server can handle that 🙂 -> when I finish parsing the last thousand the first one is already outdated …

I hoped to experiment comparing my search engine (based on Solr – more details soon) to GGL Blog Search in a given period of time (say a week)… now even that seems impossible… what to do? what to do? <panic>

„matchmaker matchmaker make me a match”

2008.05.05

„[…] so the blue balloons are men and the pink balloons are women… and the darker balloons are older people and the lighter balloons are younger people […]”

and it’s… online dating clustering?

p.s. „[…] intelligence is the no1 turn on for people over all […]” 🙂

new ‚NEXT’s

2008.05.05

after another 100 000 clicks on WP ‚next’ link my spider harvested only 6 798 – 6 055 = 743 new blogs
– Are they new blogs?
– Nope.

– Did they have little activity recently?
– I don’t think so.

– Are they spamblogs?
– Not really.

– Why then?
– ???

WordPress analysis – next?

2008.04.16

The schema evolved to:

After 2 iterations (100 000 each) with a week interval my spider following the http://wordpress.com/next/ link found only 1733 blogs. But when I made the spider crawl the found blogs’ blogrolls it found another 4322 blogs (in wordpress.com only!). Why? Does the next link show only the active blogs or the rest are just spamblogs? We’ll find out soon (I hope :).

Some preliminary analysis results:

When do we blog (nr of posts)?

Thursday 3568 16,64%
Friday 3433 16,01%
Monday 3358 15,66%
Tuesday 2948 13,75%
Wednesday 2831 13,20%
Sunday 2766 12,90%
Saturday 2539 11,84%
21443 100,00%

parsin’ WordPress

2008.04.08

trying to parse (XMLParser) WordPress.com (via http://wordpress.com/next/) into that schema (img by Workbench):

DAC4WP SQL Diagram

  1. atom has author’s uri – rss2 doesn’t > use atom
  2. at the moment tags and categories in feeds are indistinguishable
  3. only get 10 post from blog at a time, but script runs incrementally
  4. comments are parsed independently
  5. post ids sometimes are pretty permalinks and sometimes contain „/?=”
  6. suffixes „/feed”, „/feed/atom”, „/?feed=atom” works only with permalinks> use permalinks instead of ids
  7. user’s uri <-> blog’s url mismatch:
    • uris often end with „/” – urls never
    • uris are often blank
    • uris often contain „www.” which is an error – urls never
  8. to find pingbacks just check if comment author’s uri = post’s url

TO DO:

  1. parse blogrolls with XFN rel > author-author rel
  2. use WordNet::Similarity > concept-concept rel

visualcomplexity

2008.04.04

visualcomplexity.com | A visual exploration on mapping complex networks via ze’s page

nice hub

some already seen (liveplasma), some not (silobreaker)

gotta get time to explore more 🙂