Posts

Predictive maintenance in Semiconductor Industry: Part 1

The process in the semiconductor industry is highly complicated and is normally under consistent observation via the monitoring of the signals coming from several sensors. Thus, it is important for the organization to detect the fault in the sensor as quickly as possible. There are existing traditional statistical based techniques however modern semiconductor industries have the ability to produce more data which is beyond the capability of the traditional process.

For this article, we will be using SECOM dataset which is available here.  A lot of work has already done on this dataset by different authors and there are also some articles available online. In this article, we will focus on problem definition, data understanding, and data cleaning.

This article is only the first of three parts, in this article we will discuss the business problem in hand and clean the dataset. In second part we will do feature engineering and in the last article we will build some models and evaluate them.

Problem definition

This data which is collected by these sensors not only contains relevant information but also a lot of noise. The dataset contains readings from 590. Among the 1567 examples, there are only 104 fail cases which means that out target variable is imbalanced. We will look at the distribution of the dataset when we look at the python code.

NOTE: For a detailed description regarding this cases study I highly recommend to read the following research papers:

  •  Kerdprasop, K., & Kerdprasop, N. A Data Mining Approach to Automate Fault Detection Model Development in the Semiconductor Manufacturing Process.
  • Munirathinam, S., & Ramadoss, B. Predictive Models for Equipment Fault Detection in the Semiconductor Manufacturing Process.

Data Understanding and Preparation

Let’s start exploring the dataset now. The first step as always is to import the required libraries.

There are several ways to import the dataset, you can always download and then import from your working directory. However, I will directly import using the link. There are two datasets: one contains the readings from the sensors and the other one contains our target variable and a timestamp.

The first step before doing the analysis would be to merge the dataset and we will us pandas library to merge the datasets in just one line of code.

Now let’s check out the distribution of the target variable

Figure 1: Distribution of Target Variable

From Figure 1 it can be observed that the target variable is imbalanced and it is highly recommended to deal with this problem before the model building phase to avoid bias model. Xgboost is one of the models which can deal with imbalance classes but one needs to spend a lot of time to tune the hyper-parameters to achieve the best from the model.

The dataset in hand contains a lot of null values and the next step would be to analyse these null values and remove the columns having null values more than a certain percentage. This percentage is calculated based on 95th quantile of null values.

Figure 2: Missing percentge in each column

Now we calculate the 95th percentile of the null values.

Figure 3: Missing percentage after removing columns with more then 45% Na

From figure 3 its visible that there are still missing values in the dataset and can be dealt by using many imputation methods. The most common method is to impute these values by mean, median or mode. There also exist few sophisticated techniques like K-nearest neighbour and interpolation.  We will be applying interpolation technique to our dataset. 

To prepare our dataset for analysis we should remove some more unwanted columns like columns with near zero variance. For this we can calulate number of unique values in each column and if there is only one unique value we can delete the column as it holds no information.

We have applied few data cleaning techniques and reduced the features from 590 to 444. However, In the next article we will apply some feature engineering techniques and adress problems like the curse of dimensionality and will also try to balance the target variable.

Bleiben Sie dran!!

Interview – Die Herausforderungen der Sensor-Datenanalyse für die Automobilindustrie

Interview mit Andreas Festl von VIRTUAL VEHICLE

Andreas Festl ist Data Scientist bei VIRTUAL VEHICLE, ein führendes F&E Zentrum für die Automobil- und Bahnindustrie mit Sitz in Graz, Österreich. Das Zentrum konzentriert sich auf die konsequente Virtualisierung der Fahrzeugentwicklung. Wesentliches Element dabei ist die Verknüpfung von numerischer Simulation und Hardware-Testen, welche ein umfassendes HW-SW Systemdesign sicherstellt. Herr Festl forscht dort an Kontext-basierten Informationssystemen für den Einsatz im Fahrzeug und in der Entwicklung. Er ist ausgebildeter Mathematiker, der sich schon früh dem Thema Data Science verschrieben hat. Zusätzlich ist Herr Festl in der Lehre für Data and Information Science an der Fachhochschule Joanneum tätig.

Data Science Blog: Herr Festl, Sie sind technischer Data Scientist und arbeiten mit Daten, die zum großen Teil von Maschinen generiert werden. Was unterscheidet Ihren Arbeitsalltag vermutlich von den Data Scientists, die sich mit geschäftlichen Daten befassen?

Das wesentliche Merkmal an den Daten, mit denen wir arbeiten, ist die nicht vernachlässigbare zeitliche Komponente. Stellen Sie sich zum Beispiel eine Messung der Fahrzeuggeschwindigkeit vor: Dieses Messsignal kann natürlich nur dann sinnvoll interpretiert und verarbeitet werden, wenn die Zeit mitberücksichtigt wird. Die bloße Kenntnis der einzelnen Geschwindigkeitswerte hilft Ihnen ohne die korrekte Abfolge nicht weiter. Das führt dazu, dass viele Algorithmen aus dem Bereich des maschinellen Lernens nicht direkt auf diesen Daten arbeiten können.

