How can a Python model be trained using Altair RapidMiner?

Guide til Processer i RapidMiner Studio

16/07/2014

Rating: 4.12 (6015 votes)

At forstå, hvordan man effektivt kører og administrerer processer, er kernen i at mestre RapidMiner Studio. Denne kraftfulde platform til data science tilbyder en række metoder til at eksekvere dine workflows, fra simpel lokal kørsel til debugging til komplekse, langvarige opgaver, der kører i baggrunden eller på en server. Ud over de grundlæggende kørselsmetoder åbner integrationen med Python en verden af muligheder for at skabe brugerdefinerede værktøjer, der er skræddersyet til dine specifikke behov. Denne artikel vil guide dig gennem de forskellige måder at køre en proces på og dykke ned i, hvordan du kan udvide platformens funktionalitet ved hjælp af Python Extension til at bygge dine egne, delbare operatorer.

How do I run a process in RapidMiner studio?
RapidMiner Studio offers many different ways to do this. The best way to start is to use Run Process Locally on a small subset of your data. This mode is used for debugging and short running processes. You can see the process progress on screen and also use Breakpoints to see intermediate results.
Indholdsfortegnelse

Grundlæggende metoder til at køre en proces

Når din proces er bygget færdig i designvisningen, er det næste skridt at eksekvere den for at se resultaterne. RapidMiner Studio tilbyder flere forskellige tilstande, der hver især er egnet til forskellige scenarier.

Kør proces lokalt (Run Process Locally)

Dette er den mest grundlæggende og mest anvendte metode, især under udvikling og debugging. Når du kører en proces lokalt, kan du se fremskridtet direkte på skærmen. Denne tilstand er ideel til kortere processer og til fejlfinding, da den giver dig fuld kontrol. En af de mest kraftfulde funktioner i denne tilstand er brugen af Breakpoints. Du kan indsætte et breakpoint efter enhver operator for at standse eksekveringen på det pågældende punkt. Dette giver dig mulighed for at inspicere de mellemliggende resultater, hvilket er uvurderligt for at forstå, hvordan data transformeres gennem din proces og for at identificere eventuelle fejl. Når et breakpoint er nået, har du valget mellem at fortsætte eksekveringen eller stoppe processen helt.

Kør proces i baggrunden (Run Process in Background)

For processer, der tager lang tid at fuldføre, er det upraktisk at køre dem lokalt, da det vil låse brugergrænsefladen. Her kommer baggrundskørsel ind i billedet. Denne tilstand giver dig mulighed for at starte en proces og derefter fortsætte med at arbejde på andre opgaver i RapidMiner Studio. Det er vigtigt at bemærke, at breakpoints ignoreres i denne tilstand, så du skal være sikker på, at din proces fungerer korrekt, før du starter den. Når en proces er startet i baggrunden, vises den i panelet 'Background Processes', hvor du kan overvåge dens status og administrere den. For at få den fulde funktionalitet i dette panel, anbefales det at gemme processen i dit repository, før du kører den.

Andre kørselsmuligheder

Ud over de lokale metoder kan processer også køres direkte fra dit repository ved at højreklikke på processen og vælge den ønskede kørselsmetode. For mere avancerede og produktionsorienterede scenarier kan processer eksekveres eller planlægges på en RapidMiner Server, hvilket giver mulighed for automatisering, centraliseret styring og skalering af dine data science-workflows.

Udvid RapidMiner med den kraftfulde Python Extension

En af de mest markante fordele ved RapidMiner Studio er dens udvidelsesmuligheder. Python Extension er et fremragende eksempel, der giver data scientists mulighed for at integrere deres egne Python-scripts direkte i RapidMiner-processer. Dette går ud over simpel script-eksekvering; du kan skabe dine egne, fuldt integrerede og genanvendelige brugerdefinerede operatorer.

How do I run a process in RapidMiner studio?
RapidMiner Studio offers many different ways to do this. The best way to start is to use Run Process Locally on a small subset of your data. This mode is used for debugging and short running processes. You can see the process progress on screen and also use Breakpoints to see intermediate results.

Disse operatorer opfører sig som native RapidMiner-operatorer, komplet med brugerdefinerede parametre, input- og output-porte. Dette gør det muligt for erfarne Python-udviklere at skabe kraftfulde værktøjer, som derefter kan deles med kolleger, der måske ikke er lige så stærke i kodning, hvilket fremmer samarbejde og standardisering.

Typer af brugerdefinerede Python-operatorer

Python Extension tilbyder tre primære typer af operatorer til at bygge dine egne værktøjer: Python Learner, Python Transformer og Python Forecaster.

Python Learner

Med Python Learner kan du bygge en Python-baseret model, der er fuldt kompatibel med RapidMiners model-interfaces. Dette betyder, at en model trænet med din Python-kode kan bruges med standardoperatorer som 'Apply Model', valideres med 'Cross-Validation' og finjusteres med 'Optimize'-operatorer. For at implementere en Learner skal du definere to centrale funktioner i dit Python-script: rm_train og rm_apply. Som navnene antyder, køres rm_train under træningsfasen, og rm_apply anvendes, når den trænede model skal bruges til at lave forudsigelser.

