Maybaygiare.org

Blog Network

modellek.ldamodel – Latent Dirichlet allokáció

használati példák

képezzen ki egy LDA modellt egy gensim corpus segítségével

>>> from gensim.test.utils import common_texts>>> from gensim.corpora.dictionary import Dictionary>>>>>> # Create a corpus from a list of texts>>> common_dictionary = Dictionary(common_texts)>>> common_corpus = >>>>>> # Train the model on the corpus.>>> lda = LdaModel(common_corpus, num_topics=10)

mentsen el egy modellt lemezre, vagy töltsön be újra egy előre betanított modellt

>>> from gensim.test.utils import datapath>>>>>> # Save model to disk.>>> temp_file = datapath("model")>>> lda.save(temp_file)>>>>>> # Load a potentially pretrained model from disk.>>> lda = LdaModel.load(temp_file)

lekérdezés, a modell új, láthatatlan dokumentumokat használ

frissítse a modellt az új korpusz fokozatos képzésével

>>> lda.update(other_corpus)>>> vector = lda

sok paraméter állítható be, hogy optimalizálja a képzést az adott esethez

>>> lda = LdaModel(common_corpus, num_topics=50, alpha='auto', eval_every=5) # learn asymmetric alpha from data

class gensim.models.ldamodel.LdaModel(corpus=None, num_topics=100, id2word=None, distributed=False, chunksize=2000, passes=1, update_every=1, alpha=’symmetric’, eta=None, decay=0.5, offset=1.0, eval_every=10, iterations=50, gamma_threshold=0.001, minimum_probability=0.01, random_state=None, ns_conf=None, minimum_phi_value=0.01, per_word_topics=False, callbacks=None, dtype=<class ‘numpy.float32’>)¶

Bases: gensim.interfaces.TransformationABCgensim.models.basemodel.BaseTopicModel

vonat és használat Online látens Dirichlet Allocation (OLDA) modellek bemutatott inHoffman et al. : “Online tanulás a látens Dirichlet Allokációhoz”.

példák

modell inicializálása egy gensim korpusz használatával

>>> from gensim.test.utils import common_corpus>>>>>> lda = LdaModel(common_corpus, num_topics=10)

ezután új, láthatatlan dokumentumokra következtethet a témakör eloszlására.

>>> doc_bow = >>> doc_lda = lda

a modell frissíthető (betanítható) új dokumentumokkal.

>>> # In practice (corpus =/= initial training corpus), but we use the same here for simplicity.>>> other_corpus = common_corpus>>>>>> lda.update(other_corpus)

a modell tartóssága aload() és save() módszerekkel érhető el.

