abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 04:33 | Zajímavý software

    Edison Design Group po více než 30 letech zveřejnil zdrojový kód svého EDG C/C++ front-endu. Ten proslul širokou podporou standardů C++ a kompatibilitou s dialekty kompilátorů od Microsoftu, GNU, Clangu, Sunu a dokonce i s prehistorickým cfrontem. EDG byl použit například v kompilátoru Intel C++ Classic, kompilátoru NVCC od firmy NVIDIA pro platformu CUDA nebo v našeptávači kódu IntelliSense v produktech společnosti Microsoft. Projekt nyní spravuje organizace The C++ Alliance a kód je dostupný pod licencí Apache 2.0, doplněnou o výjimky projektu LLVM.

    AfD 💙 | Komentářů: 0
    dnes 04:11 | Zajímavý projekt

    Pocket Tank je malé kapesní virtuální akvárium postavené na vývojové desce ESP32-S3-Touch-AMOLED-1.8. Na dvoujádrovém mikrokontroléru ESP32-S3 s 8 MB PSRAM a 16 MB flash paměti běží jak simulace akvária, tak i malý jazykový model určující chování rybiček. Lokální model o velikosti 7,56 MB se 14 miliony parametrů vznikl destilací modelu Gemma 4 26B, tedy učitele s 26 miliardami parametrů. Kromě firmwaru pro skutečný modul s AMOLED

    … více »
    AfD 💙 | Komentářů: 0
    dnes 03:55 | Zajímavý software

    Open-source nástroj Jevstiller vytváří (destiluje) malý lokální model, který se průběžně učí z odpovědí komerční služby Jev. Běžné dotazy vyřizuje přímo na vlastním hardware, čímž může řádově zkrátit čas odezvy a snížit provozní náklady díky menšímu využívání zpoplatněného API. Nejisté požadavky Jevstiller posílá do Jevu, rovněž průběžně kontroluje náhodná dvě procenta dotazů Jevem. Pokud se lokální model začne s Jevem rozcházet,

    … více »
    AfD 💙 | Komentářů: 0
    včera 12:00 | Pozvánky

    Konference LinuxDays 2026 proběhne již tento víkend 3. a 4. října v Praze v areálu ČVUT v Dejvicích na FIT. Konference LinuxDays 2026 znamená desítky přednášek a workshopů, zástup zajímavých osobností, místo pro setkání, spoustu nových nápadů a informací a stánky řady různých projektů: Fedora, openSUSE, vpsFree.cz, Mozilla, MacGyver - bastlíři SH, OpenAlt a mnoho dalších. Vstup je volný.

    Ladislav Hagara | Komentářů: 4
    včera 04:33 | IT novinky

    Microsoft oznámil, že WSL kontejnery (WSLC) aneb linuxové kontejnery ve Windows Subsystem for Linux (WSL) jsou již obecně dostupné. Současně popsal jejich architekturu.

    Ladislav Hagara | Komentářů: 0
    29.9. 23:22 | Komunita

    openSUSE Leap 16.1 vstoupil do RC fáze. Nově lze instalovat jako standardní systém (Standard) nebo jako neměnný systém s atomickými aktualizacemi (Immutable). Samostatná neměnná distribuce openSUSE Leap Micro končí.

    Ladislav Hagara | Komentářů: 0
    29.9. 22:22 | Nová verze

    Byl vydán Mozilla Firefox 157.0. S nejvýraznější vizuální proměnou za poslední roky. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 157 bude brzy k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 9
    29.9. 10:33 | IT novinky

    Rodina produktů Raspberry Pi se rozšířila o Raspberry Pi Smart Display Module. Deska pro Raspberry Pi Compute Module 5 se zasouvá přímo do displejů dle specifikace Intel SDM. Cena desky je 30 dolarů.

    Ladislav Hagara | Komentářů: 0
    28.9. 23:44 | Nová verze

    Byla vydána nová verze 2.56.0 distribuovaného systému správy verzí Git. Přispělo 104 vývojářů, z toho 39 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    28.9. 21:22 | Bezpečnostní upozornění

    Hackerská skupina ShinyHunters oznámila průnik do informačních systémů FBI, prostřednictvím zero-day zranitelnosti v platformě Oracle PeopleSoft, kterou úřad využívá mimo jiné pro náborový portál FBIJobs.gov. Útočníci tvrdí, že získali až 3 TB dat o současných i bývalých zaměstnancích a uchazečích o práci. Jako důkaz zveřejnili vzorek přibližně 5 000 záznamů obsahující jména, adresy, telefonní čísla, data narození, čísla

    … více »
    AfD 💙 | Komentářů: 3
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (21%)
     (29%)
     (8%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2764 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník

    Dotaz: Hledání v databázi (slovník) nějakého výrazu či částečné podobnosti

    7.3.2013 13:23 Bubla
    Hledání v databázi (slovník) nějakého výrazu či částečné podobnosti
    Přečteno: 585×
    Dobrý den,

    jakým způsobem se přistupuje ke hledání podobností v databázi? dejme tomu, že mám dotaz typu 'ahoj'

    položky v databázi

    - ahojblas - ahoj - blas - ldsd ahoj - bubak - kralik

    jakým způsobem z tohoto seznamu poté vyfiltrovat slova, která mají největší podobnost? Celé toto hledání je spíše fulltext nebo fuzzy matching?

    Předpokládám, že na tuto funkcionalitu budou potřebné regulární výrazy, že ano?

    Odpovědi

    7.3.2013 13:24 Bubla
    Rozbalit Rozbalit vše Re: Hledání v databázi (slovník) nějakého výrazu či částečné podobnosti
    vzorek databáze ještě jednou

    - ahojblas

    - ahoj

    - blas

    - ldsd ahoj

    - bubak

    - kralik
    Tarmaq avatar 7.3.2013 13:56 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: Hledání v databázi (slovník) nějakého výrazu či částečné podobnosti
    pokud ti staci jen vyrazy, ktere obsahuji 'ahoj', tak staci zadat:
    SELECT vyraz
    FROM vyrazy
    WHERE vyraz LIKE '%ahoj%'
    
    Don't panic!
    7.3.2013 14:43 potato
    Rozbalit Rozbalit vše Re: Hledání v databázi (slovník) nějakého výrazu či částečné podobnosti
    Fuzzy matching se dělá v nejjednodušším případě Levenstheinovou vzdáleností řetězců s vhodně definovanými meziznakovými vzdálenostmi, ve složitějším s použitím statistických modelů daného jazyka. Což ovšem nenapíšeš standardním SQL dotazem. Nestandardní existují. Postgresql má přímo funkci levenshtein, dá se vygooglit jakási T-SQL implementace, etc.

    Má-li záznam ten řetězec přímo obsahovat, nanejvýš s nějakým bordelem okolo, tak můžeš použít LIKE, jak píše kolega. Nicméně vybrat pak maximálně shodný zase potřebuje metriku nad řetězci, tudíž si tímhle moc nepomůžeš.
    7.3.2013 15:33 Bubla
    Rozbalit Rozbalit vše Re: Hledání v databázi (slovník) nějakého výrazu či částečné podobnosti
    děkuji za info

    a jakým způsobem by se k tomuto přistupovalo, pokud by to bylo např. v programovacím jazyce místo SQL?
    7.3.2013 16:52 DarkKnightCZ | skóre: 12
    Rozbalit Rozbalit vše Re: Hledání v databázi (slovník) nějakého výrazu či částečné podobnosti
    regularni vyrazy, pouzijes funkce stylu strstr/strpos, nebo si napises vlastni algoritmus stylem - "prochazej cely radek, znak po znaku, pokud se rovna aktualni znak prvnimu znaku slova a zaroven nasledujici znak se rovna druhemu znaku slova a zaroven dalsi nasledujici znak se rovna tretimu znaku slova atd. az po konec slova, slovo bylo nalezeno"
    7.3.2013 17:03 potato
    Rozbalit Rozbalit vše Re: Hledání v databázi (slovník) nějakého výrazu či částečné podobnosti
    Jen to ne. Najdeš si knihovnu, která implementuje řetězcové metriky, a použiješ ji. Hledej fuzzy matching, Levenshtein, string distance, edit distance, ...
    7.3.2013 17:14 graviton
    Rozbalit Rozbalit vše Re: Hledání v databázi (slovník) nějakého výrazu či částečné podobnosti
    http://norvig.com/spell-correct.html <- co třeba tohle, to je takový pěkný příklad...
    7.3.2013 17:23 Bubla
    Rozbalit Rozbalit vše Re: Hledání v databázi (slovník) nějakého výrazu či částečné podobnosti
    Děkuji, to vypadá jako pěkná ukázka, zkusím se z toho něco přiučit. Přitom se zkusím ještě podívat pořádně na ten fuzyy matching. ještě jednou děkuji za informace.
    7.3.2013 17:45 Bubla
    Rozbalit Rozbalit vše Re: Hledání v databázi (slovník) nějakého výrazu či částečné podobnosti
    tak tady je ještě další ukázka možností, kdyby někdo potřeboval

    http://stackoverflow.com/questions/682367/good-python-modules-for-fuzzy-string-comparison
    7.3.2013 17:47 Bubla
    Rozbalit Rozbalit vše Re: Hledání v databázi (slovník) nějakého výrazu či částečné podobnosti
    a ještě obdobné vlákno na http://stackoverflow.com/questions/451884/similar-string-algorithm/451910#451910
    7.3.2013 18:42 Bubla
    Rozbalit Rozbalit vše Re: Hledání v databázi (slovník) nějakého výrazu či částečné podobnosti
    Tak to vypadá, že už mi něco funguje, teď jsem ale přišel na jeden zásadní problém...

    jde totiž o to, že některé řetězce ze kterých bych chtěl vybírat, tak jsou různě dlouhé... např.

    - 'Alfonz bulba velký'

    - 'Quercus lodes malý'

    - 'Sanchenzo Lopez'

    - 'Lopez oglomenz'

    - 'lodes'

    a bohužel většina těch dostupných knihoven předpokládá celé jedno slovo, nebo sérii vůči sérii.

    tedy pokud budu hledat 'lopez', tak s největší pravděpodobností vrátí 'lodes', a 'Lopez oglomenz' nebude mít dostatečně velký koeficient, napadlo mě tedy všechny rozdělit na části a hledat v nich, jenže to je pak nutné držet i původní verzi a nějak správně zacílit původní verzi. No další problém se vyskytne v případě kdy někdo zadá výraz 'lodes Sanchenzo' a já budu mít části rozdělené?

    z toho mi vychází, že bude nutné provést několik testů a pak je mezi sebou porovnat? tedy rozdělit slova jak na vstupu tak v databázi a pak je opět nějak složit?
    7.3.2013 19:26 potato
    Rozbalit Rozbalit vše Re: Hledání v databázi (slovník) nějakého výrazu či částečné podobnosti
    To je otázka metriky. Já bych taky řekl, že lodes je bližší...

    První krok asi tedy musí být pořádná specifikace kritéria blízkosti. Když máš dvě slova a jedno z nich odpovídá přesně, zjevně to preferuješ před přibližnou shodou podobně dlouhých slov. Co když budeš k tomu přesně odpovídajícímu slovu mít přilepenou celou větu? Bibli? Nekonečný rozvoj pí? Pořád to má být bližší než lodes? Nejdřív je nutné vědět, co chceš udělat, potom lze řešit jak.
    7.3.2013 20:10 graviton
    Rozbalit Rozbalit vše Re: Hledání v databázi (slovník) nějakého výrazu či částečné podobnosti
    Bez znalosti problémové domény asi těžko navrhneme přibližný trefovač, který by v ní generoval přirozeně se chovající odhady.

    Jen nadhodím trik, se kterým jsme kdysi ubastlili relativně přirozeně se chovající slovníček nad daty s mixem slov a celých vět:
    1. setřídili jsme si slovník podle délky slova/fráze vzestupně
    2. hledání hledalo ve slovníku zadanou věc sekvenčně jako podřetězec (žádné překlepy)
    3. hledání se zastavilo po N nálezech
    Díky bodu 1 to přesné zásahy vracelo nejdřív a případně to potom vracelo i slova s daným podřetězcem nebo fráze s tím slovem.

    Je otázka, jak do toho začlenit nějaké přibližné porovnávání, asi jet na dva průchody - přesný a přibližný, na výstupu jejich výsledky nějak ováhovaně zkombinovat.

    Netuším, jestli z toho něco k něčemu bude, jen tak nadhazuju...
    8.3.2013 23:18 Logik
    Rozbalit Rozbalit vše Re: Hledání v databázi (slovník) nějakého výrazu či částečné podobnosti
    Asi to co chceš je, rozdělit si fráze ve slovníku po slovech a vrátit libovolnou, která má alespoň jedno slovo podobné. Popř. můžeš hodnotu podobnosti vydělit délkou fráze ve slovech.

    Víceslovné fráze pak můžeš vyhledávat pomocí součinu podobnosti jednotlivých slov vyhledávané fráze.
    9.3.2013 09:03 Bubla
    Rozbalit Rozbalit vše Re: Hledání v databázi (slovník) nějakého výrazu či částečné podobnosti
    o to jsem se pokoušel, ale výsledek nebyl moc dobrý, jelikož se pak celé řetězce špatně skládaly dohromady.

    nakonec jsem použil match slova na řetězec a v rozdělil několik úrovní pro "match" viz 0.0-1.0 např. SequenceMatcher pokud poté dosahuje určité úrovně, tak dojde k kontrole jednotlivých slov v řetězci a původního slova, pokud je nějaká vyšší úroveň, tak jí vrátí.

    A tímto způsobem následně při hledání se vrátí několik matchu s různou úrovní přesnosti.

    Založit nové vlákno • Nahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.