Nizozemská vláda ve snaze šetřit a zvyšovat efektivitu s využitím umělé inteligence (AI) hodlá zrušit asi 25.000 pracovních míst ve státní správě. Cílem je postupně dosáhnout ročních úspor až 3,5 miliardy eur (85,2 miliardy Kč). Na konci loňského roku ve státní správě pracovalo rekordních 160.000 lidí. „Nemůžeme pokračovat v tom, co jsme dělali dosud,“ uvedl státní tajemník pro efektivní fungování vlády Eric van den Burg. „Proto
… více »Příspěvek na blogu PRUSA 3D představuje fotoaparát CAIM1 (Counter Artificial Intelligence Machine 1). Uměle vytvořený obsah je každým dnem těžší rozeznat od skutečných záběrů či fotografií, což podrývá důvěryhodnost žurnalistiky, archivních materiálů i každodenní tvorby obsahu. Fotoaparát CAIM1 byl vyvinut právě k tomu, aby ověřoval původ fotografií a videí přímo během jejich pořizování. Uvnitř fotoaparátu se nachází hardwarová Web3 peněženka se zabezpečovacím čipem Tropic Square TROPIC01.
Jonathan Thomas oznámil vydání nové verze 4.1 video editoru OpenShot (Wikipedie). Zdrojové kódy OpenShotu jsou k dispozici na GitHubu. Ke stažení je i balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo na spouštění a spustit.
Při běžné migraci virtuálního stroje mezi hypervizory se jeho MAC adresa přesune na jiný leaf switch. EVPN tuto změnu distribuuje pomocí BGP Type-2 route a MAC mobility sequence number. Problém nastává, pokud útočník podvrhne zdrojovou MAC adresu jiného zařízení. Leaf může změnu interpretovat jako legitimní přesun MAC a rozšířit ji přes BGP do celé fabric. Výsledkem může být přesměrování provozu určeného původnímu zařízení. Autor článku rozebírá možnosti detekce pomocí sledování MAC moves, BGP route reflektorů a kontroly na přístupové vrstvě.
Vývojáři desktopového prostředí Enlightenment (Wikipedie) a souvisejících knihoven Enlightenment Foundation Libraries (EFL) vydali nové verze. Enlightenment byl vydán ve verzi 0.28.0 a Enlightenment Foundation Libraries ve verzi 1.29.
Cloudflare zjistil, že některé odpovědi modelu GLM-5.3 obsahovaly části dat z předchozích požadavků jiných zákazníků. Příčinou byla kombinace chybné konfigurace a chyby v inference enginu SGLang. Model podporoval kontextové okno 1 048 576 tokenů, ale GPU KV cache pool měl kapacitu pouze 681 280 tokenů. Při překročení kapacity docházelo k nesprávnému zpracování odmítnutého požadavku. Decode část systému následně pracovala se starými
… více »Vývojáři Knot Resolver vysvětlují, jak změnili rozhodování o tom, které DNS záznamy ponechat v cache a které odstranit. Článek obsahuje skutečná měření: devět hodin DNS provozu při 2 000 QPS, srovnání cache o velikosti 25 MB a 40 GB a také porovnání s BIND 9, kromě algoritmů obsahuje konkrétní doporučení pro konfiguraci a diagnostiku.
Největší kryptoměnová burza světa Binance se stala terčem útoku, při kterém podvodníci odcizili během několika minut kryptoměny v hodnotě přibližně 6,3 miliardy dolarů. Jedná se o největší kryptoměnovou krádež v historii, přibližně čtyřikrát větší než loňský útok na burzu Bybit. Binance se podařilo ve spolupráci s partnery zmrazit aspoň aktiva v hodnotě zhruba 3 miliard dolarů a slíbila, že veškeré ztráty pokryje z vlastních prostředků.
Zranitelnost CVE-2026-98432 s CVSS 9.8 odhalila AI od společnosti Anthropic. Jedná se o kritickou chybu v implementaci MPTCP (multipath TCP). Debian vydal patche 16.10. a 22.10., ale např. Ubuntu je zatím bez opravy. Více informací na The Hacker News.
Na Slovensku vznikla úplne nová rally hra, ktorá je zadarmo a funguje vo Windowse, Linuxe či na Macu. Greenie Rally má viac ako 50 tratí a vozidiel, šampionáty či turnaje. Má retro feeling a imituje automobilové hry z prelomu tisícročí. Vyskúšate prejsť všetky mapy na Škode 130RS?
V minulém díle (Octave - 2 (počítání s maticemi)) jsme si ukázali vytvoření matice ručně - výčtem hodnot. Matici můžeme získat i jinak - Octave disponuje celou řadou funkcí pro tvorbu matic určitého typu. S výjimkou permutace mají všechny níže uvedené funkce dva parametry, kterými říkáme, kolik řádků a kolik sloupců má výsledná matice mít (vhodnými parametry jsou tedy pouze kladná čísla). Pokud uvedeme pouze jeden parametr, výsledná matice bude čtvercová. Funkce jsou tedy následující:
Příklady pro představu:
>> zeros(2,4) ans = 0 0 0 0 0 0 0 0 >> 4 * ones(2,3) ans = 4 4 4 4 4 4 >> eye(3) ans = 1 0 0 0 1 0 0 0 1 >> randn(2,5) ans = 1.324077 -0.408510 1.516083 -0.372057 -0.138184 0.787720 -0.186652 0.079070 0.056826 1.679005 >> floor(rand(4,6)*20)+1 % Chceme celá čísla od 1 do 20 ans = 3 10 2 6 5 16 6 4 10 8 19 9 18 20 1 18 13 8 17 8 13 7 12 20 >> randperm(8) ans = 4 6 5 7 2 8 3 1 >> tril(ones(3)) ans = 1 0 0 1 1 0 1 1 1 >> triu(ones(5),-2) ans = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 0 0 1 1 1
Octave také obsahuje funkce pro výrobu speciálních matic, jakými jsou například Hankelova, Hilbertova, Sylvesterova či Toeplitzova matice. Popis parametrů je v nápovědě.
Funkce size s parametrem nějaké matice vrací dvouprvkový vektor, ve kterém první hodnota odpovídá počtu řádků dané matice a druhá počtu sloupců:
>> size(ones(5)) ans = 5 5
Funkce rows a columns vrací pouze odpovídající složku z dvouprvkového výsledku funkce size, tj. počet řádků, respektive počet sloupců z dané matice:
>> rows([1:5]') ans = 5 >> columns(zeros(4,60)) ans = 60
Počet řádků a počet sloupců nějaké matice tedy lze do proměnných uložit dvěma následujícími ekvivalentními způsoby:
>> Matice=zeros(5,20); >> [radky, sloupce]=size(Matice) radky = 5 sloupce = 20 >> radky=rows(Matice), sloupce=columns(Matice) radky = 5 sloupce = 20
Funkce length vrací větší z hodnot vrácených funkcí size, typicky se používá pro výpočet počtu prvků v nějakém vektoru, přičemž se nemusíme starat o to, zda je tento vektor řádkový či sloupcový:
>> length([1 2 3 8]) ans = 4
Znak dvojtečka slouží k zhuštěnému zápisu řádkového vektoru obsahujícího nějakou aritmetickou posloupnost. Obecně v zápisu figurují tři čísla oddělená dvojtečkami. První z nich představuje počáteční člen posloupnosti, druhé velikost kroku a třetí poslední přípustný člen řady. Více to bude patrno z příkladů:
>> 1:1:6 ans = 1 2 3 4 5 6
Posloupnost čísel od jedné do šesti s krokem jedna:
>> 1.5:2.5:7.9 ans = 1.5000 4.0000 6.5000
Následující potenciální člen posloupnosti 6,5 + 2,5 = 9 již je číslo větší jak nejvyšší přípustný člen posloupnosti, tj. číslo 7,9, proto již v posloupnosti obsažen není. Všimněme si, že v zápisu samozřejmě lze pracovat s reálnými čísly, nejenom s celými.
>> 5:-1:-1 ans = 5 4 3 2 1 0 -1 >> 0:8 ans = 0 1 2 3 4 5 6 7 8
V případě, že není krok uveden - zápis sestává pouze ze dvou čísel oddělených jednou dvojtečkou - považuje se za krok hodnota 1. Zápis posloupnosti s dvojtečkovou notací se používá zejména při indexovaném přístupu k obsahu matic, lze tak snadno vybrat například druhý až jedenáctý řádek dané matice. Více viz následující odstavce.
Nezřídka se může stát, že při výpočtu je potřeba pracovat pouze s určitými prvky nějakého vektoru či matice, nikoliv s celým obsahem proměnné najednou. V kulatých závorkách uvedených bezprostředně za názvem proměnné lze uvést index prvku, s kterým se má pracovat:
>> X=5:-1:-4 X = 5 4 3 2 1 0 -1 -2 -3 -4 >> X(1) ans = 5 >> X(4) ans = 2 >> X(end) ans = -4
Zadáním jednoho čísla se odkazujeme na pozici v daném vektoru. Pozice se
číslují od jedničky, na poslední pozici se lze odvolat pomocí klíčového
slůvka end. Jedním výběrem však pozic můžeme vybrat více
- výsledkem je „podvektor“ složený z prvků vybraných z
původního vektoru v uvedeném pořadí:
>> X(3:7) ans = 3 2 1 0 -1 >> X(end:-2:1) ans = -4 -2 0 2 4 >> X([8,5,7,1]) ans = -2 1 -1 5 >> X([9,9,9,1,1]) ans = -3 -3 -3 5 5
Poslední uvedený příklad ukazuje, že není problémem vybrat prvek na zvolené pozici vícekrát - při budování výsledného vektoru se právě tolikrát a právě v takovém pořadí vybrané prvky objeví. Za povšimnutí stojí též fakt, že zadání více pozic je nutno zapsat jako vektor těchto pozic (tj. v hranatých závorkách), na úrovni kulatých závorek lze totiž u vektoru zadat pouze jeden parametr indexování.
Přístup k prvkům matice analogicky odpovídá přístupu ke složkám vektoru s tím rozdílem, že je nutno zadat indexy dva - řádkový a sloupcový oddělené čárkou (no, není to tak úplně pravda, ale to se ukáže až později):
>> M=fix(rand(5)*21)-10;
% Vyber prvek z druhého řádku a čtvrtého sloupce
>> M(2,4)
ans = -9
% Vyber první-až-třetí řádek průnik třetí-až-pátý sloupec
>> M(1:3,3:5)
ans =
0 7 10
10 -9 -5
-2 -8 -1
% Vyber postupně pátý, třetí a první řádek skrze všechny sloupce
>> M([5,3,1],:)
ans =
-5 5 -1 -5 -2
5 -7 -2 -8 -1
-8 -2 0 7 10
V případě, kdy chce uživatel vybrat všechny řádky respektive všechny
sloupce, stačí na místě příslušného indexu uvést pouze znak „:“
namísto ekvivalentního 1:end.
Výběr určitých prvků z matice lze činit také proto, abychom tyto prvky nahradili jinými hodnotami. Oblast výběru svými rozměry musí vždy odpovídat rozměrům vkládané matice:
>> M(1,2)=-4 >> M(1,:)=M(3,:) >> M([2,4],[2,4])=ones(2) >> M(:,2)=[]
První příkaz nahradil prvek v prvním řádku a druhém sloupci hodnotou
-4; druhý zkopíroval třetí řádek na první řádek; třetí
nahradil prvky v matici ve druhém a čtvrtém řádku i sloupci jedničkami;
poslední pak smazal druhý sloupec - mazání se provádí vložením prázdné
matice (viz minulý díl).
Aby byla zachována konzistence matice, je nutno mazat vždy celé řádky či
sloupce.
Příští díl se bude věnovat relačním a logickým operátorům v Octave.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
page_screen_output=0
-- Built-in Variable: page_screen_output
If the value of `page_screen_output' is nonzero, all output
intended for the screen that is longer than one page is sent
through a pager. This allows you to view one screenful at a time.
Some pagers (such as `less'--see *Note Installation::) are also
capable of moving backward on the output. The default value is 1.