paraméterek

  • corpus (iterálható listája (int, float), opcionális) – patak dokumentum vektorok vagy ritka mátrix alakja (num_documents, num_terms).Ha van egy CSC in-memory mátrixa, akkor a gensim segítségével átalakíthatja astreamed corpus-ba.matutilok.Sparse2Corpus.Ha nincs megadva, a modell képzetlen marad (feltehetően azért, mert kézzel szeretné hívni aupdate() számot).

  • num_topics (Int, opcionális) – a kért látens témák száma, amelyeket ki kell vonni a képzési korpuszból.

  • id2word ({dict of (int, str), gensim.corpora.dictionary.Dictionary}) – leképezés szóazonosítókról szavakra. A szókincs méretének meghatározására, valamint a fordításratörés és téma nyomtatás.

  • elosztott (bool, opcionális) – az elosztott számítástechnikát kell-e használni a képzés felgyorsításához.

  • chunksize (Int, opcionális) – az egyes képzési darabokban használandó dokumentumok száma.

  • passzok (Int, opcionális) – a korpuszon való áthaladások száma edzés közben.

  • update_every (Int, opcionális) – az egyes frissítésekhez iterálandó dokumentumok száma.Állítsa 0-ra a kötegelt tanuláshoz, > 1 az online iteratív tanuláshoz.

  • alfa ({numpy.ndarray, str}, opcionális) –

    beállítható egy 1D hosszúságú tömbre, amely megegyezik a várt témák számával, amelyek kifejezik az a-priori hitünket az egyes témák valószínűségéhez.Alternatív megoldásként alapértelmezett előzetes kiválasztási stratégiák alkalmazhatók egy karakterlánc megadásával:

    • ‘symmetric’: Default; fix szimmetrikus priort használ témánként,

    • ‘aszimmetrikus’: rögzített normalizált aszimmetrikus priort használ 1.0 / (topic_index + sqrt(num_topics)),

    • ‘auto’: aszimmetrikus priort tanul a corpus (nem érhető el, ha elosztva==igaz).

  • eta ({float, np.array, str}, opcionális) –

    a-priori meggyőződés a szó valószínűségéről, ez lehet:

    • skalár egy szimmetrikus prior felett téma/szó valószínűsége,

    • vektor hossza num_words jelölésére aszimmetrikus felhasználó által meghatározott valószínűség minden szó,

    • mátrix alakja (num_topics, num_words) rendelni egy valószínűség minden szó-téma kombináció,

    • Az ‘Auto’ karakterlánc az aszimmetrikus prior megismeréséhez az adatokból.

  • decay (float, opcionális) – egy szám között (0.5, 1] annak súlyozására, hogy az előző lambda-érték hány százalékát felejtik elamikor minden új dokumentumot megvizsgálnak. Megfelel Kappa fromMatthew D. Hoffman, David M. Blei, Francis Bach:”Online tanulás látens Dirichlet Allocation NIPS’10”.

  • offset (float, opcionális)-

    Hyper-paraméter, amely szabályozza, hogy mennyire lassítjuk az első lépéseket az első néhány iteráció.Megfelel Tau_0 Matthew D. Hoffman, David M. Blei, Francis Bach:”Online tanulás látens Dirichlet allokáció NIPS’10”.

  • eval_every (Int, opcionális) – Log zavarodottság becsült minden, hogy sok frissítést. Ennek az egynek a beállítása ~2x – rel lelassítja az edzést.

  • iterációk (Int, opcionális) – a korpuszon keresztüli iterációk maximális száma, amikor a korpusz témaeloszlására következtetünk.

  • gamma_threshold (float, opcionális) – a gamma paraméterek értékének minimális változása az iteráció folytatásához.

  • minimum_probability (float, opcionális) – a küszöbértéknél kisebb valószínűséggel rendelkező témák kiszűrésre kerülnek.

  • random_state ({np.véletlen.RandomState, int}, opcionális) – vagy egy randomState objektum, vagy egy mag, hogy létrehozzon egyet. Hasznos a reprodukálhatósághoz.

  • ns_conf (dict of (str, object), opcionális) – kulcsszó paraméterek szaporított gensim.utils.getNS() ahhoz, hogy a Pyro4 Nameserved.Csak akkor használható, ha a distributed értéke True.

  • minimum_phi_value (float, opcionális) – ha a per_word_topics igaz, ez a valószínűségek kifejezés alsó határát jelenti.

  • per_word_topics (bool) – ha igaz, a modell kiszámítja a témák listáját is, csökkenő sorrendben rendezve az egyes szavak legvalószínűbb témáihoz, valamint azok phi-értékeit megszorozva a funkció hosszával (azaz a szavak számával).

  • visszahívások (a Callback listája) – metrikus visszahívások a modell értékelési mutatóinak naplózásához és megjelenítéséhez edzés közben.

  • dtype ({numpy.float16, numpy.float32, numpy.float64}, opcionális)-a modellen belüli számítások során használandó adattípus. Minden bemenet is átalakításra kerül.

add_lifecycle_event(event_name, log_level=20, **event)

csatoljon egy eseményt ennek az objektumnak a lifecycle_events attribútumába, valamint az eseményt log_level-en is naplózhatja.

az események fontos pillanatok az objektum életében, például “létrehozott modell”,”mentett modell”, “betöltött modell” stb.

a lifecycle_events attribútum megmarad az objektum save()és load() műveleteiben. Nincs hatással a modell használatára, de hasznos a hibakeresés és a támogatás során.

állítsa be önmagát.lifecycle_events = nincs ennek a viselkedésnek a letiltásához. Hívások add_lifecycle_event () nem rögzíti eseményeket önálló.lifecycle_events akkor.

paraméterek

  • event_name (str) – az esemény neve. Bármilyen címke lehet, pl. “létrehozott”, “tárolt” stb.

  • event (dict) –

    kulcs-érték leképezés, hogy hozzáfűzze magát.lifecycle_events. JSON-szerializálhatónak kell lennie, ezért legyen egyszerű.Lehet üres.

    Ez a módszer automatikusan hozzáadja a következő kulcsértékeket az eseményhez, így nem kell megadnia őket:

    • datetime: az aktuális dátum & idő

    • gensim: az aktuális Gensim verzió

    • python: az aktuális Python verzió

    • platform: az aktuális platform

    • esemény: az esemény neve

  • log_level (int) – a teljes esemény dict naplózása a megadott naplószinten. Állítsa hamisra, hogy egyáltalán ne jelentkezzen be.

bound(corpus, gamma=None, subsample_ratio=1.0)

becsülje meg a korpuszból származó dokumentumok variációs kötését E_q – E_q-ként.

paraméterek

  • corpus (iterable of list of (int, float), opcionális) – Dokumentumvektorok vagy ritka alakmátrix (num_documents, num_terms), amelyeket a variációs határok becslésére használnak.

  • gamma (numpy.ndarray, opcionális) – téma súly variációs paraméterek az egyes dokumentumokhoz. Ha nem szállítják, akkor a modellből következtetnek.

  • subsample_ratio (float, opcionális) – a teljes korpusz százalékos aránya, amelyet az átadott korpusz argumentum képvisel (ha ez minta volt).Állítsa 1,0-ra, ha az egész korpusz elhaladt.Ezt multiplikatív tényezőként használják a valószínűség skálázásáramegfelelő módon.

