Poprawki do zajęć 5. #7

Merged
tzietkiewicz merged 1 commits from tzietkiewicz/aitech-ium:master into master 2021-04-12 13:52:40 +02:00
Showing only changes of commit 304d348990 - Show all commits

View File

@ -2,33 +2,46 @@
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Biblioteki ML"
"# Biblioteki Deep Learning"
]
},
{
"cell_type": "markdown",
"metadata": {},
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Plan na dziś\n",
"Przegląd bibliotek ML / DL:\n",
"Przegląd bibliotek DL:\n",
"1. Tensorflow\n",
"2. Pytorch\n",
"3. Caffe \n",
"3\n",
"4. Deeplearning4J\n",
"5. CNTK (Microsoft Cognitive Toolkit)\n",
"6. ML.NET\n",
"7. MXNet\n",
"4. Caffe2\n",
"5. Deeplearning4J\n",
"6. CNTK (Microsoft Cognitive Toolkit)\n",
"7. ML.NET\n",
"8. MXNet\n",
"9. Porównanie\n",
"10. Formaty wymiany modeli\n",
"\n",
"Zadanie"
]
},
{
"cell_type": "markdown",
"metadata": {},
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Dynamiczne vs statyczne grafy obliczeniowe\n",
"\n",
@ -46,7 +59,11 @@
},
{
"cell_type": "markdown",
"metadata": {},
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## 1. Tensorflow\n",
" - www.tensorflow.org\n",
@ -63,7 +80,11 @@
},
{
"cell_type": "markdown",
"metadata": {},
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"### 1.1 Keras\n",
" - [keras.io](https://keras.io/)\n",
@ -72,7 +93,11 @@
},
{
"cell_type": "markdown",
"metadata": {},
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Przykład IRIS w Tensorflow/Keras\n",
"https://www.tensorflow.org/tutorials/customization/custom_training_walkthrough"
@ -80,7 +105,11 @@
},
{
"cell_type": "markdown",
"metadata": {},
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## 2. PyTorch\n",
" - https://pytorch.org/\n",
@ -97,7 +126,11 @@
},
{
"cell_type": "markdown",
"metadata": {},
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## 3. Caffe\n",
" - http://caffe.berkeleyvision.org/\n",
@ -110,12 +143,16 @@
},
{
"cell_type": "markdown",
"metadata": {},
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## 4. Caffe2\n",
" - https://caffe2.ai/\n",
" - Rozwijana przez Facebook\n",
" - zmergowana do repozytorium Tensorflow\n",
" - zmergowana do repozytorium PyTorch\n",
" - Open source\n",
" - Głównie zastosowania produkcyjne, w tym modele embedded (Caffe2go)\n",
" - PyTorch: łatwość ekspoerymentowania, research. Caffe2: wydajność, urządzenia mobilne\n",
@ -124,7 +161,11 @@
},
{
"cell_type": "markdown",
"metadata": {},
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## 5. Deeplearning4J\n",
" - aka. DL4J, Deep Learning for Java\n",
@ -139,7 +180,11 @@
},
{
"cell_type": "markdown",
"metadata": {},
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## 6. CNTK (Microsoft Cognitive Toolkit)\n",
"- https://cntk.azurewebsites.net/\n",
@ -151,7 +196,11 @@
},
{
"cell_type": "markdown",
"metadata": {},
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## 7. ML.NET\n",
" - https://dot.net/ml\n",
@ -168,7 +217,11 @@
},
{
"cell_type": "markdown",
"metadata": {},
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## 8. MXNet\n",
" - https://mxnet.apache.org/\n",
@ -181,7 +234,11 @@
},
{
"cell_type": "markdown",
"metadata": {},
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## 9. Porównanie\n",
"|Framework |Autor |Licencja | Język | Interface |Uwagi |\n",
@ -199,7 +256,11 @@
},
{
"cell_type": "markdown",
"metadata": {},
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## 9. Formaty wymiany\n",
" - większość bibliotek używa innego formatu do zapisu modeli\n",
@ -218,10 +279,16 @@
},
{
"cell_type": "markdown",
"metadata": {},
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Zadanie [20 pkt.]\n",
"\n",
"Termin: 2 tygodnie (25 IV)\n",
"\n",
"1. Wybierz jeden z frameworków ML (jeden z powyższych, ale może być też inny) i zaimplementuj w nim prostą sieć neuronową rozwiązującą wybrany problem (np regresji lub klasyfikacji) na wybranym na poprzednich zajęciach zbiorze. Możesz wzorować się (lub nawet skopiować) na jednym z tutotoriali do danego frameworka.\n",
" - wczytaj dane trenujące z pliku [2 pkt.]\n",
" - wytrenuj na nich model [8 pkt.]\n",
@ -238,6 +305,7 @@
}
],
"metadata": {
"celltoolbar": "Slideshow",
"kernelspec": {
"display_name": "Python 3",
"language": "python",