Skip to content

spinfo/quenfo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

quenfo

Main code of the BIBB project

Dokumentation

Geduldig, Alena (2017). Muster und Musterbildungsverfahren für domänenspezifische Informationsextraktion Ein Bootstrapping-Ansatz zur Extraktion von Kompetenzen aus Stellenanzeigen. Masterarbeit. URL: http://www.spinfo.phil-fak.uni-koeln.de/sites/spinfo/arbeiten/Masterthesis_Alena.pdf

Geduldig, Alena & Betül Günturk-Kuhl (erscheint 2018). Kompetenzanforderungen in Stellenanzeigen. Die Nutzung maschineller Lernverfahren zur Extraktion und Kategorisierung von Kompetenzen.

Hermes, Jürgen & Manuel Schandock (2016). "Stellenanzeigenanalyse in der Qualifikationsentwicklungsforschung. Die Nutzung maschineller Lernverfahren in der Klassifikation von Textabschnitten". In: Fachbeiträge im Internet. Bundesinstitut für Berufsbildung. URL: https://www.bibb.de/veroeffentlichungen/de/publication/show/8146

Classification (Zoning)

Segmentierung von Stellenanzeigen in Abschnitte und Klassifikation der Abschnitte in die vier Kategorien:

  1. Unternehmensbeschreibung
  2. Jobbeschreibung
  3. Bewerberprofil
  4. Sonstiges/Formalia

zu ergänzende Dateien/Daten

in den Ordner classification/data/trainingSets/

--> eigene trainingsdaten als tsv-File im Format CLASS: [tab] classID [new line] paragraph [empty line]
--> oder die vorhandenen (jedoch anonymisierten) Trainingsdaten (trainingdata_anonymized.tsv) verwenden.

in den Ordner classification/db/

--> Input-Datenbank mit Stellenanzeigen. Es liegt eine leere DB mit den geforderten DB-Schema vor (JobAds_empty.db)

Application

.../classification/applications/ClassifyDatabase.java

Konfigurations-Variablen ggf. anpassen

Information Extration

Extrahiert Kompetenzen aus den Abschnitten, die zuvor der Klasse 'Bewerberprofil' zugeordnet wurden
Extrahiert Tools aus den Abschnitten, die zuvor der Klasse 'Jobbeschreibung' und/oder 'Bewerberprofil' zugeordnet wurden.

zu ergänzende Dateien/Daten

in den Ordner information_extraction/data/openNLPmodels/

--> de-sent.bin & de-token.bin (downloadlink: http://opennlp.sourceforge.net/models-1.5/)
--> ger-tagger+lemmatizer+morphology+graph-based-3.6+.tgz (downloadlink: https://code.google.com/archive/p/mate-tools/downloads)

in den Ordner information_extraction/data/competences/

--> competences.txt (leer, oder mit bereits bekannten/extrahierten Kompetenzausdrücken)
--> noCompetences.txt (leer, oder mit Falschextraktionen, die nicht wiederholt werden sollen)

in den Ordner information_extraction/data/tools/

--> tools.txt (leer, oder mit bereits bekannten/extrahierten Tools)
--> noTools.txt (leer, oder mit Falschextraktionen, die nicht wiederholt werden sollen)

Applications

Extraktion von Kompetenzen: .../information_extraction/applications/ExtractNewCompetences.java
Extraktion von Tools: .../information_extraction/applications/ExtractNewTools.java < br/>

Matching (= Extraktion aller Fundstellen/Sätze von Kompetenzen/Tools)

der extrahierten Kompetenzen: .../information_extraction/applications/MatchNotValidatedCompetences.java
nur der validierten Kompetenzen (competences.txt): .../information_extraction/applications/MatchCompetences.java

der extrahierten Tools: .../information_extraction/applications/MatchNotValidatedTools.java
nur der validierten Tools (tools.txt): .../information_extraction/applications/MatchTools.java

Categorization

Bildet Gruppen von Kompetenzen/Tools auf Grundlage ihrer Stringähnlichkeit (Needleman-Wunsch) und/oder Kookkurrenzen (chi-Quadrat)

zu ergänzende Daten

--> CategorizedCompetences.db (DB mit bereits kategorisierten Kompetenzen - Pfadangabe zur DB in den jeweiligen Apps anpassen)
--> CategorizedTools.db (DB mit bereits kategorisierten Tools - Pfadangabe zur DB in den jeweiligen Apps anpassen)

Applications

Kategorisierung auf Grundlage von Kookkurrenzen mit bereits kategorisierten Tools/Competences:
.../categorization/applications/GroupCompetencesByCooccurrence.java
.../categorization/applications/GroupToolsByCooccurrence.java

Kategorisierung auf Grundlage von Stringähnlichkeit:
.../categorization/applications/GroupCompetencesByStringSimilarity.java
.../categorization/applications/GroupToolsByStringSimilarity.java

Kategorisierung auf Grundlage von Kookkurrenzen und Stringähnlichkeit:
.../categorization/applications/GroupCompetences.java
.../categorization/applications/GroupTools.java