Es existieren hier natürlich dennoch viele Möglichkeiten und Ansätze dafür, Wissen aus den Daten zu gewinnen; diese werden jedoch scheinbar noch nicht so oft verwendet, weshalb die verfügbare Software meist nicht für industrielle, sondern für akademische Nutzer ausgelegt ist. Ein wesentlicher Teil meiner Arbeit besteht deshalb darin, die passenden Libraries zu finden und diese für unsere Use-Cases anzupassen oder die Methode neu zu implementieren. Es gibt durchaus immer wieder Zeiten in denen meine Job-Beschreibung „mathematischer Programmierer“ lauten sollte und nicht “Data Scientist“. Ich denke, das ist im klassischen Bereich, der sich geschäftlichen Daten beschäftigt, vielleicht nicht mehr so häufig, da dort die verfügbare Software schon sehr ausgreift ist.

Außerdem beschreiben unsere Daten oft komplexe technische Prozesse in Fahrzeugkomponenten. Hier ist eine rege Kommunikation mit den jeweiligen Domänenexperten unerlässlich, damit ich auch als fachfremder Data Scientist den Prozess, der die Daten erzeugt, zumindest in Grundzügen verstehen kann. Dieser kommunikative Teil, in dem man sehr viel über verschiedenste Fachbereiche erfährt, ist für mich einer der schönsten Aspekte meiner Arbeit.

Data Science Blog: Wenn Data Science einem Laien erklärt wird, kommen häufig Beispiele von Kaufempfehlungen oder Gesundheitsprognosen von Fitness-Apps zur Sprache. Welches Beispiel würden Sie im Kontext von Automotive verwenden?

Die Möglichkeiten für den Einsatz von Data Science im Automotive Bereich sind extrem vielfältig – sie kann eigentlich über den gesamten Lebenszyklus eines Fahrzeugs gewinnbringend eingesetzt werden. Ein Einsatzbeispiel, das der Fahrer direkt positiv erleben kann, wäre die Predictive Maintenance von Fahrzeugteilen. Ähnlich zu den von Ihnen angesprochenen Fitness-Apps geht es hier darum eine „Gesundheitsprognose“ für die einzelnen Fahrzeugteile anhand von Messwerten zu erstellen. Im Idealfall müssen Sie Ihr Auto dann nicht mehr in fixen Service-Intervallen in die Werkstatt stellen, sondern das Auto meldet sich automatisch kurz bevor ein Teil ausgetauscht werden muss. Diese Meldung erschiene dann deshalb, weil die Messwerte darauf schließen lassen, dass es bald zu einem Defekt kommen wird und nicht einfach nach einem fixen, vorher definierten Zeitraum. Heute werden ja Teile oft einfach deswegen ausgetauscht, weil es der Wartungsplan so vorsieht – unabhängig von ihrer tatsächlichen Abnutzung.

Data Science Blog: Was sind denn gegenwärtig besonders interessante Anwendungsfälle und an welchen arbeiten Sie für die Zukunft?

Aus Sicht der Anwendung finde ich es besonders spannend durch Sensor-Signale auf Eigenschaften des Fahrers zu schließen. Die Methodik dazu entwickeln wir gerade in aktuellen Projekten. Es ist zum Beispiel durchaus denkbar, sicherheitsrelevante Ereignisse und Fahrmanöver zu identifizieren. Diese Informationen können dann vielseitig verwendet werden. Einige Beispiele dazu: Verkehrsplaner könnten damit automatisiert besonders gefährliche Kreuzungen angezeigt bekommen, Versicherer könnten ihren Kunden auf das individuelle Risikoverhalten abgestimmte Produkte anbieten oder Kunden könnten sich Ihren Taxifahrer über eine App nach seinem Fahrstil aussuchen. Denkbar wäre auch eine Diebstahlsicherung: Das Fahrzeug erkennt über den Fahrstil, dass es von einer unbefugten Person benutzt wird und löst daraufhin einen Alarm aus. Hier eröffnen sich viele Möglichkeiten.

Aus Sicht der Datenanalyse finde ich es besonders interessant, Algorithmen, die für ganz andere Aufgabenstellung entwickelt wurden, auf Probleme aus dem Automotive-Bereich anzuwenden. In einem unserer Projekte analysieren wir beispielsweise Software-Logfiles von Prüfständen und verwenden dazu Association Rules (eine Technik aus der Warenkorbanalyse) und Methoden, die normalerweise für das Untersuchen von Interaktionen in sozialen Netzwerken verwendet werden. Dass diese Übertragbarkeit gegeben ist finde ich extrem spannend.

Data Science Blog: Über welche Datenquellen verfügen Sie? Gibt es auch fahrzeugexterne Datenquellen, die sinnvoll sein könnten?

Da sprechen Sie natürlichen einen kritischen Punkt in jedem Data Science Projekt an: Ohne Daten geht nichts. Zusätzlich müssen die verwendeten Daten eine gewisse Qualität aufweisen und natürlich mit dem zu lösenden Problem in möglichst direktem Zusammenhang stehen.

