Profile

Cover photo
Michal Illich
Works at Wikidi, dříve Jyxo
Attended Charles University in Prague
Lived in Prague
1,993 followers|488,893 views
AboutPostsYouTube

Stream

Michal Illich

Shared publicly  - 
 
Na co se těším na letošní http://devel.cz/konference ?

Na Jakuba Nešetřila: Jakuba jsme přemlouvali k vystoupení posledních 5 let, ale pokaždé byl mimo ČR. Nyní nám šéf Apiary ve formě moderovaného Q&A poví o tom, jaké je to budovat globální firmu se sídlem v Kalifornii a vývojem v Praze.

Na Tomáše Plcha: Osobně jej neznám, ale hra Kingdom Come vypadá úžasně ve všech směrech: grafikou, námětem i realistickým, otevřeným světem s mnoha postavami. Tomáš bude přednášet o umělé inteligenci v téhle hře.

Na Jamese Halla: Ředitel firmy Paralax přiletí z Británie a představí "nekonečně škálovatelné" řešení pomocí Amazon Lambdy.

Na Ondřeje Žáru (je poměrně jedno, o čem přednáší, vždycky má rekordní hodnocení od účastníků za zábavnost přednášky).

Na Kateřinu Veselovskou: Kateřinu jsme pozvali poté, co jsme viděli na Twitteru nadšené reakce na její přednášku na jiné konferenci :) Tak jsem zvědavý, jaké to bude naživo. Její ignite talk se jmenuje "Automatický sentiment aneb Kam spěje svět"

Na co se těšíte vy?
https://devel.cz/konference

 ·  Translate
5
Add a comment...

Michal Illich

Shared publicly  - 
 
 
Meet our awesome new product owner and the newest member of Team Testomato, Monika! 
We recently welcomed a new product owner to our team, Monika Šmídová! We sat down with her to learn more about her work at Testomato, her least favorite error, and her hobbies.
View original post
1
Add a comment...

Michal Illich

Shared publicly  - 
 
 
You can now duplicate & delete multiple tests!

Hold SHIFT and click to select test boxes in your dashboard: http://testomato.com
View original post
1
Add a comment...

Michal Illich

Shared publicly  - 
 
Sbohem a díky, Palme. Konec jedné éry.
Zleva doprava:
- Handspring Treo 180 (2002)
- PalmOne Treo 600 (2004)
- Palm Treo 680 (2006)
- Palm Pixi Plus (2010)
- Palm Pre (2009)
- HP Pre 3 (2011)
 ·  Translate
4
Tomáš Vaculín's profile photoZdeněk Dvořák's profile photoPatrick Zandl's profile photoMichal Illich's profile photo
6 comments
 
Televizi posledních 7 let nemáme a neplánuju to ani měnit. Navíc se blbě nosí v kapse a nemá ani tu klávesnici :)
 ·  Translate
Add a comment...

Michal Illich

Shared publicly  - 
 
 
A fun stat for #Friday: We've already run over 1,500,000 automated tests today! 

#automatedtesting  
View original post
1
Add a comment...

Michal Illich

Shared publicly  - 
 
 
Amazon estimates that a 1 second page load delay would cost them $1.6 billion in a year. Keep customers happy with these 6 tips to increase site speed! 
If you're reading this, you probably already know that a fast website is more than just a good idea. In today's world of lightening-fast internet speeds and website optimization - performance is a necessity.
View original post
3
Add a comment...

Michal Illich

Shared publicly  - 
 
Přiznání: Nemám rád bitcoiny.

Ok, muselo to ven, i když vím, že tenhle názor není mezi ajťáky populární :)
Co se mi na nich nelíbí:

