Drücke „Enter”, um zum Inhalt zu springen.

Maschinelles Lernen in der Biomechanik – Möglichkeiten und Herausforderungen

Jonas Ebbecke 0

“Over the next decade, machine learning is likely to greatly enhance the objectivity of decision making in sports science” – C. Richter, M. O’Reilly & E. Delahunt (2021)

  1. Was ist Maschinelles Lernen?

  2. Wie sieht ein klassischer ML Prozess aus?

  3. Welche Anwendungen gibt es in der Biomechanik?

  4. Welche Herausforderungen gilt es zu meistern?

  5. Zusammenfassung

1. Was ist Maschinelles Lernen?

Jeder, der in einem Gebiet der Biomechanik arbeitet, weiß, dass man in der Datenanalyse nicht um irgendwelche Berechnungen herumkommt. Bei der Nachbearbeitung biomechanischer Messdaten müssen aus Rohdaten vergleichbare Größen bestimmt werden. Aus elektrischen Ladungsänderungen werden z.B. Bodenreaktionskräfte bestimmt, aus 3D Koordinaten werden Trajektorien von Körperteilen berechnet, aus elektrischen Spannungen wird die Muskelaktivität abgeleitet, und so weiter… Bei relativ einfachen Rechenaufgaben, wie z.B. einer linearen Regression, kann man einem Rechenprogramm Schritt für Schritt vorgeben, was es berechnen soll und es führt die entsprechenden Befehle aus. Dabei muss der Analyst jeden einzelnen Rechenschritt kennen und eingeben, sodass das Programm die gewünschten Ergebnisse herausgibt. Das Programm an sich lernt dabei nichts, sondern führt lediglich Befehle aus. Je komplexer eine Rechenaufgabe wird, z.B. durch eine hohe Anzahl an Einflussvariablen oder durch nichtlineare Zusammenhänge, desto schwieriger wird es, dem Programm händisch vorzugeben, was es berechnen soll. Hier wäre es effizienter, wenn der Algorithmus selbst in der Lage wäre, zu entscheiden, was wie berechnet werden soll.

Solche Algorithmen gibt es seit einigen Jahren und werden als Maschinelles Lernen (ML) bezeichnet. Man kann sie als Teil der künstlichen Intelligenz (KI) einordnen, bei dem ein Computerprogramm in der Lage ist, durch Beispieldaten (auch „Trainingsdaten“ genannt) selbstständig zu lernen und ein Modell anzupassen, welches Vorhersagen oder Entscheidungen eigenständig treffen kann. Der entscheidende Punkt dabei ist, dass ein Computer lernt Aufgaben zu bewältigen, ohne ausdrücklich dazu aufgefordert zu werden.

Vielleicht wusstest Du es noch gar nicht, aber jede*r von uns stößt im Alltag andauernd auf ML Algorithmen. Eins der beliebtesten Beispiele ist der klassische Spamfilter in deinem Emailprogramm. Dieser wird durchgehend weiter trainiert, um Spammails von relevanten Mails zu unterscheiden. Oder was ist mit der Werbung, die dir von großen Techfirmen wie Google, Facebook und co präsentiert wird? Hier wird ein Modell von dir trainiert, welches dir anschließend die perfekte Werbung zuordnet. Oder auch die Spracherkennung deines Smartphones. Es wäre wohl kaum möglich händisch einzugeben, welche Änderungen im Frequenzspektrum, die das Mikrophon aufzeichnet, welche Wörter bedeuten können. Und das nicht nur bei dir allein, sondern bei Milliarden von Nutzern mit einer unglaublich hohen Variabilität in ihren Stimmen.

Generell sind die Anwendungen für ML breit gefächert. Sie werden z. B. für Vorhersagen, Bildverarbeitung, Klassifikationen, Mustererkennung, oder als Werkzeug zur multivariaten Datenanalyse eingesetzt.

Dabei verdanken ML Algorithmen ihre wachsende Popularität in der mathematischen Modellierung ihrer…

  1. … Nichtlinearität, die eine bessere Anpassung an reale Daten ermöglicht;
  2. … Robustheit gegenüber Rauschen, die auch bei unsicheren Daten genaue Ergebnisse liefert;
  3. … schnellen Rechengeschwindigkeit;
  4. … Fähigkeit, ihre internen Strukturen zu modifizieren, wenn sich äußere Einflüsse ändern
  5. … hohen Generalisierbarkeit, die auch die Modellierung von ungesehenen Daten ermöglicht (Basheer und Hajmeer, 2000).

Maschinelles Lernen ist also ein Wunderwerk der Programmierkunst. Es ist vielseitig einsetzbar und kann Problemstellungen lösen, die für einen Menschen zu kompliziert wären händisch zu bearbeiten.

2. Wie sieht ein klassischer ML Prozess aus?

Hier ein grober Überblick über den üblichen Workflow beim maschinellen Lernen:

3. Welche Anwendungen gibt es in der Biomechanik?

Die Verwendung von ML ist in der Biomechanik ähnlich vielseitig wie auch in allen anderen Fachrichtungen, und so wurde es auch schon vielfach eingesetzt:

  1. Optimierung der Messwerte von Inertialsensoren (Jamil et al., 2020)
  2. Optimierung der Datenerfassung von Kraftmessplatten (Hiesh et al. 2011)
  3. Ich selber habe eine Methode des ML für die Kalibrierung eines kinetischen Fahrradpedals benutzt Lese hier mehr dazu.
  1. 3D-Kinematik und vertikale Bodenreaktionskräfte könnten bald über 2D-Videos vorhergesagt werden (Morris et al., 2020; Weir et al., 2019)
  2. Langhantel-Bewegungstrajektorien und Masse wurden verwendet, um Gelenkmomente vorherzusagen (Kipp et al., 2018)
  3. Inertialsensoren wurden zur Vorhersage von Bodenreaktionskräften verwendet (Mundt, 2019)

Klassifizierungsmodelle sind in der Lage, Daten in sinnvolle Pakete aufzuteilen, die früher einen großen Zeitaufwand für Sportwissenschaftler bedeutet hätten (Ahmadi et al., 2014)

Klassifizierungsmodelle können eine objektive Entscheidungsfindung in Bezug auf Rehabilitationspraktiken und Verletzungsprävention erleichtern (Richter et al., 2019; Rommers et al., 2020)

4. Welche Herausforderungen gilt es zu meistern?

Auch wenn ML in der Theorie relativ einfache Lösungen für komplexe Probleme verspricht (vorausgesetzt man bringt entsprechende Programmierfähigkeiten mit), so gibt es dennoch einige Herausforderungen in der Praxis. Diese gilt es für jeden Anwender zu meistern.

Wie oben bereits geschrieben, benötigt ein ML Algorithmus Trainingsdaten, aus denen er lernen und sein Modell anpassen kann. Die Faustregel besagt, dass ca. 60% der Arbeit beim Umgang mit ML auf die reine Trainingsdatenerfassung aufgewandt werden muss. Die Qualität der Trainingsdaten ist am Ende einer der entscheidenden Punkte, ob der Algorithmus gute Arbeit leistet oder nicht.

Generell unterscheidet man beim ML in zwei unterschiedliche Lernstrategien, welche sich auf die Anforderungen an die Trainingsdaten auswirken: Das Überwachte Lernen und das Nicht-Überwachte Lernen. Überwachtes Lernen dient der Ermittlung von Funktionen wie z.B. bei Klassifikations- und Regressionsproblemen. Hier ist es wichtig, dass sowohl die Prädiktoren (also die Daten, die wir später in den Algorithmus einspeisen, um auf ein Ergebnis zu kommen), als auch die Zielwerte (also die Daten, die uns der Algorithmus später auswerfen soll), mit aufgezeichnet werden. Der ML Algorithmus ist somit im Trainingsprozess in der Lage, zu lernen, welche Ergebnisse er bei welchen Inputwerten herausgeben soll und kann dieses „Wissen“ später auch auf ungesehene Daten anwenden. Möchte man z.B. wie Mundt et al. (2019) Bodenreaktionskräfte mit Hilfe von MoCap Daten vorhersagen, so muss man für die Trainingsdaten sowohl die 3D Kinematik (Prädiktor) auch Bodenreaktionskräfte (Zielwert) aufzeichnen. Nach dem Trainingsprozess sollte der Algorithmus dann in der Lage sein, aus den Kinematikdaten die Bodenreaktionskräfte abzuschätzen.

Soll der ML Algorithmus allerdings für die Ermittlung unbekannter Strukturen, wie z.B. beim Clustering oder der Dimensionsreduktion, eingesetzt werden, so wird das sogenannte Nicht-Überwachte Lernen angewendet. Hierfür müssen und können keine Zielwerte ausgezeichnet werden.

Mitentscheidend für ein Gelingen des Trainingsprozesses ist die pure Menge an Trainingsdaten. Je komplizierter die zu modellierenden Zusammenhänge sind und je präziser die angestrebten Ergebnisse sein sollen, desto mehr Trainingsdaten werden benötigt. Und genau hier liegt eine der großen Herausforderungen in der Biomechanik. Wenn Du schon mal selbst eine Studie mit Probanden durchgeführt hast, weißt Du wie schwierig es ist genügend Teilnehmer zu rekrutieren. Die meisten Studien werden mit 10-20 Probanden durchgeführt, was für ML Anwendungen in den meisten Fällen nicht ausreichend ist. Biomechanische Studien, bei denen eine künstliche Intelligenz trainiert wird, haben im Schnitt rund 40 Probanden, doch auch dies scheint nicht immer ausreichend zu sein (Halilaj et al., 2018). Es ist schwierig, wenn nicht sogar unmöglich, eine Nummer zu definieren, die als Minimum an Trainingsdaten für einen ML Algorithmus benötigt wird. Aber man kann eindeutig sagen: Du kannst nie zu viele qualitativ hochwertige Daten sammeln! Je mehr du hast, desto genauer wird dein Modell. Natürlich gibt es irgendwo eine Art Sättigung, bei der die Verbesserungen marginal sein werden, aber auch hierfür gibt es keinen generellen Maximalwert.

Zusätzlich zu einem genaueren Modell sorgt ein großer Trainingsdatensatz ebenfalls für eine hohe Generalisierbarkeit und verhindert ein sogenanntes Overfitting, auf das wir später noch eingehen werden.

Zusätzlich zur puren Menge der Trainingsdaten ist die Variabilität im angestrebten Wertebereich von entscheidender Bedeutung. Dabei sollten die gesammelten Trainingsdaten repräsentativ für deinen Anwendungsbereich sein, um eine hohe Generalisierbarkeit sicherzustellen. In anderen Worten: Die Daten, die du für das Training verwendest, sollten alle Fälle abdecken, die aufgetreten sind und die noch auftreten werden. Ein Beispiel könnte hier etwas Licht ins Dunkel bringen: Du hast einen ML Algorithmus programmiert, der Bilder einliest und zwischen Hunden und Katzen unterscheiden soll. Du trainierst den Algorithmus mit jeweils drei Bildern pro Tier: Einen Hund mit weißem Fell, einen mit braunem Fell und einen mit schwarzem Fell; eine Katze mit weißem Fell, eine mit braunem Fell und eine mit getigertem Fell. Anschließend testest Du das trainierte Modell mit einem Bild einer Katze, welches ein schwarzes Fell hat. Die Wahrscheinlichkeit ist jetzt relativ hoch, dass der ML Algorithmus auf diesem Bild fälschlicherweise einen Hund identifiziert, denn im Trainingsdatensatz gab es keine schwarze Katze, sondern nur einen schwarzen Hund. Fügst Du den Trainingsdaten ein Bild mit einer schwarzen Katze hinzu, so ist der Algorithmus wahrscheinlich in der Lage einen schwarzen Hund von einer schwarzen Katze zu unterscheiden, da er die Unterschiede beider Tiere an anderen Merkmalen, wie z.B. dem Körperbau, festmacht. Eine hohe Variabilität in den Trainingsdaten geht so auch mit einer hohen Datenmenge einher. Eine hohe Datenmenge im Gegensatz dazu allerdings nicht zwangsläufig mit einer hohen Variabilität, was fatal wäre. 10 Bilder von braunen Katzen helfen nämlich nicht dabei, eine schwarze Katze zu identifizieren. Hier würden wir von einer Stichprobenverzerrung sprechen.

Genauso wichtig ist, dass der Trainingsdatensatz keine Fälle beinhaltet, die gar nicht vorkommen können. Sagen wir z.B. bei der Benennung der Bilddateien wurde ein Fehler gemacht und ein Bild einer Katze wird dadurch der Kategorie „Hund“ zugeordnet. Das Bild der Katze wäre offensichtlich nicht repräsentativ für einen Hund. Wenn du einen nicht repräsentativen Trainingsdatensatz verwendest, wird das trainierte Modell ebenfalls keine genauen Vorhersagen machen können.

Beim Trainieren des Modells sollte darauf geachtet werden, dass nur Merkmale als Prädiktoren verwendet werden, die auch einen tatsächlichen Nutzen haben. Sind die Trainingsdaten durch eine hohe Anzahl von irrelevanten Merkmalen geprägt, so wird dein Modell deutlich schlechtere Ergebnisse erzielen. Frei nach dem Motto: Packst Du Müll rein, kommt auch Müll wieder raus. Um bei unserem Hund-Katze-Beispiel zu bleiben, könnte man z.B. die Metadaten der Bilddateien betrachten. Hier wird unter anderem für jedes Bild der genaue Aufnahmezeitpunkt mit abgespeichert. Diese Information hat eindeutig keinen Nutzen für die Unterscheidung zwischen Hund und Katze und könnte sogar dazu führen, dass die Leistung des Algorithmus verringert wird. Es ist also wichtig, dass du vor dem Trainingsprozess alle relevanten Merkmale identifizierst, diese mit einbeziehst und alle irrelevanten Merkmale aussortierst.

Nachdem du genügend Trainingsdaten mit einer hohen Variabilität aufgenommen hast und anschließend relevante Merkmale und irrelevanten Merkmalen voneinander getrennt hast, sollte wie bei jeder Datenanalyse in der Biomechanik die Qualität der Daten überprüft werden. Gibt es Ausreißer, die man herausfiltern sollte? Fehlen Teile der Daten, deren Lücken noch gefüllt werden können und müssen?

Das Modell soll möglichst genaue Ergebnisse erzielen und deshalb ist die Qualität der Daten von hoher Bedeutung.

Maschinelles Lernen ist nicht gleich maschinelles Lernen. Es gibt eine Vielzahl von unterschiedlichen Methoden, die für verschiedene Anwendungen eingesetzt werden. Es gilt hier die passendste herauszusuchen und anschließend zu optimieren. Jedes einzelne Modell hat wiederrum einige Hyperparameter, die optimal konfiguriert werden müssen. Hierfür gibt es keine allgemeingültige Methode und eine detailliertere Beschreibung würde den Rahmen dieses Artikels sprengen. Aber keine Sorge: Wir arbeiten an einem spezifischen Artikel!

Auch beim Trainingsprozess gibt es ein paar Punkte zu beachten, um optimale Ergebnisse zu erhalten. Für einen erfolgreichen Trainingsprozess ist es nicht wichtig, den Fehler zwischen ML-Ausgabe und Zielwerten zu minimieren, sondern ihn zu optimieren. Es ist wichtig, einen guten Kompromiss zwischen einem Underfitting und Overfitting des Modells zu finden. Ein Underfitting tritt auf, wenn das zugrundeliegende Modell nicht in der Lage ist, die Komplexität der Zusammenhänge darzustellen. Ist dies der Fall, muss ein ML Algorithmus mit einer höheren Komplexität gewählt werden. Ein Overfitting ist das genaue Gegenteil davon und kommt in der Praxis viel häufiger vor. Hier führt es zu dem Phänomen, dass der Lernalgorithmus die Netzausgänge so gut an die Zielwerte anpasst, dass auch jede Art von Rauschen innerhalb des Trainingsdatensatzes gespeichert und abgebildet wird (Jabbar & Khan, 2014).

