KI mit Python?
Hi ich will eine KI mit Python programmieren allerdings ohne dabei vorgefertigte Bibliotheken zu verwenden also alles daran sollte selbst programmieret sein.Gibt es dazu ein Buch oder ähnliches das das thematisiert?
3 Antworten
Bücher über lineare algebra, multivariate calculus und statistik
Ich glaube du unterschätzt wie komplex eine KI ist. Die kannst du nicht einfach so programmieren, das würde Jahre brauchen und du musst sehr erfahren sein. Meine KI des Vertrauens hat mir aber das da (https://www.amazon.de/Machine-Learning-mit-Python-Praxis-Handbuch/dp/3958454224) empfohlen, kannst mal gucken
Ja, ist easy. Mit PyTorch könnte ich dir GPT3 mit einer trainingpipeline in weniger als 1h nachbauen. In C++ müsstest du nur ein paar lineare algebra funktionen und die ableitungen nachprogrammieren. Das ist eine sehr gute Übung. Das dauert sicherlich einen ganzen Tag. Wenn man das zum ersten Mal macht oder besonders sauberen/performanten Code schreiben will vielleicht sogar noch länger. Aber für Transformer NNs braucht man nicht viel an Funktionen.
Da du CPP im Namen hast, gehe ich mal besonders auf Cc+ ein. Zuerst programmierst du eine templated Tensorklasse mit shape und continuous memory. dann definierst du tensor operation (e.g. multiplikation, reshape, squeeze, element/axis wise operations etc) mit operator overloading. Dann Programmierst du eine autograd engine die für jede operation auf einem tensor auch die ableitungen speichert (hier brauchst du die chain rule). Dann noch die deep learning layers definieren die du brauchst (fully connected, embedding, sinusoidal positional encoding, attention etc). Als letztes noch Aktivierungsfunktionen, weight initialisation, Adam optimizer. Done.
Nutze lieber bestehende Bibliotheken. Grundsätzlich z.B. TensorFlow, PyTorch, SciKit usw. Je nach KI-Technologie dann noch Spezialbibliotheken, z.B. Baselines, ACME und v.a. Gym im Bereich Reinforcement Learning.
Warum das Rad neu erfinden? Das ist m.E. nach wenig zielführend.
quatsch, du kannst an einem Tag den code für ChatGPT3 nachprogrammieren.