Bachelorseminar: Machine Learning in Software Engineering

Beschreibung

Machine learning techniques have been very successful in the last decade in various fields.
There are multiple research fields concerned with their application to software engineering. Examples include: Smart code completion and coding assistance, automatic translation between programming languages, learning algorithms from input/output examples, and automatic repair of bugs in code.

This seminar offers motivated students the opportunity to learn about a selection of these applications

In this seminar, students will be assigned a topic and will be given a scientific article on that topic. They are expected to read the paper, understand the idea, and research related material on their own. At the end, each student has to write a report and give a presentation explaining what they have learnt.

Organization:

This seminar give 3 ECTS points.
The languages of communication are English and German. Students are expected to give the presentation, and write the report in English.
We will meet every week to discuss the progress and issues faced by students.
In this context, students are required to actively participate and present their progress on a weekly basis.

Location: Oettingenstraße 67, Room 067
Time: Thursday, 4-6pm (ct)

Prerequisite courses:

Basic knowledge in machine learning

Schedule:

  • 20 Apr: Introductory meeting to discuss seminar organization
  • 25 Apr: Submission of preferred topics
  • 27 Apr: Assignment of topics to students (no meeting on this day)
  • 04 May: First Round of Lightning talks (2-3mins)
  • 11 May: Introduction to Scientific Writing and Presentations
  • 30 May: 5 Minute Presentation (Part I)
  • 01 Jun: 5 Minute Presentation (Part II)
  • 22 Jun: (POSTPONED: was 15 Jun) How-To: Peer-Review
  • 22 Jun: Submission of draft report (begin of Peer-Review Phase)
  • 29 Jun - 01 Jul (Planned): Block seminar. Final dates will be announced mid June.
  • 9 Jul: Submission of the final report

Requirements to pass the course:

  • Presentation of 18-20 minutes + Questions 5min
  • Written report of 4 pages in IEEE double column format, including bibliography.

Each student is responsible on their own to follow the rules of good scientific practice. Please ask mentors in case of a doubt. Plagiarism will lead to failing the seminar.

List of topics

  1. On the Naturalness of Software
    - https://discovery.ucl.ac.uk/id/eprint/1505799/1/Barr_On%20the%20Naturalness%20of%20Software%20-%20E%20Barr.pdf
  2. On the “Naturalness” of Buggy Code
    - https://arxiv.org/pdf/1506.01159.pdf
  3. Learning to Generate Pseudo-Code from Source Code Using Statistical Machine Translation
    - https://ieeexplore.ieee.org/abstract/document/7372045
  4. Neural-machine-translation-based commit message generation: how far are we?
    - https://dl.acm.org/doi/abs/10.1145/3238147.3238190
  5. A Convolutional Attention Network for Extreme Summarization of Source Code
    - http://proceedings.mlr.press/v48/allamanis16.pdf
  6. Learning Natural Coding Conventions
    - https://doi.org/10.1145/2635868.2635883
  7. Mining Idioms from Source Code
    - https://dl.acm.org/doi/abs/10.1145/2635868.2635901
  8. Unpaired Image-to-Image Translation Using Cycle-Consistent Adversarial Networks
    - https://doi.org/10.1109/ICCV.2017.244
  9. Evaluating Large Language Models Trained on Code
    - https://arxiv.org/pdf/2107.03374.pdf
  10. Sequencer: Sequence-to-Sequence Learning for End-to-End Program Repair
    - https://arxiv.org/pdf/1901.01808.pdf
  11. Learning to represent programs with graphs
    - https://doi.org/10.48550/arXiv.1711.00740
  12. Neural Turing Machines
    - https://arxiv.org/abs/1410.5401
  13. LSTM: A Search Space Odyssey
    - https://doi.org/10.1109/TNNLS.2016.2582924
  14. Language Models are Unsupervised Multitask Learners
    - https://paperswithcode.com/paper/language-models-are-unsupervised-multitask
Institut
Institut für Informatik
Dozent:in
Assistent:innen
Kursteilnehmer:innen
15 von 15
Zentralanmeldung
Bachelorseminare
Material

Das Kursmaterial ist nur für Mitglieder des Kurses einsehbar, also z.B. für Teilnehmer:innen, Tutor:innen, Korrektor:innen und Verwalter:innen.

Prüfungen
NameAnmeldung abAnmeldung bisTerminPrüfungsanmeldung
Mi 19 Jul 2023 14:00 – Fr 21 Jul 2023 15:00
Nicht zur Prüfung angemeldet
Termine
ArtZeitRegulärer RaumNotiz
Seminar Session
  • Do 16:15–17:45
Oettingenstraße 67, Room 067
Tutorien
ArtBezeichnungTutorenRegulärer RaumZeitAnmeldungen abAnmeldungen bisAbmeldungen bisFreie Plätze
Final Presentation
Final Presentations I
    Oettingenstraße 67, 067
    • Do 29 Jun 2023 16:00–18:00
    0
    Final Presentation
    Final Presentations II
      Raum wird nur Teilnehmern angezeigt
      • Fr 30 Jun 2023 10:00–12:00
      Mi 21 Jun 2023 01:00
      0
      Final Presentation
      Final Presentations III
        Oettingenstraße 67, 067
        • Fr 30 Jun 2023 14:00–16:00
        Mi 21 Jun 2023 01:00
        1
        Presentation
        5 Minute Presentation Slot I
          F003
          • Mi 31 Mai 2023 17:00–18:00
          Di 30 Mai 2023 10:09
          2
          Presentation
          5 Minute Presentation Slot II
            067
            • Do 01 Jun 2023 16:15–17:45
            Di 30 Mai 2023 10:14
            4