Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
Next revisionBoth sides next revision
teaching:gsoc2018 [2018/01/16 09:11] – created ahaiduteaching:gsoc2018 [2018/01/17 18:44] nyga
Line 1: Line 1:
 +
 +{{ :teaching:gsoc:gsoc2016logo.jpg?400 |}}
 +
 ====== Google Summer of Code 2018 ====== ====== Google Summer of Code 2018 ======
 ~~NOTOC~~ ~~NOTOC~~
 +===== pracmln =====
 +
 +//pracmln// is a toolbox for statistical relational learning (SRL) and 
 +reasoning and as such also includes tools for standard probabilistic 
 +graphical models. //pracmln// is an implementation of Markov logic networks (MLN) 
 +that supports efficient learning and inference in relational domains. 
 +Its learning and inference engines are entirely written in the Python 
 +programming language. Markov logic networks generalize both first-order
 +logic and probabilistic graphical models and have proven successful
 +in many real-world applications such as natural-language understanding
 +and robot perception. This makes MLNs one of the most general and most
 +powerful representation formalisms for uncertain knowledge.
 +
 +//pracmln// was designed with the particular needs of technical systems in 
 +mind. Our methods are geared towards practical applicability and can 
 +easily be integrated into other applications. The availability of 
 +graphical tools makes both learning or inference sessions a 
 +user-friendly experience. Scripting support enables automation, and
 +a browser-based [[http://pracmln.open-ease.org/|web application]] is intended for teaching and getting
 +familiar with MLNs.
 +
 +//pracmln// is an open-source project hosted on [[https://github.com/danielnyga/pracmln|GitHub.]] It has its own
 +project page ([[http://www.pracmln.org]]) that provides extensive documentation 
 +and tutorials that facilitate getting started with MLNs. It is provided as a pip
 +package in the Python package index ([[https://pypi.python.org/pypi/pracmln|PyPI]]).
  
 ===== Proposed Topics ===== ===== Proposed Topics =====
  
 In the following, we list our proposals for the Google Summer of Code topics that contribute to the aforementioned open-source projects. In the following, we list our proposals for the Google Summer of Code topics that contribute to the aforementioned open-source projects.
 +==== Topic 1: Markov logic networks in Python ====
 +
 +[[http://www.pracmln.org|{{  :teaching:gsoc:pracmln-gsoc-figure.png?200|}}]]
 +
 +
 +**Main Objective:** The current implementation of //pracmln// is entirely written in pure 
 +Python. The main objective of this project is to port the 
 +computationally heavy parts of the learning and inference algorithms to 
 +[[http://www.cython.org|Cython]], an extension to Python that allows static 
 +compilation of Python modules to C libraries. Cython allows to add 
 +static type declarations to Python, which can significantly speed up 
 +execution (up to a factor of 1000 compared to regular Python code).
 +
 +As most of the Python libraries for machine learning and scientific 
 +computing (e.g. scikit-learn, numpy) make use of static compilation,
 +it is expected that the practical applicability of Markov logic networks
 +will substanially be pushed to more demanding real-world scenarios.
 +
 +**Task Difficulty:** There is alreay a high-quality code base, however, 
 +solving this task properly requires understanding and experience in 
 +gradient-based optimization, machine learning and logics. 
 +
 +**Requirements:** Good programming skills in the Python programming
 +language (CPython/Cython), experience in Artificial Intelligence and Machine Learning
 +(ideally SRL technques and logic)
 +
 +**Expected Results:** The core components of pracmln, i.e. the learning
 +and inference modules are expected to be ported to the Cython language
 +exploiting the means of implementational optimization provided by
 +Cython.
 +
 +**Contact:** [[team/daniel_nyga|Daniel Nyga]]
 +




Prof. Dr. hc. Michael Beetz PhD
Head of Institute

Contact via
Andrea Cowley
assistant to Prof. Beetz
ai-office@cs.uni-bremen.de

Discover our VRB for innovative and interactive research


Memberships and associations:


Social Media: