--- "[object Object]": null language: - de metrics: - precision - recall - f1 library_name: spacy --- # Model Card for the project 'Frauenerwerbstätigkeit' Dieses Modell ist Teil des Projekts 'Frauenerwerbstätigkeit' der Bertelsmann Stiftung. Es extrahiert und klassifiziert Begriffe aus der entwickelten Taxonomie ('Keywords Frauenerwerbstätigkeit') rund um das Thema Frauenerwerbstätigkeit. Es benutzt dabei ein regelbasiertes Modell (basierend auf patterns, siehe [spacy Span Ruler](https://spacy.io/usage/rule-based-matching#spanruler) ). Die entwickelten Patterns für die Konzepte in der Taxonomie wurden durch Annotation von Stellenanzeigen (von Textkernel BV / Jobmonitor) entwickelt. Die Patterns sind unter data/ verfügbar. ## Model Details ### Model Description - **Developed by:** [and-effect](https://www.and-effect.com/) - **Project by** [Bertelsmann Stiftung](https://www.bertelsmann-stiftung.de/de/startseite) - **Model type:** Text Classification / Phrase-extraction - **Language(s) (NLP):** de - **Paper [optional]:** {{ paper | default("[More Information Needed]", true)}} - **Demo [optional]:** {{ demo | default("[More Information Needed]", true)}} ### Taxonomie und Patterns Basis für das Modell sind Patterns die für das Modell händisch generiert wurden. Die Taxonomie „Keywords Frauenerwerbstätigkeit“ umfasst Konzepte, die Angebote und Anforderungen an Arbeitnehmer:innen in Stellenausschreibungen beschreiben. Sie hat drei Ebenen, wobei die letzte Ebene zur Klassifizierung verwendet wird. Die erste Ebene umfasst 'Anforderungen an BewerberIn', 'Angebote an BewerberIn' und 'Weitere Konzepte'. Auf der zweiten Ebene werden die Angebote und Anforderungen weiter beschrieben, z.B. familienfreundliche Konzepte vs. Konzepte zur zeitlichen Unabhängigkeit. Die Klassifikation wird auf der untersten Ebene durchgeführt. Die Konzepte sind unterschiedlich oft vertreten. Es gibt insgesamt 16 (*12) Konzepte auf der untersten Ebene. - Anforderungen an Bewerber:innen - Anforderungen an Arbeitsort - Präsenzpflicht* - Räumliche Flexibilität - Zeitliche - Zeitliche Flexibilität - Schichtdienst - Flexibilität - Flexibiltät (SK) = Flexibilität (Soft Skill) - Angebote an Bewerber:innen - Zeitsouveränität - Planbarkeit und Verlässlichkeit - Flexible und gestaltbare Dienstpläne und Schichtmodelle* - flexible und gestaltbare Arbeitszeiten - Wahl des Arbeitszeitumfangs - Job-Sharing - Familienfreundliche Konzepte - Vereinbarkeit - Unterstützung bei der Kinderbetreuung - wohnortnahe Einsätze - Finanzielle Unterstützung* - Familiäre und anlassbezogene Freistellung - Unterstützung bei der Pflegeverantwortung* *nachträglich entfernt ## Klassifikations-Prozess Die Stellenausschreibungen wurden anhand von erstellten spacy-patterns nach ihren enthaltenen Konzepten klassifiziert. Eine Stellenausschreibung kann dabei mehrere Konzepte enthalten, beispielsweise auch Anforderungen und Angebote. Dafür wurde der spacy SpanRuler benutzt. ## Benutzung des Modells Das Modell kann auf Texten angewendet werden die Stellenausschreibungen enthalten oder einen ähnlichen Inhalt wie Stellenausschreibungen enthalten. Das Modell gibt für jedes gefundene Konzept die Posting id (die id der Stellenausschreibung) und das gefundene Konzept zurück. Es kann daher mehrere Zeilen für ein Posting (eine Stellenausschreibung) geben. Um die Pipeline effizienter laufen zu lassen wurden ungebrauchte Elemente disabled. Es wurde zudem ein Qualitäts-check für 2.000 Stellen durchgeführt um dies zu testen. ```python import sys from huggingface_hub import snapshot_download REPO = "and-effect/family-compatibility-extractor" path = snapshot_download(cache_dir="tmp/", repo_id=REPO, revision="main") sys.path.append(path) from pipeline import PipelineWrapper # type: ignore pipeline = PipelineWrapper() queries = [ { "posting_id": "1", "text": "Wir bieten Vereinbarkeit von Privatleben, Familie und Beruf", }, { "posting_id": "2", "text": "Sie arbeiten im Schichtdienst mit flexiblen Arbeitszeiten", }, { "posting_id": "36", "text": "Die ist eine Stelle in Vollzeit. Sie ist gegebenfalls auch in Teilzeit besetzbar.", }, ] output = pipeline(queries) ``` ## Bias und Limitationen Das Modell hat Limitationen 1. **Verteilung der Klassen** Die Klassen sind unterschiedlich vereteilt. In der Evaluation der Test-daten und innerhalb der Trainingsdaten gibt es keinen Eintrag für das Konzept 'Präsenzpflicht'. Dieses Konzept kann daher nicht evaluiert werden. 2. Die Patterns sind unterschiedlich speziell fomuliert. Bei Konzepten wie 'Unterstützung bei Pflegeverantwortung' werden spezielle Formulierungen gesucht. Bei anderen Konzepten, wie 'Job-Sharing' wird eher gröber nach einzelnen oder wenigen Wörtern wie 'Vollzeit/ Teilzeit' gesucht. Die Konzepte bilden daher auch eine unterschiedliche Breite an Inhalten ab. ## Trainingsdaten Die Trainingsdaten wurden von drei Annnotator:innen erstellt. In zwei Runden wurden insgesamt 1440 Stellenanzeigen annotiert. Dabei hatten die Annotator:innen einen overlap von 20% und die Disagreements zwischen ihnen wurden entweder nochmals besprochen und annotiert oder durch die Bestimmung eines Experten gelöst. Nach den Runden wurden weitere gefundene Formulierungen als Patterns aufgenommen. ## Testdaten Die Testdaten (Goldstandard) wurden von drei Annotator:innen erstellt und stammen aus einem Random Sample von Stellenanzeigen (Random Sample 2018-2023 aus textkernel_filtered). Disagreements bei der Annotation wurden folgenderweise aufgelöst: Von ursprünglich 640 Dokumenten wurden 16 wegen Disagreement entfernt. 4 Dokumente hatten eine Annotation vs. keine Annotation. In diesen Fällen wurden die Dokumente mit Annotation in den Goldstandard aufgenommen. ## Evaluation Das Modell wird mit folgenden Metriken evaluiert: Precision, Recall und F1-Score. In einem Dokument können mehrere Konzepte auftauchen oder kein Konzept. Die Evaluation wurde auch ### Testdaten (Goldstandard) | Task | N | Precision | Recall | F1 | | :---------------------- | --: | --------: | -----: | ----: | | Klassifikation (Micro) | 624 | 0,94 | 0,689 | 0,796 | | Klassifikaation (Macro) | 624 | 0,8 | 0,54 | 0,62 | | | Konzept | N | p | r | | :----------------------------- | :------------------------------------------------------ | --: | ---: | ---: | | Angebote an Bewerber:innen | Familiäre und anlassbezogene Freistellung | 8 | 1,0 | 0,88 | | | Finanzielle Unterstützung | 3 | - | 0,0 | | | Flexible und gestaltbare Dienstpläne und Schichtmodelle | 8 | 0,5 | 0,12 | | | Job-Sharing | 2 | 1,0 | 1,0 | | | Planbarkeit und Verlässlichkeit | 34 | 0,82 | 0,53 | | | Unterstützung bei Pflegeverantwortung | 3 | - | 0,0 | | | Unterstützung bei der Kinderbetreuung | 33 | 1,0 | 0,36 | | | Vereinbarkeit | 56 | 0,95 | 0,64 | | | Wahl des Arbeitszeitumfangs | 104 | 0,96 | 0,72 | | | Flexible und gestaltbare Arbeitszeiten | 111 | 0,99 | 0,77 | | | Wohnortnahe Einsätze | 10 | 1,0 | 0,3 | | Anforderung an Berwerber:innen | Präsenzpflicht | 0 | - | - | | | Räumliche Flexibilität | 49 | 0,96 | 0,9 | | | Zeitliche Flexibilität | 31 | 1,0 | 0,32 | | | Schichtdienst | 83 | 0,98 | 0,76 | | | Flexibilität (SK) | 82 | 0,85 | 0,83 | Das Modell wurde nachträglich nochmal angepasst und folgende Konzepte entfernt: - Präsenzpflicht - Unterstützung bei der Pflegeverantwortung - Finanzielle Unterstützung - Flexible und gestaltbare Dienstpläne und Schichtmodelle Dadurch ergibt sich folgende aktualisierte Evaluation: | Task | N | Precision | Recall | F1 | | :---------------------- | --: | --------: | -----: | ----: | | Klassifikation (Micro) | 624 | 0,94 | 0,7 | 0,81 | | Klassifikaation (Macro) | 624 | 0,96 | 0,67 | 0,76 |