Die Hauptaufgabe beim Training neuer ML Algorithmen kann zusammengefasst werden als (i) die Erstellung eines Modells, das in seiner Komplexität dem realen Problem entspricht und (ii) dieses Modell zu trainieren, um seine internen Strukturen zu optimieren.

Für (i) kann das Prinzip von Occam's Razor angewendet werden. Dieses Prinzip besagt, dass einfache Lösungen für ein Problem komplexeren vorgezogen werden sollten (Sober, 2015). Bei ML Algorithmen legt dieses Prinzip nahe, dass eine niedrige Modellkomplexität, die in der Lage ist, die Aufgabe des Netzwerks zu erfüllen, zu einer hohen Generalisierungsleistung ohne Overfitting führt. Außerdem führt eine Reduktion der Modellkomplexität zu einer Verringerung der Rechenzeit (Schmidhuber, 2015).

Punkt (ii) stellt Anforderungen an die zu verwendenden Trainingsdaten und den Trainingsprozess selbst. Bei den Trainingsdaten sind die reine Menge der Datenpunkte und deren Variabilität von grundlegender Bedeutung. Kleinere Datensätze sind anfälliger für Overfitting, da sie möglicherweise nicht die volle Komplexität des realen Problems erfassen und das Modell sich leicht an sein Rauschen und seine Ausreißer anpassen kann (Jabbar, 2014). Aber auch bei einem großen Datensatz muss darauf geachtet werden, dass ein Overfitting vermieden wird, indem der Trainingsprozess an der richtigen Stelle gestoppt wird.

Dafür kann man den Trainingsdatensatz in zwei oder drei Subdatensätze aufteilen:

  1. Trainingsset: Dies ist der größte Teil und wird für die Reduzierung des Fehlers zwischen Outputs und Zielwerten verwendet.
  2. Validierungssatz: Wird zur Kreuzvalidierung des Modells während des Trainingsprozesses verwendet. Dies ist vom Trainingsset getrennt, wird aber innerhalb des Trainingsprozesses verwendet.
  3. Testsatz: Dieser Teil der Trainingsdaten wird nicht für das Training selbst verwendet, sondern dient nur zur Bewertung der Leistung des Modells.

Mit Hilfe der drei Teildatensätze wird nun die Early Stopping Regularisierungstechnik angewendet. In der Regel werden sowohl der Validierungs- als auch der Trainingsfehler in der Anfangsphase des Trainings abnehmen. Der Beginn eines Overfittings kann erkannt werden, wenn der Validierungs- und Testfehler zu steigen beginnt, während der Trainingsfehler weiter abnimmt. Das Training wird gestoppt, sobald ein signifikanter Abfall der Generalisierungsleistung über eine vordefinierte Anzahl und Epochen festgestellt wird. Der Trainingsalgorithmus gibt dann die Modellparameter mit der besten Leistung bis zu diesem Zeitpunkt zurück (Jabbar, 2014).

Zusammenfassung

ML Algorithmen haben ein breitgefächertes Anwendungsgebiet und punkten durch ihre schnelle Rechenzeiten, ihre Nichtlinearität sowie ihre Anpassbarkeit an reale und komplexe Probleme. Und genau aus diesen Gründen haben sie schon einige Anwendungen in der Biomechanik gefunden. Doch natürlich kommen diese Vorteile nicht ohne Herausforderungen und Nachteile: Du brauchst eine große Menge an Trainingsdaten mit einer hohen Variabilität, die das reale Problem möglichst gut beschreiben. Außerdem musst du das zu trainierende Modell richtig auswählen, die Parameter optimal konfigurieren und den Trainingsprozess so gestalten, dass es nicht zu einem Under- oder Overfitting kommt. Häufig gibt es hier keine exakten Vorgaben, nach denen Du dich richten kannst, sodass du die Trial-and-Error Methode so lange anwendest, bis du ein Gefühl dafür entwickelst, an welchen Stellschrauben du für dein Projekt am besten drehen kannst.

Doch all das kann gemeistert werden, und dann hat Maschinelles Lernen in der Zukunft definitiv das Potential die Objektivität der Entscheidungsfindung in der Biomechanik deutlich zu erhöhen und komplexe Probleme schnell zu lösen.

