?>
Die Aktion `alJoin` im Aktionssatz `activeLearn` wird verwendet, um zwei Tabellen basierend auf einer gemeinsamen Identifikatorspalte zu verbinden. Dies ist ein grundlegender Schritt im aktiven Lernen, bei dem typischerweise eine Hauptdatentabelle mit einer Annotationstabelle zusammengeführt wird, die von Benutzern bereitgestellte Labels enthält. Die Aktion unterstützt verschiedene Arten von Joins (INNER, LEFT, RIGHT, FULL, APPEND), um Flexibilität bei der Kombination von beschrifteten und unbeschrifteten Daten zu bieten. Dieser Prozess ist entscheidend für die Vorbereitung von Trainingsdaten für nachfolgende Iterationen des maschinellen Lernmodells.
| Parameter | Beschreibung |
|---|---|
| annotatedTable | Gibt den Namen einer In-Memory-Tabelle an, die die Annotationsdaten für eine Join-Operation enthält. |
| casOut | Gibt den Namen der neuen Tabelle an, die die Ergebnisse der verbundenen Tabelle enthält. |
| id | Gibt eine Bezeichnerspalte an, die zum Verbinden der Datentabelle und der Annotationstabelle verwendet wird. |
| joinType | Gibt an, wie Tabellen verbunden werden. Die Auswahlmöglichkeiten sind APPEND, FULL, INNER, LEFT und RIGHT. |
| logLevel | Gibt die Berichtsebene für Fortschrittsnachrichten an, die an den Client gesendet werden. Die Standardebene 0 bedeutet, dass keine Nachrichten gesendet werden. Das Setzen des Wertes auf 1 sendet Start- und Endnachrichten. Das Setzen des Wertes auf 2 fügt die Iterationshistorie zur Client-Nachrichtenübermittlung hinzu. |
| table | Gibt den Namen einer In-Memory-Tabelle an, die die Daten für eine Join-Operation enthält. |
Erstellen von zwei Beispiel-CAS-Tabellen: 'my_data_table' als Hauptdatentabelle und 'my_annotation_table' als Annotationstabelle. Beide Tabellen enthalten eine 'id'-Spalte, die als Schlüssel für die Join-Operation dient.
1 DATA casuser.my_data_table; 2 DO id = 1 to 10; 3 value = ranuni(0); 4 OUTPUT; 5 END; 6 RUN; 7 8 DATA casuser.my_annotation_table; 9 DO id = 1 to 10 BY 2; 10 annotation = "annotated"; 11 OUTPUT; 12 END; 13 RUN;
Dieses Beispiel führt einen Left Join zwischen 'my_data_table' und 'my_annotation_table' durch, basierend auf der 'id'-Spalte. Das Ergebnis wird in der Tabelle 'aljoin_casout' gespeichert. Da 'LEFT' der Standard-Join-Typ ist, muss er nicht explizit angegeben werden.
| 1 | PROC CAS; |
| 2 | activeLearn.alJoin / |
| 3 | TABLE={name='my_data_table'}, |
| 4 | annotatedTable={name='my_annotation_table'}, |
| 5 | id='id', |
| 6 | casOut={name='aljoin_casout', replace=true}; |
| 7 | RUN; |
Dieses Beispiel zeigt einen Inner Join, bei dem nur die Zeilen in die Ausgabetabelle 'aljoin_inner_casout' aufgenommen werden, bei denen die 'id' in beiden Tabellen, 'my_data_table' und 'my_annotation_table', übereinstimmt.
| 1 | PROC CAS; |
| 2 | activeLearn.alJoin / |
| 3 | TABLE={name='my_data_table', caslib='casuser'}, |
| 4 | annotatedTable={name='my_annotation_table', caslib='casuser'}, |
| 5 | id='id', |
| 6 | joinType='INNER', |
| 7 | casOut={name='aljoin_inner_casout', caslib='casuser', replace=true}; |
| 8 | RUN; |