{"adoption": {"forks": 200, "observed_at": "2026-08-28T04:04:11.710541+00:00", "stars": 1269}, "canonical_url": "https://ross.abutalabs.com/products/captainblackboard", "card": {"archived": false, "artifact_type": "learning-resource", "description": "船长关于机器学习、计算机视觉和工程技术的总结和分享", "domain": ["deep-learning", "computer-vision", "machine-learning", "tutorials", "developer-tools"], "enriched": true, "function": ["machine-learning", "deep-learning", "computer-vision", "image-processing", "nlp", "math", "developer-tools"], "health_score": 20, "homepage": null, "language": "C++", "license": "MIT", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["Captain1986/CaptainBlackboard"], "name": "Captain1986/CaptainBlackboard", "platform": ["cross-platform"], "pushed_at": "2023-04-28T07:37:48+00:00", "repo": "Captain1986/CaptainBlackboard", "stars": 1269, "tags": ["technical-blog", "chinese-language", "notes", "cnn", "optimization", "engineering-tips", "algorithms"], "topics": ["deep-learning", "computer-vision", "convolutional-neural-networks", "optimization-algorithms", "summary"], "urls": [], "use_cases": ["learn deep learning fundamentals with worked examples", "understand why cross-entropy is used as a classification loss", "study depthwise separable convolutions in MobileNet", "find tips for tuning deep learning hyperparameters", "learn common methods for handling imbalanced samples", "review machine learning basics like SVM and kNN", "learn C++ engineering tricks like embedding git commit SHA into binaries"], "what_it_is": "A collection of technical notes and tutorials (in Chinese) covering machine learning, deep learning, computer vision, and C++ engineering topics, written as a series of 'blackboard' articles. It includes worked explanations of CNNs, loss functions, SVM, kNN, dimensionality reduction, and practical engineering tricks.", "when_to_avoid": ["you need up-to-date content on modern LLMs or recent architectures", "you want runnable, maintained code libraries rather than written notes", "you need English-language material"], "when_to_choose": ["you want concise Chinese-language explanations of ML/CV theory and practice", "you prefer article-style notes over full courses or textbooks", "you need quick refreshers on classic algorithms and loss functions"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/captainblackboard", "repo": "Captain1986/CaptainBlackboard", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:11.710541+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T05:03:29.564271+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c8cbb69d37861734e22ff25fb8aac14a1704be3e497ea4e078965d31e1f14729", "fetched_at": "2026-08-28T04:04:11.710541+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Captain1986/CaptainBlackboard"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:11.710541+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T05:03:29.564271+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c8cbb69d37861734e22ff25fb8aac14a1704be3e497ea4e078965d31e1f14729", "fetched_at": "2026-08-28T04:04:11.710541+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Captain1986/CaptainBlackboard"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T05:03:29.564271+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c8cbb69d37861734e22ff25fb8aac14a1704be3e497ea4e078965d31e1f14729", "fetched_at": "2026-08-28T04:04:11.710541+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Captain1986/CaptainBlackboard"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:04:11.710541+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:11.710541+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:11.710541+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T05:03:29.564271+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c8cbb69d37861734e22ff25fb8aac14a1704be3e497ea4e078965d31e1f14729", "fetched_at": "2026-08-28T04:04:11.710541+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Captain1986/CaptainBlackboard"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:11.710541+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:11.710541+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T05:03:29.564271+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c8cbb69d37861734e22ff25fb8aac14a1704be3e497ea4e078965d31e1f14729", "fetched_at": "2026-08-28T04:04:11.710541+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Captain1986/CaptainBlackboard"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:11.710541+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:11.710541+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:11.710541+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T05:03:29.564271+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c8cbb69d37861734e22ff25fb8aac14a1704be3e497ea4e078965d31e1f14729", "fetched_at": "2026-08-28T04:04:11.710541+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Captain1986/CaptainBlackboard"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:11.710541+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:11.710541+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T05:03:29.564271+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c8cbb69d37861734e22ff25fb8aac14a1704be3e497ea4e078965d31e1f14729", "fetched_at": "2026-08-28T04:04:11.710541+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Captain1986/CaptainBlackboard"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T05:03:29.564271+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c8cbb69d37861734e22ff25fb8aac14a1704be3e497ea4e078965d31e1f14729", "fetched_at": "2026-08-28T04:04:11.710541+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Captain1986/CaptainBlackboard"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T05:03:29.564271+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c8cbb69d37861734e22ff25fb8aac14a1704be3e497ea4e078965d31e1f14729", "fetched_at": "2026-08-28T04:04:11.710541+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Captain1986/CaptainBlackboard"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T05:03:29.564271+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c8cbb69d37861734e22ff25fb8aac14a1704be3e497ea4e078965d31e1f14729", "fetched_at": "2026-08-28T04:04:11.710541+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Captain1986/CaptainBlackboard"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2773, "days_push": 1223, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 32, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}