Gogle od Gógle

8 December 2009 by Marek Kopel

Wczoraj tweet’ałem “success story” z TinEye (który od niedawna działa bez logowania i ma wystarczający indeks), a tu dziś…


via http://wysz.com/wyszdom/2009/12/google-goggles/

Gogle -> pierwszy killer app dla Androida… a już miałem kupić iPhone’a… poczekam ;)

czyli nie trzeba skanować rewersów starych zdjęć na których są opisy – Goggles (ale ciężko się to pisze przez 1 “o” i 2 “g” :)   znajdą opis miejsca w mig  > lepsze niż dzisiejsze geotag’owanie (w sensie aparaty fot. z GPS)

no i TinEye chyba właśnie skończył swoją krótką karierę :(
i podobnie chyba z QR Code

a propos GGL Swirl

17 November 2009 by Marek Kopel

za Explore images with Google Image Swirl, now in Labs

“no tak, GGL robi własne photosynth.net” – pomyślałem najpierw – “zwłaszcza, że MS zrobił już w pełni funkcjonalnym w Sliverlight… to będzie dobry przykład, żeby zrezygnować z Flasha, ale na rzecz HTML 5″… a tu się okazuje, że to nie ta bajka…

chodzi tylko o wspomaganie wyszukiwania, a nie tworzenie panoram, czy VR… Swirl to pomysł wizualizację wyników wyszukiwania – akurat dla do obrazów, bo dla txt jest Wonder Wheel

grupowanie wyników – skoro GGL to robi (jak zwykle nie jako pierwszy, ale (chyba) dobrze) to znaczy, że mam dobry argument do własnej pracy “dlaczego grupowanie wyników”… mogę nawet przytoczyć cytat z w/w posta: “These aren’t just the most relevant images — they are the most relevant groups of images.” <- dokładnie  na tej zasadzie działa mój prototyp

z resztą, wcześniej GGL potwierdził, postulowaną przeze mnie, potrzebę możliwości zadawania zapytań analitycznych poprzez udostępnienie Squared – thanx GGL :)

Statistics Show Social Media Is Bigger Than You Think « Socialnomics – Social Media Blog

13 October 2009 by Marek Kopel

Re: Wizualizacja danych wprost z DB

13 July 2009 by Marek Kopel

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

Web OS platforms -> 4 major players

24 June 2009 by Marek Kopel

in Hanselminutes an MS guy and a Java guy point out that there are 4 major potential Web platform standards, i.e. Web Apps’ runtimes:

  • MS Silverlight (as J. Spolsky talked in StackOverflow podcast lately: Silverlight is going to be the Windows Mobile Apps main engine)
  • Sun Java, especially with the new applet plugin rewrite and JavaFX (replacing Swing) which also runs the same code on desktop (J2SE) and mobile (J2ME)
  • Adobe AIR – runtime for Flash, Flex (ActionScript)
  • Google GWT (?), which runtime is JavaScript (!) – and this is most interesting, since they base on HTML5 and JS, so they don’t need any plugin, only a W3C conformant browser

“The cause of the crisis” – simply explained ;)

9 June 2009 by Marek Kopel

via ITC

16:43-16:58

as commented by ojmardueno: “They were so stupid, they bought shares into their own ponzi schemes.” – Douglas Rushkoff talking about banks

Wave

2 June 2009 by Marek Kopel

to ciekawe, że Google niby nie ma przełomowych pomysłów: wszytko to było wcześniej, ktoś już jakoś to zrobił – ale GGL bierze te fragmenty, robi je dobrze i dodaje szczegóły, które odpowiadają za jakość…

Wave to technicznie nic nowego, żaden wynalazek… a jednak łączy te znane elementy tworząc nową jakość… podobnie jak w przypadku GMail’a – który niby jest tylko kolejnym webowym klientem poczty, a jednak zupełnie przedefiniował pojęcie “e-mail” – tak i w przypadku Wave mamy do czynienia z rewolucją…

ale nie technologiczną, tylko psychologiczną… jeśli taka koncepcja trafi do mas… do mnie trafia – to dobry początek?

for the sake of REST(ful)(ness): MVC -> RMR

14 May 2009 by Marek Kopel

via http://groups.google.com/group/oai-ore/msg/c078b0b59ab06d03
then > http://iandavis.com/blog/2009/05/googles-rdfa-a-damp-squib (GGL supports RDFa – Hooray?  not really…)
then > http://www.whatwg.org/specs/web-apps/current-work/multipage/microdata.html (HTML 5 got it’s own microformats built in)
then > http://iandavis.com/blog/2008/12/the-web-is-rmr-not-mvc to

Introducing the RMR Web Architecture : Paul James

so Model-View-Controller must be replaced with Resource-Method-Representation to build RESTful Services and Apps…

the mapping is (more or less):

  • resource -> “a model with a bit of controller thrown in”
  • method -> MVC controller
  • representation -> “like a view in MVC”

- so why RMR?
- “It (MVC) just doesn’t model resources, the fundamental element of the Web is totally ignored”

Słowosieć 1.0 – wordnet języka polskiego zbudowany w oparciu o metody półautomatyczne

5 May 2009 by Marek Kopel

