===== Tematy projektów WSHOP -- zima 2023/2024 ===== ==== [KKT] FACE APIs comparison - follow-up study ==== * **Student:** Michał Przysucha * **Namespace in the wiki:** [[..:projects:2023:faceapis-follow:]] * **The goal of the project:** Comparison of the effectiveness of off-the-shelf APIs and pre-trained models for emotion recognition in non-trivial images * **Technology:** Python, data analysis * **Description:** The facial expression recognition tools are trained and evaluated on benchmark datasets that contain many expressions generated 'at the request' of the expressor and photographed en face. This does not match the reality, where expressions are not so strong and where the face is not always facing the camera. The project is the continuation of the previous research published by our team and extended during previous WSHOP. During the project, one should: (a) explore previous results, (b) integrate them together, (c) perform consistent experiments in a unified environment on a unified dataset (it may be necessary to find/add elements to the dataset!), (d) summarise the results by indicating the strengths and weaknesses (supported situations) for each API. * **Links:** * AffectNet: [[https://paperswithcode.com/dataset/affectnet]] (a benchmark dataset) * Our previous work is briefly summarized in the paper: [[https://link.springer.com/chapter/10.1007/978-3-031-06527-9_7|Evaluation of Selected APIs for Emotion Recognition from Facial Expressions]] * Previous workshop projects: [[..:projects:2022:faceapis:|2022]], [[..:projects:2023:faceapis1:|2023v1]], [[..:projects:2023:faceapis2:|2023v2]], [[mgr:mgr2023:emoapis:start|2023v3]] ==== [KKT] Affect changes as probability blobs (with RegFlow) in Valence x Arousal space ==== * **Student:** Konrad Micek * **Namespace in the wiki:** [[..:projects:2023:regflow:]] * **The goal of the project:** Adapt RegFlow method to 2-D emotion prediction task * **Technology:** Python, data analysis * **Description:** The research shows that emotion prediction models do not have high accuracy in 2-D space (Valence x Arousal). So, we want to accept this fact, and think about this as some kind of blob of probability somewhere in this 2-D space. This blob will move through time (e.g., when the subject is playing a game, the emotions will change during the subsequent phases of the game). In this project, we will use existing RegFlow method and try to adapt it to data from BIRAFFE2 experiment to show how emotion-blobs moved through the time of the game. * **Links:** * RegFlow: {{https://arxiv.org/pdf/2011.14620.pdf|description}}, [[https://github.com/maciejzieba/regressionFlow|repo]] * [[https://zenodo.org/record/5786104|BIRAFFE2]] ==== [KKT] Emotion prediction in artificial space (then mapped to actual emotion space) ==== * **Student:** FIXME * **Namespace in the wiki:** [[..:projects:2023:FIXME:]] * **The goal of the project:** Create a prediction model that maps features into artificial X-dimensional space. Then, map this space into actual emotions/labels space * **Technology:** Python, machine learning, data analysis * **Description:** Emotions in computational models are often represented as 2-dimensional Valence x Arousal space (sometimes it is a 3-D space with Dominance). When it comes to train prediction models, one try to map features space (features of physiological signals) into this 2-D space. A lot of research shows that this does not work. So, we want to try another approach: create a classifier that maps features into X-dimensional artificial space (with X >> 2), and then create some mapping from this space into the Valence x Arousal space. As X will be higher than 2 it should catch more sophisticated relations in the data. A mapping from X-dimensional space into 2-D space should also provide some information about accuracy of the prediction/mapping. \\ You can start with the DEAP dataset, but ultimately, the project should be done with BIRAFFE2 dataset. \\ There should be some "classical" model trained/downloaded as a baseline (to show that the new model is better). \\ Transformers should be useful to generate the artificial X-D space. * **Links:** * [[https://www.eecs.qmul.ac.uk/mmv/datasets/deap/|DEAP]] (the dataset can be obtained from KKT) * [[https://zenodo.org/record/5786104|BIRAFFE2]] ==== [KKT] Support in BIRAFFE3 experiment ==== * **Student:** Honorata Zych * **Namespace in the wiki:** [[..:projects:2023:bir3support:]] * **The goal of the project:** Support in BIRAFFE3 experiment preparation (pilot data analysis) and then collaboration with actual experiment * **Technology:** Python, data analysis * **Description:** The project has two phases. During the first phase, one will take part in work conducted in BIRAFFE3 team focused on pilot data analysis: verification of the collected data (Are there no gaps? Can the data be combined? Do we have everything that can be harvested?) and simple analysis. Then, in the second part, one will help with conducting the actual experiment (scope of work to be determined). If the work is done with appropriate involvement, one could also become a co-author of a publication on BIRAFFE3 in Nature Scientific Data. * **Links:** * [[https://www.nature.com/articles/s41597-022-01402-6|BIRAFFE2 in Nature Scientific Data]] -- at the end of a day, we want something similar for the BIRAFFE3 experiment ==== [KKT] Emotion recognition for everyday life - evaluation of the state-of-the-art ==== * **Student:** Anastasiya Yurenia * **Namespace in the wiki:** [[..:projects:2023:emognition:]] * **The goal of the project:** Replicate and evaluate methods and tools proposed for emotion recognition by [[https://emognition.com/|Emognition]] team from PWr * **Technology:** reading :), Python, data analysis, machine learning * **Description:** Our colleagues from [[https://emognition.com/|Emognition]] team deal with the same tasks as we in BIRAFFE series of experiments. In this project, we want to explore if their results are really as good as they say by following their papers/tools/methods (starting point is indicated by the Links below) and trying to replicate their results. In the subsequent projects (or Master Thesis) there will be possibility to use these methods and tools to other datasets like BIRAFFE2/BIRAFFE3. * **Links:** * Emognition Dataset: [[https://www.nature.com/articles/s41597-022-01262-0]] * How to calculate features? Almost 900 features are described in: [[https://ieeexplore.ieee.org/document/9431143]] * Various models evaluated in: [[https://ieeexplore.ieee.org/document/9767233]] * Personalization of models discussed in: [[https://ieeexplore.ieee.org/document/9767502]] ==== [KKT] Loki on a triplestore ==== * **Student:** Dominik Tyszownicki * **Namespace in the wiki:** [[..:projects:2023:loki:]] * **The goal of the project:** Get out of the SWI-Prolog from the Loki. Review current graph bases engines (triplestores), select the most promising one and move the whole knowledge to the selected triplestore.​ * **Technology:** PHP, Semantic Web * **Description:** [[https://loki.re/wiki/docs:loki-about|Semantic wiki Loki]] is a DokuWiki system with a set of plugins for putting knowledge within wiki pages. It can be then easily extracted/processed. Now, the whole knowledge processing is done via plain files and SWI-Prolog, which is interesting approach, but not the optimal one, as there are many triplestores (dedicated graph base engines) available. * **Links:** * [[https://www.w3.org/TR/rdf11-primer/|RDF Primer]] * [[https://loki.re/|Loki wiki]] * [[https://www.swi-prolog.org/|SWI-Prolog]] * [[https://en.wikipedia.org/wiki/Comparison_of_triplestores|Triplestores]] ==== [KKT] Ontology for handwritten manuscripts in Jagiellonian Library ==== * **Student:** FIXME * **Namespace in the wiki:** [[..:projects:2023:FIXME:]] * **The goal of the project:** Preparation and evaluation of the ontology * **Technology:** Semantic Web * **Description:** Prepare a preliminary ontology that will form the basis of a knowledge base describing the manuscripts. It is necessary to take into account existing standards (to maintain the possibility of integration with them: import and export of data) and the specific needs of the project conducted at the Jagiellonian Library (e.g., specific data collected in the process of digitization). * **Links:** * [[https://dihelib.id.uj.edu.pl/|DiHeLib project]] * [[https://kalliope-verbund.info/en/standards/standards.html|EAD used by Kalliope]] * [[https://pro.europeana.eu/page/edm-documentation|Europeana Data Model (EDM)]] ==== [KKT] Ontology for the SOLARIS synchrotron ==== * **Student:** FIXME * **Namespace in the wiki:** [[..:projects:2023:FIXME:]] * **The goal of the project:** Preparation and evaluation of the ontology * **Technology:** Semantic Web * **Description:** Work in the close collaboration with the SOLARIS team to create and ontology from the perspective of training and maintenance. * **Links:** * [[https://synchrotron.uj.edu.pl/|SOLARIS]] ==== [SBK] OpenML dataset creation script for Meta-Learning ==== * **Student:** * **Namespace in the wiki:** [[..:projects:2023:openmlds:]] * **The goal of the project:** Prepare a script that will build meta-learnign dataset out of OpenML logs * **Technology:** Python, [[https://docs.openml.org/APIs/|OpenML API]] * **Description:** The main goal of the project is to create a script that will fetch all of the runs/pipelines and dataset from [[https://www.openml.org/|OpenML]] platform and create a dataset out of it. The challenge is to transform pipeline definitions which are code snippets into logical components of machine-learning pipeline (including deep neural networks). Such a dataset will serve as a learn-to-learn dataset for meta-learning solutions. {{ :courses:wshop:openml-fetch.png?400 |}} * **Links:** * [[https://www.openml.org/|OpenML]] ==== [SBK] Wizualizacja (interaktywna) drzew decyzyjnych ==== * **Student:** FIXME * **Namespace in the wiki:** [[..:projects:2023:FIXME:]] * **The goal of the project:** Implementacja warstwy wizualizacji drzew decyzyjnych, pozwalajacych na umieszczenia na nich większej ilości infromacji niż wyłącznie dane o nazwach zmiennych i wartościach * **Technology:** Python, [[https://streamlit.io/|Streamlit]] * **Description:** Celem projektu jest swtorzenie interaktywnej wizualizacji dla drzew decyzyjnych generowanych algorytmem pyUID3 w ramach wyjaśniacza LUX. Chodzi między innymi o uwzględenienie w wizualizacji drzewa: granicy decyzyjnej wyznaczanej przez warunek na krawędzi (w formie wykresu dwuwymiarowego); informacji o istotności danej zmiennej zgodnie z ich wagą oikreśloną przez SHAP, oraz niepewneością wartości; modyfikowanie drzewa; {{ :courses:wshop:topics:oblique.png?200 |}} * **Links:** * [[https://github.com/sbobek/pyuid3|PyUID3]] * [[https://github.com/sbobek/lux|LUX]] ==== [SBK] Explainable Domain Adaptation for Streaming data ==== * **Student:** FIXME * **Namespace in the wiki:** [[..:projects:2023:FIXME:]] * **The goal of the project:** Use Domain adaptation and XAI mechanisms to distinguish between concept drits, novelty and anomaly. * **Technology:** Python, DeepLearnign * **Description:** The goal is to see if it is possible to obtain reliable explanations of a phenomena that may appear in time-series data and distinguish between them * **Links:** * [[https://adapt-python.github.io/adapt/generated/adapt.feature_based.DANN.html|Adapt]] * {{ :courses:wshop:topics:daxai_xai3_worshop2023.pdf |DAxAI}} ==== [SBK] Time-series transformer for anomaly detection ==== * **Student:** FIXME * **Namespace in the wiki:** [[..:projects:2023:FIXME:]] * **The goal of the project:** Build Transformer-based model for anomaly detection in data streams. * **Technology:** Python, PyTorch, Hugginface * **Description:** Take part in Win the competition: [[https://www.kaggle.com/datasets/pattinson9999/uci-metropt-3-dataset|Kaggle competitions]] * **Links:** * [[https://huggingface.co/docs/transformers/model_doc/time_series_transformer|Transformer model for time-series]] * [[https://github.com/timeseriesAI/tsai|Even more transformer-based TS models]] * [[https://www.kaggle.com/datasets/pattinson9999/uci-metropt-3-dataset|Kaggle competitions]] * [[https://zenodo.org/record/6854240|Additional dataset for training...]] ==== [SBK] Packageing and test writting for LUX ==== * **Student:** FIXME * **Namespace in the wiki:** [[..:projects:2023:FIXME:]] * **The goal of the project:** Add tests and make the LUX software ready for packagein; publish it in SoftwareX journal. * **Technology:** Python * **Description:** As abowe * **Links:** * [[https://github.com/sbobek/lux|LUX]] * [[https://packaging.python.org/en/latest/tutorials/packaging-projects/|Packaging]] * [[https://www.elsevier.com/journals/softwarex/2352-7110/guide-for-authors|How to publish]] ==== [SBK] Self-explainable deep neural networks ==== * **Student:** FIXME * **Namespace in the wiki:** [[..:projects:2023:FIXME:]] * **The goal of the project:** The goal is to reproduce results from Self-Explainable DNN architectures over selected datasets * **Technology:** Python * **Description:** As above * **Links:** * [[https://github.com/AmanDaVinci/SENN|SENN]] ==== [SBK] Time-SHAP implementation ==== * **Student:** FIXME * **Namespace in the wiki:** [[..:projects:2023:FIXME:]] * **The goal of the project:** The goal is to improve the SHAP XAI algorithm to work more efficiently on time-seris data * **Technology:** Python, Keras/PyTorch * **Description:** The goal is to imploement upgraded version of WindowShap that is based on changepoint detection algorithm to improve efficiency/quality of explanations. * **Links:** * [[https://arxiv.org/abs/2211.06507|WindowSHAP]] * [[https://github.com/sbobek/WindowSHAP| WindowSHAP Github]] ==== [SBK] Improvement of Classifier accuracy with simulated domain adaptation ==== * **Student:** FIXME * **Namespace in the wiki:** [[..:projects:2023:FIXME:]] * **The goal of the project:** The goal is to create architecture that improves classification accuracy with DA algorithms * **Technology:** Python, Keras * **Description:** The goal is to exploit the fact that classifier trained on the full datasets with more than one subpopulations can be weaker than two classifiers where one is trained on majority subpopulation and the other is fine-tuned for the minority subpopulation. This is a more realistic case of Simpson Paradox. * **Links:** * [[https://adapt-python.github.io/adapt/generated/adapt.feature_based.DANN.html| Adapt]] * [[https://www.sciencedirect.com/science/article/pii/S0957417423004086| DA for regression]] ==== [JKO] Universal speech recognition with differentiable allophone graphs ==== * **Student:** FIXME * **Namespace in the wiki:** [[..:projects:2023:UPhoRMPS:]] * **The goal of the project:** Implementing in k2 framework a model that learns phone-to-phoneme mappings. * **Technology:** Python, [[https://github.com/k2-fsa/k2|k2]] (Automatic Speech Recognition) * **Description:** The ultimate goal (larger than this project) is to create a speech recognition (SR) model for low-resource languages. In this project, we would like to implement a method for learning phonetic structures of language (allowed cooccurrence of variants of speech sounds). In speech processing, such constraints were commonly encoded via Weighted finite-state transducers (WFSTs). Recently, people realised that WFSTs can be treated as differentiable and so can be incorporated in neural SR models -- k2 serves exactly that purpose. The goal is to learn this ASR framework, reimplement in it a model by Yan et al., and start experimenting with it on various datasets (like accented English, Polish dialects or languages you haven't even heard of) that we have access to. * **Links:** * [[https://www.isca-speech.org/archive/interspeech_2021/yan21b_interspeech.html|Yan, B., Dalmia, S., Mortensen, D. R., Metze, F. & Watanabe, S. Differentiable Allophone Graphs for Language-Universal Speech Recognition. in Interspeech 2021 2471–2475 (ISCA, 2021).]] * [[https://www.isca-speech.org/archive/interspeech_2022/laptev22_interspeech.html|Laptev, A., Majumdar, S. & Ginsburg, B. CTC Variations Through New WFST Topologies. in Interspeech 2022 1041–1045 (ISCA, 2022).]] ==== [JKO] Domain Adversarial Training for speech model tuning ==== * **Student:** FIXME * **Namespace in the wiki:** [[..:projects:2023:UPhoRMPS:]] * **The goal of the project:** Implementing Domain Adversarial Training (DAT) in k2 framework. * **Technology:** Python, [[https://github.com/k2-fsa/k2|k2]] (for Automatic Speech Processing) * **Description:** The ultimate goal (larger than this project) is to create a speech recognition (SR) model for low-resource languages. k2 is a novel that reformulates training of neural SR models with Weighted finite-state transducers (WFSTs). In this project, we would like to incorporate into this framework DAT (a neural network training scheme that learns to disregard differences between some predefined domains) in order to make SR models more robust to highly differing source and target data (e.g., accents). The implementation should be further exhaustively tested on the Speech Accent Archive dataset that we have obtained. * **Links:** * [[https://arxiv.org/abs/1806.02786|Sun, S., Yeh, C.-F., Hwang, M.-Y., Ostendorf, M. & Xie, L. Domain Adversarial Training for Accented Speech Recognition. in 2018 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP) 4854–4858 (2018).]] * [[https://accent.gmu.edu/|The speech accent archive]] ==== [JKO] Physics informed neural networks (PINN) for object tracking in sports ==== * **Student:** FIXME * **Namespace in the wiki:** [[..:projects:2023:FIXME:]] * **The goal of the project:** Paper review and adjusting a chosen PINN for single object traking. * **Technology:** Python, Julia * **Description:** The ultimate goal (larger than this project) is to create a model to infer the movement of table tennis players to analyse their gameplay from single camera videos. One has to merge (a) pose estimation models (including a detailed hand position estimation) with (b) ball trajectory tracking and informing (a) with the physical parameters inferred from (b). The challenge is low sampling (only a couple of frames per one ball shot), blurr, camera angles make depth estimation hard, etc. There are a number of existing implementations of neural networks that explicitly incorporate physical equations/quantities. The goal it to find a suitable one, scrap a small amount of data (we can actually record high quality data ourselves), and try it out. Possibly there are Julia and Python alternatives to be considered. * **Links (as a starting point):** * [[https://arxiv.org/abs/1907.07587|A Differentiable Programming System to Bridge Machine Learning and Scientific Computing.]] * [[https://arxiv.org/abs/2211.07377|Physics-Guided, Physics-Informed, and Physics-Encoded Neural Networks in Scientific Computing]] ==== [FIXME] Template ==== * **Student:** FIXME * **Namespace in the wiki:** [[..:projects:2023:FIXME:]] * **The goal of the project:** FIXME * **Technology:** FIXME * **Description:** FIXME * **Links:** * FIXME