Přesně před 34 lety, 25. srpna 1991, oznámil Linus Benedict Torvalds v diskusní skupině comp.os.minix, že vyvíjí (svobodný) operační systém (jako koníček, nebude tak velký a profesionální jako GNU) pro klony 386 (486), že začal v dubnu a během několika měsíců by mohl mít něco použitelného.
86Box, tj. emulátor retro počítačů založených na x86, byl vydán ve verzi 5.0. S integrovaným správcem VM. Na GitHubu jsou vedle zdrojových kódů ke stažení také připravené balíčky ve formátu AppImage.
Vláda Spojených států získala desetiprocentní podíl v americkém výrobci čipů Intel. Oznámili to podle agentur americký prezident Donald Trump a ministr obchodu Howard Lutnick. Společnost Intel uvedla, že výměnou za desetiprocentní podíl obdrží státní dotace v hodnotě 8,9 miliardy dolarů (zhruba 186 miliard Kč). Částka podle Intelu zahrnuje dříve přislíbené subvence 5,7 miliardy dolarů z programu CHIPS na podporu výroby čipů v USA,
… více »Organizace Apache Software Foundation (ASF) vydala verzi 27 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.
Knihovna FFmpeg byla vydána ve verzi 8.0 „Huffman“. Přibyla mj. podpora hardwarově akcelerovaného kódování s využitím API Vulcan, viz seznam změn.
Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) vydal Zprávu o stavu kybernetické bezpečnosti ČR za rok 2024 (pdf). V loňském roce NÚKIB evidoval dosud nejvíce kybernetických bezpečnostních incidentů s celkovým počtem 268. Oproti roku 2023 se však jedná pouze o drobný nárůst a závažnost dopadů evidovaných incidentů klesá již třetím rokem v řadě. V minulém roce NÚKIB evidoval pouze jeden velmi významný incident a významných incidentů bylo zaznamenáno 18, což oproti roku 2023 představuje pokles o více než polovinu.
Byl publikován aktuální přehled vývoje renderovacího jádra webového prohlížeče Servo (Wikipedie). Servo mimo jiné nově zvládne animované obrázky APNG a WebP.
Na chytré telefony a počítačové tablety v Rusku bude od začátku příštího měsíce povinné předinstalovávat státem podporovanou komunikační aplikaci MAX, která konkuruje aplikaci WhatsApp americké společnosti Meta Platforms. Oznámila to dnes ruská vláda. Ta by podle kritiků mohla aplikaci MAX používat ke sledování uživatelů. Ruská státní média obvinění ze špehování pomocí aplikace MAX popírají. Tvrdí, že MAX má méně oprávnění k přístupu k údajům o uživatelích než konkurenční aplikace WhatsApp a Telegram.
Společnost PINE64 stojící za telefony PinePhone nebo notebooky Pinebook publikovala na svém blogu srpnový souhrn novinek. Kvůli nedostatečnému zájmu byla ukončena výroba telefonů PinePhone Pro.
Po pěti měsících vývoje byla vydána nová verze 0.15.1 programovacího jazyka Zig (GitHub, Wikipedie). Verze 0.15.0 byla přeskočena. Přispělo 162 vývojářů. Přehled novinek v poznámkách k vydání.
Aneb malé povídání o n-gramech a Rku. Honzíkovi slibuji, že to bude mít větší hodnotu a lepší formátovaní než minule!
O co nám dnes půjde? Na vstupu máme titulky (anglické) z kompletní první série seriálu Southpark a budeme zjišťovat, jestli se v textu neobjevují nějaké opakující se patterny. K analýze nám poslouží tradičně jazyk R a jeho knihovny textcat, tau a k zobrazení výsledků pak wordcloud.
Jako první si někde obstaráme textové soubory s titulky, které budeme analyzovat. Ty umístíme do jednoho adresáře, v našem případě nazvaném "southpark", a s tím již pracujeme v R. Dále načteme potřebné knihovny a vytvoříme korpus, který bude obsahovat náš adresář.
library(textcat) library(tau) library(wordcloud) korpus <- Corpus(DirSource("southpark", encoding="UTF-8"), readerControl = list(language = "en"))
Dále si do proměnné ngramy uložíme výsledek funkce textcnt, které předáváme v parametru n řád n-gramu. Postupně jsem to provedl pro n=1, 2, 3 a 4.
ngramy <- textcnt(korpus, method = "string",n=3)
Abychom mohli výsledek zobrazit jako wordcloud, musíme jej převézt z formátu textcnt na dataframe. To řeší následující příkaz:
df <- data.frame(word = names(ngramy), freq=unclass(ngramy))
Zbytek již je opakování z minula:
pal2 <- brewer.pal(8,"Dark2") png("wordcloud_ngram.png", width=1024,height=768) wordcloud(df$word,df$freq, scale=c(10,.2),min.freq=3, max.words=150, random.order=FALSE, rot.per=.15, colors=pal2) dev.off()
V prvním kroku nám vyjde úplně normální wordcloud, který je dosti nevypovídající - nebyla použita žádná stopwords, a tak převládají členy "a" a "the".
V dalším kroku pro n=2 je výsledek již zajímavější. Mezi nejčastějšími spojeními dvou slov se nám již objeví "south park", ale pořád to hyzdí nicneříkající "have to", "are you" a podobné.
U n=3 začíná být výsledek již opravdu zajímavý. Mezi nejčastějšími tříslovnými výrazy se objevují věci jako "oh my god", což je klasická Cartmanovská hláška, popřípadě "Terrance and Phillip" podle které Southpark zcela jistě identifikujeme a "Kathie Lee Gifford", která prostě musí zemřít!
A máme tady zlatý hřeb večera - n=4! Zde dominuje především asi nejvíce WTF věta "hut hut hut hut", u které doteď nevím co znamená. Southpark se dá rozeznat podle "my god they killed" a "a big fat ass". Pro n-gram pro čtyři slova je problematická především malá délka vstupního textu, kvůli čemuž máme velmi málo výsledků a nejsou příliš reprezentativní.
Jako bonus jsem spočítal a vykreslil do grafu vzdálenost slov "killed", "kenny" a "bastards" v jednotlivých epizodách. Výsledek zde:
Měření dopadlo úspěšně a nebyl při něm nikdo zraněn. Na pár příkladech jsme si předvedli, jak analyzovat text z pohledu výskytů sousloví. Největší smysl dávají asi 3-gramy, u kterých jde relativně dobře poznat, jaký text byl analyzován. U kratších spojení narážíme na přílišnou obecnost, zde by bylo potřeba implementovat zakázaná slova. U delších je pak problém v krátkosti textu. Pokud byste si chtěli něco podobného zkusit a nechtěli si při tom složitě instalovat R a hledat, které RStudio je nejlepší, vyzkoušejte online Voyant-tools. O kostičku se hlaste v komentářích!
Tiskni
Sdílej:
Zde dominuje především asi nejvíce WTF věta "hut hut hut hut", u které doteď nevím co znamená.Že by More crap?