alternatywy:

  • opis dekompozycyjny -> jednostek atomowych
  • sieć semantyczna -> nie ma opisu znaczeń, ale są relacje między znaczeniami

struktura WordNetu:

  • synset – zleksykalizowane pojęcie, np. {course, line}
  • relacje semantyczne (między synsetami), np. hiponimia
  • inne relacje

plWordNet

relacje między jednostkami leksykalnymi:

  • hiponimia
  • meronimia
  • holonimia
  • synonimia – definiowana przez synset
  • antonimia
  • konwersja np. biorca <-> dawca
  • troponimia – derywaty, czynność w pewien sposób, np. krzyczeć <-> mówić
  • relacyjność – związki słowotwórcze, np. biały <-> biel
  • odnośność – jak relacyjność ale o mniejszym stopniu regularności
  • fuzzynimia – taka kategoria miscellaneous

jądro Słowosieci:

  • budowane ręcznie
  • najbardziej ogólne znaczeniowo jedn. leks.

budowa automatyczna:

  • najczęstsze lematy z korpusu IPI PAN 1.0
  • 45 dziedzin znaczeniowych (tylko, żeby podzielić pracę na lingwistów) (bo 45 plików w oryginalnym WordNetcie – nie ma wpływu na strukturę)
  • rozszerzenie listy lematów w oparciu o mały słownik pl-en i WN (en)
  • korekta sysetów (2 lata) -> 11792 lematów, 8966 synsetów, najwięcej hipernimii: 4422 relacji, potem antonimia: ~2000

stats

automatyka:

  • podobieństwo znaczenia <- paradygmat dystrybucyjny
  • paradygmat wzorców (podobne użycie)
  • kontekst użycia wyrażenia (nie sprawdziło się)

hipoteza dystrybucyjna
wzorzec dystrybucji -> konteksty użycia -> macierz koincydencji: lemat x cecha kontekstu

dostajemy funkcję: lemat x lemat -> R

typy kontekstów:

  • dokument
  • okno tekstowe
  • relacje leksykalno-składniowe, np. bycie podmiotem dla czasownika

liczba cech z eksperymentu  ~200k (tyle kolumn macierzy koincydencji)

rozpoznawanie wystąpień relacji -> 95% poprawności

MPZ (miara powiązania znaczeniowego): rankowanie częstości -> miara kosinusowa dla lematów

weryfikacja MPZ: testy synonimii – dla lematu weź synonim i 3 losowe -> wskaż synonim

testy: ludzie vs MPZ

hiperonimia z frazy “such as:” -> parser oparty na regex(ręczne wzorce) -> max. sprawność 30%
kombinacja 3 wzorców -> 67% ale mało i znanych już par

alternatywa: iteracyjne wydobywanie wzorców -> ocena wzorców (miara niezawodności)  -> wydobycie instancji -> ocena instancji (miara niezawodności) -> wydobycie wzorców -> i.t.d.
- dokładność 41% (wzorce zadziwiająco proste)

łączenie metod wydobywania -> Wordnet Weaver

dołączanie nowego sensu lematu -> nie da się do synsetu, ale do regionu synsetów (najwięcej pasujących synsetów)

  • różne metody “głosują” za dopasowaniem lematu do regionu
  • w regionie porównujemy z lematami w synsetach
  • lingwista dostaje interfejs (3 proponowane regiony dla nikiel) i klika (akceptuje dopasowanie) lub opisuje błąd
  • przeliczanie grafów pomagało (początkowo w jądrze nie było dziedziny “jedzenie” -> losowe strzały, po dodaniu kilku lematów dużo lepiej)

efektywny budżet (po narzutach PWr) plWordNet 60 000 euro -> dużo wyższe ilości lematów niż w innych, dużo lepiej finansowanych, projektów EuroWordnet…

jak będzie licencja, to plWordNet będzie udostępniony tu -> http://www.clarin.eu/

w WordNet Weaver paczki zawierają pogrupowane lematy do dopasowanie, grupowanie za pomocą Cluto uwzględniając MPZ

ToggLang – używaj Wikipedii jako słownika (nie tylko Wiktionary)

2 May 2009 by Marek Kopel

Ostatnio często szukam polskich odpowiedników angielskich nazw w Wikipedii… ponieważ klikanie linka Polski jest dosyć uciążliwe (skrolluj & traf) poszukałem dodatku Firefoxa do przełączania języków…

nie znalazłem…

no to bez namysłu zacząłem pisać własny wg tuturiala

w połowie drogi zrozumiałem, że wystarczy mi bookmarklet, czyli (znów by się przełącznik przydał…) skryptozakładka…

chwila testów i jest – może się komuś przyda…

javascript:(function(){
dl=document.links;
dll=dl.length;
for(i=0;i<dll;++i){
switch(dl[i].innerHTML){
case 'Polski': location.href=dl[i].href; break;
case 'English': location.href=dl[i].href;
}}})();

nie wiesz co z tym zrobić? (zabezpieczenia WP nie pozwalają mi umieścić działającej skryptozakładki w poście, więc) przejdź tu

łatwo ją rozbudować (nie jest dopracowana), dodać więcej języków… działa nie tylko w Wikipedii, ale też na innych stronach, np. mojej

do zrobienia własnego Add-On’a muszę znaleźć inny pretekst :(