References

Ahmadi, A., Mitchell, E., Destelle, F., Gowing, M., O’Connor, N.E., Richter, C., Moran, K., 2014 – 2014. Automatic Activity Classification and Movement Assessment During a Sports Training Session Using Wearable Inertial Sensors. In 2014 11th International Conference on Wearable and Implantable Body Sensor Networks. IEEE, pp. 98–103. IEEE. DOI: 10.1109/BSN.2014.29

Basheer, I.A., Hajmeer, M., 2000. Artificial neural networks: fundamentals, computing, design, and application. Journal of Microbiological Methods 43, 3–31. https://doi.org/10.1016/S0167-7012(00)00201-3

Halilaj, E., Rajagopal, A., Fiterau, M., Hicks, J.L., Hastie, T.J., Delp, S.L., 2018. Machine learning in human movement biomechanics: Best practices, common pitfalls, and new opportunities. Journal of biomechanics 81, 1–11. https://doi.org/10.1016/j.jbiomech.2018.09.009

Hsieh, H.-J., Lu, T.-W., Chen, S.-C., Chang, C.-M., Hung, C., 2011. A new device for in situ static and dynamic calibration of force platforms. Gait & posture 33, 701–705. https://doi.org/10.1016/j.gaitpost.2011.03.005

Jabbar, H.K., Khan, R.Z., 2014 – 2014. Methods to Avoid Over-Fitting and Under-Fitting in Supervised Machine Learning (Comparative Study). In Computer Science, Communication and Instrumentation Devices. Research Publishing Services, Singapore, pp. 163–172. Research Publishing Services, Singapore. DOI: 10.3850/978-981-09-5247-1_017

Jamil, F., Iqbal, N., Ahmad, S., Kim, D.-H., 2020. Toward Accurate Position Estimation Using Learning to Prediction Algorithm in Indoor Navigation. Sensors (Basel, Switzerland) 20. https://doi.org/10.3390/s20164410

Kipp, K., Giordanelli, M., Geiser, C., 2018. Predicting net joint moments during a weightlifting exercise with a neural network model. Journal of biomechanics 74, 225–229. DOI: 10.1016/j.jbiomech.2018.04.021

Mundt, M., David, S., Koeppe, A., Bamer, F., Markert, B., Potthast, W., 2019. Intelligent prediction of kinetic parameters during cutting manoeuvres. Medical & biological engineering & computing 57, 1833–1841. DOI: 10.1007/s11517-019-02000-2

Richter, C., King, E., Strike, S., Franklyn-Miller, A., 2019. Objective classification and scoring of movement deficiencies in patients with anterior cruciate ligament reconstruction. PloS one 14. https://doi.org/10.1371/journal.pone.0206024

Richter, C., O’Reilly, M., Delahunt, E., 2021. Machine learning in sports science: challenges and opportunities. Sports biomechanics, 1–7. https://doi.org/10.1080/14763141.2021.1910334

Ritheesh Baradwaj Yellenki, 2020. Top 8 Challenges for Machine Learning Practitioners. The major challenges one needs to overcome while developing a machine learning application. https://towardsdatascience.com/top-8-challenges-for-machine-learning-practitioners-c4c0130701a1.

Rommers, N., RÖssler, R., Verhagen, E., Vandecasteele, F., Verstockt, S., Vaeyens, R., Lenoir, M., D’Hondt, E., Witvrouw, E., 2020. A Machine Learning Approach to Assess Injury Risk in Elite Youth Football Players. Medicine and science in sports and exercise 52, 1745–1751. DOI: 10.1249/MSS.0000000000002305

Stephen, J., Rohil, H., Vasavi, S. (Eds.), 2014 – 2014. Computer Science, Communication and Instrumentation Devices. Research Publishing Services, Singapore.

Weir, G., Alderson, J., Smailes, N., Elliott, B., Donnelly, C., 2019. A Reliable Video-based ACL Injury Screening Tool for Female Team Sport Athletes. International journal of sports medicine 40, 191–199. DOI: 10.1055/a-0756-9659

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.