From b7f48bb1dfc7d446c5090568855ef8205a231b10 Mon Sep 17 00:00:00 2001 From: bxdd Date: Sat, 13 Jan 2024 21:33:30 +0800 Subject: [PATCH] [DOC] update readme --- README.md | 35 ++++++++++++++++++++++++++++++++--- 1 file changed, 32 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index f05bb41..3e06d35 100644 --- a/README.md +++ b/README.md @@ -50,6 +50,8 @@ These specifications, encompassing both semantic and statistical aspects, detail The need for Learnware arises due to challenges in machine learning, such as the need for extensive training data, advanced techniques, continuous learning, catastrophic forgetting, and data privacy issues. Although there are many efforts focusing on one of these issues separately, they are entangled, and solving one problem may exacerbate others. The learnware paradigm aims to address many of these challenges through a unified framework. Its benefits are listed as follows. +
+ | Benefit | Description | | ---- | ---- | | Lack of training data | Strong models can be built with small data by adapting well-performed learnwares. | @@ -59,6 +61,7 @@ The need for Learnware arises due to challenges in machine learning, such as the | Data privacy/ proprietary | Developers only submit models, not data, preserving data privacy/proprietary. | | Unplanned tasks | Open to all legal developers, the learnware market can accommodate helpful learnwares for various tasks. | | Carbon emission | Assembling small models may offer good-enough performance, reducing interest in training large models and the carbon footprint. | +
The learnware paradigm consists of two distinct stages: - `Submitting Stage`: Developers voluntarily submit various learnwares to the learnware market, and the system conducts quality checks and further organization of these learnwares. @@ -68,15 +71,41 @@ The learnware paradigm consists of two distinct stages: -## Learnware Package Design +## Framework and Infrastructure Design
+The engine architecture is designed based on the guidelines including _decoupling_, _autonomy_, _reusability_, and _scalability_. The above architecture diagram illustrates the architecture and framework from the perspectives of both modules andprocesses + +- At the workflow level, the `learnware` package consists of `Submitting Stage` and `Deploying Stage`. + +
+ +| Module | Workflow | +| ---- | ---- | +| `Submitting Stage` | The learnware developers submit learnwares to the learnware market, which conducts usability checks and further organization of these learnwares. | +| `Deploying Stage` | The `learnware` package identifies learnwares according to users’ task requirements and provides efficient reuse and deployment methods. | + +
+ +- At the module level, the `learnware` package is a platform that consists of `Learnware`, `Market`, `Specification`, `Model`, `Reuse`, and `Interface` modules. + +
+ +| Module | Description | +| ---- | ---- | +| `Learnware` | The specific learnware, consisting of specification module, and user model module. | +| `Market` | Designed for learnware organization, identification, and usability testing. | +| `Specification` | Generating and storing statistical and semantic information of learnware, which can be used for learnware search and reuse. | +| `Model` | Including the base model and the model container, which can provide unified interfaces and automatically create isolated runtime environments. | +| `Reuse` | Including the data-free reuser, data-dependent reuser, and aligner, which can deploy and reuse learnware for user tasks. | +| `Interface` | The interface for network communication with the `Beimingwu` backend.| + +
+ -At the workflow level, the `learnware` package consists of `Submitting Stage` and `Deploying Stage`. -At the module level, the `learnware` package is a platform that consists of above components. The components are designed as loose-coupled modules and each component could be used stand-alone. # Quick Start