1. Lehce se ztratí. Buď je člověk má v nějaké cloudové službě a riskuje, že mu peníze někdo ztratí (viz http://en.wikipedia.org/wiki/Mt._Gox - kdysi dělali 70% bitcoinových exchangí, dnes jsou v bankrotu a $450M kdesi pryč).
Nebo si peněženku provozuje sám a riskuje, že si je ztratí sám (selže mu disk a zálohy nebo zapomene heslo).

2. Transakce jsou veřejné. Do mých bankovních transakcí vidí málokdo (pouze banka a v případě soudního příkazu stát), zatímco do bitcoinových transakcí vidí každý. Tedy ten, kdo ví, že nějaká konkrétní transakce je vaše, tak může odvodit, které další transakce asi patří k vám. Více k tématu http://www.forbes.com/sites/timothylee/2011/07/14/how-private-are-bitcoin-transactions/ a navazující https://activerhetoric.wordpress.com/2011/07/14/bitcoin-more-covert-than-it-looks/ který popisuje, jak transakce částečně utajit (ale zdaleka ne na stejnou úroveň jakou mají banky).

3. Transakce jsou poměrně pomalé. Původní návrh počítal s 10 minutami na transakci, aktuální průměr je 7,5 minuty. To je oproti pár sekundám u platební karty příliš. A ano, vím, že karetní společnosti ty peníze pošlou až za pár dnů. Ale jako zákazníkovi je mi to jedno, protože ty společnosti tu transakci potvrdí rovnou. Jinak ale věřím, že zrovna tahle nevýhoda je dobře odstranitelná. Jedna z možností je třeba http://www.ultimatestunts.nl/bitcoin/fast_transactions.html

4. Transakce jsou nevratné. Chyby se stávají a je docela fajn, že třeba platební karty poskytují nějaké mechanismy pro reklamace nebo kompenzaci při ukradení karty. Ale u bitcoinů se nedá transakce nijak vrátit.

5. Žere spoustu elektřiny.
Odhady se podstatně liší - článek na Forbesu z roku 2013 říkal $15M za den: http://www.forbes.com/sites/timworstall/2013/12/03/fascinating-number-bitcoin-mining-uses-15-millions-worth-of-electricity-every-day/
Tenhle článek říká, že míň: https://medium.com/@interdome/how-much-electricity-does-bitcoin-use-c350bd84c64e
Stejně mi to přijde hodně a na to, jak relativně málo reálných transakcí probíhá, je cena za provoz bitcoinového ekosystému o několik řádů vyšší než jakou by měl tradičnější systém elektronické peněženky.

Neříkám, že si bitcoiny nikdy nekoupím. Na spekulaci a na vyzkoušení nejspíš ano, dokonce myslím, že se na nich stále dá slušně vydělat. Ale za budoucnost placení bitcoiny nepovažuju. To jest musel by se ten koncept významně změnit, abych je začal jako platidlo uznávat.
 ·  Translate
21
Marek Palatinus (slush)'s profile photoRobert Madaj's profile photo
14 comments
 
Rozumiem, ide teda o elektronicke zariadenie a nevytvara ziadnu papierovu zalohu. 
 ·  Translate
Add a comment...

Michal Illich

Shared publicly  - 
 
Pořádáme další http://devel.cz/konference - prvních 100 lístků se prodalo za 3 hodiny, nyní jich zbývá 164.
 ·  Translate
5
Peter Markuška's profile photoMichal Illich's profile photo
2 comments
 
Říká se tomu důvěra.
Je to ostatně pátý ročník, tedy lidé už vědí, jakou kvalitu mohou očekávat.
 ·  Translate
Add a comment...

Michal Illich

Shared publicly  - 
 
Jak hledat podobné tweety moderně

+Josef Šlerka (mimochodem skvělý chlapík a Osobnost českého internetu) vydal před pár dny slajdy (http://www.slideshare.net/josefslerka/fingerprinting-42124415), jak fingerprintuje posty (zřejmě tweety a fb), aby našel ty "hodně podobné".
Já jsem se nechal na Twitteru slyšet (https://twitter.com/michalillich/status/538304531290157057), že tenhle způsob je zastaralý a lépe je to dělat pomocí slovních vektorů. A jelikož to vyvolalo dost vyhrocenou diskuzi, tak sepíšu rešení podrobně.

Problémem simhashe je zaměření na písmenka.

Co myslíte, je pro problém hledání podobných postů důležité, jak staří Římané seřadili písmenka v abecedě (a jak jsou v ASCII tabulce)? Podle simhashe je písmenko 'a' (01100001) mnohem podobnější 'c' (01100011) než třeba 'z' (01111010). Viz http://www.neurophys.wisc.edu/comp/docs/ascii/ascii-printable.html
A tahle pseudonáhodná písmenková podobnost se pak ještě znásobí na úrovni slov. Vznikne tak stav, že simhash některá slova považuje za podobná některým jiným stylem, který člověk vnímá jako náhodný.

Pokud vás právě napadlo, že "náhodnost je přece podstatou hashů!", tak máte pravdu. Obvykle hashujeme právě proto, abychom data rozprostřeli náhodně a například se tak vyhnuli kolizím. Ale pamatujete, že Josef chtěl najít posty, které jsou si "hodně podobné"? Dost zvláštní, že si jako první krok vybral metodu, která vytváří náhodnost.

Co ve skutečnosti potřebujeme

V prvém kroku potřebujeme pravý opak hashování! Chceme, aby se nám podobná slova dostala k sobě. A podobná myslím zejména na základě významu (a teprv sekundárně podle syntaxe či dokonce vnější podoby).
Naštěstí k tomu existují snadné metody. Tomáš Mikolov s kolegy představil před pár lety word2vec (http://papers.nips.cc/paper/5021-distributed-representations-of-words-and-phrases-and-their-compositionality.pdf), což je naprosto geniální věc.

Takže nejdřív si každé slovo převedete na jeho slovní vektor. Ty máte předpočítané, takže je to superrychlé. Slovní vektor je sada (obvykle stovek) čísel, která vyjadřují význam a syntaxi toho slova. Přičemž podobná slova mají podobné vektory.

Takže nejpodobnější ke slovu "cat" bude slovo "cats".
A ke slovu "pen" budou nejbližší postupně "pens", "pencil", "quill".
Pohrát si s vektory můžete zde:
http://radimrehurek.com/2014/02/word2vec-tutorial/

Mimochodem, potud jsme to ve Wikidi implementovali (pro tweety) a skutečně metody používající word2vec vyhrávaly v přesnosti (subjektivně i objektivně měřené) nad ostatními metodami (zaměřenými na vnější podobu jako u simhashe nebo používající třeba LDA).

Teď chceme navíc, aby to bylo rychlé. A možností máme hodně, uvedu dvě nejvýznamnější:

Rychlé hledání přes K-means clustering a index

Slova si předem podle slovních vektorů naclusterujeme do K clusterů (třeba 65536). Takže pak při hledání nepoužijeme jako reprezentaci slova jeho slovní vektor, ale jen krátký index, který má třeba 16 bitů.
Pak pro N-slovný tweet jen koukneme do N seznamů a spočítáme si, který post jsme v nich potkali nejvíckrát. Pokud máme v databázi M postů, tak je složitost O(N*(M*N/K)).
(a pomocí bloom filterů se to dá ještě zrychlit.)

Rychlé hledání pomocí bitového pole a ANN

Druhá možnost je převést si vektory na bity. Vytvoříme si vektor celého postu. Ideálně místo word2vec použijeme doc2vec (http://radimrehurek.com/gensim/models/doc2vec.html) nebo jestli chceme být punk, tak prostě zprůměrujeme vektory jednotlivých slov. To zní naprosto šíleně, ale z nějakého záhadného důvodu to funguje v praxi dost slušně.

Jak máme vektor postu, tak si jej můžeme kvůli snížení nákladů na uložení na disk zmenšit na bitové pole. Osobně bych asi dal dva bity na každou hodnotu (10 horní tercil, 00 prostřední tercil, 01 dolní tercil), ale jeden bit (nadprůměr/podprůměr) by mohl fungovat taky.

Pak použijeme approximate nearest neighbour search (například knihovnu https://github.com/spotify/annoy od Spotify), která bude pro tyhle data hledat odhadem stokrát rychleji než naivní lineární průchod.

Závěr

Všimněte si, že jsem nakonec hashování, indexování a podobné metody (které jsou součástí ANN) taky použil. Ale vtip je v tom, že je nepoužiju v první fázi (kde škodí), ale až v druhé fázi (kde pomáhají).
V prvé fázi naopak potřebuju prostředek, který mi podobná slova dostane k sobě a ne je hashováním rozstřelí pryč.

Výsledkem je postup, který je jednoduchý na implementaci (na vše výše zmíněné jsou kvalitní opensource knihovny), rychlý a usporný ve vyhledávání a věřím, že i mnohem přesnější.

Mimochodem, pokud jste to dočetli až sem, pojďte k nám pracovat:
http://www.jobs.cz/rpd/915013264/
 ·  Translate
- dobrou znalost Pythonu + ochotu poznat strojové učení - nebo znalost strojového učení + ochotu naučit se Python - ideálně obojí :)
40
5
Martin Malý's profile photoMartin V's profile photoMartin Kasa's profile photoMichal Illich's profile photo
5 comments
 
Jinak další, špičkový (ale poměrně pracný) postup je tady: https://www.cs.toronto.edu/~hinton/absps/sh.pdf - Semantic Hashing z roku 2006 (Salakhutdinov a Hinton).
 ·  Translate
Add a comment...

Michal Illich

Shared publicly  - 
 
Kterak jsem dnes doma o všechna data na disku přišel a ani to nevadilo.

Dnes ráno zapnu počítač a než stihnu něco udělat, zamrzne prohlížeč a pár sekund poté celý systém. Restartuju a BIOS hlásí, že nenašel žádné bootovatelné zařízení. Ani po třech dalších restartech. Beru mrtvý disk (Vertex 4) do práce a ani tam ho nejsme schopni oživit :(

Tak jsem si objednal nový disk (Samsung 850 Pro), večer ho Alza (s několikahodinovým zpožděním) dovezla. Instalace (Kubuntu 14.10 B2) během půl hodiny hotová, další hodinu mi zabralo přizpůsobení prostředí (připojení na server, cryptsetup, doinstalování pár balíčků, úprava zkratek, atd.).

Proč to ale píšu: je poměrně kuriózní, že mi po kompletní ztrátě jediného disku v mém domácím počítači nic nechybí. Považte:

1. Všechnu aktuální práci (dokumenty, maily, obrázky, faktury, atd.) mám na šifrované klíčence. Aktuálně 63 GB, které mám tímhle způsobem okamžitě k dispozici doma i v práci.
2. Fotky, videa, zálohy, atd. na domácím serveru. Ze zálohy jsem obnovil akorát adresář ~/.mozilla.
3. Pár věcí mám v cloudu - vlastně pouze Firefox Sync (hesla, šifrovaně samozřejmě), Pocket (read it later) a pár Google dokumentů.
4. Zdrojáky ve firemním gitu.

Takže sečteno a podtrženo, o co jsem přišel? Pouze o hry :) Ale vzhledem k tomu, že jsem za poslední půl rok hrál jen dvě, tak žádná velká škoda. Navíc informace o tom, že je mám zaplacené a jaký mám založený profil, jsou opět kdesi v mracích (Steam a Battle.net).

Tedy počítač je už teď "tenký klient", kde toho moc není. Ale nevypadá to tak, jak nám před lety velké firmy říkaly: že tenký klient bude levný a výpočty budou na serveru. Naopak: naše počítače jsou výkonnější než kdy dřív, a pouze data jsou kdovíkde (v mém případě na domácím serveru, klíčence, firemních serverech a jen pár promile v cloudu).
 ·  Translate
22
1
Jan “Zviratko” Schermer's profile photoVladimir Skach's profile photoLukáš Pítra's profile photoHenry Sitting's profile photo
15 comments
 
Co filmy pro dospělé? Přeci jen ten domácí NAS by také měl být někde zálohován a pokud není vše na pracovním PC, typicky právě ony filmy, mohly se nějaké ztratit!
 ·  Translate
Add a comment...

Michal Illich

Shared publicly  - 
 
 
#NewFeature: Drag & Drop sorting for test boxes on project dashboards!

Test it out now and let us know what you think: http://testomato.com/

#testingtools  
View original post
1
Add a comment...

Michal Illich

Shared publicly  - 
 
Tak jsem si taky pokecal s Eugenem, oním scriptem, který údajně prošel Turingovým testem. Reálně se mu spíš pokusilo zmást 1/3 soudců (tipuju dva) během pětiminutového pokecu.

Taky jsem se ho na něco zeptal, přičemž jsem se nepokoušel o žádné chytáky...

Hi, Eugene, are you there?
Hi. I hope you'll enjoy our conversation!

What version are you?
My grandfather taught me not to disclose non-solicited information about myself. Like on the question "Do you have watch" -- never tell time, but answer "Yes" or "No". I always follow his advice. And I forgot to ask you where you are from...

From Praha - have you been there?
I would rather not talk about it if you don't mind. By the way, what's your occupation? I mean - could you tell me about your work?

Try to guess it.
Did you try it yourself? Or you advise it to me to look what happens if I do it? Could you tell me about your job, by the way?

No. Have you watched any movie lately?
...wait

Waiting.
Error reading from remote server

What's the weather now at your place?
The weather is always as bad as you think it is. I do believe that the world just a mare reflection of our thoughts...

With whom do you live?
And you? I suspect you live too! Well, let's go on though.

Verdikt: Tohle by mě nepřesvědčilo. Takhle by imho neodpověděl člověk ani na jedinou z těch otázek (snad s vyjímkou pozdravu a ..wait, to by se dalo z přimhouřením očí tolerovat). A už vůbec to nesedí na 13letého kluka.

Když to zrovna funguje (nejspíš je to přetížené), tak se to dá zkoušet tady: http://default-environment-sdqm3mrmp4.elasticbeanstalk.com/ (přičemž není zřejmé, jestli je to ta samá verze).
 ·  Translate
14
4
Lukáš Vaculík's profile photoTomáš Procházka's profile photoHonza Chudý's profile photoTomáš Brabenec's profile photo
16 comments
 
+Honza Chudý
Jojo, to bude možná ono. Myslím, že byla pak i verze 2.
 ·  Translate
Add a comment...
Story
Introduction
Většinou píšu spíš na Twitter/@michalIllich
Bragging rights
Wikidi, dříve Jyxo
Education
  • Charles University in Prague
    psychology, 1999 - 2011
  • Stanford University
    summer class, 2013 - 2013
Basic Information
Gender
Male
Work
Occupation
Entrepreneur
Employment
  • Wikidi, dříve Jyxo
    founder, 2010 - present
  • Jyxo + Blog.cz
    founder, 2002 - 2010
  • eTarget
    co-owner, 2003 - 2006
Places
Map of the places this user has livedMap of the places this user has livedMap of the places this user has lived
Previously
Prague
Links