chore: vault backup from Joachims-PC at 2025-01-31T11:10
This commit is contained in:
parent
29872bd9c7
commit
8ff572f543
Clippings
Collections
Materialpool Entwicklung/Qualitätskriterien
Pasted image 20250113120729.pngrelichat-ai
|
@ -0,0 +1,125 @@
|
|||
---
|
||||
title: "Jiayi-Pan/TinyZero: Clean, accessible reproduction of DeepSeek R1-Zero"
|
||||
source: "https://github.com/Jiayi-Pan/TinyZero"
|
||||
author:
|
||||
- "[[GitHub]]"
|
||||
published:
|
||||
created: 2025-01-30
|
||||
description: "Clean, accessible reproduction of DeepSeek R1-Zero - Jiayi-Pan/TinyZero"
|
||||
tags:
|
||||
- "clippings"
|
||||
---
|
||||
## TinyZero
|
||||
|
||||
[](https://github.com/Jiayi-Pan/TinyZero/blob/main/cover.png)
|
||||
|
||||
TinyZero is a reproduction of [DeepSeek R1 Zero](https://github.com/deepseek-ai/DeepSeek-R1) in countdown and multiplication tasks. We built upon [veRL](https://github.com/volcengine/verl).
|
||||
|
||||
Through RL, the 3B base LM develops self-verification and search abilities all on its own
|
||||
|
||||
You can experience the Ahah moment yourself for < $30
|
||||
|
||||
Twitter thread: [https://x.com/jiayi\_pirate/status/1882839370505621655](https://x.com/jiayi_pirate/status/1882839370505621655)
|
||||
|
||||
Full experiment log: [https://wandb.ai/jiayipan/TinyZero](https://wandb.ai/jiayipan/TinyZero)
|
||||
|
||||
Paper's on it's way!
|
||||
|
||||
## Installation
|
||||
|
||||
```
|
||||
conda create -n zero python=3.9
|
||||
# install torch [or you can skip this step and let vllm to install the correct version for you]
|
||||
pip install torch==2.4.0 --index-url https://download.pytorch.org/whl/cu121
|
||||
# install vllm
|
||||
pip3 install vllm==0.6.3 # or you can install 0.5.4, 0.4.2 and 0.3.1
|
||||
pip3 install ray
|
||||
|
||||
# verl
|
||||
pip install -e .
|
||||
|
||||
# flash attention 2
|
||||
pip3 install flash-attn --no-build-isolation
|
||||
# quality of life
|
||||
pip install wandb IPython matplotlib
|
||||
```
|
||||
|
||||
## Countdown task
|
||||
|
||||
**Data Preparation**
|
||||
|
||||
```
|
||||
conda activate zero
|
||||
python ./examples/data_preprocess/countdown.py --local_dir {path_to_your_dataset}
|
||||
```
|
||||
|
||||
### Run Training
|
||||
|
||||
For the following code, if you see Out-of-vram, try add `critic.model.enable_gradient_checkpointing=True` to the script
|
||||
|
||||
**Single GPU**
|
||||
|
||||
Works for model <= 1.5B. For Qwen2.5-0.5B base, we know it fails to learn reasoning.
|
||||
|
||||
```
|
||||
export N_GPUS=1
|
||||
export BASE_MODEL={path_to_your_model}
|
||||
export DATA_DIR={path_to_your_dataset}
|
||||
export ROLLOUT_TP_SIZE=1
|
||||
export EXPERIMENT_NAME=countdown-qwen2.5-0.5b
|
||||
export VLLM_ATTENTION_BACKEND=XFORMERS
|
||||
|
||||
bash ./scripts/train_tiny_zero.sh
|
||||
```
|
||||
|
||||
**3B+ model** In this case, the base model is able to develop sophisticated reasoning skills.
|
||||
|
||||
```
|
||||
export N_GPUS=2
|
||||
export BASE_MODEL={path_to_your_model}
|
||||
export DATA_DIR={path_to_your_dataset}
|
||||
export ROLLOUT_TP_SIZE=2
|
||||
export EXPERIMENT_NAME=countdown-qwen2.5-3b
|
||||
export VLLM_ATTENTION_BACKEND=XFORMERS
|
||||
|
||||
bash ./scripts/train_tiny_zero.sh
|
||||
```
|
||||
|
||||
### Instruct Ablation
|
||||
|
||||
We experiment with QWen-2.5-3B Instruct too. **Data Preparation** To follow chat template, we need to reprocess the data:
|
||||
|
||||
```
|
||||
conda activate zero
|
||||
python examples/data_preprocess/countdown.py --template_type=qwen-instruct --local_dir={path_to_your_dataset}
|
||||
```
|
||||
|
||||
**Training**
|
||||
|
||||
```
|
||||
export N_GPUS=2
|
||||
export BASE_MODEL={path_to_your_model}
|
||||
export DATA_DIR={path_to_your_dataset}
|
||||
export ROLLOUT_TP_SIZE=2
|
||||
export EXPERIMENT_NAME=countdown-qwen2.5-3b-instruct
|
||||
export VLLM_ATTENTION_BACKEND=XFORMERS
|
||||
|
||||
bash ./scripts/train_tiny_zero.sh
|
||||
```
|
||||
|
||||
## Acknowledge
|
||||
|
||||
- We run our experiments based on [veRL](https://github.com/volcengine/verl).
|
||||
- We use Qwen2.5 series base model [Qwen2.5](https://github.com/QwenLM/Qwen2.5).
|
||||
|
||||
## Citation
|
||||
|
||||
```
|
||||
@misc{tinyzero,
|
||||
author = {Jiayi Pan and Junjie Zhang and Xingyao Wang and Lifan Yuan and Hao Peng and Alane Suhr},
|
||||
title = {TinyZero},
|
||||
howpublished = {https://github.com/Jiayi-Pan/TinyZero},
|
||||
note = {Accessed: 2025-01-24},
|
||||
year = {2025}
|
||||
}
|
||||
```
|
8
Collections/Top 10 Materialempfehlungen.md
Normal file
8
Collections/Top 10 Materialempfehlungen.md
Normal file
|
@ -0,0 +1,8 @@
|
|||
|
||||
Institute, Fachgruppen, Communities führen unabhängig voneinander zu beliebigen Themen Linksammlungen die sie über ein gemeinsames Protokoll ausgewertet werden und zu einer gemeinsamen Top 10 Sammlung zusammenfließen
|
||||
|
||||
|
||||
https://excalidraw.com/#room=bcf0abd90d4e50591c9e,dQ55eVPOslSeyl3FAA-EWA
|
||||
|
||||
![[Pasted image 20250113120729.png]]
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
Teilnehmende: Laura, Phillip, Corinna
|
||||
Arbeitspapier:
|
||||
https://docs.google.com/document/d/1H7rCuENA1sLKAtNd7Fpn2ZkKR3y8fihJM7DJHh4CEdE/edit?tab=t.0
|
||||
|
BIN
Pasted image 20250113120729.png
Normal file
BIN
Pasted image 20250113120729.png
Normal file
Binary file not shown.
After ![]() (image error) Size: 35 KiB |
|
@ -0,0 +1,62 @@
|
|||
Vorrausetzung wäre eine die Schaffung einer Vectordatenbank in der alle Bildungspläne ev. Religion erfasst wären. Hier zu eine Ideenskizze:
|
||||
|
||||
### **Die Idee der Vektordatenbank für Bildungspläne im Fach Evangelische Religion**
|
||||
|
||||
Der Kern der Idee ist, die textuellen Inhalte der Bildungspläne (Bildungsziele, Kompetenzbeschreibungen, didaktische Intentionen, Lerninhalte) in **Vektorrepräsentationen (Embeddings)** umzuwandeln und diese in einer Vektordatenbank zu speichern.
|
||||
|
||||
**Was sind Vektoreinbettungen (Embeddings)?**
|
||||
|
||||
Im Wesentlichen sind Vektoreinbettungen numerische Darstellungen von Texten (oder Wörtern, Sätzen, ganzen Dokumenten) in einem hochdimensionalen Raum. **Ähnliche Texte werden im Vektorraum räumlich nah beieinander positioniert.** Diese Ähnlichkeit basiert nicht auf oberflächlicher Wortübereinstimmung, sondern auf **semantischer Bedeutung**.
|
||||
|
||||
**Wie funktioniert das konkret für Bildungspläne?**
|
||||
|
||||
1. **Datenaufbereitung:**
|
||||
|
||||
- Wir **extrahieren** die relevanten **Textabsätze** (Max 256 Token länge) aus den Bildungsplänen der verschiedenen Bundesländer (z.B. Abschnitte zu Bildungszielen, Kompetenzbereichen, Inhaltsfeldern).
|
||||
|
||||
2. **Generierung von Vektoreinbettungen:**
|
||||
|
||||
- Wir verwenden ein vortrainiertes **Sprachmodell (z.B. sentence-transformers/all-MiniLM-L6-v2 oder spezialisierte Modelle für den Bildungsbereich)**, um für jeden Textabschnitt einen Vektor zu generieren.
|
||||
|
||||
3. **Speicherung in einer Vektordatenbank:**
|
||||
|
||||
- Die generierten Vektoren werden zusammen mit Metadaten (z.B. Bundesland, Bildungsplanversion, Kategorie: Bildungsziel, Kompetenz etc.) in einer Vektordatenbank gespeichert (z.B. ElasticSearch).
|
||||
|
||||
4. **Vergleich und Analyse:**
|
||||
|
||||
- **Ähnlichkeitssuche:** Wir können nun in der Vektordatenbank **Ähnlichkeitssuchen** durchführen. Zum Beispiel:
|
||||
|
||||
- "Finde alle Kompetenzbeschreibungen, die der Kompetenzformulierung 'xyz' **semantisch ähnlich** sind."
|
||||
- Auf diese Weise können wir aus den Materialien heraus nach passenden lehrplänen suchen.
|
||||
|
||||
- **Clustering:** Wir können Vektoren **clustern**, um Gruppen von ähnlichen Bildungszielen, Kompetenzen oder Inhalten zu identifizieren, die über verschiedene Bundesländer hinweg vorkommen.
|
||||
|
||||
5. **Generierung von vergleichbaren Formulierungen (Fortgeschritten):**
|
||||
|
||||
- **Zusammenfassung/Abstraktion:** Wenn wir Cluster von ähnlichen Vektoren identifiziert haben, könnten wir versuchen, **repräsentative oder zusammenfassende Formulierungen** für diese Cluster zu generieren. Dies könnte durch:
|
||||
|
||||
- **Generative Modelle (z.B. LLMs):** Fortgeschrittene Sprachmodelle nutzen, um **neue, abstrakte Formulierungen** zu generieren, die die Essenz des Clusters erfassen. Dies ist jedoch eine anspruchsvollere Aufgabe und erfordert sorgfältige Evaluation.
|
||||
|
||||
|
||||
**Herausforderungen und zu berücksichtigende Aspekte:**
|
||||
|
||||
- **Komplexität:** Die Implementierung erfordert Expertise in NLP, Vektordatenbanken und Programmierung.
|
||||
|
||||
- **Interpretierbarkeit:** Vektoren sind abstrakte Repräsentationen. Die Interpretation der Ähnlichkeitsergebnisse und Cluster erfordert Fachwissen und sorgfältige Analyse.
|
||||
|
||||
- **Datenqualität:** Die Qualität der Analyse hängt von der Qualität der extrahierten Texte aus den Bildungsplänen ab.
|
||||
|
||||
### Schritt 1: Formulierung gemeinsamer Bildungsziele:
|
||||
|
||||
**Strukturierung und Kategorisierung der gesammelten Ziele:**
|
||||
* Die gesammelten Bildungsziele werden zunächst grob thematisch sortiert (z.B. nach den Dimensionen, die wir im ersten Modellvorschlag definiert haben: personal, sozial, religiös, ethisch).
|
||||
* Innerhalb dieser Kategorien können wir weitere Unterkategorien bilden, um die Vielfalt der Ziele zu strukturieren.
|
||||
|
||||
**Formulierung von übergeordneten Bildungszielen:**
|
||||
* Auf Basis der vektoriellen Ähnlichkeiten entwickeln wir **neue, konsolidierte Bildungszielformulierungen**.
|
||||
* Bei der Formulierung der neuen Bildungsziele ist **Abstraktion** wichtig. Wir müssen von sehr spezifischen Formulierungen zu allgemeineren, übergeordneten Kernaussagen gelangen.
|
||||
* **Generalisierung** bedeutet, dass wir versuchen, die Vielfalt der Formulierungen unter einem gemeinsamen Dach zu vereinen, ohne die spezifischen Intentionen der einzelnen Bundesländer zu negieren.
|
||||
|
||||
**Orientierung an übergeordneten Bildungsprinzipien:**
|
||||
* Bei der Formulierung der konsolidierten Bildungsziele können wir uns an **übergeordneten Bildungsprinzipien** orientieren, wie sie z.B. in den KMK-Beschlüssen oder in pädagogischen Grundlagentexten formuliert sind (z.B. Persönlichkeitsentwicklung, Werteorientierung, religiöse Mündigkeit, soziale Verantwortung).
|
||||
* Auch **theologische Grundlinien** des evangelischen Religionsunterrichts können als Orientierung dienen (z.B. Gottesliebe, Nächstenliebe, Schöpfungsverantwortung, Hoffnungsperspektive).
|
Loading…
Reference in a new issue