MDP (Modular verktyg för databehandling) är ett bibliotek med allmänt använda algoritmer databehandlings som kan kombineras enligt en rörledning analogi för att bygga mer komplexa databehandling programvara.
Ur användarens perspektiv, MDP består av en samling av övervakade och obevakade inlärningsalgoritmer och andra databehandlingsenheter (noder) som kan kombineras i databehandlingssekvenser (flöden) och mer komplexa frammatningsnätverksarkitekturer. Givet en uppsättning av indata, tar MDP hand om successivt utbildning eller utför alla noder i nätverket. Detta tillåter användaren att specificera komplexa algoritmer som en serie av enklare databehandlingssteg på ett naturligt sätt.
Basen tillgängliga algoritmer ökar stadigt och innefattar, för att nämna de vanligaste, Principal Component Analysis (PCA och NIPALS), flera oberoende komponent analys algoritmer (CuBICA, FastICA, TDSEP, jade, och XSFA), Långsam Feature Analys, Gauss klassificerare, Restricted Boltzmann Machine, och lokalt Linear inbäddning.
Särskild omsorg har tagits för att göra beräkningar effektivt när det gäller snabbhet och minne. För att minska minneskraven, är det möjligt att utföra lärande med hjälp av partier av data och att definiera de interna parametrarna för noderna att vara singel precision, vilket gör användningen av mycket stora datamängder möjligt. Dessutom "parallella" underpaket erbjuder en parallell tillämpning av de grundläggande noder och flöden.
Från utvecklarens perspektiv är MDP ett ramverk som gör att genomförandet av nya övervakad och oövervakad inlärning algoritmer enkelt och okomplicerat. Grund klass, "Node", tar hand om tråkiga uppgifter som numerisk typ och dimension kontroll, lämnar utvecklaren kan koncentrera sig på genomförandet av lärande och exekveringsfasen. På grund av det gemensamma gränssnittet, sedan integrerar noden automatiskt med resten av biblioteket och kan användas i ett nätverk tillsammans med andra noder. En nod kan ha flera träningsmoment och även ett obestämt antal faser. Detta gör att genomförandet av algoritmer som behöver samla statistik på hela ingången innan du fortsätter med den egentliga utbildningen, och andra som behöver iterera över en träningsfas tills en konvergenskriteriet är uppfyllt. Förmågan att träna varje fas med hjälp av bitar av indata bibehålls om bitar genereras med iteratorer. Dessutom är kraschskydd som tillval: i händelse av fel, är det aktuella läget i flödet sparas för senare inspektion.
MDP har skrivits i samband med teoretisk forskning inom neurovetenskap, men det har utformats för att vara till hjälp i alla sammanhang där trainable databehandlingsalgoritmer används. Dess enkelhet på användarsidan tillsammans med återanvändning av genomförda noder gör det också ett giltigt pedagogiskt verktyg
Vad är nytt i den här versionen.
- Python 3 stöd.
- Nya tillägg: caching och lutning .
- En förbättrad och utökad handledning.
- Flera förbättringar och buggfixar.
- är här versionen under BSD-licensen.
Vad är nytt i version 2.5:
- 2009-06-30: Inkom nätet upptäckt av numeriska backend , parallell Python stöd, symeig backend och numerisk backend till utgången hos enhetstester. Bör bidra till felsökning.
- 2009-06-12. Integrationen av cutoff och histogram noder
- 2009-06-12:. Fast bugg i parallellflöde (undantagshantering)
- 2009-06-09: Fast bugg i LLENode när output_dim är en flottör. Tack vare Konrad Hinsen.
- 2009-06-05:. Fast buggar i parallellt flöde för flera schemaläggare
- 2009-06-05:. Fixade en bugg i lager omvänt, tack vare Alberto Escalante
- 2009-04-29:. Lade till en LinearRegressionNode
- 2009-03-31: PCANode klagar inte längre när kovariansmatris har negativa egenvärden IFF svd == Sant eller minska == sant. Om output_dim har angetts har en önskad varians är negativa egenvärden ignoreras. Bättre felmeddelande för SFANode vid negativa egenvärden, nu föreslår vi att infoga före noden med en PCANode (SVD = sant) eller PCANode (minska = sant).
- 2009-03-26: migrerat från gamla tråden paket till nya gäng en. Inkom flagga för att inaktivera caching i process schemaläggare. Det finns några bryt förändringar för anpassningsbara schemaläggare (parallellt flöde utbildning eller utförande påverkas inte).
- 2009-03-25:. Inkom svn revision spårning stöd
- 2009-03-25: Tog bort copy_callable flagga för schemaläggare, detta är nu helt ersatts av förgrening av TaskCallable. Detta har ingen effekt för bekväm ParallelFlow gränssnittet, men anpassade schemaläggare gå sönder.
- 2009-03-22:. Genomfört caching i ProcessScheduler
- 2009-02-22:. Make_parallel nu arbetar helt på plats för att spara minne
- 2009-02-12:. Inkom container metoder till FlowNode
- 2009-03-03. Lade CrossCovarianceMatrix med tester
- 2009-02-03:. Lade IdentityNode
- 2009-01-30:. Lade till en hjälpare funktion i hinet att direkt visa en flödes HTML representation
- 2009-01-22. Tillåt output_dim i lager ställas in lättjefullt
- 2008-12-23:. Inkom total_variance till NIPALS noden
- 2008-12-23:. Ställ alltid in explained_variance och total_variance efter träning i PCANode
- 2008-12-12: Modifierad symrand att verkligen återvända symmetriska matriser (och inte bara positivt definit). Anpassad GaussianClassifierNode till svars för det. Anpassad symrand också tillbaka komplexa Hermitska matriser.
- 2008-12-11: Fast ett problem i PCANode (när output_dim var inställd på input_dim den totala variansen behandlades som okänd). Fast var_part parameter i ParallelPCANode.
- 2008-12-11:. Inkom var_part funktion för PCANode (filter enligt variansen i förhållande till absoute varians)
- 2008-12-04: Fast saknas axel arg i amax samtal handledning. Tack vare Samuel John!
- 2008-12-04: Fast tom data iterator hantering i ParallelFlow. Också lagt tomma Iterator kontroller det normala flödet (höja ett undantag om iterator är tom).
- 2008-11-19: Modifierad PCA och SFA-noder för att kontrollera negaive egenvärden i COV matriser
- 2008-11-19: symeig integreras i SciPy, MDP kan använda den därifrån nu .
- 2008-11-18:. Lade ParallelFDANode
- 2008-11-18. Uppdaterad tåget inlösbara för ParallelFlow att stödja ytterligare argument
- 2008-11-05: Rewrite av märket parallell kod, stöder nu hinet strukturer .
- 2008-11-03: Rewrite av hinet HTML repesentation skapare. Tyvärr bryter också det offentliga gränssnittet, men förändringarna är ganska enkel.
- 2008-10-29: Stäng av varningar som kommer från avlägsna processer i ProcessScheduler
- 2008-10-27:. Fixat problem med att skriva över kwargs i init-metoden för ParallelFlow
- 2008-10-24:. Fast pretrained noder bugg i hinet.FlowNode
- 2008-10-20:. Fast kritisk bugg import parallellt paketet när pp (parallell python bibliotek) är installerad
Krav :
- Python
- numpy
- SciPy
Kommentarer hittades inte