Alle Beiträge von wordpressadmin

Workshop „Künstliche Intelligenz mit neuronalen Netzen“ SS2019

Workshop „Künstliche Intelligenz mit neuronalen Netzen“

SS2019

In den letzten Jahren machen Schlagwörter wie „deep learning“, „machine learning“, „Expertensysteme, „künstliche Intelligenz“, etc. wieder Schlagzeilen in diversen Medien. Inwieweit ist das aber nur ein kurzlebiger und sich wiederholender Trend? Bereits im vorigen Jahrhundert wurden in allen Facetten die unglaublichen Möglichkeiten künstlicher Intelligenz propagiert. Aber was ist bis jetzt wirklich erreicht worden? Inwieweit beeinflussen derartige „Netzwerke“ bereits unseren Alltag und wie könnten uns diese bei den verschiedensten Forschungsfragen neue Erkenntnisse ermöglichen?

Tatsache ist, dass 2019 künstliche Intelligenz (KI) bereits omnipräsent sind! Um dem Plakativen und Überzogenem zu begegnen, ist es einerseits nötig entsprechende Einsichten zu entwickeln. Andererseits werden in Zeiten von „Big Data“ auch im wissenschaftlichen Umfeld künstliche Netzwerke unverzichtbarer Bestandteil bei der Bearbeitung von Forschungsfragen werden.

Im Rahmen dieser Lehrveranstaltung werden wir uns künstliche neuronale Netze (KNN), ein Teilgebiet der KI, von Grund auf ansehen und deren Funktionsweise detailliert erläutern.

Dabei werden wir neben der nötigen Theorie auch praktische Beispiele zeigen, die mit Hilfe von Jupyter Notebook als Entwicklungsumgebung und einige der vielen Frameworks, wie zum Beispiel TensorFlow und Keras, implementiert werden.

Weitere Themen, die wir behandeln werden sind die

  •  historische Entwicklung von KNN (aus Sicht des Informatikers),
  •  biologische Motivation der KNN (aus Sicht des Informatikers),
  • unterschiedliche KNN-Arten und -Lernalgorithmen.

Als Anschauungsvehikel ist geplant einen Magic Mirror zu verwenden, der lernen sollte, den Betrachter nach Geschlecht und Alter zu klassifizieren und basierend darauf zu reagieren.

Zusammenfassung der geplanten Inhalte:

  • Überblick zur LV
  • Einordnung der KNN in das Gebiet der KI
  • Ein wenig Biologie und was die Informatiker daraus machen
  • Ein einfaches KNN mit Hilfe von Jupyter Notebook – der Vorwärtspfad
    • Perceptron
    • Adaline
  •  XOR Problematik
  • Mehrschichtige KNN – der Vorwärtspfad
  • Lernen im KNN – der Rückwärtspfad
  • Convolutional neural networks (CNN) bzw. die Architektur moderner Netze
  • Möglicherweise mit TensorFlow
  • Und was es sonst noch gibt:
    • Teuvo Kohonens Self Organizing Maps (SOM)
    • John Hopfields Netze
    • Anwendungsbeispiele
      • Hoffentlich mit Magic Mirror

Termin: 29.05.2019,  von 13:00 – 19:00

Vorbesprechung:  kein

Material:

Code: to be coded

TODO: nothing

VP Enterprise Computing WS2017/2018

VP Enterprise Computing

WS2017/2018

Enterprise Systeme sind große („large-scale“) Software Applikationen zur Visualisierung, Manipulation und Speicherung von großen Mengen oft komplexer Daten. Damit ermöglichen sie die Unterstützung und Automatisierung von Geschäftsprozessen in großen Organisationen. Beispiele dafür sind klassische ERP Systeme, Reservierungssysteme, Content Management Systeme, uvm.

Üblicherweise werden diese Systeme auf eigenen Servern gehostet und stellen ihre Services einer großen Anzahl gleichzeitig zugreifender Benutzer zur Verfügung, die typischerweise über ein Computer-Netzwerk mit dem System verbunden sind. Damit unterscheiden sie sich vor allem in ihrer Komplexität und ihren Anforderungen wesentlich von Applikationen die nur von einem einzigen Benutzer verwendet werden können und direkt auf dem PC des Benutzers ausgeführt werden.

In dieser Lehrveranstaltung werden Sie die Architektur der klassischen SAP Systeme kennenlernen und konkret erfahren, wie darin Anwendungen zu entwickeln sind, die von einer Vielzahl von Usern gleichzeitig verwendet werden können.

Der spezielle Fokus wird auf die Erstellung von ABAP – die proprietäre Programmiersprache der SAP – Anwendungen gesetzt: Vom UI bis zur Datenbank. Des weiteren werden Themen wie Softwarelogistik, Autorisierung, Infrastruktur, etc. das Thema SAP aus architektonischer Sicht abrunden.

