尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證Visual Digit Recognition – CNN in action. Draw a digit and watch a convolutional neural network read it, layer by layer, live in your browser.
翻譯準備中
取自儲存庫 README
正在載入完整 README。
檢視完整 README ↗Draw a digit and watch a convolutional neural network read it, layer by layer, live in your browser.
▶ Live demo: hasin.eu/projects/cnn-digit-recognition-in-action. Works on desktop and phone.
Machine learning is usually explained with formulas or shown as a black box: a picture goes in, an answer comes out. I wanted a way to see how a neural network works and get an intuitive feel for it, without any math.
So this demo hides nothing. Every step the network takes is on screen and updates as you draw:
Draw a clean 8 and watch it light up. Then draw a sloppy 6, or a letter, and see where it goes wrong. Playing with it shows what a convolutional neural network (CNN) learns, and where its limits are, faster than reading about it.
Below the demo, a short explainer for newcomers to machine learning, with a video of a 1 turning into a 4 and then a 9.
The self-driving car demo shows the other side of the story: you train a small network to drive, three different ways. Self-Driving Car – NN in action.
There is no build step and no dependencies, only static files. You need Node.js for the bundled server.
git clone https://github.com/ehasin/Visual-Digit-Recognition-CNN-in-action.git
cd Visual-Digit-Recognition-CNN-in-action
node serve.mjs
Then open http://localhost:5317 (if that port is taken, the server picks the next free one and prints it). Any other static file server works too, for example python -m http.server.
| File | Role |
|---|---|
index.html | Page, styles and the explainer |
app.js | Drawing pad, canvas rendering, hover |
cnn.js | The network's forward pass in plain JavaScript (about 5 ms) |
preprocess.js | Redraws the pen path MNIST-style: thin stroke, fit to 20 × 20, centred by mass |
model/cnn.json | Weights (54 KB) |
tools/convert-cnn.mjs | Converts the original ONNX model to cnn.json by reading the protobuf directly |
assets/ | The explainer video: a wide cut for desktop, a vertical cut for phones |
docs/ | Screenshots for this README |
share.js | The share bar (under the explainer) and the footer's Share, as plain links |
serve.mjs | Tiny local static server |
Network: conv 5×5 (8 filters) → ReLU → max-pool 2 → conv 5×5 (16 filters) → ReLU → max-pool 3 → dense 256 → 10 → softmax. It is 98.9% accurate on the MNIST test set.
MIT, see LICENSE.
Built by Evgeni Hasin.