Bemenet egy tömb bármilyen típusú elemekkel.
Kimenet szintén egy tömb új sorrenddel és egyedi értékekkel.
Mi a cél?
Előzményekben való keresésnél ne csak az utolsókat hozzuk fel időrendi sorrendben, hanem relevancia is számítson. Megtartható az utolsó pár darab elem sorrendje, hogy csak a második vagy harmadik találattól felfelé legyen adaptív a sorrend.
Hogyan működik?
Minden egyes értékhez összeadjuk az index értékeik reciprokát és ez alapján rendezünk. Ez egy hiperbolikus súlyozást ad, melynél jóval nagyobb súlyt kapnak a frissebb bejegyzések, és így mindig át tudja lépni azt a küszöböt, ha nagyon sok régi érték van. 100 egyforma értékhez 12 új érték kell hogy ez utóbbi kerüljön előre, 1000 egyformához 39. Nagyobb index újabb bejegyzést jelent. Ruby implementáció. Sorba rendezést kivéve O(n) alatt fut.
Példa:
2 3 4 3 3 5 5 5 4 1 =>
2 3 4 1 5
3 1 5 3 4 3 3 5 3 3 4 3 1 4 5 3 2 1 5 4 4 4 3 3 4 3 3 2 4 3 2 1 1 3 2 4 4 2 1 5 1 4 5 3 2 5 1 2 5 3 5 5 2 4 3 3 4 1 2 5 1 3 3 2 4 5 4 2 1 4 5 2 5 5 2 2 1 4 2 1 1 2 5 1 3 1 2 5 2 4 4 3 3 1 2 5 2 2 1 3 2 2 1 2 4 2 2 3 2 3 1 3 5 1 3 4 1 1 4 2 2 2 1 2 4 2 5 1 2 4 5 1 1 3 5 1 3 5 4 4 2 4 1 5 3 3 5 3 2 4 4 2 5 2 1 1 2 5 4 5 2 4 1 2 5 5 5 4 1 1 4 2 3 1 4 5 2 3 3 2 2 5 5 2 1 1 5 1 5 2 3 1 4 1 3 5 5 3 4 5 3 1 4 1 2 2 3 5 1 5 4 1 3 2 1 5 5 1 3 4 1 1 5 5 3 2 5 4 1 1 3 4 5 2 1 4 2 4 4 2 4 3 3 4 3 2 3 4 4 3 1 5 2 4 5 2 4 1 2 4 4 3 5 2 1 4 4 3 3 3 1 3 2 5 1 2 4 3 4 2 3 3 3 5 4 4 3 3 5 2 3 5 3 3 2 3 2 1 2 5 =>
4 1 5 2 3
Ez utóbbi lista eloszlása, hogy melyik értékből mennyi van:
5=>55, 1=>57, 4=>58, 2=>65, 3=>65
...
- sinexton blogja
- A hozzászóláshoz be kell jelentkezni
- 275 megtekintés
Hozzászólások
jaj mar, megint egy offtopik. Ha lehet programozos/matekozos blogot ne egy politikai oldalra.
Saying a programming language is good because it works on all platforms is like saying anal sex is good because it works on all genders....
- A hozzászóláshoz be kell jelentkezni
marha :)
- A hozzászóláshoz be kell jelentkezni
Igazából párt népszerűségi előzmények utólagos elemzésére szolgál, csak matekos blognak álcáztam.
- A hozzászóláshoz be kell jelentkezni
:)
Saying a programming language is good because it works on all platforms is like saying anal sex is good because it works on all genders....
- A hozzászóláshoz be kell jelentkezni
A language server protocol ismeretében a következő lépés lehet egy tetszőleges programozási nyelv IDE-ket segítő szerverének implementálása. Aztán meglátjuk, Hozza-e a hozzá fűzött reményeket.
Megjegyzem az ABC sorrendbe tett találatoknak is van előnye.
- A hozzászóláshoz be kell jelentkezni
ABC sorrend szerintem is fontos, ezt úgy gondolom hatékonynak, hogy a lista tetején pár sorban az adaptív sorrend van, alatta meg az összes ABC-ben, így mindkettő előnye megjelenik.
- A hozzászóláshoz be kell jelentkezni
Kíváncsi vagyok, milyen eredményre jutsz.
Az RLS egyébként ahogy elnézem, a leg egyszerűbb STDIN-RLS-STDOUT progi, amit maga alá hív az editor és ezen keresztül tolja a Language Server Protocol szerint az adatcserét.
- A hozzászóláshoz be kell jelentkezni
Egyelőre nincs kapacitásom megnézni. Arra utalmtam a másik szálban inkább, hogy mit lenne szerintem érdemes csinálni. Amit kapacitásban kivitelezhetőnek tartanék, az anomália detektálás. És ehhez a sima forrás kód lenne az input.
A kulcsa az egésznek a jó feature engineering. Ugyanis ha ez nincs, akkor nem tud tanulni és így nincs értelmes kimeneti válasz.
Az FE szempontjából pedig azt érdemes megvizsgálni, hogy mik a legszembetűnőbb problémák számunkra a kód futtatásakor. Ezek közül pedig megszűrni, melyekre lehet normális szintű FE-t adni. Majd tesztelni a tanulási képességet. Ha ez meg van és elegendő szinten tud tanulni belőle (nem csak zaj lesz a kimenet, hanem például kereszt validációval ellenőrizhető is), akkor van már egy használható segítség.
Viszont sok esetben nincs mód tanítási minta felhalmozására (kevés az adat vagy túl zajos), mely azért értelmes korrelációkat tartalmaz (kibontható infót). Ezért gondolkodok anomália detektálásban, mely igazából devianciákat vesz észre. Ez is segíthet valamit. Gyakorlatban ki tud derülni.
AD-hez ha szintén sikerül egy jó FE-t csinálni, akkor még ha fals pozitív is a jelzés, mutogathatja a kódban, hogy légyszí itt meg ott lesd már meg, mert kicsit extrém az összefüggés rendszer azon a részen. Ehhez egyébként pont tegnap terveztem egy jobb szöveg ábrázolási vektorizálást, ahol bármilyen string-et egyetlen számmá alakítok. Ha lesz időm akkor leblogolom ide.
Nem mindig ez a legjobb feature kibontás, ez csak egy darab eszköz a ládában, de nekem most ez kellett egy másik dologhoz. Hot encoding-al kombinálva is érdekes lehet. A nyers adatokat megfelelő módon újra ábrázoljuk más módon, mely jobban tanulhatóvá teszi. A probléma a szöveges értéknél (pl mondatok) az, hogy változó hosszúságú és változó struktúrájú. Ezért sorrend invariáns megoldás kell stb.
Egyelőre AD megoldást látok könnyebben és gyorsabban ráhúzhatónak kód elemzésre. A kérdés az, hogy milyen pontokon tudom megtámadni a kód struktúrát, amelyekhez elég infó és variancia van kevesebb zaj mellett.
Sajnos ez is sok idő.
- A hozzászóláshoz be kell jelentkezni