Python Transformer

Tænk på Python Transformer som en avanceret version af 'Execute Python'-operatoren. Den giver dig mulighed for at definere et vilkårligt antal input- og output-porte samt brugerdefinerede parametre. Dette gør den ideel til komplekse datatransformationsopgaver, der kræver mere fleksibilitet end standardoperatorerne tilbyder. Hovedindgangspunktet for din kode er rm_main-funktionen, hvor antallet og rækkefølgen af funktionens parametre og returværdier skal matche operatørens input- og output-porte.

Python Forecaster

Introduceret i version 9.10.2, er Python Forecaster designet specifikt til tidsserieanalyse. Den giver dig mulighed for at skabe prognosemodeller ved hjælp af Python-biblioteker, som er kompatible med RapidMiners 'Apply Forecast'-operator. Ligesom Python Learner kræver den implementering af rm_train og rm_apply funktioner. Den inkluderer også specifikke parametre til tidsseriehåndtering, såsom valg af tidsserieattribut og indekskolonne.

What version of RapidMiner studio is the operator documenetation available?
You are viewing the RapidMiner Studio documentation for version 7.6 - Check here for latest version The operator documenetation is only available for the latest version.

Konfiguration via JSON

Tilpasningen af disse brugerdefinerede operatorer sker gennem en JSON-editor, som du tilgår via et tandhjulsikon i operatørens parameterpanel. Her kan du definere operatørens navn, parametre, input- og output-porte samt, for Learner-operatoren, dens kapabiliteter.

JSON-editoren validerer din konfiguration i realtid og advarer dig om eventuelle fejl. En forkert konfiguration kan føre til, at operatørens porte forsvinder, så det er vigtigt at følge den korrekte syntaks.

Understøttede Parametertyper

Du kan definere en bred vifte af parametertyper for at gøre dine operatorer intuitive at bruge. Nedenstående tabel giver et overblik:

Type i JSONUdseende i brugergrænsefladenBeskrivelse
stringTekstfeltEn simpel tekststreng.
categoryDropdown-menuEn liste af foruddefinerede valgmuligheder.
booleanAfkrydsningsfeltEn sand/falsk værdi.
integerHeltalsfeltEt felt til indtastning af heltal.
realDecimaltalsfeltEt felt til indtastning af flydende kommatal.

Brugerdefinerede Input- og Output-porte

Fra version 9.10.2 er det muligt at tilføje ekstra input- og output-porte til dine operatorer via JSON-konfigurationen. Disse ekstra porte kan tilgås i din Python-kode. For eksempel kan yderligere input-porte i rm_train tilgås som ekstra argumenter i funktionsdefinitionen. Yderligere output-porte kan returneres som ekstra værdier (efter modelobjektet) fra rm_train-funktionen.

Deling og Distribution

Når din brugerdefinerede operator er færdig, kan du nemt dele den. Den simpleste metode er at klikke på 'Save'-knappen i operatørens parameterpanel. Dette opretter en .pyop-fil, som andre brugere kan trække ind på deres lærred for at genskabe operatoren. Denne metode er hurtig, men operatøren kan ikke efterfølgende opdateres centralt.

For en mere robust distributionsmetode, især i teams, kan du samle flere .pyop-filer i en mappe og oprette en extension. Dette giver dig mulighed for at versionere dine operatorer. Når du distribuerer en ny version af extensionen, kan alle brugere nemt opdatere til de seneste ændringer, hvilket sikrer konsistens og vedligeholdelse.

Ofte Stillede Spørgsmål (FAQ)

Hvad er den bedste måde at køre en lang og ressourcekrævende proces på?
Den bedste metode er at køre processen i baggrunden ('Run Process in Background') eller, for produktionsmiljøer, at planlægge den på en RapidMiner Server. Dette frigør din lokale maskine og sikrer stabil eksekvering.
Hvad er den primære forskel mellem Python Learner og Python Transformer?
Python Learner er specifikt designet til at skabe modeller, der integrerer med RapidMiners machine learning-framework (f.eks. 'Apply Model', 'Cross-Validation'). Python Transformer er et mere generelt værktøj til datatransformation, hvor du har fuld kontrol over input, output og parametre.
Hvordan sikrer jeg, at mit Python-miljø er det samme, når min model anvendes på en anden maskine?
Det er afgørende at sikre, at det samme Python-miljø (f.eks. en conda- eller virtuelt miljø) med de samme biblioteker og versioner er tilgængeligt på den maskine, hvor modellen skal anvendes. Operatoren gemmer en reference til det miljø, der blev brugt under træningen.
Kan jeg redigere en brugerdefineret operator, efter den er oprettet fra en .pyop-fil?
Nej, når en operator er oprettet ved at trække en .pyop-fil ind på lærredet, bliver den skrivebeskyttet. Dette sikrer, at operatørens funktionalitet forbliver konsistent. Hvis du har brug for at redigere den, skal du åbne den oprindelige proces, hvor den blev udviklet, foretage dine ændringer og gemme en ny .pyop-fil.

Hvis du vil læse andre artikler, der ligner Guide til Processer i RapidMiner Studio, kan du besøge kategorien Teknologi.

Go up