Termin: 01.02.2018 – 03.02.2018, jeweils von 09:00 – 12:00 und 13:00 – 17:00

VorbesprechungVPVBWS2017_2018_20171023

Material:

01.02.2018: VPWS2017_2018_20180131

02.02.2018: VPWS2017_2018_20180202

03.02.2018: VPWS2017_2018_20180203

Code: to be coded

TODO: nothing

VP Softwaretechnologien WS2016/2017

VP Software Technologien

WS2016/2017

(**)Die SAP bietet unterschiedliche Ansätze um technische und betriebswirtschaftliche Aufgabenstellungen in Unternehmen zu lösen. Beginnend bei der Bereitstellung von Prozessimplementierungen bis hin zur Möglichkeit kundenindividuelle Entwicklungen (Custom Development) abzuwickeln. In der LV werden wir einen Aspekt des Custom Developments kennenlernen: die technischen Ansätze  zur Erstellung von Web- bzw. mobilen Szenarien. Dabei folgen wir dem MVC bzw. MVP Pattern und behandeln oberflächlich die Implementierung von Anwendungskomponenten und fokussieren danach auf die Erstellung von SAP UI5(*) Oberflächen.

(*) SAP UI5 ist die zukünftige UI Technologie der SAP im Kontext SAP HANA und unterscheidet sich komplett von der klassischen Entwicklung im SAP. Man könnte auch sagen, dass sich SAP und damit ihre Kunden derzeit in der Phase eines Paradigmenwechsels befindet

(**) Falls einer  der Begriffe aus der Beschreibung unbekannt sein sollte, dann würde ich nahelegen die LV zu besuchen, um für zukünftige Vorstellungsgespräche gewappnet zu sein.

Termin: 01.02.2017 – 03.02.2017, jeweils von 09:00 – 12:00 und 13:00 – 17:00

Vorbesprechung: VPVBWS2016_2017

MaterialVPVLWS2016_2017

Code: HellloWorld (01.02.2017)

TODO: Bitte noch in der SAP HANA registrieren: https://account.hanatrial.ondemand.com

WD4A Message Area Configuration

 METHOD init_message_area .
 
 * API Window Controller
   DATAlr_api_window TYPE REF TO if_wd_window_controller.
 * Message area
   DATAlr_wd_message_area TYPE REF TO if_wd_message_area.
 * Get the API
   lr_api_window ?= wd_this->wd_get_api).
 * Get the Message Area
   lr_wd_message_area lr_api_window->get_message_area).
 * Configure the message are
   CALL METHOD lr_wd_message_area->set_display_attributes
     EXPORTING
       i_show_only_current abap_false "Show message protocol
       i_msg_lines_visible '-1'
       i_use_toggle_area   abap_true "Show old design
       i_for_all_instances abap_false.
 
 ENDMETHOD.

In Place Media Visualization for SAPUI5

Intro

This short instruction explains all the components which are used for displaying media data based on an oData service and an SAP UI5 application.

Step-by-Step

Service
  1. First you need an object, s.a. a image or a pdf document. Let’s call it Media Object.
  2. Then you need an oData service to deliver the data for the Media Object.
    1. Just create a plain oData service
    2. Create an entity type.
    3. Check the MEDIA  check box for the entity type (oData Project->Data Model->Entity Types, double click your enttiy type, the attributes are shown on the right hand side)
    4. Switch to the …DPC_EXT class (oData Project->Runtime Artifacts)
    5. Use context menu->Goto ABAP Workbench
    6. Redefine the /IWBEP/IF_MGW_APPL_SRV_RUNTIME~GET_STREAM method (see sample code Appendix)
  3. Once you want to call the media service you have to at the $value at the end of the query, e.g. <Service URL>/$value
SAP UI5

View:

<core:HTML id=“pdfContainer“ ></core:HTML>

Controller:

var oContainer = this.getView().byId(„pdfContainer“);
var oContent = „<iframe src='“+ <Service URL>/$value +“‚
+ „style=’width:600px; height:500px;‘ frameborder=’0′></iframe>“;

Transactions

Transaction Explanation
SEGW SAP Gateway Service Builder

Appendix

METHOD /iwbep/if_mgw_appl_srv_runtime~get_stream.
DATA:
 ld_mypdf TYPE xstring,
 ls_stream TYPE ty_s_media_resource,
 ls_header TYPE ihttpnvp.

* Create the media data
 * ld_mypdf = ...

* Set the MIME type and the value and create data ref
 ls_stream-mime_type = 'application/pdf'.
 ls_stream-value = ld_mypdf.
 copy_data_to_ref( 
   EXPORTING is_data = ls_stream
   CHANGING cr_data = er_stream ).

* In order to display the media data in place you have to set the 
* following
 ls_header-name = 'content-disposition'.
 ls_header-value = 'inline; filename=MyPDF.pdf'.
 /iwbep/if_mgw_conv_srv_runtime~set_header( ls_header ).
ENDMETHOD.