visszaadja

az egyes dokumentumokra kiszámított variációs kötött pontszámot.

visszatérési típus

numpy.ndarray

clear() ++

törölje a modell állapotát, hogy felszabadítson egy kis memóriát. Az elosztott megvalósításban használják.

diff(other, distance=’kullback_leibler’, num_words=100, n_ann_terms=10, diagonal=False, annotation=True, normed=True)

számolja ki a különbséget a téma eloszlásában két modell között: self és other.

paraméterek

  • egyéb (LdaModel) – a modell, amely összehasonlításra kerül az aktuális objektummal.

  • távolság ({‘kullback_leibler’, ‘hellinger’,’ jaccard’,’ jensen_shannon’}) – a távolságmérő, amellyel a különbséget ki lehet számítani.

  • num_words (Int, opcionális) – a legrelevánsabb szavak száma, ha távolság == ‘jaccard’. Témák kommentálására is használják.

  • n_ann_terms (Int, opcionális) – a témák közötti metszéspontban/szimmetrikus különbségben lévő szavak maximális száma. Megjegyzésekhez használják.

  • átlós (bool, opcionális) – szükség van-e az azonos témák közötti különbségre (a különbségmátrix átlója).

  • megjegyzés (bool, opcionális) – vissza kell-e adni a két téma közötti szavak metszéspontját vagy különbségét.

  • normed (bool, opcionális) – a mátrixot normalizálni kell-e vagy sem.

visszatér

  • numpy.ndarray-különbség mátrix. Minden elem megfelel a két téma közötti különbségnek, alak (én.num_topics, egyéb.num_topics)

  • numpy.ndarray, opcionális-annotációs mátrix, ahol minden párhoz belefoglaljuk a két téma metszéspontjából származó szót,a szót pedig a két téma szimmetrikus különbségéből. Csak akkor tartalmazza, ha a megjegyzés = = igaz.Alak (self.num_topics, other_model.num_topics, 2).

példák

Szerezd meg a két modell által levezetett témapárok közötti különbségeket

>>> from gensim.models.ldamulticore import LdaMulticore>>> from gensim.test.utils import datapath>>>>>> m1 = LdaMulticore.load(datapath("lda_3_0_1_model"))>>> m2 = LdaMulticore.load(datapath("ldamodel_python_3_5"))>>> mdiff, annotation = m1.diff(m2)>>> topic_diff = mdiff # get matrix with difference for each topic pair from `m1` and `m2`

do_estep (chunk, state=None)

végezze el a következtetést egy darab dokumentumon, gyűjtsük össze az összegyűjtött elegendő statisztikát.

paraméterek

  • darab (lista listája (int, úszó)) – a corpus darab, amelyen a következtetési lépést végrehajtják.

  • állapot (LdaState, opcionális) – a frissítendő állapot az újonnan felhalmozott elegendő statisztikával. Ha nincs, a modellekmagát.állapot frissül.

visszaadja

Gamma paraméterek vezérli a téma súlyok, alak (len (darab), önálló.num_topics).

visszatérési típus

numpy.ndarray

do_mstep(rho, egyéb, extra_pass=False): használjon lineáris interpolációt a meglévő témák ésösszegyűjtött elegendő statisztikát a témák frissítéséhez. paraméterek

  • rho (float) – tanulási Arány.

  • egyéb (LdaModel) – az a modell, amelynek elegendő statisztikája lesz a témák frissítéséhez.

  • extra_pass (bool, opcionális) – szükséges-e ehhez a lépéshez további átadás a korpuszon.

get_document_topics(bow, minimum_probability=None, minimum_phi_value=None, per_word_topics=False)

szerezd meg az adott dokumentum témaelosztását.

paraméterek

  • íj (corpus: listája (int, úszó)) – a dokumentum íj formátumban.

  • minimum_probability (float) – a küszöbértéknél alacsonyabb valószínűségű témákat elvetjük.

  • minimum_phi_value (float) –

    Ha a per_word_topics igaz, akkor ez a valószínűségek kifejezés alsó határát jelenti.

    Ha nincs értékre van állítva, az 1E-8 érték a 0S megelőzésére szolgál.

  • per_word_topics (bool) – ha igaz, ez a függvény két extra listát is visszaad, amint azt a “visszatér” szakasz ismerteti.