Welche Datenquellen wir genau verwenden, hängt natürlich sehr stark vom konkretem Projekt ab. In industrienahen Projekten werden die Daten in der Regel vom Industriepartner bereitgestellt. Das kann dann alles Mögliche sein: Messungen von Prüfständen, Fertigungs-Protokolle, Wartungsdaten und vieles mehr.

Diese „Industrie-Daten“ unterliegen dann aber üblicherweise einer strengen Geheimhaltung und dürfen nicht in anderen Projekten verwendet werden. Deshalb haben wir im Unternehmen einen eigenen Datenlogger entwickelt, mit dem wir selber Daten aufnehmen können, die dann uns gehören. Diese Daten verwenden wir hauptsächlich in forschungsnahen Projekten, in denen die Ergebnisse publiziert werden sollen.

Fahrzeugexterne Datenquellen sind definitiv sinnvoll und werden immer mehr mit den klassischen Sensor-Daten fusioniert; oft ergibt sich dann durch eine Kombination von proprietären und offen verfügbaren Daten ein großer Mehrwert. In der vorhin angesprochenen Erkennung von sicherheitsrelevanten Ergebnissen spielt zum Beispiel das Wetter eine wesentliche Rolle: Eine zu schnell gefahrene Kurve ist bei Nässe oder Glätte deutlich gefährlicher als auf trockener Fahrbahn. Generell werden Daten über Umwelt und Infrastruktur immer wichtiger. Praktisch jeder fahrerzentrierte Dienst benötigt sie. Denken Sie zum Beispiel an Google Maps, das bereits heute die Bewegungsdaten von vielen Verkehrsteilnehmern gemeinsam analysiert um Vorhersagen über die Verkehrsdichte und damit über die optimale Route zu treffen.

Data Science Blog: Wie aufwändig gestaltet sich das Data Engineering, also die Datenbereitstellung und -zusammenführung?

Das ist definitiv ein schwieriges Unterfangen. Gerade Sensordaten erreichen schnell eine beachtliche Größe, die den Einsatz eines Big Data Technologie-Stacks erforderlich macht. Hier macht uns aber wieder die bereits angesprochene zeitliche Komponente unserer Daten zu schaffen. Die meisten Big Data Technologien skalieren ja, indem sie die Datenpunkte mehr oder weniger zufällig auf mehrere Rechner verteilen. Das ist bei unseren Daten aber nicht zulässig, die Reihenfolge der Daten ist hochrelevant! Hier müssen wir also entweder auf einer anderen Ebene parallelisieren oder Technologie mit spezieller Funktionalität für Zeitreihen verwenden.

Data Science Blog: Welche Technologien setzen Sie für die Datenbereitstellung und -analyse ein? Was halten Sie vom Einsatz von Open Source Software?

Wir implementieren unsere Analysen meist in R oder Python, manchmal kommen auch Matlab oder C# (letzteres meist für User Interfaces) zum Einsatz. Für Big Data Analysen verwenden wir meist Apache Spark über die R und Python APIs. Für die Datenablage und Bereitstellung verwenden wir hauptsächlich PostgreSQL mit Timescale Erweiterung, InfluxDB sowie Apache Hadoop. Grundsätzlich sind wir jedoch nicht auf bestimmte Technologien fixiert, sondern versuchen immer das jeweils beste Tool für den jeweiligen Einsatzzweck zu verwenden.

Ich finde es spricht nichts gegen den Einsatz von Open Source Software – wie Sie ja auch an unserem Technologie-Stack erkennen können. Ich habe aber auch nichts gegen Closed Source Software – es gibt in beiden Bereichen genug gute und schlechte Software. Worauf ich aber achte, ist keine neue Technologie zu verwenden, hinter der ein zu kleines Entwicklerteam oder gar nur ein einzelner Entwickler steht. Hier ist mir die Gefahr zu groß, dass die Entwicklung bald eingestellt wird und die Ergebnisse meiner Analysen nicht mehr nachvollziehbar sind.

Data Science Blog: Zum Abschluss noch eine Frage von jungen Nachwuchskräften, die davon träumen, eine Karriere als Data Scientist im Ingenieurwesen zu machen: Welche Voraussetzungen bzw. Eigenschaften sollte ein Data Scientist in Ihrem Bereich mitbringen?

Neben einer fundierten fachlichen Ausbildung sind Neugier und der Wille, Zusammenhänge zu verstehen, Eigenschaften, die für jeden Data Scientist sehr wichtig sind. Zusätzlich hilft es durchaus eine kommunikative Persönlichkeit zu sein: Es gilt in Workshops die richtigen Informationen über die Daten einzuholen – das ist nicht immer ganz leicht. Zusätzlich müssen natürlich regelmäßig die Resultate der jeweiligen Analysen einem oft fachfremden Publikum präsentiert werden.

Events

Nothing Found

Sorry, no posts matched your criteria