visszatér

  • listája (int, float) – téma Eloszlás az egész dokumentumot. A lista minden eleme egy pár téma azonosítója, ésa hozzárendelt valószínűség.

  • listája (int, listája (int, float), opcionális – a legvalószínűbb témák szavanként. A lista minden eleme egy pár szó azonosítója, valamint egy listatémák a szó relevanciája szerint rendezve. Csak akkor tér vissza, ha a per_word_topics értéke True.

  • listája (int, float listája), opcionális – Phi relevancia értékek, szorozva a funkció hosszával, minden szó-téma kombinációhoz.A lista minden eleme egy szó azonosítójának párja, valamint a szó és az egyes témák közötti phi értékek listája. Csak akkor tér vissza, ha a per_word_topics értéke True.

get_term_topics(word_id, minimum_probability=None)

szerezd meg az adott szó legfontosabb témáit.

paraméterek

  • word_id (int) – az a szó, amelyre a téma eloszlását kiszámítják.

  • minimum_probability (float, opcionális) – a küszöbérték alatti hozzárendelt valószínűségű témákat elvetjük.

visszaadja

az ID és a hozzárendelt valószínűség párjait, az adott szó relevanciája szerint rendezve.

visszatérési típus

listája(int, float)

get_topic_terms(topicid, topn=10)

szerezd meg az ábrázolást egyetlen témához. Szavak az egész azonosítók, a constrast a show_topic(), amely képviseli a szavakat a tényleges karakterláncok.

paraméterek

  • topicid (int) – a visszaadandó téma azonosítója

  • topn (Int, opcionális) – a témához társított legjelentősebb szavak száma.

Szóazonosító – valószínűségi párokat ad vissza a téma által generált legrelevánsabb szavakhoz.

visszatérési típus

listája (int, float)

get_topics () a következtetés során megtanult téma mátrix megszerzése. visszaadja

az egyes szavak valószínűségét az egyes témákban, alakzatokban (num_topics, vocabulary_size).

visszatérési típus

numpy.ndarray

inference(chunk, collect_sstats=False)

mivel egy darab ritka dokumentumvektor, becsülje meg a gamma-t (a téma súlyait szabályozó paraméterek)a darab minden egyes dokumentumához.

Ez a funkció nem módosítja azt a modellt, amelyről feltételezzük, hogy a dokumentum teljes bemeneti darabja belefér a RAM-ba;egy nagy korpusz darabolását korábban kell elvégezni a folyamatban. Elkerüli a phi variáció kiszámításátparaméter közvetlenül a bemutatott optimalizálás felhasználásával inLee, Seung: algoritmusok a nem negatív mátrix faktorizáláshoz”.

paraméterek

  • darab (lista listája (int, úszó)) – a corpus darab, amelyen a következtetési lépést végrehajtják.

  • collect_sstats (bool, opcionális)-ha True értékre van állítva, akkor gyűjtsön (és adjon vissza) elegendő statisztikát a modell témájának frissítéséhez-worddistributions.

visszatér

az első elem mindig visszatér, és megfelel az államok gamma mátrix. A második elem csak akkor tér vissza, ha collect_sstats = = True, és megfelel az M lépéshez elegendő statisztikának.

visszatérési típus

(numpy.ndarray ,numpy.ndarray, None})

init_dir_prior(prior, név) a Dirichlet-Eloszlás prior-jainak inicializálása. paraméterek

  • előzetes ({str, float listája, numpy.ndarray float, float}) –

    a-priori hit szó valószínűsége. Ha name = = ‘eta’, akkor a prior lehet:

    • skalár egy szimmetrikus prior felett téma/szó valószínűsége,

    • vektor hossza num_words jelölésére aszimmetrikus felhasználó által meghatározott valószínűség minden szó,

    • mátrix alakja (num_topics, num_words) rendelni egy valószínűség minden szó-téma kombináció,

    • Az ‘Auto’ karakterlánc az aszimmetrikus prior megismeréséhez az adatokból.

    Ha name == ‘alpha’, akkor a prior lehet:

    • a várt témák számával megegyező hosszúságú 1D tömb,

    • ‘szimmetrikus’: témánként rögzített szimmetrikus priort használ,

    • ‘aszimmetrikus’: 1.0/(topic_index + sqrt(num_topics)),

    • ‘Auto’: aszimmetrikus priort tanul meg a korpuszból.

  • név ({‘alpha’, ‘eta’}) – függetlenül attól, hogy a priort az alfa vektor (1 paraméter témánként)vagy az eta (1 paraméter egyedi kifejezésenként a szókincsben) paraméterezi-e.

classmethod load(fname, *args, **kwargs)

töltsön be egy korábban mentett gensim.models.ldamodel.LdaModel fájlból.

Lásd még

save()

Modell mentése.

paraméterek

  • fname (str) – a modell tárolásának elérési útja.

  • *args-pozicionális argumentumok szaporítva load().

  • **kwargs-kulcsszó argumentumok szaporított load().

példák

a nagy tömböket vissza lehet állítani írásvédett memóriaként (megosztott memória) az mmap=’r’beállításával:

>>> from gensim.test.utils import datapath>>>>>> fname = datapath("lda_3_0_1_model")>>> lda = LdaModel.load(fname, mmap='r')

log_perplexity(chunk, total_docs=none)

számolja ki és adja vissza szavanként valószínűség kötött, egy darab dokumentumok értékelési Corpus.

a kiszámított statisztikákat is kiírja, beleértve a zavart=2^(-kötött), az információs szinten történő bejelentkezéshez.

paraméterek

  • darab (lista listája (int, úszó)) – a corpus darab, amelyen a következtetési lépést végrehajtják.

  • total_docs (Int, opcionális) – a zavarosság értékeléséhez használt dokumentumok száma.

visszaadja

az egyes szavakra kiszámított variációs kötött pontszámot.

visszatérési típus

numpy.ndarray

print_topic(topicno, topn=10)

egyetlen témát kap formázott karakterláncként.

paraméterek

  • topicno (int) – téma azonosítója.

  • topn (int) – a használt szavak száma a témából.

a téma

karakterlánc-ábrázolását adja vissza, például ‘-0.340 * “kategória” + 0.298 * “$m$ “+ 0.183 * “algebra”+…’.

visszatérési típus

str

print_topics(num_topics=20, num_words=10)

szerezd meg a legjelentősebb témákat (alias a show_topics() módszerhez).

paraméterek

  • num_topics (Int, opcionális) – a kiválasztandó témák száma, ha -1 – az összes téma eredményben lesz (szignifikancia szerint rendezve).

  • num_words (Int, opcionális) – a témák szerint beillesztendő szavak száma (jelentőség szerint rendezve).

szekvenciát ad vissza (topic_id, ).

visszatérési típus

lista (int, lista (str, float))

save(fname, ignore=(‘állapot’, ‘diszpécser’), külön=nincs, *args, **kwargs)

mentse el a modellt egy fájlba.

a nagy belső tömbök külön fájlokban tárolhatók, az fname előtaggal.

Megjegyzések

Ha a Python 2/3 verzióiban modelleket kíván használni, néhány dolgot szem előtt kell tartani:

  1. a pácolt Python szótárak nem fognak működni a Python verziókban

  2. a mentési módszer nem menti automatikusan az összes numpy tömböt külön-külön, csak azokat, amelyek meghaladják a sep_limit beállítást save(). A fő aggodalom itt az alfa tömb, ha például alpha=’auto’ – t használ.

kérjük, olvassa el a wiki receptek részetpéldául arra, hogyan lehet megoldani ezeket a problémákat.

Lásd még

load()

betöltési modell.

paraméterek

  • fname (str) – a rendszerfájl elérési útja, ahol a modell megmarad.

  • ignore (Str tuple, opcionális) – a tuple nevű attribútumai kimaradnak a pácolt modellből. A belső állapot alapértelmezés szerint figyelmen kívül hagyásának oka az, hogy a saját sorosítását használja, nem pedig az ezzel a módszerrel biztosított.

  • külön ({Str listája, None}, opcionális) – ha nincs – automatikusan észleli a nagy numpy / scipy-t.ritka tömbök a tárolt objektumban, és tároljákkülön fájlokba. Ezzel elkerülhető a savanyúság memória hibák és lehetővé teszi mmap ‘ ing nagy arraysback terhelés hatékonyan. Ha az str listája-Ez az attribútum külön fájlokban tárolódik, az automatikus ellenőrzés ebben az esetben nem történik meg.

  • *args-pozicionális argumentumok szaporítva save().

  • **kwargs-kulcsszó argumentumok szaporított save().

show_topic(topicid, topn=10)

szerezd meg az ábrázolást egyetlen témához. Szavak itt vannak a tényleges karakterláncok, a constrast-banget_topic_terms() amely a szavakat a szókincsazonosítójuk alapján képviseli.

paraméterek

  • topicid (int) – a visszaadandó téma azonosítója

  • topn (Int, opcionális) – a témához társított legjelentősebb szavak száma.

szó – valószínűségi párokat ad vissza a téma által generált legrelevánsabb szavakhoz.

visszatérési típus

listája(str, float)

show_topics(num_topics=10, num_words=10, log=False, formázott=True)

kap egy ábrázolást a kiválasztott témákhoz.

paraméterek

  • num_topics (Int, opcionális) – A visszaküldendő témák száma. Az LSA-val ellentétben az LDA témái között nincs természetes sorrend.Az összes téma visszaküldött témák részhalmaza ezért önkényes, és két LDAtraining futás között változhat.

  • num_words (Int, opcionális) – az egyes témákhoz bemutatandó szavak száma. Ezek lesznek a legrelevánsabb szavak (a legmagasabbaklehetőség minden témához).

  • log (bool, opcionális) – hogy a kimenet is naplózva, amellett, hogy vissza.

  • formázott (bool, opcionális) – a témaábrázolásokat karakterláncként kell-e formázni. Ha hamis, akkor az as2-t adják vissza (szó, valószínűség).

visszaadja

a témák listáját, mindegyik karakterláncként (ha formázott == True) vagy word-probabilitypairs.

visszatérési típus

{str, tuple of (str, float)}

sync_state(current_Elogbeta=None)

propagálja az államok téma valószínűségeit a belső objektum attribútumára.

paraméterek

current_Elogbeta (numpy.ndarray) – minden téma hátsó valószínűsége, opcionális.Ha elhagyjuk, akkor kap Elogbeta állam.

top_topics(corpus=None, texts=None, dictionary=None, window_size=None, koherencia=’u_mass’, topn=20, folyamatok=-1)

szerezd meg a legmagasabb koherenciájú témákat pontszám az egyes témák koherenciája.

paraméterek

  • corpus (iterálható listája (int, úszó), opcionális) – Corpus íj formátumban.

  • szövegek (az str listájának listája, opcionális) – tokenizált szövegek, amelyek a csúszó ablak alapú koherencia modellekhez szükségesek (pl. koherencia=`c_something’) valószínűségbecslő .

  • szótár (Dictionary, opcionális) – gensim szótár leképezése id szó létrehozásához corpus.Ha a model. id2word jelen van, erre nincs szükség. Ha mindkettő rendelkezésre áll, a pass dictionary kerül felhasználásra.

  • window_size (Int, opcionális) – az az ablak mérete, amelyet a koherencia mérésére kell használni a logikai tolóablak használatával, mint a valószínűség becslője. Az ‘u_mass’ esetében ez nem számít.Ha nincs-Az alapértelmezett ablakméretek a következők: ‘c_v’ – 110,’ c_uci ‘ – 10,’ c_npmi ‘ – 10.

  • koherencia ({‘u_mass’,’ c_v’,’ c_uci’,’ c_npmi’}, nem kötelező) – a használandó koherencia mértéke.Leggyorsabb módszer – ‘u_mass’, ‘c_uci’, más néven c_pmi.Az ‘u_mass’ korpuszt meg kell adni, ha szövegek vannak megadva, akkor a szótár segítségével corpussá konvertálódik. A’ c_v’,’ c_uci ‘és’ c_npmi ‘ szövegeket kell megadni (korpusz nem szükséges)

  • topn (Int, opcionális) – egész szám, amely megfelel az egyes témákból kinyerendő felső szavak számának.

  • folyamatok (Int, opcionális) – a valószínűségbecslési fázishoz használandó folyamatok száma, az 1-nél kisebb értéket num_cpus-1-ként értelmezzük.

visszaadja

a lista minden eleme egy pár téma reprezentáció és a koherencia pontszám. Téma reprezentációa szavak eloszlása, amely a szóazonosítók párjainak és valószínűségeiknek a listájaként jelenik meg.

visszatérési típus

listája (listája (int, str), úszó)

update(corpus, chunksize=None, decay=None, offset=None, passes=None, update_every=None, eval_every=None, iterációk=None, gamma_threshold=None, chunks_as_numpy=False) iteráció a Korpuszon keresztül, amíg a témák konvergálnak, vagy amígaz engedélyezett iterációk maximális száma elérésre kerül. a korpusznak iterálhatónak kell lennie.

elosztott módban az E lépés egy gépcsoportra oszlik.

Megjegyzések

Ez a frissítés egy már betanított modell frissítését is támogatja Új dokumentumokkal; a két modell ezután a régi és az új dokumentumok számának arányában egyesül. Ez a funkció még mindig kísérleti jellegű a nem állomásosinput adatfolyamok esetében. A helyhez kötött bemenethez (az új dokumentumokban nincs téma sodródás) viszont ez megegyezik a Matthew D. Hoffman, David M. Blei, Francis Bach online frissítése:”Online tanulás a látens Dirichlet Allokációhoz NIPS’10”.és garantáltan konvergál minden bomláshoz (0,5, 1,0). Ezenkívül kisebb korpuszméretek esetén előnyös lehet az eltolás növelése (lásd az 1.táblázatot ugyanabban a tanulmányban).

paraméterek

  • corpus (iterable of list of (int, float), opcionális) – Dokumentumvektorok vagy ritka alakmátrix (num_documents, num_terms), amelyeket a modell frissítésére használnak.

  • chunksize (Int, opcionális) – az egyes képzési darabokban használandó dokumentumok száma.

  • decay (float, opcionális) –

    egy szám (0,5, 1] között, hogy az előző lambda érték hány százalékát felejtsék el, amikor minden új dokumentumot megvizsgálnak. Megfelel Kappa fromMatthew D. Hoffman, David M. Blei, Francis Bach:”Online tanulás látens Dirichlet Allocation NIPS’10”.

  • offset (float, opcionális)-

    Hyper-paraméter, amely szabályozza, hogy mennyire lassítjuk az első lépéseket az első néhány iteráció.Megfelel Tau_0 Matthew D. Hoffman, David M. Blei, Francis Bach:”Online tanulás látens Dirichlet allokáció NIPS’10”.

  • passzok (Int, opcionális) – a korpuszon való áthaladások száma edzés közben.

  • update_every (Int, opcionális) – az egyes frissítésekhez iterálandó dokumentumok száma.Állítsa 0-ra a kötegelt tanuláshoz, > 1 az online iteratív tanuláshoz.

  • eval_every (Int, opcionális) – Log zavarodottság becsült minden, hogy sok frissítést. Ennek az egynek a beállítása ~2x – rel lelassítja az edzést.

  • iterációk (Int, opcionális) – a korpuszon keresztüli iterációk maximális száma, amikor a korpusz témaeloszlására következtetünk.

  • gamma_threshold (float, opcionális) – a gamma paraméterek értékének minimális változása az iteráció folytatásához.

  • chunks_as_numpy (bool, opcionális) – hogy a következtetési lépéshez átadott minden darabnak numpy-nak kell-e lennie.ndarray vagy sem. A Numpy egyes beállításokban megfordíthatja az azonosítók kifejezést úszókká,ezeket a következtetésekben egész számokká alakítják át, ami aperformance hit. Az elosztott számításhoz kívánatos lehet a darabokat numpy-ként tartani.ndarray.

update_alpha(gammat, rho)

a Dirichlet prior paramétereinek frissítése a dokumentumonkénti témasúlyokon.

paraméterek

  • gammat (numpy.ndarray) – az előző téma súlyparaméterei.

  • rho (float) – tanulási Arány.

az alfa paraméterek

sorrendjét adja vissza.

visszatérési típus

numpy.ndarray

update_eta(lambdat, rho) ++

a Dirichlet prior paramétereinek frissítése a témánkénti szó súlyokon.

paraméterek

  • lambdat (numpy.ndarray) – korábbi lambda paraméterek.

  • rho (float) – tanulási Arány.

visszaadja

a frissített eta paramétereket.

visszatérési típus

numpy.ndarray

class gensim.models.ldamodel.LdaState(eta, alak, dtype=<class ‘numpy.float32 ‘>)

bázisok: gensim.utils.SaveLoad

információk beágyazása a LdaModel objektumok elosztott kiszámításához.

ennek az osztálynak az objektumai a hálózaton keresztül kerülnek elküldésre, ezért próbálja meg tartani őketcsökkenti a forgalmat.

paraméterek

  • eta (numpy.ndarray) – az egyes ciklusokhoz rendelt előzetes valószínűségek.

  • alak (tuple of (int, int)) – alakja a megfelelő statisztika: (témák száma megtalálható, kifejezések száma a szókincsben).

  • dtype (típus) – felülbírálja a numpy tömb alapértelmezett típusait.

add_lifecycle_event(event_name, log_level=20, **event)

csatoljon egy eseményt ennek az objektumnak a lifecycle_events attribútumába, valamint az eseményt log_level-en is naplózhatja.

az események fontos pillanatok az objektum életében, például “létrehozott modell”,”mentett modell”, “betöltött modell” stb.

a lifecycle_events attribútum megmarad az objektum save()és load() műveleteiben. Nincs hatással a modell használatára, de hasznos a hibakeresés és a támogatás során.

állítsa be önmagát.lifecycle_events = nincs ennek a viselkedésnek a letiltásához. Hívások add_lifecycle_event () nem rögzíti eseményeket önálló.lifecycle_events akkor.

paraméterek

  • event_name (str) – az esemény neve. Bármilyen címke lehet, pl. “létrehozott”, “tárolt” stb.

  • event (dict) –

    kulcs-érték leképezés, hogy hozzáfűzze magát.lifecycle_events. JSON-szerializálhatónak kell lennie, ezért legyen egyszerű.Lehet üres.

    Ez a módszer automatikusan hozzáadja a következő kulcsértékeket az eseményhez, így nem kell megadnia őket:

    • datetime: az aktuális dátum & idő

    • gensim: az aktuális Gensim verzió

    • python: az aktuális Python verzió

    • platform: az aktuális platform

    • esemény: az esemény neve

  • log_level (int) – a teljes esemény dict naplózása a megadott naplószinten. Állítsa hamisra, hogy egyáltalán ne jelentkezzen be.

blend(rhot, other, targetsize=None)

egyesítse az aktuális állapotot egy másikkal a megfelelő statisztikák súlyozott átlagának felhasználásával.

a dokumentumok száma mindkét állapotobjektumban megnyúlik, így összehasonlítható nagyságúak.Ez az eljárás megfelel a sztochasztikus gradiens frissítésnekhoffman et al. : “Online tanulás a látens Dirichlet Allokációhoz”, lásd az (5) és (9) egyenleteket.

paraméterek

  • rhot (float) – a másik állapot súlya a számított átlagban. A 0,0 érték azt jelenti, hogy másteljesen figyelmen kívül hagyja. Az 1,0 érték azt jelenti, hogy az én teljesen figyelmen kívül marad.

  • egyéb (LdaState) – az állapotobjektum, amellyel az aktuális egyesítésre kerül.

  • targetsize (Int, opcionális) – azon dokumentumok száma, amelyekre mindkét állapotot ki kell terjeszteni.

blend2(rhot, other, targetsize=None)

egyesítse az aktuális állapotot egy másikkal, súlyozott összeggel a megfelelő statisztikákhoz.

ellentétben blend(), a megfelelő statisztikák nem skálázottprior összesítés.

paraméterek

  • rhot (float) – nem használt.

  • egyéb (LdaState) – az állapotobjektum, amellyel az aktuális egyesítésre kerül.

  • targetsize (Int, opcionális) – azon dokumentumok száma, amelyekre mindkét állapotot ki kell terjeszteni.

get_Elogbeta() ++

Szerezd meg az egyes témák log (posterior) valószínűségeit.

visszaadja

Posterior valószínűségek minden téma.

visszatérési típus

numpy.ndarray

get_lambda()

szerezd meg a hátsó paramétereket a témák felett, más néven”a témák”.

visszaadja a hátsó valószínűség

paramétereit a témákhoz képest.

visszatérési típus

numpy.ndarray

classmethod load(fname, *args, **kwargs)

töltsön be egy korábban tárolt állapotot a lemezről.

felülbíráljaload a dtype paraméter érvényesítésével a visszafelé kompatibilitás biztosítása érdekében.

paraméterek

  • fname (str) – a szükséges objektumot tartalmazó fájl elérési útja.

  • args (object) – pozicionális paramétereket kell terjeszteni osztály:~gensim.utils.Mentés.load

  • kwargs (object)-kulcsszó paramétereket kell terjeszteni osztály:~gensim.utils.Mentés.load

visszaadja

az adott fájlból betöltött állapotot.

visszatérési típus

LdaState

merge(other) ++

egyesítse az egyik csomópontból származó e lépés eredményét egy másik csomópont eredményével (elegendő statisztika összegzése).

az összevonás triviális, és az összes fürt csomópont összevonása után pontosan ugyanazt az eredményt kapjuk, mintha a számítást egyetlen csomóponton futtatnánk (noapproximation).

paraméterek

egyéb (LdaState) – az állapotobjektum, amellyel az aktuális egyesítésre kerül.

reset()

készítse elő az állapotot egy új EM iterációra (elegendő statisztika visszaállítása).

save(fname_or_handle, külön-külön=nincs, sep_limit=10485760, ignore=frozenset({}), pickle_protocol=4) ++

mentse az objektumot egy fájlba.

paraméterek

  • fname_or_handle (str vagy fájlszerű)-a kimeneti fájl vagy a már megnyitott fájlszerű objektum elérési útja. Ha az objektum fájlkezelő, akkor nem kerül sor speciális tömb-kezelésre, az összes attribútum ugyanabba a fájlba kerül.

  • külön (Str vagy None listája, opcionális) –

    Ha nincs, automatikusan észleli a nagy numpy / scipy-t.ritka tömbök a tárolt objektumban, és tároljákkülön fájlokba. Ez megakadályozza a nagy objektumok memóriahibáit, valamint lehetővé teszi a nagy tömbök memory-leképezését az efficientloading és a nagy tömbök RAM-ban történő megosztása érdekében több folyamat között.

    Ha az str listája: ezeket az attribútumokat külön fájlokba tárolja. Az automatikus méretellenőrzésebben az esetben nem történik meg.

  • sep_limit (Int, opcionális) – ne tároljon ennél kisebb tömböket külön-külön. Bájtban.

  • ignore (frozenset str, opcionális) – attribútumok, amelyeket egyáltalán nem szabad tárolni.

  • pickle_protocol (Int, opcionális) – a savanyúság Protokollszáma.

Lásd még

load()

objektum betöltése fájlból.

gensim.models.ldamodel.update_dir_prior(prior, N, logphat, rho)

egy adott prior frissítése Newton módszerével, leírva inJ. Huang: “a Dirichlet-eloszlási paraméterek maximális valószínűségének becslése”.

paraméterek

  • előzetes (float listája) – az előző iteráció minden lehetséges kimenetele (frissítendő).

  • N (int) – megfigyelések száma.

  • logphat (float listája) – Log valószínűségek az aktuális becsléshez, más néven “megfigyelt elegendő statisztika”.

  • rho (float) – tanulási Arány.

visszatér

a frissített prior.

visszatérési típus

úszó listája

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.