Spaces:
Sleeping
Sleeping
Upload 304 files
Browse filesThis view is limited to 50 files because it contains too many changes.
See raw diff
- .env +8 -0
- .gitattributes +2 -0
- README.md +835 -12
- app.py +314 -0
- database/__init__.py +1 -0
- database/__pycache__/__init__.cpython-310.pyc +0 -0
- database/__pycache__/__init__.cpython-311.pyc +0 -0
- database/__pycache__/__init__.cpython-39.pyc +0 -0
- database/__pycache__/create_db.cpython-310.pyc +0 -0
- database/__pycache__/create_db.cpython-311.pyc +0 -0
- database/__pycache__/create_db.cpython-39.pyc +0 -0
- database/__pycache__/create_db_local.cpython-39.pyc +0 -0
- database/__pycache__/test_get_all_repo.cpython-310.pyc +0 -0
- database/__pycache__/test_get_all_repo.cpython-39.pyc +0 -0
- database/create_db.py +123 -0
- database/readme_db/DOPMC/README.md +34 -0
- database/readme_db/ML-FTTI/README.md +23 -0
- database/readme_db/agent-tutorial/README.md +21 -0
- database/readme_db/ai-club/README.md +9 -0
- database/readme_db/aima-notes/README.md +30 -0
- database/readme_db/awesome-compression/README.md +89 -0
- database/readme_db/caublazer/README.md +1 -0
- database/readme_db/coggle/README.md +26 -0
- database/readme_db/competition-baseline/README.md +311 -0
- database/readme_db/d2l-ai-solutions-manual/README.md +139 -0
- database/readme_db/daily-interview/README.md +41 -0
- database/readme_db/datawhale-homepage/README.md +29 -0
- database/readme_db/design-and-analysis-of-algorithm/README.md +75 -0
- database/readme_db/dive-into-cv-pytorch/README.md +167 -0
- database/readme_db/easy-grokking-deep-learning/README.md +93 -0
- database/readme_db/easy-rl/README.md +173 -0
- database/readme_db/easy-ros2arm/README.md +33 -0
- database/readme_db/ensemble-learning/README.md +101 -0
- database/readme_db/fantastic-matplotlib/README.md +109 -0
- database/readme_db/faster-git/README.md +107 -0
- database/readme_db/free-excel/README.md +45 -0
- database/readme_db/fun-marl/README.md +37 -0
- database/readme_db/fun-rec/README.md +179 -0
- database/readme_db/go-talent/README.md +42 -0
- database/readme_db/grape-book/README.md +53 -0
- database/readme_db/hands-dirty-nlp/README.md +87 -0
- database/readme_db/hands-on-data-analysis/README.md +122 -0
- database/readme_db/hello-net/README.md +48 -0
- database/readme_db/huawei-od-python/README.md +105 -0
- database/readme_db/hugging-audio/README.md +35 -0
- database/readme_db/hugging-llm/README.md +144 -0
- database/readme_db/hugging-multi-agent/README.md +149 -0
- database/readme_db/hugging-rl/README.md +83 -0
- database/readme_db/hugging-sd/README.md +155 -0
- database/readme_db/joyful-pandas/README.md +104 -0
.env
ADDED
@@ -0,0 +1,8 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
OPENAI_API_KEY = ""
|
2 |
+
wenxin_api_key = ""
|
3 |
+
wenxin_secret_key = ""
|
4 |
+
spark_appid = ""
|
5 |
+
spark_api_secret = ""
|
6 |
+
spark_api_key = ""
|
7 |
+
ZHIPUAI_API_KEY = "f1f7edc47cd48a1d371ed90fc00b3ec1.FhkHokERkexxgnXb"
|
8 |
+
TOKEN=""
|
.gitattributes
CHANGED
@@ -33,3 +33,5 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
|
33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
|
33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
36 |
+
knowledge_db/easy_rl/强化学习入门指南.mp4 filter=lfs diff=lfs merge=lfs -text
|
37 |
+
knowledge_db/pumkin_book/pumpkin_book.pdf filter=lfs diff=lfs merge=lfs -text
|
README.md
CHANGED
@@ -1,12 +1,835 @@
|
|
1 |
-
|
2 |
-
|
3 |
-
|
4 |
-
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# 个人知识库助手项目
|
2 |
+
|
3 |
+
## 一、引言
|
4 |
+
|
5 |
+
### 1、项目背景介绍
|
6 |
+
|
7 |
+
在当今信息爆炸的时代,人们面临着海量数据的挑战,如何快速、准确地获取所需信息成为了一个迫切的需求。为了解决这一问题,本项目应运而生,它是一个基于大型语言模型应用开发教程的个人知识库助手。该项目通过精心设计和开发,实现了对大量复杂信息的有效管理和检索,为用户提供了一个强大的信息获取工具。
|
8 |
+
|
9 |
+
本项目的开发初衷是利用大型语言模型的强大处理能力,结合用户的实际需求,打造一个能够理解自然语言查询并提供精确答案的智能助手。在这一过程中,开发团队对现有的大模型应用进行了深入分析和研究,进而进行了一系列的封装和完善工作,以确保项目的稳定性和易用性。
|
10 |
+
|
11 |
+
### 2、目标与意义
|
12 |
+
|
13 |
+
本项目的目的是为了提供一个高效、智能的解决方案,帮助用户在面对海量信息时能够快速定位和获取所需知识,从而提高工作效率和决策质量。通过构建一个个人知识库助手,项目旨在简化信息检索过程,使得用户能够通过自然语言查询,轻松访问和整合分散在不同数据源中的信息。
|
14 |
+
|
15 |
+
意义方面,该项目具有以下几个关键点:
|
16 |
+
|
17 |
+
- **提升信息获取效率**:通过智能检索和问答系统,用户可以迅速找到相关信息,减少了在多个平台或数据库中手动搜索的时间。
|
18 |
+
|
19 |
+
- **增强知识管理能力**:项目支持用户构建和维护个人知识库,有助于积累和组织专业知识,形成个人的知识资产。
|
20 |
+
|
21 |
+
- **促进决策支持**:通过提供准确、及时的信息,项目能够辅助用户做出更加明智的决策,特别是在需要快速响应的情况下。
|
22 |
+
|
23 |
+
- **支持个性化定制**:项目允许用户根据自己的需求和偏好定制知识库,使得信息检索更加个性化和精准。
|
24 |
+
|
25 |
+
- **推动技术创新**:项目的开发和应用展示了大型语言模型在信息管理和检索领域的潜力,为未来的技术创新提供了实践案例和灵感。
|
26 |
+
|
27 |
+
- **普及智能助手概念**:通过易于使用的界面和部署方式,项目降低了智能助手技术的门槛,使其更加普及和易于接受。
|
28 |
+
|
29 |
+
### 3、主要功能
|
30 |
+
|
31 |
+
本项目可以实现基于 Datawhale 的现有项目 README 的知识问答,使用户可以快速了解 Datawhale 现有项目情况。
|
32 |
+
|
33 |
+
**项目开始界面**
|
34 |
+
![项目开始界面](./figures/Start.png)
|
35 |
+
|
36 |
+
**问答演示界面**
|
37 |
+
![问答演示界面](./figures/QA.png)
|
38 |
+
|
39 |
+
**实例演示界面**
|
40 |
+
1. ***介绍下 joyrl 演示***
|
41 |
+
![介绍下joyrl](./figures/介绍下joyrl演示.png)
|
42 |
+
2. ***joyrl-book 与 joyrl 是什么关系演示***
|
43 |
+
![joyrl-book与joyrl是什么关系](./figures/joyrl-book与joyrl是什么关系演示.png)
|
44 |
+
|
45 |
+
## 二、技术实现
|
46 |
+
|
47 |
+
### 1、环境依赖
|
48 |
+
|
49 |
+
#### 1.1 技术资源要求
|
50 |
+
|
51 |
+
- **CPU**: Intel 5代处理器(云CPU方面,建议选择 2 核以上的云CPU服务)
|
52 |
+
|
53 |
+
- **内存(RAM)**: 至少 4 GB
|
54 |
+
|
55 |
+
|
56 |
+
- **操作系统**:Windows、macOS、Linux均可
|
57 |
+
|
58 |
+
#### 1.2 项目设置
|
59 |
+
|
60 |
+
**克隆储存库**
|
61 |
+
|
62 |
+
```shell
|
63 |
+
git clone https://github.com/logan-zou/Chat_with_Datawhale_langchain.git
|
64 |
+
cd Chat_with_Datawhale_langchain
|
65 |
+
```
|
66 |
+
|
67 |
+
**创建 Conda 环境并安装依赖项**
|
68 |
+
|
69 |
+
- python>=3.9
|
70 |
+
- pytorch>=2.0.0
|
71 |
+
|
72 |
+
```shell
|
73 |
+
# 创建 Conda 环境
|
74 |
+
conda create -n llm-universe python==3.9.0
|
75 |
+
# 激活 Conda 环境
|
76 |
+
conda activate llm-universe
|
77 |
+
# 安装依赖项
|
78 |
+
pip install -r requirements.txt
|
79 |
+
```
|
80 |
+
|
81 |
+
|
82 |
+
#### 1.3 项目运行
|
83 |
+
|
84 |
+
- 启动服务为本地 API
|
85 |
+
```shell
|
86 |
+
# Linux 系统
|
87 |
+
cd project/serve
|
88 |
+
uvicorn api:app --reload
|
89 |
+
```
|
90 |
+
|
91 |
+
```shell
|
92 |
+
# Windows 系统
|
93 |
+
cd project/serve
|
94 |
+
python api.py
|
95 |
+
```
|
96 |
+
- 运行项目
|
97 |
+
```shell
|
98 |
+
cd llm-universe/project/serve
|
99 |
+
python run_gradio.py -model_name='chatglm_std' -embedding_model='m3e' -db_path='../../data_base/knowledge_db' -persist_path='../../data_base/vector_db'
|
100 |
+
```
|
101 |
+
### 2、开发流程简述
|
102 |
+
|
103 |
+
#### 2.1 当前的项目版本及未来规划
|
104 |
+
|
105 |
+
- **当前版本**:0.2.0(更新于2024.3.17)
|
106 |
+
- **更新内容**
|
107 |
+
- [√] 新增 m3e embedding
|
108 |
+
- [√] 新增知识库内容
|
109 |
+
- [√] 新增 Datawhale 的所有 Md 的总结
|
110 |
+
- [√] 修复 gradio 显示错误
|
111 |
+
|
112 |
+
- **目前支持的模型**
|
113 |
+
- OpenAi
|
114 |
+
- [√] gpt-3.5-turbo
|
115 |
+
- [√] gpt-3.5-turbo-16k-0613
|
116 |
+
- [√] gpt-3.5-turbo-0613
|
117 |
+
- [√] gpt-4
|
118 |
+
- [√] gpt-4-32k
|
119 |
+
- 文心一言
|
120 |
+
- [√] ERNIE-Bot
|
121 |
+
- [√] ERNIE-Bot-4
|
122 |
+
- [√] ERNIE-Bot-turbo
|
123 |
+
- 讯飞星火
|
124 |
+
- [√] Spark-1.5
|
125 |
+
- [√] Spark-2.0
|
126 |
+
- 智谱 AI
|
127 |
+
- [√] chatglm_pro
|
128 |
+
- [√] chatglm_std
|
129 |
+
- [√] chatglm_lite
|
130 |
+
|
131 |
+
- **���来规划**
|
132 |
+
- [ ] 更新 智谱Ai embedding
|
133 |
+
|
134 |
+
|
135 |
+
#### 2.2 核心Idea
|
136 |
+
|
137 |
+
核心是针对四种大模型 API 实现了底层封装,基于 Langchain 搭建了可切换模型的检索问答链,并实现 API 以及 Gradio 部署的个人轻量大模型应用。
|
138 |
+
|
139 |
+
#### 2.3 使用的技术栈
|
140 |
+
|
141 |
+
本项目为一个基于大模型的个人知识库助手,基于 LangChain 框架搭建,核心技术包括 LLM API 调用、向量数据库、检索问答链等。项目整体架构如下:
|
142 |
+
|
143 |
+
![](./figures/structure.jpg)
|
144 |
+
|
145 |
+
如上,本项目从底向上依次分为 LLM 层、数据层、数据库层、应用层与服务层。
|
146 |
+
|
147 |
+
① LLM 层主要基于四种流行 LLM API 进行了 LLM 调用封装,支持用户以统一的入口、方式来访问不同的模型,支持随时进行模型的切换;
|
148 |
+
|
149 |
+
② 数据层主要包括个人知识库的源数据以及 Embedding API,源数据经过 Embedding 处理可以被向量数据库使用;
|
150 |
+
|
151 |
+
③ 数据库层主要为基于个人知识库源数据搭建的向量数据库,在本项目中我们选择了 Chroma;
|
152 |
+
|
153 |
+
④ 应用层为核心功能的最顶层封装,我们基于 LangChain 提供的检索问答链基类进行了进一步封装,从而支持不同模型切换以及便捷实现基于数据库的检索问答;
|
154 |
+
|
155 |
+
⑤ 最顶层为服务层,我们分别实现了 Gradio 搭建 Demo 与 FastAPI 组建 API 两种方式来支持本项目的服务访问。
|
156 |
+
|
157 |
+
## 三、应用详解
|
158 |
+
|
159 |
+
### 1、核心架构
|
160 |
+
|
161 |
+
llm-universe 个人知识库助手地址:
|
162 |
+
|
163 |
+
https://github.com/datawhalechina/llm-universe/tree/main
|
164 |
+
|
165 |
+
该项目是个典型的RAG项目,通过langchain+LLM实现本地知识库问答,建立了全流程可使用开源模型实现的本地知识库对话应用。目前已经支持使用 ***ChatGPT***,***星火spark模型***,***文心大模型***,***智谱GLM*** 等大语言模型的接入。该项目实现原理和一般 RAG 项目一样,如前文和下图所示:![](./figures/rag.png)
|
166 |
+
|
167 |
+
整个 RAG 过程包括如下操作:
|
168 |
+
|
169 |
+
1.用户提出问题 Query
|
170 |
+
|
171 |
+
2.加载和读取知识库文档
|
172 |
+
|
173 |
+
3.对知识库文档进行分割
|
174 |
+
|
175 |
+
4.对分割后的知识库文本向量化并存入向量库建立索引
|
176 |
+
|
177 |
+
5.对问句 Query 向量化
|
178 |
+
|
179 |
+
6.在知识库文档向量中匹配出与问句 Query 向量最相似的 top k 个
|
180 |
+
|
181 |
+
7.匹配出的知识库文本文本作为上下文 Context 和问题⼀起添加到 prompt 中
|
182 |
+
|
183 |
+
8.提交给 LLM 生成回答 Answer
|
184 |
+
|
185 |
+
可以大致分为索引,检索和生成三个阶段,这三个阶段将在下面小节配合该 llm-universe 知识库助手项目进行拆解。
|
186 |
+
|
187 |
+
### 2、索引-indexing
|
188 |
+
|
189 |
+
本节讲述该项目 llm-universe 个人知识库助手:创建知识库并加载文件-读取文件-**文本分割**(Text splitter) ,知识库**文本向量化**(embedding)以及存储到**向量数据库**的实现,
|
190 |
+
|
191 |
+
其中**加载文件**:这是读取存储在本地的知识库文件的步骤。**读取文件**:读取加载的文件内容,通常是将其转化为文本格式 。**文本分割(Text splitter)**:按照⼀定的规则(例如段落、句子、词语等)将文本分割。**文本向量化:**这通常涉及到 NLP 的特征抽取,该项目通过本地 m3e 文本嵌入模型,openai,zhipuai 开源 api 等方法将分割好的文本转化为数值向量并存储到向量数据库
|
192 |
+
|
193 |
+
#### 2.1 知识库搭建-加载和读取
|
194 |
+
|
195 |
+
该项目llm-universe个人知识库助手选用 Datawhale 一些经典开源课程、视频(部分)作为示例,具体包括:
|
196 |
+
|
197 |
+
- [《机器学习公式详解》PDF版本](https://github.com/datawhalechina/pumpkin-book/releases)
|
198 |
+
- [《面向开发者的 LLM 入门教程 第一部分 Prompt Engineering》md版本](https://github.com/datawhalechina/prompt-engineering-for-developers)
|
199 |
+
- [《强化学习入门指南》MP4版本](https://www.bilibili.com/video/BV1HZ4y1v7eX/?spm_id_from=333.999.0.0&vd_source=4922e78f7a24c5981f1ddb6a8ee55ab9)
|
200 |
+
- 以及datawhale总仓库所有开源项目的readme https://github.com/datawhalechina
|
201 |
+
|
202 |
+
这些知识库源数据放置在 **../../data_base/knowledge_db** 目录下,用户也可以自己存放自己其他的文件。
|
203 |
+
|
204 |
+
**1**.下面讲一下如何获取 DataWhale 总仓库的所有开源项目的 readme ,用户可以通过先运行 **project/database/test_get_all_repo.py** 文件,用来获取 Datawhale 总仓库所有开源项目的 readme,代码如下:
|
205 |
+
|
206 |
+
```python
|
207 |
+
import json
|
208 |
+
import requests
|
209 |
+
import os
|
210 |
+
import base64
|
211 |
+
import loguru
|
212 |
+
from dotenv import load_dotenv
|
213 |
+
# 加载环境变量
|
214 |
+
load_dotenv()
|
215 |
+
# 从环境变量中获取TOKEN
|
216 |
+
TOKEN = os.getenv('TOKEN')
|
217 |
+
# 定义获取组织仓库的函数
|
218 |
+
def get_repos(org_name, token, export_dir):
|
219 |
+
headers = {
|
220 |
+
'Authorization': f'token {token}',
|
221 |
+
}
|
222 |
+
url = f'https://api.github.com/orgs/{org_name}/repos'
|
223 |
+
response = requests.get(url, headers=headers, params={'per_page': 200, 'page': 0})
|
224 |
+
if response.status_code == 200:
|
225 |
+
repos = response.json()
|
226 |
+
loguru.logger.info(f'Fetched {len(repos)} repositories for {org_name}.')
|
227 |
+
# 使用 export_dir 确定保存仓库名的文件路径
|
228 |
+
repositories_path = os.path.join(export_dir, 'repositories.txt')
|
229 |
+
with open(repositories_path, 'w', encoding='utf-8') as file:
|
230 |
+
for repo in repos:
|
231 |
+
file.write(repo['name'] + '\n')
|
232 |
+
return repos
|
233 |
+
else:
|
234 |
+
loguru.logger.error(f"Error fetching repositories: {response.status_code}")
|
235 |
+
loguru.logger.error(response.text)
|
236 |
+
return []
|
237 |
+
# 定义拉取仓库README文件的函数
|
238 |
+
def fetch_repo_readme(org_name, repo_name, token, export_dir):
|
239 |
+
headers = {
|
240 |
+
'Authorization': f'token {token}',
|
241 |
+
}
|
242 |
+
url = f'https://api.github.com/repos/{org_name}/{repo_name}/readme'
|
243 |
+
response = requests.get(url, headers=headers)
|
244 |
+
if response.status_code == 200:
|
245 |
+
readme_content = response.json()['content']
|
246 |
+
# 解码base64内容
|
247 |
+
readme_content = base64.b64decode(readme_content).decode('utf-8')
|
248 |
+
# 使用 export_dir 确定保存 README 的文件路径
|
249 |
+
repo_dir = os.path.join(export_dir, repo_name)
|
250 |
+
if not os.path.exists(repo_dir):
|
251 |
+
os.makedirs(repo_dir)
|
252 |
+
readme_path = os.path.join(repo_dir, 'README.md')
|
253 |
+
with open(readme_path, 'w', encoding='utf-8') as file:
|
254 |
+
file.write(readme_content)
|
255 |
+
else:
|
256 |
+
loguru.logger.error(f"Error fetching README for {repo_name}: {response.status_code}")
|
257 |
+
loguru.logger.error(response.text)
|
258 |
+
# 主函数
|
259 |
+
if __name__ == '__main__':
|
260 |
+
# 配置组织名称
|
261 |
+
org_name = 'datawhalechina'
|
262 |
+
# 配置 export_dir
|
263 |
+
export_dir = "../../database/readme_db" # 请替换为实际的目录路径
|
264 |
+
# 获取仓库列表
|
265 |
+
repos = get_repos(org_name, TOKEN, export_dir)
|
266 |
+
# 打印仓库名称
|
267 |
+
if repos:
|
268 |
+
for repo in repos:
|
269 |
+
repo_name = repo['name']
|
270 |
+
# 拉取每个仓库的README
|
271 |
+
fetch_repo_readme(org_name, repo_name, TOKEN, export_dir)
|
272 |
+
# 清理临时文件夹
|
273 |
+
# if os.path.exists('temp'):
|
274 |
+
# shutil.rmtree('temp')
|
275 |
+
```
|
276 |
+
|
277 |
+
默认会把这些readme文件放在同目录database下的readme_db文件。其中这些readme文件含有不少无关信息,即再运行**project/database/text_summary_readme.py文件**可以调用大模型生成每个readme文件的摘要并保存到上述知识库目录../../data_base/knowledge_db /readme_summary文件夹中,****。代码如下:
|
278 |
+
|
279 |
+
```python
|
280 |
+
import os
|
281 |
+
from dotenv import load_dotenv
|
282 |
+
import openai
|
283 |
+
from test_get_all_repo import get_repos
|
284 |
+
from bs4 import BeautifulSoup
|
285 |
+
import markdown
|
286 |
+
import re
|
287 |
+
import time
|
288 |
+
# Load environment variables
|
289 |
+
load_dotenv()
|
290 |
+
TOKEN = os.getenv('TOKEN')
|
291 |
+
# Set up the OpenAI API client
|
292 |
+
openai_api_key = os.environ["OPENAI_API_KEY"]
|
293 |
+
|
294 |
+
# 过滤文本中链接防止大语言模型风控
|
295 |
+
def remove_urls(text):
|
296 |
+
# 正则表达式模式,用于匹配URL
|
297 |
+
url_pattern = re.compile(r'https?://[^\s]*')
|
298 |
+
# 替换所有匹配的URL为空字符串
|
299 |
+
text = re.sub(url_pattern, '', text)
|
300 |
+
# 正则表达式模式,用于匹配特定的文本
|
301 |
+
specific_text_pattern = re.compile(r'扫描下方二维码关注公众号|提取码|关注|科学上网|回复关键词|侵权|版权|致谢|引用|LICENSE'
|
302 |
+
r'|组队打卡|任务打卡|组队学习的那些事|学习周期|开源内容|打卡|组队学习|链接')
|
303 |
+
# 替换所有匹配的特定文本为空字符串
|
304 |
+
text = re.sub(specific_text_pattern, '', text)
|
305 |
+
return text
|
306 |
+
|
307 |
+
# 抽取md中的文本
|
308 |
+
def extract_text_from_md(md_content):
|
309 |
+
# Convert Markdown to HTML
|
310 |
+
html = markdown.markdown(md_content)
|
311 |
+
# Use BeautifulSoup to extract text
|
312 |
+
soup = BeautifulSoup(html, 'html.parser')
|
313 |
+
|
314 |
+
return remove_urls(soup.get_text())
|
315 |
+
|
316 |
+
def generate_llm_summary(repo_name, readme_content,model):
|
317 |
+
prompt = f"1:这个仓库名是 {repo_name}. 此仓库的readme全部内容是: {readme_content}\
|
318 |
+
2:请用约200以内的中文概括这个仓库readme的内容,返回的概括格式要求:这个仓库名是...,这仓库内容主要是..."
|
319 |
+
openai.api_key = openai_api_key
|
320 |
+
# 具体调用
|
321 |
+
messages = [{"role": "system", "content": "你是一个人工智能助手"},
|
322 |
+
{"role": "user", "content": prompt}]
|
323 |
+
response = openai.ChatCompletion.create(
|
324 |
+
model=model,
|
325 |
+
messages=messages,
|
326 |
+
)
|
327 |
+
return response.choices[0].message["content"]
|
328 |
+
|
329 |
+
def main(org_name,export_dir,summary_dir,model):
|
330 |
+
repos = get_repos(org_name, TOKEN, export_dir)
|
331 |
+
|
332 |
+
# Create a directory to save summaries
|
333 |
+
os.makedirs(summary_dir, exist_ok=True)
|
334 |
+
|
335 |
+
for id, repo in enumerate(repos):
|
336 |
+
repo_name = repo['name']
|
337 |
+
readme_path = os.path.join(export_dir, repo_name, 'README.md')
|
338 |
+
print(repo_name)
|
339 |
+
if os.path.exists(readme_path):
|
340 |
+
with open(readme_path, 'r', encoding='utf-8') as file:
|
341 |
+
readme_content = file.read()
|
342 |
+
# Extract text from the README
|
343 |
+
readme_text = extract_text_from_md(readme_content)
|
344 |
+
# Generate a summary for the README
|
345 |
+
# 访问受限,每min一次
|
346 |
+
time.sleep(60)
|
347 |
+
print('第' + str(id) + '条' + 'summary开始')
|
348 |
+
try:
|
349 |
+
summary = generate_llm_summary(repo_name, readme_text,model)
|
350 |
+
print(summary)
|
351 |
+
# Write summary to a Markdown file in the summary directory
|
352 |
+
summary_file_path = os.path.join(summary_dir, f"{repo_name}_summary.md")
|
353 |
+
with open(summary_file_path, 'w', encoding='utf-8') as summary_file:
|
354 |
+
summary_file.write(f"# {repo_name} Summary\n\n")
|
355 |
+
summary_file.write(summary)
|
356 |
+
except openai.OpenAIError as e:
|
357 |
+
summary_file_path = os.path.join(summary_dir, f"{repo_name}_summary风控.md")
|
358 |
+
with open(summary_file_path, 'w', encoding='utf-8') as summary_file:
|
359 |
+
summary_file.write(f"# {repo_name} Summary风控\n\n")
|
360 |
+
summary_file.write("README内容风控。\n")
|
361 |
+
print(f"Error generating summary for {repo_name}: {e}")
|
362 |
+
# print(readme_text)
|
363 |
+
else:
|
364 |
+
print(f"文件不存在: {readme_path}")
|
365 |
+
# If README doesn't exist, create an empty Markdown file
|
366 |
+
summary_file_path = os.path.join(summary_dir, f"{repo_name}_summary不存在.md")
|
367 |
+
with open(summary_file_path, 'w', encoding='utf-8') as summary_file:
|
368 |
+
summary_file.write(f"# {repo_name} Summary不存在\n\n")
|
369 |
+
summary_file.write("README文件不存在。\n")
|
370 |
+
if __name__ == '__main__':
|
371 |
+
# 配置组织名称
|
372 |
+
org_name = 'datawhalechina'
|
373 |
+
# 配置 export_dir
|
374 |
+
export_dir = "../database/readme_db" # 请替换为实际readme的目录路径
|
375 |
+
summary_dir="../../data_base/knowledge_db/readme_summary"# 请替换为实际readme的概括的目录路径
|
376 |
+
model="gpt-3.5-turbo" #deepseek-chat,gpt-3.5-turbo,moonshot-v1-8k
|
377 |
+
main(org_name,export_dir,summary_dir,model)
|
378 |
+
|
379 |
+
```
|
380 |
+
|
381 |
+
其中 **extract_text_from_md()** 函数用来抽取 md 文件中的文本, **remove_urls()** 函数过滤了 readme 文本中的一些网页链接以及过滤了可能引起大模型风控一些词汇。接着调用 generate_llm_summary() 让大模型生成每个 readme 的概括。
|
382 |
+
|
383 |
+
**2**.在上述知识库构建完毕之后,**../../data_base/knowledge_db** 目录下就有了 Datawhale 开源的所有项目的 readme 概括的 md 文件,以及[《机器学习公式详解》PDF版本](https://github.com/datawhalechina/pumpkin-book/releases),[《面向开发者的 LLM 入门教程 第一部分 Prompt Engineering》md版本](https://github.com/datawhalechina/prompt-engineering-for-developers),[《强化学习入门指南》MP4版本](https://www.bilibili.com/video/BV1HZ4y1v7eX/?spm_id_from=333.999.0.0&vd_source=4922e78f7a24c5981f1ddb6a8ee55ab9)等文件。
|
384 |
+
|
385 |
+
其中有 mp4 格式,md 格式,以及 pdf 格式,对这些文件的加载方式,该项目将代码放在了 **project/database/create_db.py文件** 下,部分代码如下。其中 pdf 格式文件用 PyMuPDFLoader 加载器,md格式文件用UnstructuredMarkdownLoader加载器。要注意的是其实数据处理是一件非常复杂和业务个性化的事,如pdf文件中包含图表,图片和文字以及不同层次标题,这些都需要根据业务进行精细化处理。具体操作可以关注**第二部分的高阶RAG教程技术**进行自行摸索:
|
386 |
+
|
387 |
+
```python
|
388 |
+
from langchain.document_loaders import UnstructuredFileLoader
|
389 |
+
from langchain.document_loaders import UnstructuredMarkdownLoader
|
390 |
+
from langchain.text_splitter import RecursiveCharacterTextSplitter
|
391 |
+
from langchain.document_loaders import PyMuPDFLoader
|
392 |
+
from langchain.vectorstores import Chroma
|
393 |
+
# 首先实现基本配置
|
394 |
+
|
395 |
+
DEFAULT_DB_PATH = "../../data_base/knowledge_db"
|
396 |
+
DEFAULT_PERSIST_PATH = "../../data_base/vector_db"
|
397 |
+
...
|
398 |
+
...
|
399 |
+
...
|
400 |
+
def file_loader(file, loaders):
|
401 |
+
if isinstance(file, tempfile._TemporaryFileWrapper):
|
402 |
+
file = file.name
|
403 |
+
if not os.path.isfile(file):
|
404 |
+
[file_loader(os.path.join(file, f), loaders) for f in os.listdir(file)]
|
405 |
+
return
|
406 |
+
file_type = file.split('.')[-1]
|
407 |
+
if file_type == 'pdf':
|
408 |
+
loaders.append(PyMuPDFLoader(file))
|
409 |
+
elif file_type == 'md':
|
410 |
+
pattern = r"不存在|风控"
|
411 |
+
match = re.search(pattern, file)
|
412 |
+
if not match:
|
413 |
+
loaders.append(UnstructuredMarkdownLoader(file))
|
414 |
+
elif file_type == 'txt':
|
415 |
+
loaders.append(UnstructuredFileLoader(file))
|
416 |
+
return
|
417 |
+
...
|
418 |
+
...
|
419 |
+
|
420 |
+
```
|
421 |
+
|
422 |
+
#### 2.2 文本分割和向量化
|
423 |
+
|
424 |
+
文本分割和向量化操作,在整个 RAG 流程中是必不可少的。需要将上述载入的知识库分本或进行 token 长度进行分割,或者进行语义模型进行分割。该项目利用 Langchain 中的文本分割器根据 chunk_size (块大小)和 chunk_overlap (块与块之间的重叠大小)进行分割。
|
425 |
+
|
426 |
+
- chunk_size 指每个块包含的字符或 Token(如单词、句子等)的数量
|
427 |
+
- chunk_overlap 指两个块之间共享的字符数量,用于保持上下文的连贯性,避免分割丢失上下文信息
|
428 |
+
|
429 |
+
**1.** 可以设置一个最大的 Token 长度,然后根据这个最大的 Token 长度来切分文档。这样切分出来的文档片段是一个一个均匀长度的文档片段。而片段与片段之间的一些重叠的内容,能保证检索的时候能够检索到相关的文档片段。这部分文本分割代码也在 **project/database/create_db.py** 文件,该项目采用了 langchain 中 RecursiveCharacterTextSplitter 文本分割器进行分割。代码如下:
|
430 |
+
|
431 |
+
```python
|
432 |
+
......
|
433 |
+
def create_db(files=DEFAULT_DB_PATH, persist_directory=DEFAULT_PERSIST_PATH, embeddings="openai"):
|
434 |
+
"""
|
435 |
+
该函数用于加载 PDF 文件,切分文档,生成文档的嵌入向量,创建向量数据库。
|
436 |
+
|
437 |
+
参数:
|
438 |
+
file: 存放文件的路径。
|
439 |
+
embeddings: 用于生产 Embedding 的模型
|
440 |
+
|
441 |
+
返回:
|
442 |
+
vectordb: 创建的数据库。
|
443 |
+
"""
|
444 |
+
if files == None:
|
445 |
+
return "can't load empty file"
|
446 |
+
if type(files) != list:
|
447 |
+
files = [files]
|
448 |
+
loaders = []
|
449 |
+
[file_loader(file, loaders) for file in files]
|
450 |
+
docs = []
|
451 |
+
for loader in loaders:
|
452 |
+
if loader is not None:
|
453 |
+
docs.extend(loader.load())
|
454 |
+
# 切分文档
|
455 |
+
text_splitter = RecursiveCharacterTextSplitter(
|
456 |
+
chunk_size=500, chunk_overlap=150)
|
457 |
+
split_docs = text_splitter.split_documents(docs)
|
458 |
+
....
|
459 |
+
....
|
460 |
+
....此处省略了其他代码
|
461 |
+
....
|
462 |
+
return vectordb
|
463 |
+
...........
|
464 |
+
```
|
465 |
+
|
466 |
+
**2.** 而在切分好知识库文本之后,需要对文本进行 **向量化** 。该项目在 **project/embedding/call_embedding.py** ,文本嵌入方式可选本地 m3e 模型,以及调用 openai 和 zhipuai 的 api 的方式进行文本嵌入。代码如下:
|
467 |
+
|
468 |
+
```python
|
469 |
+
import os
|
470 |
+
import sys
|
471 |
+
|
472 |
+
sys.path.append(os.path.dirname(os.path.dirname(__file__)))
|
473 |
+
sys.path.append(r"../../")
|
474 |
+
from embedding.zhipuai_embedding import ZhipuAIEmbeddings
|
475 |
+
from langchain.embeddings.huggingface import HuggingFaceEmbeddings
|
476 |
+
from langchain.embeddings.openai import OpenAIEmbeddings
|
477 |
+
from llm.call_llm import parse_llm_api_key
|
478 |
+
|
479 |
+
|
480 |
+
def get_embedding(embedding: str, embedding_key: str = None, env_file: str = None):
|
481 |
+
if embedding == 'm3e':
|
482 |
+
return HuggingFaceEmbeddings(model_name="moka-ai/m3e-base")
|
483 |
+
if embedding_key == None:
|
484 |
+
embedding_key = parse_llm_api_key(embedding)
|
485 |
+
if embedding == "openai":
|
486 |
+
return OpenAIEmbeddings(openai_api_key=embedding_key)
|
487 |
+
elif embedding == "zhipuai":
|
488 |
+
return ZhipuAIEmbeddings(zhipuai_api_key=embedding_key)
|
489 |
+
else:
|
490 |
+
raise ValueError(f"embedding {embedding} not support ")
|
491 |
+
```
|
492 |
+
|
493 |
+
#### **2.3** 向量数据库
|
494 |
+
|
495 |
+
在对知识库文本进行分割和向量化后,就需要定义一个向量数据库用来存放文档片段和对应的向量表示了,在向量数据库中,数据被表示为向量形式,每个向量代表一个数据项。这些向量可以是数字、文本、图像或其他类型的数据。
|
496 |
+
|
497 |
+
向量数据库使用高效的索引和查询算法来加速向量数据的存储和检索过程。该项目选择 chromadb 向量数据库(类似的向量数据库还有 faiss 等)。定义向量库对应的代码也在 **project/database/create_db.py** 文件中,persist_directory 即为本地持久化地址,vectordb.persist() 操作可以持久化向量数据库到本地,后续可以再次载入本地已有的向量库。完整的文本分割,获取向量化,并且定义向量数据库代码如下:
|
498 |
+
|
499 |
+
```python
|
500 |
+
def create_db(files=DEFAULT_DB_PATH, persist_directory=DEFAULT_PERSIST_PATH, embeddings="openai"):
|
501 |
+
"""
|
502 |
+
该函数用于加载 PDF 文件,切分文档,生成文档的嵌入向量,创建向量数据库。
|
503 |
+
|
504 |
+
参数:
|
505 |
+
file: 存放文件的路径。
|
506 |
+
embeddings: 用于生产 Embedding 的模型
|
507 |
+
|
508 |
+
返回:
|
509 |
+
vectordb: 创建的数据库。
|
510 |
+
"""
|
511 |
+
if files == None:
|
512 |
+
return "can't load empty file"
|
513 |
+
if type(files) != list:
|
514 |
+
files = [files]
|
515 |
+
loaders = []
|
516 |
+
[file_loader(file, loaders) for file in files]
|
517 |
+
docs = []
|
518 |
+
for loader in loaders:
|
519 |
+
if loader is not None:
|
520 |
+
docs.extend(loader.load())
|
521 |
+
# 切分文档
|
522 |
+
text_splitter = RecursiveCharacterTextSplitter(
|
523 |
+
chunk_size=500, chunk_overlap=150)
|
524 |
+
split_docs = text_splitter.split_documents(docs)
|
525 |
+
if type(embeddings) == str:
|
526 |
+
embeddings = get_embedding(embedding=embeddings)
|
527 |
+
# 定义持久化路径
|
528 |
+
persist_directory = '../../data_base/vector_db/chroma'
|
529 |
+
# 加载数据库
|
530 |
+
vectordb = Chroma.from_documents(
|
531 |
+
documents=split_docs,
|
532 |
+
embedding=embeddings,
|
533 |
+
persist_directory=persist_directory # 允许我们将persist_directory目录保存到磁盘上
|
534 |
+
)
|
535 |
+
|
536 |
+
vectordb.persist()
|
537 |
+
return vectordb
|
538 |
+
```
|
539 |
+
|
540 |
+
|
541 |
+
|
542 |
+
### 3、检索-Retriver和**生成**-Generator
|
543 |
+
|
544 |
+
本节进入了 RAG 的检索和生成阶段,即对问句 Query 向量化后在知识库文档向量中匹配出与���句 Query 向量最相似的 top k 个片段,匹配出的知识库文本文本作为上下文 Context 和问题⼀起添加到 prompt 中,然后提交给 LLM 生成回答 Answer。下面将根据 llm_universe 个人知识库助手进行讲解。
|
545 |
+
|
546 |
+
#### 3.1 向量数据库检索
|
547 |
+
|
548 |
+
通过上一章节文本的分割向量化以及构建向量数据库索引,接下去就可以利用向量数据库来进行高效的检索。向量数据库是一种用于有效搜索大规模高维向量空间中相似度的库,能够在大规模数据集中快速找到与给定 query 向量最相似的向量。如下面示例所示:
|
549 |
+
|
550 |
+
```python
|
551 |
+
question="什么是机器学习"
|
552 |
+
Copy to clipboardErrorCopied
|
553 |
+
sim_docs = vectordb.similarity_search(question,k=3)
|
554 |
+
print(f"检索到的内容数:{len(sim_docs)}")
|
555 |
+
```
|
556 |
+
|
557 |
+
```
|
558 |
+
|
559 |
+
检索到的内容数:3
|
560 |
+
```
|
561 |
+
|
562 |
+
```
|
563 |
+
for i, sim_doc in enumerate(sim_docs):
|
564 |
+
print(f"检索到的第{i}个内容: \n{sim_doc.page_content[:200]}", end="\n--------------\n")
|
565 |
+
```
|
566 |
+
|
567 |
+
```
|
568 |
+
检索到的第0个内容:
|
569 |
+
导,同时也能体会到这三门数学课在机器学习上碰撞产生的“数学之美”。
|
570 |
+
1.1
|
571 |
+
引言
|
572 |
+
本节以概念理解为主,在此对“算法”和“模型”作补充说明。“算法”是指从数据中学得“模型”的具
|
573 |
+
体方法,例如后续章节中将会讲述的线性回归、对数几率回归、决策树等。“算法”产出的结果称为“模型”,
|
574 |
+
通常是具体的函数或者可抽象地看作为函数,例如一元线性回归算法产出的模型即为形如 f(x) = wx + b
|
575 |
+
|
576 |
+
的一元一次函数。
|
577 |
+
--------------
|
578 |
+
|
579 |
+
检索到的第1个内容:
|
580 |
+
模型:机器学习的一般流程如下:首先收集若干样本(假设此时有 100 个),然后将其分为训练样本
|
581 |
+
(80 个)和测试样本(20 个),其中 80 个训练样本构成的集合称为“训练集”,20 个测试样本构成的集合
|
582 |
+
称为“测试集”,接着选用某个机器学习算法,让其在训练集上进行“学习”(或称为“训练”),然后产出
|
583 |
+
|
584 |
+
得到“模型”(或称为“学习器”),最后用测试集来测试模型的效果。执行以上流程时,表示我们已经默
|
585 |
+
--------------
|
586 |
+
|
587 |
+
检索到的第2个内容:
|
588 |
+
→_→
|
589 |
+
欢迎去各大电商平台选购纸质版南瓜书《机器学习公式详解》
|
590 |
+
←_←
|
591 |
+
第 1 章
|
592 |
+
绪论
|
593 |
+
本章作为“西瓜书”的开篇,主要讲解什么是机器学习以及机器学习的相关数学符号,为后续内容作
|
594 |
+
铺垫,并未涉及复杂的算法理论,因此阅读本章时只需耐心梳理清楚所有概念和数学符号即可。此外,在
|
595 |
+
阅读本章前建议先阅读西瓜书目录前页的《主要符号表》,它能解答在阅读“西瓜书”过程中产生的大部
|
596 |
+
分对数学符号的疑惑。
|
597 |
+
本章也作为
|
598 |
+
|
599 |
+
|
600 |
+
```
|
601 |
+
|
602 |
+
#### 3.2 大模型llm的调用
|
603 |
+
|
604 |
+
这里以该项目 **project/qa_chain/model_to_llm.py** 代码为例,在 **project/llm/** 的目录文件夹下分别定义了 ***星火spark***,***智谱glm***,***文心llm***等开源模型api调用的封装,并在 **project/qa_chain/model_to_llm.py** 文件中导入了这些模块,可以根据用户传入的模型名字进行调用 llm。代码如下:
|
605 |
+
|
606 |
+
|
607 |
+
```python
|
608 |
+
def model_to_llm(model:str=None, temperature:float=0.0, appid:str=None, api_key:str=None,Spark_api_secret:str=None,Wenxin_secret_key:str=None):
|
609 |
+
"""
|
610 |
+
星火:model,temperature,appid,api_key,api_secret
|
611 |
+
百度问心:model,temperature,api_key,api_secret
|
612 |
+
智谱:model,temperature,api_key
|
613 |
+
OpenAI:model,temperature,api_key
|
614 |
+
"""
|
615 |
+
if model in ["gpt-3.5-turbo", "gpt-3.5-turbo-16k-0613", "gpt-3.5-turbo-0613", "gpt-4", "gpt-4-32k"]:
|
616 |
+
if api_key == None:
|
617 |
+
api_key = parse_llm_api_key("openai")
|
618 |
+
llm = ChatOpenAI(model_name = model, temperature = temperature , openai_api_key = api_key)
|
619 |
+
elif model in ["ERNIE-Bot", "ERNIE-Bot-4", "ERNIE-Bot-turbo"]:
|
620 |
+
if api_key == None or Wenxin_secret_key == None:
|
621 |
+
api_key, Wenxin_secret_key = parse_llm_api_key("wenxin")
|
622 |
+
llm = Wenxin_LLM(model=model, temperature = temperature, api_key=api_key, secret_key=Wenxin_secret_key)
|
623 |
+
elif model in ["Spark-1.5", "Spark-2.0"]:
|
624 |
+
if api_key == None or appid == None and Spark_api_secret == None:
|
625 |
+
api_key, appid, Spark_api_secret = parse_llm_api_key("spark")
|
626 |
+
llm = Spark_LLM(model=model, temperature = temperature, appid=appid, api_secret=Spark_api_secret, api_key=api_key)
|
627 |
+
elif model in ["chatglm_pro", "chatglm_std", "chatglm_lite"]:
|
628 |
+
if api_key == None:
|
629 |
+
api_key = parse_llm_api_key("zhipuai")
|
630 |
+
llm = ZhipuAILLM(model=model, zhipuai_api_key=api_key, temperature = temperature)
|
631 |
+
else:
|
632 |
+
raise ValueError(f"model{model} not support!!!")
|
633 |
+
return llm
|
634 |
+
```
|
635 |
+
|
636 |
+
#### 3.3 prompt和构建问答链
|
637 |
+
|
638 |
+
接下去来到了最后一步,设计完基于知识库问答的 prompt,就可以结合��述检索和大模型调用进行答案的生成。构建 prompt 的格式如下,具体可以根据自己业务需要进行修改:
|
639 |
+
|
640 |
+
|
641 |
+
```python
|
642 |
+
from langchain.prompts import PromptTemplate
|
643 |
+
|
644 |
+
# template = """基于以下已知信息,简洁和专业的来回答用户的问题。
|
645 |
+
# 如果无法从中得到答案,请说 "根据已知信息无法回答该问题" 或 "没有提供足够的相关信息",不允许在答案中添加编造成分。
|
646 |
+
# 答案请使用中文。
|
647 |
+
# 总是在回答的最后说“谢谢你的提问!”。
|
648 |
+
# 已知信息:{context}
|
649 |
+
# 问题: {question}"""
|
650 |
+
template = """使用以下上下文来回答最后的问题。如果你不知道答案,就说你不知道,不要试图编造答
|
651 |
+
案。最多使用三句话。尽量使答案简明扼要。总是在回答的最后说“谢谢你的提问!”。
|
652 |
+
{context}
|
653 |
+
问题: {question}
|
654 |
+
有用的回答:"""
|
655 |
+
|
656 |
+
QA_CHAIN_PROMPT = PromptTemplate(input_variables=["context","question"],
|
657 |
+
template=template)
|
658 |
+
|
659 |
+
# 运行 chain
|
660 |
+
```
|
661 |
+
|
662 |
+
并且构建问答链:创建检索 QA 链的方法 RetrievalQA.from_chain_type() 有如下参数:
|
663 |
+
|
664 |
+
- llm:指定使用的 LLM
|
665 |
+
- 指定 chain type : RetrievalQA.from_chain_type(chain_type="map_reduce"),也可以利用load_qa_chain()方法指定chain type。
|
666 |
+
- 自定义 prompt :通过在RetrievalQA.from_chain_type()方法中,指定chain_type_kwargs参数,而该参数:chain_type_kwargs = {"prompt": PROMPT}
|
667 |
+
- 返回源文档:通过RetrievalQA.from_chain_type()方法中指定:return_source_documents=True参数;也可以使用RetrievalQAWithSourceChain()方法,返回源文档的引用(坐标或者叫主键、索引)
|
668 |
+
|
669 |
+
```python
|
670 |
+
|
671 |
+
# 自定义 QA 链
|
672 |
+
self.qa_chain = RetrievalQA.from_chain_type(llm=self.llm,
|
673 |
+
retriever=self.retriever,
|
674 |
+
return_source_documents=True,
|
675 |
+
chain_type_kwargs={"prompt":self.QA_CHAIN_PROMPT})
|
676 |
+
```
|
677 |
+
|
678 |
+
问答链效果如下:基于召回结果和 query 结合起来构建的 prompt 效果
|
679 |
+
|
680 |
+
```python
|
681 |
+
question_1 = "什么是南瓜书?"
|
682 |
+
question_2 = "王阳明是谁?"Copy to clipboardErrorCopied
|
683 |
+
```
|
684 |
+
|
685 |
+
```
|
686 |
+
result = qa_chain({"query": question_1})
|
687 |
+
print("大模型+知识库后回答 question_1 的结果:")
|
688 |
+
print(result["result"])
|
689 |
+
```
|
690 |
+
|
691 |
+
```
|
692 |
+
大模型+知识库后回答 question_1 的结果:
|
693 |
+
南瓜书是对《机器学习》(西瓜书)中难以理解的公式进行解析和补充推导细节的一本书。谢谢你的提问!
|
694 |
+
```
|
695 |
+
|
696 |
+
```
|
697 |
+
result = qa_chain({"query": question_2})
|
698 |
+
print("大模型+知识库后回答 question_2 的结果:")
|
699 |
+
print(result["result"])
|
700 |
+
```
|
701 |
+
|
702 |
+
```
|
703 |
+
大模型+知识库后回答 question_2 的结果:
|
704 |
+
我不知道王阳明是谁,谢谢你的提问!
|
705 |
+
```
|
706 |
+
|
707 |
+
上述详细不带记忆的检索问答链代码都在该项目:**project/qa_chain/QA_chain_self.py** 中,此外该项目还实现了带记忆的检索问答链,两种自定义检索问答链内部实现细节类似,只是调用了不同的 LangChain 链。完整带记忆的检索问答链条代码 **project/qa_chain/Chat_QA_chain_self.py** 如下:
|
708 |
+
|
709 |
+
```python
|
710 |
+
from langchain.prompts import PromptTemplate
|
711 |
+
from langchain.chains import RetrievalQA
|
712 |
+
from langchain.vectorstores import Chroma
|
713 |
+
from langchain.chains import ConversationalRetrievalChain
|
714 |
+
from langchain.memory import ConversationBufferMemory
|
715 |
+
from langchain.chat_models import ChatOpenAI
|
716 |
+
|
717 |
+
from qa_chain.model_to_llm import model_to_llm
|
718 |
+
from qa_chain.get_vectordb import get_vectordb
|
719 |
+
|
720 |
+
|
721 |
+
class Chat_QA_chain_self:
|
722 |
+
""""
|
723 |
+
带历史记录的问答链
|
724 |
+
- model:调用的模型名称
|
725 |
+
- temperature:温度系数,控制生成的随机性
|
726 |
+
- top_k:返回检索的前k个相似文档
|
727 |
+
- chat_history:历史记录,输入一个列表,默认是一个空列表
|
728 |
+
- history_len:控制保留的最近 history_len 次对话
|
729 |
+
- file_path:建库文件所在路径
|
730 |
+
- persist_path:向量数据库持久化路径
|
731 |
+
- appid:星火
|
732 |
+
- api_key:星火、百度文心、OpenAI、智谱都需要传递的参数
|
733 |
+
- Spark_api_secret:星火秘钥
|
734 |
+
- Wenxin_secret_key:文心秘钥
|
735 |
+
- embeddings:使用的embedding模型
|
736 |
+
- embedding_key:使用的embedding模型的秘钥(智谱或者OpenAI)
|
737 |
+
"""
|
738 |
+
def __init__(self,model:str, temperature:float=0.0, top_k:int=4, chat_history:list=[], file_path:str=None, persist_path:str=None, appid:str=None, api_key:str=None, Spark_api_secret:str=None,Wenxin_secret_key:str=None, embedding = "openai",embedding_key:str=None):
|
739 |
+
self.model = model
|
740 |
+
self.temperature = temperature
|
741 |
+
self.top_k = top_k
|
742 |
+
self.chat_history = chat_history
|
743 |
+
#self.history_len = history_len
|
744 |
+
self.file_path = file_path
|
745 |
+
self.persist_path = persist_path
|
746 |
+
self.appid = appid
|
747 |
+
self.api_key = api_key
|
748 |
+
self.Spark_api_secret = Spark_api_secret
|
749 |
+
self.Wenxin_secret_key = Wenxin_secret_key
|
750 |
+
self.embedding = embedding
|
751 |
+
self.embedding_key = embedding_key
|
752 |
+
|
753 |
+
|
754 |
+
self.vectordb = get_vectordb(self.file_path, self.persist_path, self.embedding,self.embedding_key)
|
755 |
+
|
756 |
+
|
757 |
+
def clear_history(self):
|
758 |
+
"清空历史记录"
|
759 |
+
return self.chat_history.clear()
|
760 |
+
|
761 |
+
|
762 |
+
def change_history_length(self,history_len:int=1):
|
763 |
+
"""
|
764 |
+
保存指定对话轮次的历史记录
|
765 |
+
输入参数:
|
766 |
+
- history_len :控制保留的最近 history_len 次对话
|
767 |
+
- chat_history:当前的历史对话记录
|
768 |
+
输出:返回最近 history_len 次对话
|
769 |
+
"""
|
770 |
+
n = len(self.chat_history)
|
771 |
+
return self.chat_history[n-history_len:]
|
772 |
+
|
773 |
+
|
774 |
+
def answer(self, question:str=None,temperature = None, top_k = 4):
|
775 |
+
""""
|
776 |
+
核心方法,调用问答链
|
777 |
+
arguments:
|
778 |
+
- question:用户提问
|
779 |
+
"""
|
780 |
+
|
781 |
+
if len(question) == 0:
|
782 |
+
return "", self.chat_history
|
783 |
+
|
784 |
+
if len(question) == 0:
|
785 |
+
return ""
|
786 |
+
|
787 |
+
if temperature == None:
|
788 |
+
temperature = self.temperature
|
789 |
+
|
790 |
+
llm = model_to_llm(self.model, temperature, self.appid, self.api_key, self.Spark_api_secret,self.Wenxin_secret_key)
|
791 |
+
|
792 |
+
#self.memory = ConversationBufferMemory(memory_key="chat_history", return_messages=True)
|
793 |
+
|
794 |
+
retriever = self.vectordb.as_retriever(search_type="similarity",
|
795 |
+
search_kwargs={'k': top_k}) #默认similarity,k=4
|
796 |
+
|
797 |
+
qa = ConversationalRetrievalChain.from_llm(
|
798 |
+
llm = llm,
|
799 |
+
retriever = retriever
|
800 |
+
)
|
801 |
+
|
802 |
+
#print(self.llm)
|
803 |
+
result = qa({"question": question,"chat_history": self.chat_history}) #result里有question、chat_history、answer
|
804 |
+
answer = result['answer']
|
805 |
+
self.chat_history.append((question,answer)) #更新历史记录
|
806 |
+
|
807 |
+
return self.chat_history #返回本次回答和更新后的历史记录
|
808 |
+
```
|
809 |
+
|
810 |
+
# 3.总结与展望
|
811 |
+
|
812 |
+
## 3.1 个人知识库关键点总结
|
813 |
+
该实例是一个基于大型语言模型(LLM)的个人知识库助手项目,通过智能检索和问答系统,帮助用户快速定位和获取与DATa whale相关的知识。以下是该项目的关键点:
|
814 |
+
|
815 |
+
**关键点一**
|
816 |
+
|
817 |
+
1. 项目使用多种方法完成Datawhale中所有md文件的抽取与概括,生成对应的知识库。在完成md文件抽取与概括的同时,还是用相应的方法完成readme文本中网页链接和可能引起大模型风控词汇的过滤;
|
818 |
+
|
819 |
+
2. 项目利用Langchain中的文本切割器完成知识库向量化操作前的文本分割,向量数据库使用高效的索引和查询算法来加速向量数据的存储和检索过程,快速的完成个人知识库数据建立与使用。
|
820 |
+
|
821 |
+
|
822 |
+
**关键点二**
|
823 |
+
|
824 |
+
项目对不同的API进行了底层封装,用户可以避免复杂的封装细节,直接调用相应的大语言模型即可。
|
825 |
+
|
826 |
+
## 3.2 未来发展方向
|
827 |
+
|
828 |
+
1. 用户体验升级:支持用户自主上传并建立个人知识库,构建属于自己的专属个人知识库助手;
|
829 |
+
|
830 |
+
2. 模型架构升级:从 REG 的普遍架构升级到 Multi-Agent 的多智体框架;
|
831 |
+
|
832 |
+
3. 功能优化升级:对现有结构内的检索函数进行优化,提高个人知识库的检索准确性。
|
833 |
+
|
834 |
+
# 4.致谢
|
835 |
+
在此感谢散师傅的[项目](https://github.com/sanbuphy/ChatWithDataWhale)中爬虫及总结部分。
|
app.py
ADDED
@@ -0,0 +1,314 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# 导入必要的库
|
2 |
+
|
3 |
+
import sys
|
4 |
+
import os # 用于操作系统相关的操作,例如读取环境变量
|
5 |
+
|
6 |
+
sys.path.append(os.path.dirname(os.path.dirname(__file__)))
|
7 |
+
|
8 |
+
import IPython.display # 用于在 IPython 环境中显示数据,例如图片
|
9 |
+
import io # 用于处理流式数据(例如文件流)
|
10 |
+
import gradio as gr
|
11 |
+
from dotenv import load_dotenv, find_dotenv
|
12 |
+
from llm.call_llm import get_completion
|
13 |
+
from database.create_db import create_db_info
|
14 |
+
from qa_chain.Chat_QA_chain_self import Chat_QA_chain_self
|
15 |
+
from qa_chain.QA_chain_self import QA_chain_self
|
16 |
+
import re
|
17 |
+
|
18 |
+
# 导入 dotenv 库的函数
|
19 |
+
# dotenv 允许您从 .env 文件中读取环境变量
|
20 |
+
# 这在开发时特别有用,可以避免将敏感信息(如API密钥)硬编码到代码中
|
21 |
+
|
22 |
+
# 寻找 .env 文件并加载它的内容
|
23 |
+
# 这允许您使用 os.environ 来读取在 .env 文件中设置的环境变量
|
24 |
+
_ = load_dotenv(find_dotenv())
|
25 |
+
LLM_MODEL_DICT = {
|
26 |
+
# "openai": ["gpt-3.5-turbo", "gpt-3.5-turbo-16k-0613", "gpt-3.5-turbo-0613", "gpt-4", "gpt-4-32k"],
|
27 |
+
# "wenxin": ["ERNIE-Bot", "ERNIE-Bot-4", "ERNIE-Bot-turbo"],
|
28 |
+
# "xinhuo": ["Spark-1.5", "Spark-2.0"],
|
29 |
+
"zhipuai": ["chatglm_pro", "chatglm_std", "chatglm_lite"]
|
30 |
+
}
|
31 |
+
|
32 |
+
|
33 |
+
LLM_MODEL_LIST = sum(list(LLM_MODEL_DICT.values()), [])
|
34 |
+
INIT_LLM = "chatglm_pro"
|
35 |
+
# EMBEDDING_MODEL_LIST = ['zhipuai', 'openai', 'm3e']
|
36 |
+
EMBEDDING_MODEL_LIST = ["zhipuai"]
|
37 |
+
INIT_EMBEDDING_MODEL = "zhipuai"
|
38 |
+
DEFAULT_DB_PATH = "./knowledge_db"
|
39 |
+
DEFAULT_PERSIST_PATH = "./vector_db/chroma"
|
40 |
+
AIGC_AVATAR_PATH = "./figures/aigc_avatar.png"
|
41 |
+
DATAWHALE_AVATAR_PATH = "./figures/datawhale_avatar.png"
|
42 |
+
AIGC_LOGO_PATH = "./figures/aigc_logo.png"
|
43 |
+
DATAWHALE_LOGO_PATH = "./figures/datawhale_logo.png"
|
44 |
+
|
45 |
+
|
46 |
+
def get_model_by_platform(platform):
|
47 |
+
return LLM_MODEL_DICT.get(platform, "")
|
48 |
+
|
49 |
+
|
50 |
+
class Model_center:
|
51 |
+
"""
|
52 |
+
存储问答 Chain 的对象
|
53 |
+
|
54 |
+
- chat_qa_chain_self: 以 (model, embedding) 为键存储的带历史记录的问答链。
|
55 |
+
- qa_chain_self: 以 (model, embedding) 为键存储的不带历史记录的问答链。
|
56 |
+
"""
|
57 |
+
|
58 |
+
def __init__(self):
|
59 |
+
self.chat_qa_chain_self = {}
|
60 |
+
self.qa_chain_self = {}
|
61 |
+
|
62 |
+
def chat_qa_chain_self_answer(
|
63 |
+
self,
|
64 |
+
question: str,
|
65 |
+
chat_history: list = [],
|
66 |
+
model: str = "zhipuai",
|
67 |
+
embedding: str = "zhipuai",
|
68 |
+
temperature: float = 0.0,
|
69 |
+
top_k: int = 4,
|
70 |
+
history_len: int = 3,
|
71 |
+
file_path: str = DEFAULT_DB_PATH,
|
72 |
+
persist_path: str = DEFAULT_PERSIST_PATH,
|
73 |
+
):
|
74 |
+
"""
|
75 |
+
调用带历史记录的问答链进行回答
|
76 |
+
"""
|
77 |
+
if question == None or len(question) < 1:
|
78 |
+
return "", chat_history
|
79 |
+
try:
|
80 |
+
if (model, embedding) not in self.chat_qa_chain_self:
|
81 |
+
self.chat_qa_chain_self[(model, embedding)] = Chat_QA_chain_self(
|
82 |
+
model=model,
|
83 |
+
temperature=temperature,
|
84 |
+
top_k=top_k,
|
85 |
+
chat_history=chat_history,
|
86 |
+
file_path=file_path,
|
87 |
+
persist_path=persist_path,
|
88 |
+
embedding=embedding,
|
89 |
+
)
|
90 |
+
chain = self.chat_qa_chain_self[(model, embedding)]
|
91 |
+
return "", chain.answer(
|
92 |
+
question=question, temperature=temperature, top_k=top_k
|
93 |
+
)
|
94 |
+
except Exception as e:
|
95 |
+
return e, chat_history
|
96 |
+
|
97 |
+
def qa_chain_self_answer(
|
98 |
+
self,
|
99 |
+
question: str,
|
100 |
+
chat_history: list = [],
|
101 |
+
model: str = "zhipuai",
|
102 |
+
embedding="zhipuai",
|
103 |
+
temperature: float = 0.0,
|
104 |
+
top_k: int = 4,
|
105 |
+
file_path: str = DEFAULT_DB_PATH,
|
106 |
+
persist_path: str = DEFAULT_PERSIST_PATH,
|
107 |
+
):
|
108 |
+
"""
|
109 |
+
调用不带历史记录的问答链进行回答
|
110 |
+
"""
|
111 |
+
if question == None or len(question) < 1:
|
112 |
+
return "", chat_history
|
113 |
+
try:
|
114 |
+
if (model, embedding) not in self.qa_chain_self:
|
115 |
+
self.qa_chain_self[(model, embedding)] = QA_chain_self(
|
116 |
+
model=model,
|
117 |
+
temperature=temperature,
|
118 |
+
top_k=top_k,
|
119 |
+
file_path=file_path,
|
120 |
+
persist_path=persist_path,
|
121 |
+
embedding=embedding,
|
122 |
+
)
|
123 |
+
chain = self.qa_chain_self[(model, embedding)]
|
124 |
+
chat_history.append((question, chain.answer(question, temperature, top_k)))
|
125 |
+
return "", chat_history
|
126 |
+
except Exception as e:
|
127 |
+
return e, chat_history
|
128 |
+
|
129 |
+
def clear_history(self):
|
130 |
+
if len(self.chat_qa_chain_self) > 0:
|
131 |
+
for chain in self.chat_qa_chain_self.values():
|
132 |
+
chain.clear_history()
|
133 |
+
|
134 |
+
|
135 |
+
def format_chat_prompt(message, chat_history):
|
136 |
+
"""
|
137 |
+
该函数用于格式化聊天 prompt。
|
138 |
+
|
139 |
+
参数:
|
140 |
+
message: 当前的用户消息。
|
141 |
+
chat_history: 聊天历史记录。
|
142 |
+
|
143 |
+
返回:
|
144 |
+
prompt: 格式化后的 prompt。
|
145 |
+
"""
|
146 |
+
# 初始化一个空字符串,用于存放格式化后的聊天 prompt。
|
147 |
+
prompt = ""
|
148 |
+
# 遍历聊天历史记录。
|
149 |
+
for turn in chat_history:
|
150 |
+
# 从聊天记录中提取用户和机器人的消息。
|
151 |
+
user_message, bot_message = turn
|
152 |
+
# 更新 prompt,加入用户和机器人的消息。
|
153 |
+
prompt = f"{prompt}\nUser: {user_message}\nAssistant: {bot_message}"
|
154 |
+
# 将当前的用户消息也加入到 prompt中,并预留一个位置给机器人的回复。
|
155 |
+
prompt = f"{prompt}\nUser: {message}\nAssistant:"
|
156 |
+
# 返回格式化后的 prompt。
|
157 |
+
return prompt
|
158 |
+
|
159 |
+
|
160 |
+
def respond(
|
161 |
+
message, chat_history, llm, history_len=3, temperature=0.1, max_tokens=2048
|
162 |
+
):
|
163 |
+
"""
|
164 |
+
该函数用于生成机器人的回复。
|
165 |
+
|
166 |
+
参数:
|
167 |
+
message: 当前的用户消息。
|
168 |
+
chat_history: 聊天历史记录。
|
169 |
+
|
170 |
+
返回:
|
171 |
+
"": 空字符串表示没有内容需要显示在界面上,可以替换为真正的机器人回复。
|
172 |
+
chat_history: 更新后的聊天历史记录
|
173 |
+
"""
|
174 |
+
if message == None or len(message) < 1:
|
175 |
+
return "", chat_history
|
176 |
+
try:
|
177 |
+
# 限制 history 的记忆长度
|
178 |
+
chat_history = chat_history[-history_len:] if history_len > 0 else []
|
179 |
+
# 调用上面的函数,将用户的消息和聊天历史记录格式化为一个 prompt。
|
180 |
+
formatted_prompt = format_chat_prompt(message, chat_history)
|
181 |
+
# 使用llm对象的predict方法生成机器人的回复(注意:llm对象在此代码中并未定义)。
|
182 |
+
bot_message = get_completion(
|
183 |
+
formatted_prompt, llm, temperature=temperature, max_tokens=max_tokens
|
184 |
+
)
|
185 |
+
# 将bot_message中\n换为<br/>
|
186 |
+
bot_message = re.sub(r"\\n", "<br/>", bot_message)
|
187 |
+
# 将用户的消息和机器人的回复加入到聊天历史记录中。
|
188 |
+
chat_history.append((message, bot_message))
|
189 |
+
# 返回一个空字符串和更新后的聊天历史记录(这里的空字符串可以替换为真正的机器人回复,如果需要显示在界面上)。
|
190 |
+
return "", chat_history
|
191 |
+
except Exception as e:
|
192 |
+
return e, chat_history
|
193 |
+
|
194 |
+
|
195 |
+
model_center = Model_center()
|
196 |
+
|
197 |
+
block = gr.Blocks()
|
198 |
+
with block as demo:
|
199 |
+
with gr.Row(equal_height=True):
|
200 |
+
# gr.Image(value=AIGC_LOGO_PATH, scale=1, min_width=10, show_label=False, show_download_button=False, container=False)
|
201 |
+
|
202 |
+
with gr.Column(scale=2):
|
203 |
+
gr.Markdown(
|
204 |
+
"""<h1><center>大模型应用开发</center></h1>
|
205 |
+
<center>LLM-UNIVERSE</center>
|
206 |
+
"""
|
207 |
+
)
|
208 |
+
# gr.Image(value=DATAWHALE_LOGO_PATH, scale=1, min_width=10, show_label=False, show_download_button=False, container=False)
|
209 |
+
|
210 |
+
with gr.Row():
|
211 |
+
with gr.Column(scale=4):
|
212 |
+
# chatbot = gr.Chatbot(height=400, show_copy_button=True, show_share_button=True, avatar_images=(AIGC_AVATAR_PATH, DATAWHALE_AVATAR_PATH))
|
213 |
+
chatbot = gr.Chatbot(
|
214 |
+
height=400, show_copy_button=True, show_share_button=True
|
215 |
+
)
|
216 |
+
# 创建一个文本框组件,用于输入 prompt。
|
217 |
+
msg = gr.Textbox(label="Prompt/问题")
|
218 |
+
|
219 |
+
with gr.Row():
|
220 |
+
# 创建提交按钮。
|
221 |
+
# db_with_his_btn = gr.Button("Chat db with history")
|
222 |
+
# db_wo_his_btn = gr.Button("Chat db without history")
|
223 |
+
llm_btn = gr.Button("Chat with llm")
|
224 |
+
with gr.Row():
|
225 |
+
# 创建一个清除按钮,用于清除聊天机器人组件的内容。
|
226 |
+
clear = gr.ClearButton(components=[chatbot], value="Clear console")
|
227 |
+
|
228 |
+
with gr.Column(scale=1):
|
229 |
+
file = gr.File(
|
230 |
+
label="请选择知识库目录",
|
231 |
+
file_count="directory",
|
232 |
+
file_types=[".txt", ".md", ".docx", ".pdf"],
|
233 |
+
)
|
234 |
+
with gr.Row():
|
235 |
+
init_db = gr.Button("知识库文件向量化")
|
236 |
+
model_argument = gr.Accordion("参数配置", open=False)
|
237 |
+
with model_argument:
|
238 |
+
temperature = gr.Slider(
|
239 |
+
0,
|
240 |
+
1,
|
241 |
+
value=0.01,
|
242 |
+
step=0.01,
|
243 |
+
label="llm temperature",
|
244 |
+
interactive=True,
|
245 |
+
)
|
246 |
+
|
247 |
+
top_k = gr.Slider(
|
248 |
+
1,
|
249 |
+
10,
|
250 |
+
value=3,
|
251 |
+
step=1,
|
252 |
+
label="vector db search top k",
|
253 |
+
interactive=True,
|
254 |
+
)
|
255 |
+
|
256 |
+
history_len = gr.Slider(
|
257 |
+
0, 5, value=3, step=1, label="history length", interactive=True
|
258 |
+
)
|
259 |
+
|
260 |
+
model_select = gr.Accordion("模型选择")
|
261 |
+
with model_select:
|
262 |
+
llm = gr.Dropdown(
|
263 |
+
LLM_MODEL_LIST,
|
264 |
+
label="large language model",
|
265 |
+
value=INIT_LLM,
|
266 |
+
interactive=True,
|
267 |
+
)
|
268 |
+
|
269 |
+
embeddings = gr.Dropdown(
|
270 |
+
EMBEDDING_MODEL_LIST,
|
271 |
+
label="Embedding model",
|
272 |
+
value=INIT_EMBEDDING_MODEL,
|
273 |
+
)
|
274 |
+
|
275 |
+
# 设置初始化向量数据库按钮的点击事件。当点击时,调用 create_db_info 函数,并传入用户的文件和希望使用的 Embedding 模型。
|
276 |
+
init_db.click(create_db_info, inputs=[file, embeddings], outputs=[msg])
|
277 |
+
|
278 |
+
# # 设置按钮的点击事件。当点击时,调用上面定义的 chat_qa_chain_self_answer 函数,并传入用户的消息和聊天历史记录,然后更新文本框和聊天机器人组件。
|
279 |
+
# db_with_his_btn.click(model_center.chat_qa_chain_self_answer, inputs=[
|
280 |
+
# msg, chatbot, llm, embeddings, temperature, top_k, history_len],
|
281 |
+
# outputs=[msg, chatbot])
|
282 |
+
# # 设置按钮的点击事件。当点击时,调用上面定义的 qa_chain_self_answer 函数,并传入用户的消息和聊天历史记录,然后更新文本框和聊天机器人组件。
|
283 |
+
# db_wo_his_btn.click(model_center.qa_chain_self_answer, inputs=[
|
284 |
+
# msg, chatbot, llm, embeddings, temperature, top_k], outputs=[msg, chatbot])
|
285 |
+
# 设置按钮的点击事件。当点击时,调用上面定义的 respond 函数,并传入用户的消息和聊天历史记录,然后更新文本框和聊天机器人组件。
|
286 |
+
llm_btn.click(
|
287 |
+
respond,
|
288 |
+
inputs=[msg, chatbot, llm, history_len, temperature],
|
289 |
+
outputs=[msg, chatbot],
|
290 |
+
show_progress="minimal",
|
291 |
+
)
|
292 |
+
|
293 |
+
# 设置文本框的提交事件(即按下Enter键时)。功能与上面的 llm_btn 按钮点击事件相同。
|
294 |
+
msg.submit(
|
295 |
+
respond,
|
296 |
+
inputs=[msg, chatbot, llm, history_len, temperature],
|
297 |
+
outputs=[msg, chatbot],
|
298 |
+
show_progress="hidden",
|
299 |
+
)
|
300 |
+
# 点击后清空后端存储的聊天记录
|
301 |
+
clear.click(model_center.clear_history)
|
302 |
+
gr.Markdown(
|
303 |
+
"""提醒:<br>
|
304 |
+
1. 使用时请先上传自己的知识文件,不然将会解析项目自带的知识库。
|
305 |
+
2. 初始化数据库时间可能较长,请耐心等待。
|
306 |
+
3. 使用中如果出现异常,将会在文本输入框进行展示,请不要惊慌。 <br>
|
307 |
+
"""
|
308 |
+
)
|
309 |
+
# threads to consume the request
|
310 |
+
gr.close_all()
|
311 |
+
# 启动新的 Gradio 应用,设置分享功能为 True,并使用环境变量 PORT1 指定服务器端口。
|
312 |
+
# demo.launch(share=True, server_port=int(os.environ['PORT1']))
|
313 |
+
# 直接启动
|
314 |
+
demo.launch(share=True)
|
database/__init__.py
ADDED
@@ -0,0 +1 @@
|
|
|
|
|
1 |
+
from .create_db import create_db
|
database/__pycache__/__init__.cpython-310.pyc
ADDED
Binary file (190 Bytes). View file
|
|
database/__pycache__/__init__.cpython-311.pyc
ADDED
Binary file (222 Bytes). View file
|
|
database/__pycache__/__init__.cpython-39.pyc
ADDED
Binary file (206 Bytes). View file
|
|
database/__pycache__/create_db.cpython-310.pyc
ADDED
Binary file (3.62 kB). View file
|
|
database/__pycache__/create_db.cpython-311.pyc
ADDED
Binary file (5.84 kB). View file
|
|
database/__pycache__/create_db.cpython-39.pyc
ADDED
Binary file (3.62 kB). View file
|
|
database/__pycache__/create_db_local.cpython-39.pyc
ADDED
Binary file (3.04 kB). View file
|
|
database/__pycache__/test_get_all_repo.cpython-310.pyc
ADDED
Binary file (1.96 kB). View file
|
|
database/__pycache__/test_get_all_repo.cpython-39.pyc
ADDED
Binary file (1.98 kB). View file
|
|
database/create_db.py
ADDED
@@ -0,0 +1,123 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import os
|
2 |
+
import sys
|
3 |
+
import re
|
4 |
+
|
5 |
+
sys.path.append(os.path.dirname(os.path.dirname(__file__)))
|
6 |
+
import tempfile
|
7 |
+
from dotenv import load_dotenv, find_dotenv
|
8 |
+
from embedding.call_embedding import get_embedding
|
9 |
+
from langchain.document_loaders import UnstructuredFileLoader
|
10 |
+
from langchain.document_loaders import UnstructuredMarkdownLoader
|
11 |
+
from langchain.text_splitter import RecursiveCharacterTextSplitter
|
12 |
+
from langchain.document_loaders import PyMuPDFLoader
|
13 |
+
from langchain.vectorstores import Chroma
|
14 |
+
|
15 |
+
# 首先实现基本配置
|
16 |
+
|
17 |
+
DEFAULT_DB_PATH = "./knowledge_db"
|
18 |
+
DEFAULT_PERSIST_PATH = "./vector_db"
|
19 |
+
|
20 |
+
|
21 |
+
def get_files(dir_path):
|
22 |
+
file_list = []
|
23 |
+
for filepath, dirnames, filenames in os.walk(dir_path):
|
24 |
+
for filename in filenames:
|
25 |
+
file_list.append(os.path.join(filepath, filename))
|
26 |
+
return file_list
|
27 |
+
|
28 |
+
|
29 |
+
def file_loader(file, loaders):
|
30 |
+
if isinstance(file, tempfile._TemporaryFileWrapper):
|
31 |
+
file = file.name
|
32 |
+
if not os.path.isfile(file):
|
33 |
+
[file_loader(os.path.join(file, f), loaders) for f in os.listdir(file)]
|
34 |
+
return
|
35 |
+
file_type = file.split(".")[-1]
|
36 |
+
if file_type == "pdf":
|
37 |
+
loaders.append(PyMuPDFLoader(file))
|
38 |
+
elif file_type == "md":
|
39 |
+
pattern = r"不存在|风控"
|
40 |
+
match = re.search(pattern, file)
|
41 |
+
if not match:
|
42 |
+
loaders.append(UnstructuredMarkdownLoader(file))
|
43 |
+
elif file_type == "txt":
|
44 |
+
loaders.append(UnstructuredFileLoader(file))
|
45 |
+
return
|
46 |
+
|
47 |
+
|
48 |
+
def create_db_info(
|
49 |
+
files=DEFAULT_DB_PATH, embeddings="openai", persist_directory=DEFAULT_PERSIST_PATH
|
50 |
+
):
|
51 |
+
if embeddings == "openai" or embeddings == "m3e" or embeddings == "zhipuai":
|
52 |
+
vectordb = create_db(files, persist_directory, embeddings)
|
53 |
+
return ""
|
54 |
+
|
55 |
+
|
56 |
+
def create_db(
|
57 |
+
files=DEFAULT_DB_PATH, persist_directory=DEFAULT_PERSIST_PATH, embeddings="zhipuai"
|
58 |
+
):
|
59 |
+
"""
|
60 |
+
该函数用于加载 PDF 文件,切分文档,生成文档的嵌入向量,创建向量数据库。
|
61 |
+
|
62 |
+
参数:
|
63 |
+
file: 存放文件的路径。
|
64 |
+
embeddings: 用于生产 Embedding 的模型
|
65 |
+
|
66 |
+
返回:
|
67 |
+
vectordb: 创建的数据库。
|
68 |
+
"""
|
69 |
+
if files == None:
|
70 |
+
return "can't load empty file"
|
71 |
+
if type(files) != list:
|
72 |
+
files = [files]
|
73 |
+
loaders = []
|
74 |
+
[file_loader(file, loaders) for file in files]
|
75 |
+
docs = []
|
76 |
+
for loader in loaders:
|
77 |
+
if loader is not None:
|
78 |
+
docs.extend(loader.load())
|
79 |
+
# 切分文档
|
80 |
+
text_splitter = RecursiveCharacterTextSplitter(chunk_size=500, chunk_overlap=150)
|
81 |
+
split_docs = text_splitter.split_documents(docs)
|
82 |
+
if type(embeddings) == str:
|
83 |
+
embeddings = get_embedding(embedding=embeddings)
|
84 |
+
# 定义持久化路径
|
85 |
+
persist_directory = "./vector_db/chroma"
|
86 |
+
# 加载数据库
|
87 |
+
vectordb = Chroma.from_documents(
|
88 |
+
documents=split_docs,
|
89 |
+
embedding=embeddings,
|
90 |
+
persist_directory=persist_directory, # 允许我们将persist_directory目录保存到磁盘上
|
91 |
+
)
|
92 |
+
|
93 |
+
vectordb.persist()
|
94 |
+
return vectordb
|
95 |
+
|
96 |
+
|
97 |
+
def presit_knowledge_db(vectordb):
|
98 |
+
"""
|
99 |
+
该函数用于持久化向量数据库。
|
100 |
+
|
101 |
+
参数:
|
102 |
+
vectordb: 要持久化的向量数据库。
|
103 |
+
"""
|
104 |
+
vectordb.persist()
|
105 |
+
|
106 |
+
|
107 |
+
def load_knowledge_db(path, embeddings):
|
108 |
+
"""
|
109 |
+
该函数用于加载向量数据库。
|
110 |
+
|
111 |
+
参数:
|
112 |
+
path: 要加载的向量数据库路径。
|
113 |
+
embeddings: 向量数据库使用的 embedding 模型。
|
114 |
+
|
115 |
+
返回:
|
116 |
+
vectordb: 加载的数据库。
|
117 |
+
"""
|
118 |
+
vectordb = Chroma(persist_directory=path, embedding_function=embeddings)
|
119 |
+
return vectordb
|
120 |
+
|
121 |
+
|
122 |
+
if __name__ == "__main__":
|
123 |
+
create_db(embeddings="zhipuai")
|
database/readme_db/DOPMC/README.md
ADDED
@@ -0,0 +1,34 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# DOPMC
|
2 |
+
|
3 |
+
Datawhale开源项目管理委员会(Datawhale Open-source Project Management Committee,简称DOPMC),其成员体系参见[Roles](https://github.com/datawhalechina/DOPMC/blob/main/ROLES.md)。
|
4 |
+
|
5 |
+
## Datawhale开源社区推出的内容
|
6 |
+
|
7 |
+
- [Datawhale人工智能培养方案](https://datawhale.feishu.cn/docs/doccn0AOicI3LJ8RwhY0cuDPSOc)
|
8 |
+
|
9 |
+
## 参与Datawhale开源社区
|
10 |
+
|
11 |
+
如果你想在Datawhale开源社区发起一个开源项目,请详细阅读[Datawhale开源项目指南](https://github.com/datawhalechina/DOPMC/blob/main/GUIDE.md)。
|
12 |
+
|
13 |
+
*ps:如果你对 Github 的操作不太熟悉,可以查看[Github 极简操作指南](https://github.com/datawhalechina/DOPMC/blob/main/GITHUB.md),仅需30秒即可创建属于你的第一个Issue✨*
|
14 |
+
|
15 |
+
### 参与项目💓
|
16 |
+
|
17 |
+
如果你暂时还没有什么想法欢迎浏览我们的[Issue列表](https://github.com/datawhalechina/DOPMC/issues)看看有哪些是你感兴趣的😊,参与到项目中,或者通过[项目看板](https://github.com/datawhalechina/DOPMC/projects/1?fullscreen=true)更直观的看到各个项目的进展状态。
|
18 |
+
|
19 |
+
*ps:含有 [`help wanted`](https://github.com/datawhalechina/DOPMC/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22)标签的Issue表示该项目有招募需求💡*
|
20 |
+
|
21 |
+
### 参与讨论💬
|
22 |
+
|
23 |
+
我们开放了讨论渠道,如果你有任何想讨论的问题,欢迎通过[Discussion](https://github.com/datawhalechina/DOPMC/discussions)与我们交流。
|
24 |
+
|
25 |
+
### 反馈🐛
|
26 |
+
|
27 |
+
如果你对Datawhale的任何开源项目有疑惑或者建议,欢迎去相应项目的Issue区进行反馈。你并不需要担心提出的问题没有价值,我们鼓励所有类型的沟通,发现问题也是对社区进行贡献的一种方式❤️。
|
28 |
+
|
29 |
+
## 关注我们
|
30 |
+
|
31 |
+
<div align=center>
|
32 |
+
<p>扫描下方二维码关注公众号:Datawhale</p>
|
33 |
+
<img src="https://raw.githubusercontent.com/datawhalechina/pumpkin-book/master/res/qrcode.jpeg" width = "180" height = "180">
|
34 |
+
</div>
|
database/readme_db/ML-FTTI/README.md
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# 机器学习 - 从原理到实现
|
2 |
+
|
3 |
+
Machine Learning: From Theory To Implementation
|
4 |
+
|
5 |
+
- 网页版教程链接戳[这里](https://datawhalechina.github.io/ML-FTTI/)
|
6 |
+
- 《树模型与集成学习》章节内容已完成,b站视频讲解戳[这里](https://www.bilibili.com/video/BV1wF411e73j?from=search&seid=9841078173332028525&spm_id_from=333.337.0.0)
|
7 |
+
|
8 |
+
## 贡献者名单
|
9 |
+
|
10 |
+
| 姓名 | 简介 |
|
11 |
+
| :----| :---- |
|
12 |
+
| 耿远昊 | Datawhale成员 |
|
13 |
+
|
14 |
+
## 关注我们
|
15 |
+
|
16 |
+
<div align=center>
|
17 |
+
<p>扫描下方二维码关注公众号:Datawhale</p>
|
18 |
+
<img src="https://raw.githubusercontent.com/datawhalechina/pumpkin-book/master/res/qrcode.jpeg" width = "180" height = "180">
|
19 |
+
</div>
|
20 |
+
|
21 |
+
## LICENSE
|
22 |
+
|
23 |
+
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="知识共享许可协议" style="border-width:0" src="https://img.shields.io/badge/license-CC%20BY--NC--SA%204.0-lightgrey" /></a><br />本作品采用<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议</a>进行许可。
|
database/readme_db/agent-tutorial/README.md
ADDED
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# agent-tutorial
|
2 |
+
|
3 |
+
## 教程介绍
|
4 |
+
本教程是 Datawhale 成员写作的关于 Agent 的教程,特点是通过实践引导学习者加深对Agent的理解。
|
5 |
+
|
6 |
+
目前已有的内容,主要用于支持《动手学Agent开发》学习活动,介绍如何使用 [ModelScope Agent](https://github.com/modelscope/modelscope-agent/tree/master) 开发一个智能助手,并探讨一些 Agent 的通用创作思路及应用展望。
|
7 |
+
|
8 |
+
学习活动详见[《动手学Agent应用开发》学习手册](https://datawhaler.feishu.cn/docx/DqaydpsFdovWonxDrYxcrBYxnkf)。
|
9 |
+
|
10 |
+
## 教程大纲
|
11 |
+
第1章:Agent入门简介
|
12 |
+
- [Agent原理](./notebook/第一章:Agent简介/1.1%20Agent原理.md)
|
13 |
+
- [Agent原理深入+环境配置](./notebook/第一章:Agent简介/1.2%20Agent原理深入+环境配置.md)
|
14 |
+
|
15 |
+
第2章:Agent实践:日程规划小助手
|
16 |
+
- [高德开放API实践](./notebook/第二章:Agent实践/2.1%20高德开放API实践.md)
|
17 |
+
- [日程规划小助手](./notebook/第二章:Agent实践/2.2%20日程规划小助手.md)
|
18 |
+
|
19 |
+
第3章:Agent应用展望
|
20 |
+
- [Agent通用创作思路](./notebook/第三章:Agent应用展望/3.1%20Agent通用创作思路.md)
|
21 |
+
- [Agent应用展望](./notebook/第三章:Agent应用展望/3.2%20Agent应用展望.md)
|
database/readme_db/ai-club/README.md
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Datawhale AI Club
|
2 |
+
|
3 |
+
## 点亮更多的个体,建立有意义的人际关系
|
4 |
+
|
5 |
+
## 关注我们
|
6 |
+
<div align=center>
|
7 |
+
<p>扫描下方二维码关注公众号:Datawhale</p>
|
8 |
+
<img src="https://raw.githubusercontent.com/datawhalechina/pumpkin-book/master/res/qrcode.jpeg" width = "180" height = "180">
|
9 |
+
</div>
|
database/readme_db/aima-notes/README.md
ADDED
@@ -0,0 +1,30 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# aima-notes
|
2 |
+
## 人工智能:现代方法(第4版)笔记
|
3 |
+
|
4 |
+
<a href="url"><img src="https://github.com/datawhalechina/aima-notes/blob/main/images/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD%E7%8E%B0%E4%BB%A3%E6%96%B9%E6%B3%95.png" height="280" width="280" ></a>
|
5 |
+
|
6 |
+
## 项目背景
|
7 |
+
《人工智能:现代方法》是一本人工智能大百科全书,自1995年第一版上市以来畅销至今,被全球135个国家的1500多所学校、国内32所高校采用为教材,可谓是全球最权威、最经典的人工智能畅销教材,第四版是近十年重要更新版本。<br>
|
8 |
+
作者为AI领域的两位大牛:斯图尔特•罗素(Stuart Russell),加利福尼亚大学伯克利分校计算机科学系教授;彼得•诺维格(Peter Norvig)谷歌公司研究总监,美国宇航局艾姆斯研究中心计算科学部负责人,美国艺术与科学院和加利福尼亚科学院的院士。<br>
|
9 |
+
全书试图全方位探索人工智能领域,书中内容涵盖逻辑、概率和连续数学,感知、推理、学习和行动,以及公平、信任、社会公益和安全。本次课程主要学习其中的绪论、智能体和应用搜索解决问题方法三部分内容。我们将共读《人工智能:现代方法》,梳理读书笔记与习题解读。
|
10 |
+
|
11 |
+
## 任务安排
|
12 |
+
本次课程只学习书本的前三章,如果对后续内容感兴趣,可以后续再自行学习
|
13 |
+
|
14 |
+
| Task | 内容 | 时间 |
|
15 |
+
|----------|:-------------:|:------:|
|
16 |
+
| Task01 | 第1章 绪论 | 1-16 —— 1-19 |
|
17 |
+
| Task02 | 第2章 智能体 | 1-19 —— 1-22 |
|
18 |
+
| Task03 | 3.1-3.3 问题求解智能体、问题示例、搜索算法 | 1-22 —— 1-26 |
|
19 |
+
| Task04 | 3.4 无信息搜索策略 | 1-26 —— 1-30 |
|
20 |
+
| Task05 | 3.5 有信息(启发式)搜索策略 | 1-30 —— 2-3 |
|
21 |
+
| Task06 | 3.6 启发式函数 | 2-3 —— 2-5 |
|
22 |
+
| Task07 | 总结与回顾 | 2-5 —— 2-6 |
|
23 |
+
|
24 |
+
## 拓展材料
|
25 |
+
书籍配套代码:https://github.com/aimacode
|
26 |
+
|
27 |
+
## 购书福利
|
28 |
+
Datawhale专属五折优惠<br>
|
29 |
+
平装版:https://u.jd.com/4dVt4LN<br>
|
30 |
+
精装版:https://u.jd.com/4CVwOPv<br>
|
database/readme_db/awesome-compression/README.md
ADDED
@@ -0,0 +1,89 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Awesome Compression
|
2 |
+
|
3 |
+
|
4 |
+
## 项目简介
|
5 |
+
|
6 |
+
  随着ChatGPT的出圈,大语言模型层出不穷,并展现出非凡的能力,可以有效地解决各种问题。然而,这些模型通常需要大量的计算资源和内存,导致运行时资源消耗较高,限制了其在某些场景下的应用,让很多研究者望而却步。本项目使用通俗易懂的语言介绍模型的剪枝、量化、知识蒸馏等压缩方法,让更多的小白能更快了解到模型压缩技术。
|
7 |
+
|
8 |
+
## 项目意义
|
9 |
+
|
10 |
+
  目前网上关于模型压缩的相关资料比较驳杂,初学者很难找到一个简单优质的的中文入门教程来学习。本项目借鉴[MIT 6.5940 TinyML and Efficient Deep Learning Computing](https://hanlab.mit.edu/courses/2023-fall-65940),提供模型压缩的入门教程,降低模型压缩的学习门槛。在教程中,您将了解不同的压缩方法,通过实践和示例,学习如何应用这些方法来压缩深度学习模型,以满足实际应用需求。
|
11 |
+
|
12 |
+
|
13 |
+
## 项目受众
|
14 |
+
|
15 |
+
  本项目适合以下学习者:
|
16 |
+
|
17 |
+
- 深度学习研究人员;
|
18 |
+
- 嵌入式系统和移动应用开发者;
|
19 |
+
- 对AI硬件加速和部署感兴趣的开发者;
|
20 |
+
- 对模型压缩技术感兴趣的学生群体。
|
21 |
+
|
22 |
+
## 项目亮点
|
23 |
+
|
24 |
+
- 提供通俗易懂的理论内容来科普模型压缩技术;
|
25 |
+
- 提供实践代码,结合实际场景帮助学习者更好地理解理论内容。
|
26 |
+
|
27 |
+
### 目录
|
28 |
+
|
29 |
+
- 第1章 引言
|
30 |
+
- 第2章 深度学习基础
|
31 |
+
- 第3章 模型剪枝
|
32 |
+
- 第4章 模型量化
|
33 |
+
- 第5章 神经网络架构搜索
|
34 |
+
- 第6章 知识蒸馏
|
35 |
+
- 第7章 项目实践
|
36 |
+
|
37 |
+
## 课程知识思维导图
|
38 |
+
|
39 |
+
|
40 |
+
## Roadmap
|
41 |
+
|
42 |
+
- Step 1: 搭建内容框架并确认各章节负责人(1个月);
|
43 |
+
- Step 2: 对章节内容进行撰写(3个月);
|
44 |
+
- Step 3: 对整体内容进行修订与完善(1个月)。
|
45 |
+
|
46 |
+
|
47 |
+
## 参与贡献
|
48 |
+
|
49 |
+
- 如果你想参与到项目中来欢迎查看项目的 [Issue]() 查看没有被分配的任务。
|
50 |
+
- 如果你发现了一些问题,欢迎在 [Issue]() 中进行反馈🐛。
|
51 |
+
- 如果你对本项目感兴趣想要参与进来可以通过 [Discussion]() 进行交流💬。
|
52 |
+
|
53 |
+
如果你对 Datawhale 很感兴趣并想要发起一个新的项目,欢迎查看 [Datawhale 贡献指南](https://github.com/datawhalechina/DOPMC#%E4%B8%BA-datawhale-%E5%81%9A%E5%87%BA%E8%B4%A1%E7%8C%AE)。
|
54 |
+
|
55 |
+
## 贡献者名单
|
56 |
+
|
57 |
+
| 姓名 | 职责 | 简介 |
|
58 |
+
| :----| :---- | :---- |
|
59 |
+
| [陈玉立](https://github.com/ironartisan) | 项目负责人 | Datawhale成员-北京邮电大学研究生 |
|
60 |
+
| [姜蔚蔚](https://jwwthu.github.io) | 第x章贡献者 | 北京邮电大学助理教授 |
|
61 |
+
|
62 |
+
## 环境安装
|
63 |
+
### Node.js版本
|
64 |
+
|
65 |
+
Node v16
|
66 |
+
|
67 |
+
### 安装docsify
|
68 |
+
```shell
|
69 |
+
npm i docsify-cli -g
|
70 |
+
```
|
71 |
+
|
72 |
+
|
73 |
+
### 启动docsify
|
74 |
+
```shell
|
75 |
+
docsify serve ./docs
|
76 |
+
```
|
77 |
+
|
78 |
+
## 关注我们
|
79 |
+
|
80 |
+
<div align=center>
|
81 |
+
<p>扫描下方二维码关注公众号:Datawhale</p>
|
82 |
+
<img src="https://raw.githubusercontent.com/datawhalechina/pumpkin-book/master/res/qrcode.jpeg" width = "180" height = "180">
|
83 |
+
</div>
|
84 |
+
|
85 |
+
## LICENSE
|
86 |
+
|
87 |
+
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="知识共享许可协议" style="border-width:0" src="https://img.shields.io/badge/license-CC%20BY--NC--SA%204.0-lightgrey" /></a><br />本作品采用<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议</a>进行许可。
|
88 |
+
|
89 |
+
|
database/readme_db/caublazer/README.md
ADDED
@@ -0,0 +1 @@
|
|
|
|
|
1 |
+
# caublazer
|
database/readme_db/coggle/README.md
ADDED
@@ -0,0 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
## Coggle数据科学
|
2 |
+
|
3 |
+
Coggle数据科学创立于2019年下半年,致力于产出、整理和收集Kaggle竞赛的相关资讯和分享,我们致力于做国内最好的数据科学&Kaggle内容分享。
|
4 |
+
|
5 |
+
|
6 |
+
### 竞赛分享:
|
7 |
+
|
8 |
+
- 竞赛日历:https://coggle.club/
|
9 |
+
- 竞赛开源:https://github.com/datawhalechina/competition-baseline
|
10 |
+
- 竞赛年鉴:
|
11 |
+
- [数据竞赛年鉴(2019年度)](https://mp.weixin.qq.com/s/r9TEW0KRbWsl4LVqqozfPQ)
|
12 |
+
- [天池竞赛合集](https://coggle.club/assets/html/tianchi.html)
|
13 |
+
- 竞赛设计:
|
14 |
+
- [零基础入门数据挖掘 - 二手车交易价格预测](https://tianchi.aliyun.com/competition/entrance/231784/)
|
15 |
+
- [零基础入门CV赛事- 街景字符编码识别](https://tianchi.aliyun.com/competition/entrance/531795/)
|
16 |
+
- [零基础入门NLP赛事- 新闻文本分类](https://tianchi.aliyun.com/competition/entrance/531810/)
|
17 |
+
|
18 |
+
|
19 |
+
### 关注我们
|
20 |
+
|
21 |
+
- 知乎专栏:https://zhuanlan.zhihu.com/DataAI
|
22 |
+
- 公众号:Coggle数据科学
|
23 |
+
|
24 |
+
![](https://coggle.club/assets/img/coggle_qrcode.jpg)
|
25 |
+
|
26 |
+
|
database/readme_db/competition-baseline/README.md
ADDED
@@ -0,0 +1,311 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# 数据竞赛Baseline & Topline分享
|
2 |
+
|
3 |
+
假如你是数据竞赛的初学者、爱好者,比赛的baseline不仅是比赛思路分享,同时也是一类数据问题的方法总结。本Repo想做的就是将收集并整理并分享各种比赛的baseline方案。
|
4 |
+
|
5 |
+
你可能会问为什么是baseline,而不是获胜者的代码分享?相比于获胜者的代码baseline代码都比较简单,容易整理和学习;其次baseline代码更加实用和简洁,适合入门学习。
|
6 |
+
|
7 |
+
## 数据竞赛
|
8 |
+
|
9 |
+
竞赛日历:http://coggle.club/
|
10 |
+
|
11 |
+
最新的竞赛信息和baseline推送,请关注:
|
12 |
+
- 竞赛公众号:[**Coggle数据科学**](https://t.zsxq.com/Eyn6EQr)
|
13 |
+
- 知乎专栏:[机器学习理论与数据竞赛实战](https://zhuanlan.zhihu.com/DataAI)
|
14 |
+
|
15 |
+
## 竞赛分享
|
16 |
+
|
17 |
+
每个比赛的详细分享请见[competition文件夹](https://github.com/datawhalechina/competition-baseline/tree/master/competition);
|
18 |
+
|
19 |
+
如果本仓库访问速度慢,可以访问国内备份:https://gitee.com/coggle/competition-baseline
|
20 |
+
|
21 |
+
---
|
22 |
+
|
23 |
+
### 2023科大讯飞AI开发者大赛
|
24 |
+
|
25 |
+
2023科大讯飞AI开发者大赛正式启动,现开始报名。本次大赛在“36道应用赛+72道算法赛”的基础上,还开设了高校认知大模型场景创新赛和机器人设计赛,覆盖大模型、智能语音、计算机视觉、自然语言、先进智造、VR等人工智能热门技术,涵盖多行业领域,总奖金池累计超400万。
|
26 |
+
|
27 |
+
赛题报名链接:[https://challenge.xfyun.cn/?ch=vWxQGFU](https://challenge.xfyun.cn/?ch=vWxQGFU)
|
28 |
+
|
29 |
+
---
|
30 |
+
|
31 |
+
### 2022年人民网算法挑战赛
|
32 |
+
|
33 |
+
为推进人工智能领域的学术交流、人才培养、技术发展,鼓励广大学生积极学习和研发符合我国主流价值观的优秀算法, 2022年11-12月举办“2022人民网人工智能算法大赛”,赛事由人民网股份有限公司主办,传播内容认知全国重点实验室承办。
|
34 |
+
|
35 |
+
[http://data.sklccc.com/2022](http://data.sklccc.com/2022)
|
36 |
+
|
37 |
+
- 赛题一:对话生成,[https://aistudio.baidu.com/aistudio/projectdetail/5563450](https://aistudio.baidu.com/aistudio/projectdetail/5563450)
|
38 |
+
- 赛题二:微博话题识别,[https://aistudio.baidu.com/aistudio/projectdetail/5563970](https://aistudio.baidu.com/aistudio/projectdetail/5563970)
|
39 |
+
- 赛题三:微博流行度预测,[https://aistudio.baidu.com/aistudio/projectdetail/5567567](https://aistudio.baidu.com/aistudio/projectdetail/5567567)
|
40 |
+
- 赛题四:微博转发行为预测
|
41 |
+
- 赛题五:社交媒体机器人识别,[https://aistudio.baidu.com/aistudio/projectdetail/5563450](https://aistudio.baidu.com/aistudio/projectdetail/5563450)
|
42 |
+
|
43 |
+
|
44 |
+
---
|
45 |
+
|
46 |
+
### 2022年度 iFLYTEK A.I. 开发者大赛
|
47 |
+
|
48 |
+
2022年度 iFLYTEK A.I. 开发者大赛来了。本届大赛的总奖金池已升级到了超420万元,除此外还将进一步开放海量数据与核心技术,汇聚更多人工智能开发者,提供创孵平台,培育优质团队,给予扶持政策等。
|
49 |
+
|
50 |
+
本届大赛按照算法、应用、编程赛、虚拟形象选拔、辩论赛、创意集市创意赛等等方向设置众多赛道;覆盖了智能语音、视觉、自然语言、图文识别等AI热门技术;涵盖了元宇宙、遗址文化、生物与环保、医疗健康、智能家居、电商销售等众多领域。大赛地址:[https://challenge.xfyun.cn/?ch=ds22-dw-sq04](https://challenge.xfyun.cn/?ch=ds22-dw-sq04)
|
51 |
+
|
52 |
+
|
53 |
+
---
|
54 |
+
### AIWIN 秋季竞赛
|
55 |
+
|
56 |
+
|
57 |
+
- 赛题1- 手写体 OCR 识别竞赛
|
58 |
+
|
59 |
+
手写体 OCR 识别竞赛由交通银行命题,设立两个任务,其中任务一由第四范式提供开放数据集,特别针对金额和日期做识别,任务二要求在指定训练环境完成不可下载训练集的训练,增加了银行机构的文本内容。任务一适合新手,并配套学习营和特别的学习奖励。
|
60 |
+
|
61 |
+
比赛地址:http://ailab.aiwin.org.cn/competitions/65
|
62 |
+
|
63 |
+
baseline地址:https://aistudio.baidu.com/aistudio/projectdetail/2612313
|
64 |
+
|
65 |
+
- 赛题2- 心电图智能诊断竞赛
|
66 |
+
|
67 |
+
心电图智能诊断竞赛由数创医疗和复旦大学附属中山医院共同命题,设立两个任务,其中任务一诊断心电图的正常异常与否,任务二对10+种不同症状予以判断综合分类。任务一同步设有学习营和配套的学习奖励,欢迎新手参与。
|
68 |
+
|
69 |
+
比赛地址:http://ailab.aiwin.org.cn/competitions/64
|
70 |
+
|
71 |
+
baseline地址:https://aistudio.baidu.com/aistudio/projectdetail/2653802
|
72 |
+
|
73 |
+
|
74 |
+
---
|
75 |
+
|
76 |
+
### 2021阿里云供应链大赛——需求预测及单级库存优化
|
77 |
+
|
78 |
+
报名链接:https://tianchi.aliyun.com/competition/entrance/531934/introduction
|
79 |
+
|
80 |
+
比赛baseline:https://github.com/datawhalechina/competition-baseline/tree/master/competition/2021阿里云供应链大赛——需求预测及单级库存优化
|
81 |
+
|
82 |
+
---
|
83 |
+
|
84 |
+
### CCF BDCI 2021
|
85 |
+
|
86 |
+
baseline汇总:https://github.com/datawhalechina/competition-baseline/tree/master/competition/DataFountain-CCFBDI-2021
|
87 |
+
|
88 |
+
- 基于飞桨实现花样滑冰选手骨骼点动作识别,计算机视觉、姿态估计
|
89 |
+
- 千言-问题匹配鲁���性评测,自然语言处理、文本匹配
|
90 |
+
- 基于MindSpore AI框架实现零售商品识别,计算机视觉、图像分类
|
91 |
+
- 产品评论观点提取,自然语言处理、实体抽取
|
92 |
+
- 个贷违约预测,结构化数据挖掘、金融风控
|
93 |
+
- 剧本角色情感识别,自然语言处理、实体抽取
|
94 |
+
- 基于UEBA的用户上网异常行为分析,结构化数据挖掘、异常检测
|
95 |
+
- POI名称生成,计算机视觉、OCR
|
96 |
+
- 客服通话文本摘要提取,自然语言处理、文本摘要
|
97 |
+
- 系统认证风险预测,结构化数据挖掘、风险检测
|
98 |
+
- 泛在感知数据关联融合计算,结构化数据挖掘、相似度计算
|
99 |
+
- openLooKeng跨域数据分析性能提升,数据仓储SQL优化
|
100 |
+
- 大规模金融仿真图数据中金融交易环路查询的设计与性能优化,金融交易图谱挖掘
|
101 |
+
- 基于BERT的大模型容量挑战赛,深度学习模型优化
|
102 |
+
|
103 |
+
|
104 |
+
---
|
105 |
+
|
106 |
+
### 华为DIGIX2021:全球校园AI算法精英大赛
|
107 |
+
|
108 |
+
报名链接:https://developer.huawei.com/consumer/cn/activity/digixActivity/digixdetail/201621215957378831?ha_source=gb_sf&ha_sourceId=89000073
|
109 |
+
|
110 |
+
- 赛题1:基于多目标多视图的用户留存周期预测
|
111 |
+
- 赛题2:基于多模型迁移预训练文章质量判别
|
112 |
+
- 赛题3:基于多目标优化的视频推荐
|
113 |
+
- 赛题4:基于多模态多语言的搜索排序
|
114 |
+
- 赛题5:小样本菜单识别
|
115 |
+
|
116 |
+
比赛baseline和学习资料:https://github.com/datawhalechina/competition-baseline/tree/master/competition/DIGIX2021
|
117 |
+
|
118 |
+
---
|
119 |
+
|
120 |
+
### 科大讯飞AI开发者大赛2021
|
121 |
+
|
122 |
+
- [中文问题相似度挑战赛](http://challenge.xfyun.cn/topic/info?type=chinese-question-similarity&ch=dw-sq-1), [学习资料](https://github.com/datawhalechina/competition-baseline/blob/master/competition/%E7%A7%91%E5%A4%A7%E8%AE%AF%E9%A3%9EAI%E5%BC%80%E5%8F%91%E8%80%85%E5%A4%A7%E8%B5%9B2021/%E4%B8%AD%E6%96%87%E9%97%AE%E9%A2%98%E7%9B%B8%E4%BC%BC%E5%BA%A6%E6%8C%91%E6%88%98%E8%B5%9B/bert-nsp-xunfei.ipynb)
|
123 |
+
- [线下商店销量预测挑战赛](http://challenge.xfyun.cn/topic/info?type=offline-store-sales-forecast&ch=dw-sq-1), [学习资料](https://github.com/datawhalechina/competition-baseline/tree/master/competition/%E7%A7%91%E5%A4%A7%E8%AE%AF%E9%A3%9EAI%E5%BC%80%E5%8F%91%E8%80%85%E5%A4%A7%E8%B5%9B2021/%E7%A7%91%E5%A4%A7%E8%AE%AF%E9%A3%9E%E5%95%86%E5%BA%97%E9%94%80%E9%87%8F%E9%A2%84%E6%B5%8B)
|
124 |
+
- [电商图像检索挑战赛](http://challenge.xfyun.cn/topic/info?type=e-commerce-image-retrieval&ch=dw-sq-1), [学习资料](https://github.com/datawhalechina/competition-baseline/tree/master/competition/%E7%A7%91%E5%A4%A7%E8%AE%AF%E9%A3%9EAI%E5%BC%80%E5%8F%91%E8%80%85%E5%A4%A7%E8%B5%9B2021/%E7%94%B5%E5%95%86%E5%9B%BE%E5%83%8F%E6%A3%80%E7%B4%A2%E6%8C%91%E6%88%98%E8%B5%9B)
|
125 |
+
- [人脸情绪识别挑战赛](http://challenge.xfyun.cn/topic/info?type=facial-emotion-recognition&ch=dw-sq-1), [学习资料](https://github.com/datawhalechina/competition-baseline/tree/master/competition/%E7%A7%91%E5%A4%A7%E8%AE%AF%E9%A3%9EAI%E5%BC%80%E5%8F%91%E8%80%85%E5%A4%A7%E8%B5%9B2021/%E4%BA%BA%E8%84%B8%E6%83%85%E7%BB%AA%E8%AF%86%E5%88%AB%E6%8C%91%E6%88%98%E8%B5%9B)
|
126 |
+
- [学术论文分类挑战赛](http://challenge.xfyun.cn/topic/info?type=academic-paper-classification&ch=dw-sq-1), [学习资料](https://github.com/datawhalechina/competition-baseline/tree/master/competition/%E7%A7%91%E5%A4%A7%E8%AE%AF%E9%A3%9EAI%E5%BC%80%E5%8F%91%E8%80%85%E5%A4%A7%E8%B5%9B2021/%E5%AD%A6%E6%9C%AF%E8%AE%BA%E6%96%87%E5%88%86%E7%B1%BB%E6%8C%91%E6%88%98%E8%B5%9B)
|
127 |
+
- [车辆贷款违约预测挑战赛](http://challenge.xfyun.cn/topic/info?type=car-loan&ch=dw-sq-1), [学习资料](https://github.com/datawhalechina/competition-baseline/tree/master/competition/%E7%A7%91%E5%A4%A7%E8%AE%AF%E9%A3%9EAI%E5%BC%80%E5%8F%91%E8%80%85%E5%A4%A7%E8%B5%9B2021/%E8%BD%A6%E8%BE%86%E8%B4%B7%E6%AC%BE%E8%BF%9D%E7%BA%A6%E9%A2%84%E6%B5%8B%E6%8C%91%E6%88%98%E8%B5%9B)
|
128 |
+
- [广告图片素材分类算法挑战赛](http://challenge.xfyun.cn/topic/info?type=ad-2021&ch=dw-sq-1),[基础的分类思路](https://github.com/datawhalechina/competition-baseline/tree/master/competition/%E7%A7%91%E5%A4%A7%E8%AE%AF%E9%A3%9EAI%E5%BC%80%E5%8F%91%E8%80%85%E5%A4%A7%E8%B5%9B2021)
|
129 |
+
- [农作物生长情况识别挑战赛](http://challenge.xfyun.cn/topic/info?type=crop&ch=dw-sq-1), [keras](https://github.com/datawhalechina/competition-baseline/blob/master/competition/%E7%A7%91%E5%A4%A7%E8%AE%AF%E9%A3%9EAI%E5%BC%80%E5%8F%91%E8%80%85%E5%A4%A7%E8%B5%9B2021/%E4%B8%AD%E5%9B%BD%E5%86%9C%E4%B8%9A%E5%A4%A7%E5%AD%A6_%E5%86%9C%E4%BD%9C%E7%89%A9%E7%94%9F%E9%95%BF%E6%83%85%E5%86%B5%E8%AF%86%E5%88%AB%E6%8C%91%E6%88%98%E8%B5%9B.ipynb)
|
130 |
+
- [引导拍照挑战赛](http://challenge.xfyun.cn/topic/info?type=guide-photo&ch=dw-sq-1), [keras](https://github.com/datawhalechina/competition-baseline/blob/master/competition/%E7%A7%91%E5%A4%A7%E8%AE%AF%E9%A3%9EAI%E5%BC%80%E5%8F%91%E8%80%85%E5%A4%A7%E8%B5%9B2021/%E4%B8%AD%E5%9B%BD%E5%86%9C%E4%B8%9A%E5%A4%A7%E5%AD%A6_%E5%BC%95%E5%AF%BC%E6%8B%8D%E7%85%A7%E6%8C%91%E6%88%98%E8%B5%9B.ipynb)
|
131 |
+
- [脑部PETMR图像疾病预测挑战赛](http://challenge.xfyun.cn/topic/info?type=PET&ch=dw-sq-1), [keras](https://github.com/datawhalechina/competition-baseline/blob/master/competition/%E7%A7%91%E5%A4%A7%E8%AE%AF%E9%A3%9EAI%E5%BC%80%E5%8F%91%E8%80%85%E5%A4%A7%E8%B5%9B2021/%E5%AE%89%E5%BE%BD%E5%A4%A7%E5%AD%A6-%E8%84%91%E9%83%A8PETMR%E5%9B%BE%E5%83%8F%E7%96%BE%E7%97%85%E9%A2%84%E6%B5%8B%E6%8C%91%E6%88%98%E8%B5%9B.ipynb)
|
132 |
+
- [智能硬件语音控制的时频图分类挑战赛](http://challenge.xfyun.cn/topic/info?type=time-frequency&ch=dw-sq-1), [pytorch](https://github.com/datawhalechina/competition-baseline/blob/master/competition/%E7%A7%91%E5%A4%A7%E8%AE%AF%E9%A3%9EAI%E5%BC%80%E5%8F%91%E8%80%85%E5%A4%A7%E8%B5%9B2021/%E6%99%BA%E8%83%BD%E7%A1%AC%E4%BB%B6%E8%AF%AD%E9%9F%B3%E6%8E%A7%E5%88%B6%E7%9A%84%E6%97%B6%E9%A2%91%E5%9B%BE%E5%88%86%E7%B1%BB%E6%8C%91%E6%88%98%E8%B5%9B.ipynb)
|
133 |
+
- [基于用户画像的商品推荐挑战赛](http://challenge.xfyun.cn/topic/info?type=user-portrait&ch=dw-sq-1), [LSTM-0.6786](https://mp.weixin.qq.com/s/KDH_klH_74726S8gX4FEyQ)
|
134 |
+
- [蛋白质结构预测挑战赛算法](http://challenge.xfyun.cn/topic/info?type=protein&ch=dw-sq-1), [CNN-0.21](https://mp.weixin.qq.com/s/0oGWD0O5ARokxrAiW2T9uQ), [XGB基础代码](https://github.com/datawhalechina/competition-baseline/blob/master/competition/%E7%A7%91%E5%A4%A7%E8%AE%AF%E9%A3%9EAI%E5%BC%80%E5%8F%91%E8%80%85%E5%A4%A7%E8%B5%9B2021/%E4%B8%8A%E6%B5%B7%E6%B5%B7%E4%BA%8B%E5%A4%A7%E5%AD%A6_%E8%9B%8B%E7%99%BD%E8%B4%A8%E7%BB%93%E6%9E%84%E9%A2%84%E6%B5%8B%E8%B5%9B.ipynb)
|
135 |
+
- [环境空气质量评价挑战赛](http://challenge.xfyun.cn/topic/info?type=air-quality&ch=dw-sq-1), [LR-0.04385](https://mp.weixin.qq.com/s/9gZJ6ScwW1urRMc-6p6n5A)
|
136 |
+
- [猪只盘点挑战赛](http://challenge.xfyun.cn/topic/info?type=pig-check&ch=dw-sq-1), [预训练模型](https://github.com/datawhalechina/competition-baseline/blob/master/competition/%E7%A7%91%E5%A4%A7%E8%AE%AF%E9%A3%9EAI%E5%BC%80%E5%8F%91%E8%80%85%E5%A4%A7%E8%B5%9B2021/%E7%A7%91%E5%A4%A7%E8%AE%AF%E9%A3%9E%E8%82%A1%E4%BB%BD%E6%9C%89%E9%99%90%E5%85%AC%E5%8F%B8_%E7%8C%AA%E5%8F%AA%E7%9B%98%E7%82%B9%E6%8C%91%E6%88%98%E8%B5%9B.ipynb)
|
137 |
+
- [新冠肺炎声音诊断挑战赛](http://challenge.xfyun.cn/topic/info?type=covid-19&ch=dw-sq-1),[baseline 0.53532 Top20](https://github.com/zfs1998/data-science/blob/main/IFLYTEK/%E4%B8%AD%E5%9B%BD%E7%A7%91%E5%AD%A6%E6%8A%80%E6%9C%AF%E5%A4%A7%E5%AD%A6_%E6%96%B0%E5%86%A0%E8%82%BA%E7%82%8E%E5%A3%B0%E9%9F%B3%E8%AF%8A%E6%96%AD%E6%8C%91%E6%88%98%E8%B5%9B.ipynb)
|
138 |
+
|
139 |
+
---
|
140 |
+
|
141 |
+
### [腾讯广告算法大赛](https://algo.qq.com/)
|
142 |
+
|
143 |
+
#### 2021年度腾讯赛
|
144 |
+
|
145 |
+
本届从广告应用场景痛点出发,开设“视频广告秒级语义解析”和“多模态视频广告标签”两大赛道,兼具算法挑战性和商业应用价值。
|
146 |
+
|
147 |
+
- [TI-ONE 产品使用教程](https://cloud.tencent.com/developer/article/1807916)
|
148 |
+
- [如何使用 Notebook 功能完成赛事训练](https://cloud.tencent.com/developer/article/1807942?from=10680)
|
149 |
+
- [腾讯广告算法大赛参赛手册](https://algo-1256087447.cos.ap-nanjing.myqcloud.com/admin/20210430/cf48d04caf878b9d2773fda0e60ba8a8.pdf)
|
150 |
+
- [腾讯广告算法大赛FAQ](
|
151 |
+
https://docs.qq.com/doc/DV1hFUGpMV1l3eVdV)
|
152 |
+
|
153 |
+
|
154 |
+
#### 2020年度腾讯赛
|
155 |
+
|
156 |
+
本届以用户在广告系统中的交互行为作为输入来预测用户的人口统计学属性。
|
157 |
+
|
158 |
+
- [冠军分享](https://mp.weixin.qq.com/s/-lizDyP2y357plcG1M64TA),[开源代码](https://github.com/guoday/Tencent2020_Rank1st
|
159 |
+
)
|
160 |
+
- [亚军分享](https://mp.weixin.qq.com/s/UWt4hZitX9bW1Y_RNyCJCg)
|
161 |
+
- [季军分享](https://mp.weixin.qq.com/s/rkhwLsCKTIDzUkjVIEj3LQ)
|
162 |
+
- [第5名分享](https://zhuanlan.zhihu.com/p/170603281),[开源代码](https://github.com/zhangqibot/Tencent2020_Top5)
|
163 |
+
- 第11名:[开源代码1](https://github.com/wujiekd/2020-Tencent-advertising-algorithm-contest-rank11), [开源代码2](https://github.com/llllllyu/Tencent2020_Rank11)
|
164 |
+
- 第12名:[开源代码](https://github.com/LogicJake/Tencent_Ads_Algo_2020_TOP12)
|
165 |
+
- 第19名:[开源代码](https://github.com/PerpetualSmile/2020-Tencent-Advertisement-Algorithm-Competition-Rank19)
|
166 |
+
|
167 |
+
---
|
168 |
+
|
169 |
+
### [2021世界人工智能创新大赛](http://ailab.aiwin.org.cn/)
|
170 |
+
- [互联网舆情企业风险事件的识别和预警](https://github.com/datawhalechina/competition-baseline/tree/master/competition/AIWIN2021), NLP类型比赛
|
171 |
+
- [保险文本视觉认知问答竞赛](https://github.com/datawhalechina/competition-baseline/tree/master/competition/AIWIN2021), CV/NLP,多模态类型比赛
|
172 |
+
|
173 |
+
---
|
174 |
+
|
175 |
+
### [CCF BDCI2020大数据与计算智能大赛](https://www.datafountain.cn/special/BDCI2020)
|
176 |
+
- 通用音频分类, [LGB](https://github.com/zjuzpw/baseline/blob/CCF2020BDCI/baseline_lgb.ipynb), [CNN, 0.9+](https://blog.csdn.net/wherewegogo/article/details/110369729)
|
177 |
+
- 遥感影像地块分割, [U-Net](https://aistudio.baidu.com/aistudio/projectdetail/1090790)
|
178 |
+
- 房产行业聊天问答匹配, [Bert](https://github.com/syzong/2020_ccf_qa_match), [RoBERTa](https://github.com/LogicJake/competition_baselines/tree/master/competitions/property_chat_pair)
|
179 |
+
- 小学数学应用题自动解题, [规则���路](https://discussion.datafountain.cn/questions/3169?new=0)
|
180 |
+
- 路况状态时空预测, [OTTO Lab](https://github.com/juzstu/ccf2020_didi), [异度侵入](https://mp.weixin.qq.com/s/1vJDOInUOdBgXtLdVcpsEA)
|
181 |
+
- 企业非法集资风险预测, [第一次打比赛](https://github.com/LogicJake/competition_baselines/tree/master/competitions/fund_raising_risk_prediction), [DLLXW](https://github.com/DLLXW/data-science-competition/tree/main/datafountain), [阿水](https://github.com/datawhalechina/competition-baseline/tree/master/competition/DataFountain-%E4%BC%81%E4%B8%9A%E9%9D%9E%E6%B3%95%E9%9B%86%E8%B5%84%E9%A3%8E%E9%99%A9%E9%A2%84%E6%B5%8B)
|
182 |
+
- 大数据时代的Serverless工作负载预测, [第一次打比赛(A榜0.208)](https://github.com/LogicJake/competition_baselines/tree/master/competitions/serverless_load_prediction), [siguo(A榜0.211)](https://blog.csdn.net/qq_48081601/article/details/109338443), [CNN-LSTM](https://zhuanlan.zhihu.com/p/301092469),[鱼佬(0.285)](https://mp.weixin.qq.com/s/Ovb1pic2nleQhTObIaj2Ww), [siliconx(0.311)](https://github.com/siliconx/serverless)
|
183 |
+
- 重点区域人群密度预测, [第1名方案](https://github.com/agave233/2020-CCF-Crowd-Flow-Prediction)
|
184 |
+
|
185 |
+
---
|
186 |
+
|
187 |
+
### [第四届工业大数据创新竞赛——算法赛道](http://www.industrial-bigdata.com/Challenge/title?competitionId=GKLEW707XP2O58KZNLO4UPYKCOIEQONH)
|
188 |
+
- 学习手册:https://coggle.club/learn/industrial-bigdata-4th/
|
189 |
+
- [注塑成型工艺的虚拟量测和调机优化](https://github.com/datawhalechina/competition-baseline/blob/master/competition/%E7%AC%AC%E5%9B%9B%E5%B1%8A%E5%B7%A5%E4%B8%9A%E5%A4%A7%E6%95%B0%E6%8D%AE%E5%88%9B%E6%96%B0%E7%AB%9E%E8%B5%9B%EF%BC%9A%E7%AE%97%E6%B3%95%E8%B5%9B%E9%81%93/%E6%B3%A8%E5%A1%91%E6%88%90%E5%9E%8B%E8%B5%9B%E9%81%93baseline.ipynb)
|
190 |
+
|
191 |
+
---
|
192 |
+
|
193 |
+
### [2020数字中国创新大赛大数据赛道](https://data.xm.gov.cn/opendata-competition/index.html#/)
|
194 |
+
- 入门注册手册:https://mp.weixin.qq.com/s/NurvUDyGwVC4sSwzEzDrwg
|
195 |
+
- 高德地图城市交通健康榜:https://report.amap.com/diagnosis/index.do
|
196 |
+
- 赛题1数据分析:[链接](https://github.com/datawhalechina/competition-baseline/tree/master/competition/2020DCIC-%E5%88%9B%E6%96%B0%E5%A4%A7%E8%B5%9B%E5%A4%A7%E6%95%B0%E6%8D%AE%E8%B5%9B%E9%81%93)
|
197 |
+
- 赛题2学习内容:[链接](https://coggle.club/learn/DCIC2020/), [录屏](https://www.bilibili.com/video/BV1tz4y1f7Wg/)
|
198 |
+
|
199 |
+
---
|
200 |
+
|
201 |
+
### [科大讯飞AI开发者大赛(2020年度)](http://challenge.xfyun.cn/)
|
202 |
+
|
203 |
+
- [脑PET图像分析和疾病预测挑战赛算法挑战大赛](https://github.com/datawhalechina/competition-baseline/tree/master/competition/%E7%A7%91%E5%A4%A7%E8%AE%AF%E9%A3%9EAI%E5%BC%80%E5%8F%91%E8%80%85%E5%A4%A7%E8%B5%9B-%E8%84%91PET%E5%9B%BE%E5%83%8F%E5%88%86%E6%9E%90%E5%92%8C%E7%96%BE%E7%97%85%E9%A2%84%E6%B5%8B%E6%8C%91%E6%88%98%E8%B5%9B%E7%AE%97%E6%B3%95%E6%8C%91%E6%88%98%E5%A4%A7%E8%B5%9B), CV类型比赛
|
204 |
+
- [温室温度预测挑战赛](https://github.com/datawhalechina/competition-baseline/tree/master/competition/%E7%A7%91%E5%A4%A7%E8%AE%AF%E9%A3%9EAI%E5%BC%80%E5%8F%91%E8%80%85%E5%A4%A7%E8%B5%9B-%E6%B8%A9%E5%AE%A4%E6%B8%A9%E5%BA%A6%E9%A2%84%E6%B5%8B%E6%8C%91%E6%88%98%E8%B5%9B), 结构化数据比赛
|
205 |
+
- [婴儿啼哭声识别挑战赛](https://github.com/datawhalechina/competition-baseline/tree/master/competition/%E7%A7%91%E5%A4%A7%E8%AE%AF%E9%A3%9EAI%E5%BC%80%E5%8F%91%E8%80%85%E5%A4%A7%E8%B5%9B-%E5%A9%B4%E5%84%BF%E5%95%BC%E5%93%AD%E5%A3%B0%E8%AF%86%E5%88%AB%E6%8C%91%E6%88%98%E8%B5%9B), 语音赛题比赛
|
206 |
+
- [事件抽取挑战赛](https://github.com/datawhalechina/competition-baseline/tree/master/competition/%E7%A7%91%E5%A4%A7%E8%AE%AF%E9%A3%9EAI%E5%BC%80%E5%8F%91%E8%80%85%E5%A4%A7%E8%B5%9B-%E4%BA%8B%E4%BB%B6%E6%8A%BD%E5%8F%96%E6%8C%91%E6%88%98), NLP类型比赛
|
207 |
+
|
208 |
+
---
|
209 |
+
|
210 |
+
### 结构化比赛
|
211 |
+
- [第三届 Apache Flink 极客挑战赛暨AAIG CUP](https://tianchi.aliyun.com/s/ea4fbcbaadab849b7389354501f38e2e), [TF2 baseline](https://gitee.com/coggle/tianchi-3rd-AAIG-CUP)
|
212 |
+
- [山东省第二届数据应用创新创业大赛-临沂分赛场-供水管网压力预测](http://data.sd.gov.cn/cmpt/cmptDetail.html?id=24), [ChallengeHub](https://github.com/China-ChallengeHub/ChallengeHub-Baselines/tree/main/shandong_shuiguan/code)
|
213 |
+
- [山东省第二届数据应用创新创业大赛-济南分赛场-健康医疗](http://data.sd.gov.cn/cmpt/cmptDetail.html?id=22), [ChallengeHub](https://github.com/China-ChallengeHub/ChallengeHub-Baselines/tree/main/%E5%B1%B1%E4%B8%9C%E5%81%A5%E5%BA%B7%E5%8C%BB%E7%96%97)
|
214 |
+
- [山东省第二届数据应用创新创业大赛-日照分赛场-公积金贷款逾期预测](http://data.sd.gov.cn/cmpt/cmptDetail.html?id=26), [ChallengeHub](https://github.com/China-ChallengeHub/ChallengeHub-Baselines/tree/main/shandong_gongjijin/code)
|
215 |
+
- [2020厦门国际银行数创金融杯建模大赛](https://www.dcjingsai.com/v2/cmptDetail.html?id=439&=76f6724e6fa9455a9b5ef44402c08653), [第一次打比赛](https://github.com/LogicJake/competition_baselines/tree/master/competitions/xiamen_international_bank_2020), [OTTO Lab](https://github.com/cXPromise/Datacasle_2020XM_Baseline), [0.46](https://github.com/BirderEric/XianmenBank)
|
216 |
+
- [2019厦门国际银行“数创金融杯”数据建模大赛](https://m.dcjingsai.com/cmptDetail.html?id=319), [yanqiangmiffy](https://github.com/yanqiangmiffy/Data-Finance-Cup), [shenxiangzhuang](https://github.com/shenxiangzhuang/Bank-Competition)
|
217 |
+
- [天池-零基础入门数据挖掘 - 二手车交易价格预测](https://tianchi.aliyun.com/competition/entrance/231784/introduction), [baseline链接](https://github.com/yangjiada/used_cars)
|
218 |
+
- [天池-2020数字中国创新大赛—算法赛:智慧海洋建设](https://github.com/datawhalechina/competition-baseline/tree/master/competition/Tianchi-2020%E6%95%B0%E5%AD%97%E4%B8%AD%E5%9B%BD%E5%88%9B%E6%96%B0%E5%A4%A7%E8%B5%9B%E2%80%94%E7%AE%97%E6%B3%95%E8%B5%9B%EF%BC%9A%E6%99%BA%E6%85%A7%E6%B5%B7%E6%B4%8B%E5%BB%BA%E8%AE%BE), 结构化数据比赛
|
219 |
+
- [DataFountain-乘用车细分市场销量预测](https://github.com/datawhalechina/competition-baseline/tree/master/competition/DataFountain-%E4%B9%98%E7%94%A8%E8%BD%A6%E7%BB%86%E5%88%86%E5%B8%82%E5%9C%BA%E9%94%80%E9%87%8F%E9%A2%84%E6%B5%8B), 结构化
|
220 |
+
数据比赛
|
221 |
+
- [DataFountain-离散制造过程中典型工件的质量符合率预测](https://github.com/datawhalechina/competition-baseline/tree/master/competition/DataFountain-%E7%A6%BB%E6%95%A3%E5%88%B6%E9%80%A0%E8%BF%87%E7%A8%8B%E4%B8%AD%E5%85%B8%E5%9E%8B%E5%B7%A5%E4%BB%B6%E7%9A%84%E8%B4%A8%E9%87%8F%E7%AC%A6%E5%90%88%E7%8E%87%E9%A2%84%E6%B5%8B), 结构化数据比赛
|
222 |
+
- [腾讯-2018腾讯广告算法大赛 Rank11](https://github.com/datawhalechina/competition-baseline/tree/master/competition/%E8%85%BE%E8%AE%AF-2018%E8%85%BE%E8%AE%AF%E5%B9%BF%E5%91%8A%E7%AE%97%E6%B3%95%E5%A4%A7%E8%B5%9B),结构化数据比赛
|
223 |
+
- [腾讯-2018腾讯广告算法大赛 冠军](https://github.com/datawhalechina/competition-baseline/tree/master/competition/%E8%85%BE%E8%AE%AF-2019%E8%85%BE%E8%AE%AF%E5%B9%BF%E5%91%8A%E7%AE%97%E6%B3%95%E5%A4%A7%E8%B5%9B),结构化数据比赛
|
224 |
+
- [天池-安泰杯跨境电商智能算法大赛](https://github.com/datawhalechina/competition-baseline/tree/master/competition/Tianchi-%E5%AE%89%E6%B3%B0%E6%9D%AF%E8%B7%A8%E5%A2%83%E7%94%B5%E5%95%86%E6%99%BA%E8%83%BD%E7%AE%97%E6%B3%95%E5%A4%A7%E8%B5%9B),结构化数据比赛,**冠军法国南部**分享
|
225 |
+
- [点石-Retention Rate of Baidu Hao Kan APP Users](https://github.com/datawhalechina/competition-baseline/tree/master/competition/%E7%82%B9%E7%9F%B3-Retention%20Rate%20of%20Baidu%20Hao%20Kan%20APP%20Users),结构化数据比赛
|
226 |
+
- [kaggle-two-sigma-connect-rental-listing-inquiries](https://github.com/datawhalechina/competition-baseline/tree/master/competition/kaggle-two-sigma-connect-rental-listing-inquiries),结构化数据比赛
|
227 |
+
- [kaggle-allstate-claims-severity](https://github.com/datawhalechina/competition-baseline/tree/master/competition/kaggle-allstate-claims-severity),结构化数据比赛
|
228 |
+
- [AI研习社-白葡萄酒品质预测](https://github.com/datawhalechina/competition-baseline/tree/master/competition/yanxishe-%E7%99%BD%E8%91%A1%E8%90%84%E9%85%92%E5%93%81%E8%B4%A8%E9%A2%84%E6%B5%8B),结构化数据比赛
|
229 |
+
- [AI研习社-肌肉活动电信号推测手势](https://github.com/datawhalechina/competition-baseline/tree/master/competition/yanxishe-%E8%82%8C%E8%82%89%E6%B4%BB%E5%8A%A8%E7%94%B5%E4%BF%A1%E5%8F%B7%E6%8E%A8%E6%B5%8B%E6%89%8B%E5%8A%BF),结构化数据比赛
|
230 |
+
|
231 |
+
---
|
232 |
+
|
233 |
+
### CV类型比赛
|
234 |
+
- [“英特尔创新大师杯”深度学习挑战赛 赛道1:通用场景OCR文本识别任务](https://tianchi.aliyun.com/competition/entrance/531902/introduction), OCR比赛, [baseline](https://gitee.com/coggle/tianchi-intel-PaddleOCR)
|
235 |
+
- [2021全国数字生态创新大赛-智能算法赛](https://tianchi.aliyun.com/competition/entrance/531860/introduction), 语义分割比赛, [34.5-Unet](https://tianchi.aliyun.com/notebook-ai/detail?postId=169396), [38.5-Unet++](https://github.com/DLLXW/data-science-competition/tree/main/%E5%A4%A9%E6%B1%A0/2021%E5%85%A8%E5%9B%BD%E6%95%B0%E5%AD%97%E7%94%9F%E6%80%81%E5%88%9B%E6%96%B0%E5%A4%A7%E8%B5%9B-%E9%AB%98%E5%88%86%E8%BE%A8%E7%8E%87%E9%81%A5%E6%84%9F%E5%BD%B1%E5%83%8F%E5%88%86%E5%89%B2)
|
236 |
+
- [DC竞赛-AI助疫·口罩佩戴检测大赛](https://github.com/datawhalechina/competition-baseline/tree/master/competition/DC%E7%AB%9E%E8%B5%9B-AI%E5%8A%A9%E7%96%AB%C2%B7%E5%8F%A3%E7%BD%A9%E4%BD%A9%E6%88%B4%E6%A3%80%E6%B5%8B%E5%A4%A7%E8%B5%9B), CV类型比赛
|
237 |
+
- [Kesci-中国华录杯人群密度检测](https://github.com/datawhalechina/competition-baseline/tree/master/competition/Kesci-%E4%B8%AD%E5%9B%BD%E5%8D%8E%E5%BD%95%E6%9D%AF%E4%BA%BA%E7%BE%A4%E5%AF%86%E5%BA%A6%E6%A3%80%E6%B5%8B), CV类型比赛
|
238 |
+
- [天池-心电人机智能大赛心电异常事件预测](https://github.com/datawhalechina/competition-baseline/tree/master/competition/Tianchi-%E5%BF%83%E7%94%B5%E4%BA%BA%E6%9C%BA%E6%99%BA%E8%83%BD%E5%A4%A7%E8%B5%9B%E5%BF%83%E7%94%B5%E5%BC%82%E5%B8%B8%E4%BA%8B%E4%BB%B6%E9%A2%84%E6%B5%8B), CV类型比赛
|
239 |
+
- [DataFountain-多人种人脸识别](https://github.com/datawhalechina/competition-baseline/tree/master/competition/DataFountain-%E5%A4%9A%E4%BA%BA%E7%A7%8D%E4%BA%BA%E8%84%B8%E8%AF%86%E5%88%AB), CV类型比赛
|
240 |
+
- [DataFountain-基于OCR的身份证要素提取](https://github.com/datawhalechina/competition-baseline/tree/master/competition/DataFountain-%E5%9F%BA%E4%BA%8EOCR%E7%9A%84%E8%BA%AB%E4%BB%BD%E8%AF%81%E8%A6%81%E7%B4%A0%E6%8F%90%E5%8F%96), CV类型比赛
|
241 |
+
- [DataFountain-视频版权检测算法](https://github.com/datawhalechina/competition-baseline/tree/master/competition/DataFountain-%E8%A7%86%E9%A2%91%E7%89%88%E6%9D%83%E6%A3%80%E6%B5%8B%E7%AE%97%E6%B3%95),CV类型比赛
|
242 |
+
- [kaggle-quickdraw-doodle-recognition](https://github.com/datawhalechina/competition-baseline/tree/master/competition/kaggle-quickdraw-doodle-recognition),CV类型比赛
|
243 |
+
- [TinyMind人民币面值&冠字号编码识别挑战赛](https://github.com/datawhalechina/competition-baseline/tree/master/competition/TinyMind%E4%BA%BA%E6%B0%91%E5%B8%81%E9%9D%A2%E5%80%BC%26%E5%86%A0%E5%AD%97%E5%8F%B7%E7%BC%96%E7%A0%81%E8%AF%86%E5%88%AB%E6%8C%91%E6%88%98%E8%B5%9B),CV类型比赛
|
244 |
+
- [AI研习社-胸腔X光肺炎检测](https://github.com/datawhalechina/competition-baseline/tree/master/competition/yanxishe-%E8%83%B8%E8%85%94X%E5%85%89%E8%82%BA%E7%82%8E%E6%A3%80%E6%B5%8B),CV类型比赛
|
245 |
+
- [AI研习社-肺炎X光病灶识别](https://github.com/datawhalechina/competition-baseline/tree/master/competition/yanxishe-%E8%82%BA%E7%82%8EX%E5%85%89%E7%97%85%E7%81%B6%E8%AF%86%E5%88%AB),CV类型比赛
|
246 |
+
- [AI研习社-人脸年龄识别](https://github.com/datawhalechina/competition-baseline/tree/master/competition/yanxishe-%E4%BA%BA%E8%84%B8%E5%B9%B4%E9%BE%84%E8%AF%86%E5%88%AB),CV类型比赛
|
247 |
+
- [AI研习社-美食识别挑战(1):豆腐VS土豆](https://github.com/datawhalechina/competition-baseline/tree/master/competition/yanxishe-%E7%BE%8E%E9%A3%9F%E8%AF%86%E5%88%AB%E6%8C%91%E6%88%98%EF%BC%881%EF%BC%89%EF%BC%9A%E8%B1%86%E8%85%90VS%E5%9C%9F%E8%B1%86),CV类型比赛
|
248 |
+
- [AI研习社-猫脸关键点检测](https://github.com/datawhalechina/competition-baseline/tree/master/competition/yanxishe-%E5%96%B5%E8%84%B8%E5%85%B3%E9%94%AE%E7%82%B9%E6%A3%80%E6%B5%8B),CV类型比赛
|
249 |
+
|
250 |
+
---
|
251 |
+
|
252 |
+
### NLP类型比赛
|
253 |
+
|
254 |
+
- [AI研习社-IMDB评论剧透检测](https://github.com/datawhalechina/competition-baseline/tree/master/competition/yanxishe-IMDB%E8%AF%84%E8%AE%BA%E5%89%A7%E9%80%8F%E6%A3%80%E6%B5%8B),NLP类型比赛
|
255 |
+
- [DataFountain-金融信息负面及主体判定](https://github.com/datawhalechina/competition-baseline/tree/master/competition/DataFountain-%E9%87%91%E8%9E%8D%E4%BF%A1%E6%81%AF%E8%B4%9F%E9%9D%A2%E5%8F%8A%E4%B8%BB%E4%BD%93%E5%88%A4%E5%AE%9A), NLP类型比赛
|
256 |
+
- [DataFountain-互联网金融新实体发现](https://github.com/datawhalechina/competition-baseline/tree/master/competition/DataFountain-%E4%BA%92%E8%81%94%E7%BD%91%E9%87%91%E8%9E%8D%E6%96%B0%E5%AE%9E%E4%BD%93%E5%8F%91%E7%8E%B0),NLP类型比赛
|
257 |
+
- [DataFountain-技术需求与技术成果项目之间关联度计算模型](https://github.com/datawhalechina/competition-baseline/tree/master/competition/DataFountain-%E6%8A%80%E6%9C%AF%E9%9C%80%E6%B1%82%E4%B8%8E%E6%8A%80%E6%9C%AF%E6%88%90%E6%9E%9C%E9%A1%B9%E7%9B%AE%E4%B9%8B%E9%97%B4%E5%85%B3%E8%81%94%E5%BA%A6%E8%AE%A1%E7%AE%97%E6%A8%A1%E5%9E%8B),NLP类型比赛
|
258 |
+
- [DataFountain-互联网新闻情感分析](https://github.com/datawhalechina/competition-baseline/tree/master/competition/DataFountain-%E4%BA%92%E8%81%94%E7%BD%91%E6%96%B0%E9%97%BB%E6%83%85%E6%84%9F%E5%88%86%E6%9E%90),NLP类型比赛
|
259 |
+
- [biendata-智源&计算所-互联网虚假新闻检测挑战赛](https://github.com/datawhalechina/competition-baseline/tree/master/competition/biendata-%E6%99%BA%E6%BA%90%26%E8%AE%A1%E7%AE%97%E6%89%80-%E4%BA%92%E8%81%94%E7%BD%91%E8%99%9A%E5%81%87%E6%96%B0%E9%97%BB%E6%A3%80%E6%B5%8B%E6%8C%91%E6%88%98%E8%B5%9B),NLP类型比赛
|
260 |
+
- [Tianchi-第三届阿里云安全算法挑战赛](https://github.com/datawhalechina/competition-baseline/tree/master/competition/Tianchi-%E7%AC%AC%E4%B8%89%E5%B1%8A%E9%98%BF%E9%87%8C%E4%BA%91%E5%AE%89%E5%85%A8%E7%AE%97%E6%B3%95%E6%8C%91%E6%88%98%E8%B5%9B),NLP类型比赛
|
261 |
+
|
262 |
+
---
|
263 |
+
|
264 |
+
### 其他类型
|
265 |
+
|
266 |
+
- [DataFountain-企业网络资产及安全事件分析与可视化](https://github.com/datawhalechina/competition-baseline/tree/master/competition/DataFountain-%E4%BC%81%E4%B8%9A%E7%BD%91%E7%BB%9C%E8%B5%84%E4%BA%A7%E5%8F%8A%E5%AE%89%E5%85%A8%E4%BA%8B%E4%BB%B6%E5%88%86%E6%9E%90%E4%B8%8E%E5%8F%AF%E8%A7%86%E5%8C%96)
|
267 |
+
- [DataFountain-三角形图计算算法设计及性能优化](https://github.com/datawhalechina/competition-baseline/tree/master/competition/DataFountain-%E4%B8%89%E8%A7%92%E5%BD%A2%E5%9B%BE%E8%AE%A1%E7%AE%97%E7%AE%97%E6%B3%95%E8%AE%BE%E8%AE%A1%E5%8F%8A%E6%80%A7%E8%83%BD%E4%BC%98%E5%8C%96), 计算优化
|
268 |
+
- [DataFountain-云计算时代的大数据查询分析优化](https://github.com/datawhalechina/competition-baseline/tree/master/competition/DataFountain-%E4%BA%91%E8%AE%A1%E7%AE%97%E6%97%B6%E4%BB%A3%E7%9A%84%E5%A4%A7%E6%95%B0%E6%8D%AE%E6%9F%A5%E8%AF%A2%E5%88%86%E6%9E%90%E4%BC%98%E5%8C%96), 查询优化
|
269 |
+
|
270 |
+
其他链接:
|
271 |
+
|
272 |
+
- [Smile整理的竞赛优胜者代码分享](https://github.com/Smilexuhc/Data-Competition-TopSolution)
|
273 |
+
- [chizhu开源的高校赛2019 文本点击预测](https://github.com/chizhu/BDC2019)
|
274 |
+
|
275 |
+
## 贡献者(按照贡献ID排序)
|
276 |
+
|
277 |
+
- [阿水](https://www.zhihu.com/people/finlayliu/)
|
278 |
+
- [DOTA](https://www.zhihu.com/people/yuconan/)
|
279 |
+
- [Rain](https://www.zhihu.com/people/kingdoms/activities)
|
280 |
+
- [鱼遇雨欲语与余](https://www.zhihu.com/people/wang-he-13-93/)
|
281 |
+
- [yphacker](https://github.com/yphacker)
|
282 |
+
|
283 |
+
## 协作规范
|
284 |
+
|
285 |
+
欢迎大家fork并贡献代码,但请大家遵守以下规范和建议:
|
286 |
+
|
287 |
+
1. 代码请按照比赛的形式进行整理,写明比赛的网址、数据类型和解题赛题;
|
288 |
+
|
289 |
+
2. 代码请注明运行的环境,以及机器最低配置,如:
|
290 |
+
- 操作系统:Linux,内存16G,硬盘无要求;
|
291 |
+
- Python环境:Python2/3
|
292 |
+
- Pytorch版本:0.4.0
|
293 |
+
|
294 |
+
3. baseline代码只能提供可运行的代码和思路,**请不要提供直接可以提交的结果文件;**
|
295 |
+
|
296 |
+
4. 代码提供者应对代码版权和共享权负责;
|
297 |
+
|
298 |
+
5. 如果发现Repo存在版权等相关问题,请邮件联系[email protected]
|
299 |
+
|
300 |
+
## 关注我们
|
301 |
+
|
302 |
+
<div align=center><img src="https://cdn.coggle.club/dw_qrcode.jpeg" width = "250" height = "270" alt="Datawhale是一个专注AI领域的开源组织,以“for the learner,和学习者一起成长”为愿景,构建对学习者最有价值的开源学习社区。关注我们,一起学习成长。"></div>
|
303 |
+
|
304 |
+
## LICENSE
|
305 |
+
|
306 |
+
[GNU General Public License v3.0](https://github.com/datawhalechina/competition-baseline/blob/master/LICENSE)
|
307 |
+
|
308 |
+
## Star History
|
309 |
+
|
310 |
+
[![Star History Chart](https://api.star-history.com/svg?repos=datawhalechina/competition-baseline&type=Date)](https://star-history.com/#datawhalechina/competition-baseline&Date)
|
311 |
+
|
database/readme_db/d2l-ai-solutions-manual/README.md
ADDED
@@ -0,0 +1,139 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# 动手学深度学习习题解答
|
2 |
+
  李沐老师的[《动手学深度学习》](https://zh-v2.d2l.ai/index.html#)是入门深度学习的经典书籍,这本书基于深度学习框架来介绍深度学习,书中代码可以做到“所学即所用”。对于一般的初学者来说想要把书中课后习题部分独立解答还是比较困难。本项目对《动手学深度学习》习题部分进行解答,作为该书的习题手册,帮助初学者快速理解书中内容。
|
3 |
+
|
4 |
+
## 使用说明
|
5 |
+
  动手学深度学习习题解答,主要完成了该书的所有习题,并提供代码和运行之后的截图,里面的内容是以深度学习的内容为前置知识,该习题解答的最佳使用方法是以李沐老师的《动手学深度学习》为主线,并尝试完成课后习题,如果遇到不会的,再来查阅习题解答。
|
6 |
+
  如果觉得解答不详细,可以[点击这里](https://github.com/datawhalechina/d2l-ai-solutions-manual/issues)提交你希望补充推导或者习题编号,我们看到后会尽快进行补充。
|
7 |
+
|
8 |
+
### 在线阅读地址
|
9 |
+
在线阅读地址:https://datawhalechina.github.io/d2l-ai-solutions-manual
|
10 |
+
|
11 |
+
## 选用的《动手学深度学习》版本
|
12 |
+
|
13 |
+
<div align=center>
|
14 |
+
<img src="images/book.png?raw=true" width="336" height= "500">
|
15 |
+
</div>
|
16 |
+
|
17 |
+
> 书名:动手学深度学习(PyTorch版)
|
18 |
+
> 著者:阿斯顿·张、[美]扎卡里 C. 立顿、李沐、[德]亚历山大·J.斯莫拉
|
19 |
+
> 译者:何孝霆、瑞潮儿·胡
|
20 |
+
> 出版社:人民邮电出版社
|
21 |
+
> 版次:2023年2月第1版
|
22 |
+
|
23 |
+
## Notebook运行环境配置
|
24 |
+
|
25 |
+
1. 克隆项目请使用如下命令(只克隆最新的 commit ):
|
26 |
+
|
27 |
+
```shell
|
28 |
+
git clone https://github.com/datawhalechina/d2l-ai-solutions-manual.git --depth 1
|
29 |
+
```
|
30 |
+
|
31 |
+
2. Python版本
|
32 |
+
请使用python3.10.X,如使用其他版本,requirements.txt中所列的依赖包可能不兼容。
|
33 |
+
|
34 |
+
3. 安装相关的依赖包
|
35 |
+
|
36 |
+
|
37 |
+
```shell
|
38 |
+
pip install -r requirements.txt
|
39 |
+
```
|
40 |
+
|
41 |
+
4. 安装PyTorch
|
42 |
+
|
43 |
+
访问[PyTorch官网](https://pytorch.org/get-started/locally/),选择合适的版本安装PyTorch,有条件的小伙伴可以下载GPU版本
|
44 |
+
```shell
|
45 |
+
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
|
46 |
+
```
|
47 |
+
|
48 |
+
5. 安装d2l
|
49 |
+
```shell
|
50 |
+
pip install d2l
|
51 |
+
```
|
52 |
+
|
53 |
+
6. docsify框架运行
|
54 |
+
```shell
|
55 |
+
docsify serve ./docs
|
56 |
+
```
|
57 |
+
|
58 |
+
## 协作规范
|
59 |
+
|
60 |
+
1. 由于习题解答中需要有程序和执行结果,采用jupyter notebook的格式进行编写(文件路径:notebooks),然后将其导出成markdown格式,再覆盖到docs对应的章节下。
|
61 |
+
2. 可按照Notebook运行环境配置,配置相关的运行环境。
|
62 |
+
3. 习题解答编写中,需要尽量使用初学者(有高数基础)能理解的数学概念,如果涉及公式定理的推导和证明,可附上参考链接。
|
63 |
+
4. 当前进度
|
64 |
+
|
65 |
+
<div align=center>
|
66 |
+
|
67 |
+
| 章节号 | 标题 | 进度 | 负责人 | 审核人 |
|
68 |
+
| :---: | :----------------------: | :----: | :----: | :----: |
|
69 |
+
| 2 | 预备知识 | 待审核 | 毛瑞盈、陈可为、胡锐锋 | |
|
70 |
+
| 3 | 线性神经网络 | 待审核 | 毛瑞盈、陈可为、胡锐锋 | |
|
71 |
+
| 4 | 多层感知机 | 待审核 | 毛瑞盈、陈可为 | |
|
72 |
+
| 5 | 深度学习计算 | 待审核 | 宋志学、韩颐堃 | |
|
73 |
+
| 6 | 卷积神经网络 | 待审核 | 宋志学、韩颐堃 | |
|
74 |
+
| 7 | 现代卷积神经网络 | 待审核 | 宋志学、韩颐堃 | |
|
75 |
+
| 8 | 循环神经网络 | 待审核 | 王振凯 | |
|
76 |
+
| 9 | 现代循环神经网络 | 待审核 | 王振凯 | |
|
77 |
+
| 10 | 注意力机制 | 待审核 | 徐韵婉、崔腾松 | |
|
78 |
+
| 11 | 优化算法 | 待审核 | 张银晗、邹雨衡 | |
|
79 |
+
| 12 | 计算性能 | 待审核 | 邹雨衡 | |
|
80 |
+
| 13 | 计算机视觉 | 待审核 | 刘旭、曾莹 | |
|
81 |
+
| 14 | 自然语言处理:预训练 | 待审核 | 肖鸿儒 | |
|
82 |
+
| 15 | 自然语言处理:应用 | 待审核 | 张友东、张凯旋 | |
|
83 |
+
|
84 |
+
</div>
|
85 |
+
|
86 |
+
## 项目结构
|
87 |
+
<pre>
|
88 |
+
codes----------------------------------------------习题代码
|
89 |
+
docs-----------------------------------------------习题解答
|
90 |
+
notebook-------------------------------------------习题解答JupyterNotebook格式
|
91 |
+
requirements.txt-----------------------------------运行环境依赖包
|
92 |
+
</pre>
|
93 |
+
## 致谢
|
94 |
+
|
95 |
+
**核心贡献者**
|
96 |
+
|
97 |
+
- [宋志学-项目负责人](https://github.com/KMnO4-zx)(Datawhale成员-河南理工大学)
|
98 |
+
- [胡锐锋-项目发起人](https://github.com/Relph1119)(Datawhale成员-华东交通大学-系统架构设计师)
|
99 |
+
- [韩颐堃](https://github.com/YikunHan42)(内容创作者-Datawhale成员)
|
100 |
+
- [毛瑞盈](https://github.com/catcooc)(内容创作者)
|
101 |
+
- [陈可为](https://github.com/Ethan-Chen-plus)(内容创作者-Datawhale成员)
|
102 |
+
- [王振凯](https://github.com/Rookie-Kai)(内容创作者-Datawhale成员)
|
103 |
+
- [崔腾松](https://github.com/2951121599)(Datawhale成员-whale量化开源项目负责人)
|
104 |
+
- [徐韵婉](https://github.com/xyw1)(内容创作者-Datawhale成员)
|
105 |
+
- [张银晗](https://github.com/YinHan-Zhang)(内容创作者-Datawhale成员)
|
106 |
+
- [邹雨衡](https://github.com/logan-zou)(Datawhale成员-对外经济贸易大学研究生)
|
107 |
+
- [刘旭](https://github.com/liuxu-manifold)(内容创作者-Datawhale成员-深圳大学)
|
108 |
+
- [曾莹](https://github.com/zengying321)(内容创作者-深圳大学)
|
109 |
+
- [肖鸿儒](https://github.com/Hongru0306)(内容创作者-同济大学)
|
110 |
+
- [张友东](https://github.com/AXYZdong)(内容创作者-Datawhale成员)
|
111 |
+
- [张凯旋](https://github.com/zarjun)(内容创作者-Datawhale成员-上海科技大学)
|
112 |
+
|
113 |
+
**其他**
|
114 |
+
- 特别感谢[@Sm1les](https://github.com/Sm1les)对本项目的帮助与支持
|
115 |
+
- 如果有任何想法可以联系我们 DataWhale 也欢迎大家多多提出 issue
|
116 |
+
- 特别感谢以下为教程做出贡献的同学!
|
117 |
+
|
118 |
+
<a href="https://github.com/datawhalechina/d2l-ai-solutions-manual/graphs/contributors">
|
119 |
+
<img src="https://contrib.rocks/image?repo=datawhalechina/d2l-ai-solutions-manual" />
|
120 |
+
</a>
|
121 |
+
|
122 |
+
## 参考文献
|
123 |
+
- [动手学深度学习-中文版](https://zh.d2l.ai/)
|
124 |
+
- [动手学深度学习-英文版](https://d2l.ai/)
|
125 |
+
|
126 |
+
## Star History
|
127 |
+
|
128 |
+
![Star History Chart](https://api.star-history.com/svg?repos=datawhalechina/d2l-ai-solutions-manual&type=Date)
|
129 |
+
|
130 |
+
## 关注我们
|
131 |
+
|
132 |
+
<div align=center>
|
133 |
+
<p>扫描下方二维码关注公众号:Datawhale</p>
|
134 |
+
<img src="images/qrcode.jpeg" width = "180" height = "180">
|
135 |
+
</div>
|
136 |
+
  Datawhale,一个专注于AI领域的学习圈子。初衷是for the learner,和学习者一起成长。目前加入学习社群的人数已经数千人,组织了机器学习,深度学习,数据分析,数据挖掘,爬虫,编程,统计学,Mysql,数据竞赛等多个领域的内容学习,微信搜索公众号Datawhale可以加入我们。
|
137 |
+
|
138 |
+
## LICENSE
|
139 |
+
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="知识共享许可协议" style="border-width:0" src="https://img.shields.io/badge/license-CC%20BY--NC--SA%204.0-lightgrey" /></a><br />本作品采用<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议</a>进行许可。
|
database/readme_db/daily-interview/README.md
ADDED
@@ -0,0 +1,41 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Daily Interview
|
2 |
+
|
3 |
+
## 背景
|
4 |
+
|
5 |
+
牛客网,知乎等众多网站上包含了数以百万计的面经,但往往大而散,面试者在准备面试时候去翻阅不但浪费时间,翻阅材料越多,越觉得自己很多知识点都没有掌握,造成心理上极大的压力,导致面试中不能发挥正常水平甚至面试失败。
|
6 |
+
其实,每一位求职者都应该有自己的一份面试笔记,记录笔试中常涉及到的知识点和项目中常被问到的问题。每次面试之前看一遍,做到举一反三,融会贯通,熟捻于心,方能在每次面试中汲取经验,最后从容应对。我个人就有自己的面试笔记,每次面试之前都会翻一遍,边看边想,但求好运。
|
7 |
+
|
8 |
+
## 宗旨
|
9 |
+
不需要大而全,涵盖所有内容,因为知识在不断更新迭代,我们也做不到涵盖所有。
|
10 |
+
不提供查漏补缺,因为每个人的短板不尽相同,需要面试者根据自己知识体系,多加思考,自己完善。
|
11 |
+
这是一份每一个面试者面试之前必看一遍的小面经。面试之前的半天时间,温故而知新。
|
12 |
+
|
13 |
+
## 内容
|
14 |
+
|
15 |
+
<div align=center>
|
16 |
+
<img src="https://tva1.sinaimg.cn/large/008i3skNgy1gq44djbyncj30u018ygps.jpg" width="400px">
|
17 |
+
</div>
|
18 |
+
|
19 |
+
|
20 |
+
## 使用指南
|
21 |
+
|
22 |
+
1. 目前大部分成员是做AI算法,所以主要精力在AI算法一块。若有对开发感兴趣的人员参与整理,十分欢迎。
|
23 |
+
|
24 |
+
2. 数据结构与算法本来属于计算机基础一部分,但是因为不管面试算法岗还是开发岗,都会问到,所以单独提出来。
|
25 |
+
|
26 |
+
3. 算法岗:重点是AI算法、数据结构与算法;了解数学、计算机基础。
|
27 |
+
|
28 |
+
开发岗:重点是开发、数据结构与算法、计算机基础。
|
29 |
+
|
30 |
+
以面试岗位为梳理主线,整理面试之前必看的面试题目,给出高频的面试知识点和面试题。
|
31 |
+
|
32 |
+
|
33 |
+
|
34 |
+
## 关注我们
|
35 |
+
<div align=center>
|
36 |
+
<p>扫描下方二维码关注公众号:Datawhale</p>
|
37 |
+
<img src="https://raw.githubusercontent.com/datawhalechina/pumpkin-book/master/res/qrcode.jpeg" width = "180" height = "180">
|
38 |
+
</div>
|
39 |
+
|
40 |
+
## LICENSE
|
41 |
+
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="知识共享许可协议" style="border-width:0" src="https://img.shields.io/badge/license-CC%20BY--NC--SA%204.0-lightgrey" /></a><br />本作品采用<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议</a>进行许可。
|
database/readme_db/datawhale-homepage/README.md
ADDED
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# datawhale 官网项目
|
2 |
+
|
3 |
+
## 一、技术选型
|
4 |
+
|
5 |
+
- 编程语言:typescript
|
6 |
+
- 后端框架:express
|
7 |
+
- 部署工具:pm2
|
8 |
+
|
9 |
+
## 二、目录结构
|
10 |
+
|
11 |
+
| 文件目录 | 说明 |
|
12 |
+
| ---------------- | ---------- |
|
13 |
+
| ./README.md | 说明文档 |
|
14 |
+
| ./package | 源代码 |
|
15 |
+
| ./package/client | 前端源代码 |
|
16 |
+
| ./package/server | 后端源代码 |
|
17 |
+
|
18 |
+
## 三、开发指南
|
19 |
+
|
20 |
+
执行`bootstrap`命令安装 pnpm 和 pm2(如果你没有这两个东西的话)
|
21 |
+
使用`pnpm install`命令安装依赖
|
22 |
+
使用`dev:all`命令进行开发,访问`localhost:8081`即可看到网站
|
23 |
+
使用`build:all`命令进行打包
|
24 |
+
使用`format`命令格式化代码
|
25 |
+
|
26 |
+
## 四、部署指南
|
27 |
+
|
28 |
+
执行`bootstrap`命令安装 pnpm 和 pm2(如果你没有这两个东西的话)
|
29 |
+
使用`start`命令启动服务
|
database/readme_db/design-and-analysis-of-algorithm/README.md
ADDED
@@ -0,0 +1,75 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# design-and-analysis-of-algorithm
|
2 |
+
### 项目简介
|
3 |
+
|
4 |
+
书籍《算法设计与分析基础(第3版)》以一种连贯、独特的思路讲解了各类经典算法模型,具有较为新颖的论述风格,源于经典又高于经典。本项目基于该书籍,对书籍的概念以笔记的形式进行记录和解读,重点对部分课后习题进行解答,力求在引导对基础算法知识理解的同时,增强读者对算法设计过程的思考和延申。
|
5 |
+
|
6 |
+
<a href = "https://img.shields.io/badge/Document-Ver1.0.0-blue.svg"></a>
|
7 |
+
|
8 |
+
### 立项理由
|
9 |
+
|
10 |
+
- 不同于以往按照排序、查找、图等分类方式,而是从算法设计技术角度将属于同一种设计策略的方法分为一类,强调解决问题的思路而非问题归类。
|
11 |
+
- 选取每种解决思路中最经典的求解例子进行分析和解读,从而引导读者对设计思想进一步理解。
|
12 |
+
- 注重对课后习题的解答,来源于课本又高于课本,从而发散算法设计的思考。
|
13 |
+
|
14 |
+
### 项目受众
|
15 |
+
|
16 |
+
主要面向对算法设计与分析基础知识感兴趣的初学者,同时也适用于读者以一种新的角度回顾相关理论知识。
|
17 |
+
|
18 |
+
### 项目亮点
|
19 |
+
|
20 |
+
不同于高校的经典计算机算法教材,该书籍提出一种全新的算法分类方式,新分类法以减治、变治、时空权衡、迭代优化等方式对算法设计思路进行分类,是一种较为新颖的分析方式,能够较为自然的符合程序设计人员的思考逻辑,加深对算法设计过程的理解。
|
21 |
+
|
22 |
+
|
23 |
+
|
24 |
+
### 项目规划
|
25 |
+
|
26 |
+
|
27 |
+
1.目录(如有多级至少精确到二级)
|
28 |
+
|
29 |
+
├─docs-----------------------------------------------------------算法设计与分析基础(第三版)
|
30 |
+
|
31 |
+
│ ├─ch01--------------------------------------------------------第1章 绪论
|
32 |
+
|
33 |
+
│ ├─ch02--------------------------------------------------------第2章 算法效率分析基础
|
34 |
+
|
35 |
+
│ ├─ch03--------------------------------------------------------第3章 蛮力法
|
36 |
+
|
37 |
+
│ │ ├─ch3-1.md------------------习题3.1选择排序与冒泡排序
|
38 |
+
|
39 |
+
│ │ ├─ch3-2.md------------------习题3.2 顺序查找和蛮力字符串匹配
|
40 |
+
|
41 |
+
│ │ ├─ch3-3.md------------------习题3.3 最近对和凸包问题的蛮力算法
|
42 |
+
|
43 |
+
│ │ ├─ch3-4.md------------------习题3.4 穷举查找
|
44 |
+
|
45 |
+
│ │ └─ch3-5.md------------------习题3.5 深度优先查找与广度优先查找
|
46 |
+
|
47 |
+
│ ├─ch05--------------------------------------------------------第5章 分治法
|
48 |
+
|
49 |
+
│ ├─ch06--------------------------------------------------------第6章 变治法
|
50 |
+
|
51 |
+
│ ├─ch08--------------------------------------------------------第8章 动态规划
|
52 |
+
|
53 |
+
│ ├─ch09--------------------------------------------------------第9章 贪婪技术
|
54 |
+
|
55 |
+
│ └─ch10--------------------------------------------------------第10章 迭代改进
|
56 |
+
|
57 |
+
└─README.md---------------------------------------------------项目说明文档
|
58 |
+
|
59 |
+
2.各章节负责人
|
60 |
+
1. 绪论(钱杰-常州工学院)
|
61 |
+
2. 算法效率分析基础(金思远-香港科技大学)
|
62 |
+
3. 蛮力法(曾而康-中国科学院大学)
|
63 |
+
5. 分治法(顾洁帆-同济大学)
|
64 |
+
6. 变治法(胡泽航-东北大学)
|
65 |
+
8. 动态规划(周台春-中国科学院大学)
|
66 |
+
9. 贪婪技术(赵玉炜-中国科学院大学)
|
67 |
+
10. 迭代改进(尹晓丹-中国科学院大学)
|
68 |
+
|
69 |
+
3.预估完成日期
|
70 |
+
|
71 |
+
1. 09月10日-10月07日 完成初稿内容编写
|
72 |
+
2. 10月07日-10月15日 文档内容提交与合并
|
73 |
+
3. 10月16日-10月20日 优化与完善:对各个章节的内容、代码进行整理
|
74 |
+
|
75 |
+
|
database/readme_db/dive-into-cv-pytorch/README.md
ADDED
@@ -0,0 +1,167 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
|
2 |
+
<div align=center>
|
3 |
+
<img src="https://raw.githubusercontent.com/datawhalechina/dive-into-cv-pytorch/master/markdown_imgs/whale_pytorch.jpg" width="250">
|
4 |
+
</div>
|
5 |
+
|
6 |
+
# Dive-into-CV-PyTorch
|
7 |
+
|
8 |
+
本项目《动手学CV-Pytorch版》是Datawhale:whale:CV小组的一个重点项目,我们旨在构建一个以Pytorch为框架,强调动手实战的计算机视觉教程项目,帮助大家更好的学习。
|
9 |
+
|
10 |
+
项目大体上会按照计算机视觉的不同领域和应用场景进行章节划分,循序渐进,带领大家走进CV的世界,以动手实战的方式,从入门到进阶。
|
11 |
+
|
12 |
+
目前已经完成的内容包括:`预备知识`、`图像分类入门`、`目标检测入门`、`生成式对抗网络入门`、`CV中的Transformer`四个章节,后续的章节敬请期待。相信随着项目的推进,你我将互相见证彼此的进步。
|
13 |
+
|
14 |
+
## 食用方法
|
15 |
+
|
16 |
+
:whale: 推荐使用 [**动手学CV-PyTorch 在线阅读**](https://datawhalechina.github.io/dive-into-cv-pytorch) 进行学习
|
17 |
+
|
18 |
+
有配套代码的章节,可以在项目`code`目录的相应章节目录下面找到。
|
19 |
+
|
20 |
+
以下是目录与代码更新进度
|
21 |
+
|
22 |
+
## 动手学CV-Pytorch 目录
|
23 |
+
|
24 |
+
* 第一章: 预备知识
|
25 |
+
- [x] [1.1 深度学习环境配置](https://datawhalechina.github.io/dive-into-cv-pytorch/#/chapter01_preliminary_knowledge/1.1_environment_install/README.md)
|
26 |
+
- [x] [1.2 Pytorch基础使用介绍](https://datawhalechina.github.io/dive-into-cv-pytorch/#/chapter01_preliminary_knowledge/1.2_pytorch_basic_usage_introduction/README.md)
|
27 |
+
- [x] [1.3 自动求梯度](https://datawhalechina.github.io/dive-into-cv-pytorch/#/chapter01_preliminary_knowledge/1.3_automatic_gradient/README.md)
|
28 |
+
- [x] [1.4 线性回归-小试身手](https://datawhalechina.github.io/dive-into-cv-pytorch/#/chapter01_preliminary_knowledge/1.4_linear_regression_pytorch/README.md)
|
29 |
+
- [x] [1.5 初识图像分类:MNIST分类实战](https://datawhalechina.github.io/dive-into-cv-pytorch/#/chapter01_preliminary_knowledge/1.5_mnist_classification/README.md)
|
30 |
+
|
31 |
+
* 第二章: 图像分类入门
|
32 |
+
- [x] [2.1 数据读取与数据扩增](https://datawhalechina.github.io/dive-into-cv-pytorch/#/chapter02_image_classification_introduction/2.1_dataloader_and_augmentation/README.md)
|
33 |
+
- [x] [2.2 图像分类介绍](https://datawhalechina.github.io/dive-into-cv-pytorch/#/chapter02_image_classification_introduction/2.2_introduction_of_image_classification/README.md)
|
34 |
+
- [x] [2.3 模型训练与验证](https://datawhalechina.github.io/dive-into-cv-pytorch/#/chapter02_image_classification_introduction/2.3_model_training_and_verification/README.md)
|
35 |
+
- [x] 2.4 天池CV入门赛实战
|
36 |
+
- [x] [街景字符识别baseline讲解](https://datawhalechina.github.io/dive-into-cv-pytorch/#/chapter02_image_classification_introduction/2.4_classification_action_SVHN/baseline.md)
|
37 |
+
- [x] [比赛方案与优化技巧总结](https://datawhalechina.github.io/dive-into-cv-pytorch/#/chapter02_image_classification_introduction/2.4_classification_action_SVHN/ideas_and_tricks_summary.md)
|
38 |
+
- [x] [附录A torchvision.transforms速查表](chapter02_image_classification_introduction/appendix/appendixA_data_augment.md)
|
39 |
+
|
40 |
+
* 第三章: 目标检测入门
|
41 |
+
- [x] [3.1 目标检测基本概念](https://datawhalechina.github.io/dive-into-cv-pytorch/#/chapter03_object_detection_introduction/3_1.md)
|
42 |
+
- [x] [3.2 目标检测数据集VOC](https://datawhalechina.github.io/dive-into-cv-pytorch/#/chapter03_object_detection_introduction/3_2.md)
|
43 |
+
- [x] [3.3 锚框](https://datawhalechina.github.io/dive-into-cv-pytorch/#/chapter03_object_detection_introduction/3_3.md)
|
44 |
+
- [x] [3.4 模型结构](https://datawhalechina.github.io/dive-into-cv-pytorch/#/chapter03_object_detection_introduction/3_4.md)
|
45 |
+
- [x] [3.5 损失函数](https://datawhalechina.github.io/dive-into-cv-pytorch/#/chapter03_object_detection_introduction/3_5.md)
|
46 |
+
- [x] [3.6 训练与测试](https://datawhalechina.github.io/dive-into-cv-pytorch/#/chapter03_object_detection_introduction/3_6.md)
|
47 |
+
|
48 |
+
* 第四章: 图像分割入门
|
49 |
+
- 推进中...
|
50 |
+
|
51 |
+
* 第五章: 生成式对抗网络入门
|
52 |
+
- [x] [5.1 初识生成对抗网络](https://datawhalechina.github.io/dive-into-cv-pytorch/#/chapter05_gan/5_1.md)
|
53 |
+
- [x] [5.2 GAN实战: 手写数字生成](https://datawhalechina.github.io/dive-into-cv-pytorch/#/chapter05_gan/5_2.md)
|
54 |
+
- [x] [5.3 ConditionGAN实战: 再战手写数字生成](https://datawhalechina.github.io/dive-into-cv-pytorch/#/chapter05_gan/5_3.md)
|
55 |
+
- [x] [5.4 DCGAN实战](https://datawhalechina.github.io/dive-into-cv-pytorch/#/chapter05_gan/5_4.md)
|
56 |
+
|
57 |
+
* 第六章: CV中的Transformer
|
58 |
+
- [X] [6.1 你好,Transformer](https://datawhalechina.github.io/dive-into-cv-pytorch/#/chapter06_transformer/6_1_hello_transformer.md)
|
59 |
+
- [X] [6.2 Transformer实战:OCR字符识别](https://datawhalechina.github.io/dive-into-cv-pytorch/#/chapter06_transformer/6_2_ocr_by_transformer.md)
|
60 |
+
|
61 |
+
|
62 |
+
## 常见问题
|
63 |
+
|
64 |
+
- **在线教程页面无法打开**:
|
65 |
+
|
66 |
+
测试中存在部分人打不开在线教程的情况。
|
67 |
+
|
68 |
+
部分小伙伴反馈尝试切换浏览器后可以正常打开了,如果仍然不行,最有效的解决办法是科学上网。
|
69 |
+
|
70 |
+
- **无法加载图片的解决办法**:
|
71 |
+
|
72 |
+
根本解决办法还是科学上网,也可以尝试修改host文件看下是否能解决。
|
73 |
+
|
74 |
+
[windows解决方案:修改host文件](https://blog.csdn.net/u011583927/article/details/104384169)
|
75 |
+
|
76 |
+
- **公式无法正常显示解决办法**:
|
77 |
+
|
78 |
+
github中的markdown不支持LATEX公式,如果你喜欢在本项目中直接浏览教程,可以安装chrome的`MathJax Plugin for Github`插件让大部分公式正常显示。但是包含公式的章节强力建议使用 [动手学CV-PyTorch 在线阅读](https://datawhalechina.github.io/dive-into-cv-pytorch) 进行学习
|
79 |
+
|
80 |
+
|
81 |
+
## 致谢
|
82 |
+
|
83 |
+
感谢以下Datawhale成员对项目推进作出的贡献(排名不分先后):
|
84 |
+
|
85 |
+
<table align="center" style="width:80%;">
|
86 |
+
<caption><b>贡献者名单</b></caption>
|
87 |
+
<thead>
|
88 |
+
<tr>
|
89 |
+
<th>成员</th>
|
90 |
+
<th>个人简介及贡献</th>
|
91 |
+
<th>个人主页</th>
|
92 |
+
</tr>
|
93 |
+
</thead>
|
94 |
+
<tbody>
|
95 |
+
<tr>
|
96 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">安晟</span></td>
|
97 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">图像算法工程师,项目负责人 </td>
|
98 |
+
<td><a href="https://blog.csdn.net/u011583927">CSDN</a>, <a href="https://github.com/monkeyDemon">Github</a></td>
|
99 |
+
</tr>
|
100 |
+
<tr>
|
101 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">闫永强</span></td>
|
102 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">图像算法工程师,3.4、3.5、3.6、6.1节作者</td>
|
103 |
+
<td> </td>
|
104 |
+
</tr>
|
105 |
+
<tr>
|
106 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">宋志龙</span></td>
|
107 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">图像算法工程师,3.1、3.2、3.3节作者</td>
|
108 |
+
<td> </td>
|
109 |
+
</tr>
|
110 |
+
<tr>
|
111 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">沈豪</span></td>
|
112 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">复旦大学网安博士在读,第五章作者</td>
|
113 |
+
<td><a href="https://www.zhihu.com/people/shenhao-63">知乎</a>, <a href="https://github.com/shenhao-stu">Github</a></td>
|
114 |
+
</tr>
|
115 |
+
<tr>
|
116 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">袁明坤</span></td>
|
117 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">西安电子科技大学硕士,2.1、6.2节作者</td>
|
118 |
+
<td><a href="https://blog.csdn.net/my_kun?spm=1011.2124.3001.5113">CSDN</a></td>
|
119 |
+
</tr>
|
120 |
+
<tr>
|
121 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">王程伟</span></td>
|
122 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">南昌航空大学研究生,1.5、2.1节作者</td>
|
123 |
+
<td><a href="https://blog.csdn.net/weixin_40647819">CSDN</a></td>
|
124 |
+
</tr>
|
125 |
+
<tr>
|
126 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">张强</span></td>
|
127 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">宁波大学计算机硕士,2.2节作者</td>
|
128 |
+
<td><a href="https://github.com/QiangZiBro">Github</a></td>
|
129 |
+
</tr>
|
130 |
+
<tr>
|
131 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">游璐颖</span></td>
|
132 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">福州大学计算机硕士,1.2节作者</td>
|
133 |
+
<td><a href="yluy.gitee.io">个人主页</a></td>
|
134 |
+
</tr>
|
135 |
+
<tr>
|
136 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">李一飞</span></td>
|
137 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">参与1.3、1.4节优化</td>
|
138 |
+
</tr>
|
139 |
+
<tr>
|
140 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">樊亮</span></td>
|
141 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">1.3节作者</span></td>
|
142 |
+
<td><a href="https://blog.csdn.net/OuDiShenmiss">CSDN</a></td>
|
143 |
+
</tr>
|
144 |
+
<tr>
|
145 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">杨皓博</span></td>
|
146 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">1.4节作者</span></td>
|
147 |
+
<td><a href="https://github.com/Dulpyanghaobo">Github</a></td>
|
148 |
+
</tr>
|
149 |
+
<tr>
|
150 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">伊雪</span></td>
|
151 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">中电科网安研究院开发工程师,2.3节作者</span></td>
|
152 |
+
<td> </td>
|
153 |
+
</tr>
|
154 |
+
<tr>
|
155 |
+
<td>阿水</td>
|
156 |
+
<td><span style="font-weight:normal;font-style:normal;text-decoration:none">Datawhale成员,公众号:Coggle数据科学, 为第二章提供部分素材 </td>
|
157 |
+
<td><a href="https://www.zhihu.com/people/finlayliu">知乎</a></td>
|
158 |
+
</tr>
|
159 |
+
</tbody>
|
160 |
+
</table>
|
161 |
+
|
162 |
+
|
163 |
+
## 关注我们
|
164 |
+
|
165 |
+
> "Datawhale是一个专注AI领域的开源组织,以“for the learner,和学习者一起成长”为愿景,构建对学习者最有价值的开源学习社区。关注我们,一起学习成长。"
|
166 |
+
|
167 |
+
<img src="https://raw.githubusercontent.com/datawhalechina/dive-into-cv-pytorch/master/markdown_imgs/datawhale_qrcode.jpeg" width="175" height= "200">
|
database/readme_db/easy-grokking-deep-learning/README.md
ADDED
@@ -0,0 +1,93 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Easy-Grokking-Deep-Learning
|
2 |
+
|
3 |
+
---
|
4 |
+
|
5 |
+
## 项目介绍
|
6 |
+
|
7 |
+
### 项目简介
|
8 |
+
|
9 |
+
Easy-Grokking-Deep-Learning,意为轻松摸索深度学习,英文缩写可简称为EGDL。
|
10 |
+
本项目基于《Grokking Deep Learning》原书和清华出版社译版《深度学习图解》为主要内容,结合其他实用概念、常用知识以及通用常识和图表等素材进行解读与扩展,旨在使得读者和入门者能够更加轻松地对于本书的内容进行阅读吸收,从而对于深度学习及其相关概念有一个更清晰的认识,也可作为其他进阶知识内容做一个基础衔接铺垫。
|
11 |
+
|
12 |
+
|
13 |
+
|
14 |
+
### 立项理由
|
15 |
+
|
16 |
+
发起本项目的理由如下:
|
17 |
+
|
18 |
+
- 1.《Grokking Deep Leaning》出版时间在2018年,其译版《深度学习图解》出版于2020年,考虑到近年来AI领域的发展,因此希望在本项目将相关性的进展与研究内容作为一个扩展补充。
|
19 |
+
- 2.《深度学习图解》与原书中的图像均为静态图像,本项目希望借助开源项目的优势,将深度学习的图解过程转换制作成动态的gif图并附注相应的过程说明,这将有利于帮助读者思考和理解其概念。
|
20 |
+
- 3.本项目将发挥图解图表的优势,将众多图表概念和知识内容制作为相应的知识卡片,类似一张图教会一个概念这样的形式,后续可考虑单独将其整理为一个图册,或者整理为本项目的wiki,最终将其对外开源发布
|
21 |
+
- 4.本着开源共享的目的,本项目希望能够有更多的读者和开发者参与进行,通过Issue的形式进行提问,同时以PR的形式参与进来共建项目,从而扩大项目和开源的影响力。
|
22 |
+
|
23 |
+
### 项目受众
|
24 |
+
|
25 |
+
考虑到本项目的内容与难度,因此面向受众主要以深度学习入门者和想要深入学习的读者为主,同时也不限于其他高校学生和对本书感兴趣的企业开发者。
|
26 |
+
|
27 |
+
|
28 |
+
|
29 |
+
## 在线阅读地址
|
30 |
+
|
31 |
+
https://datawhalechina.github.io/easy-grokking-deep-learning/#/
|
32 |
+
|
33 |
+
## 进度安排
|
34 |
+
|
35 |
+
| 章节 | 内容 | 负责人 |
|
36 |
+
| ---- | ---- | ------ |
|
37 |
+
| | | |
|
38 |
+
| | | |
|
39 |
+
| | | |
|
40 |
+
| | | |
|
41 |
+
| | | |
|
42 |
+
| | | |
|
43 |
+
| | | |
|
44 |
+
| | | |
|
45 |
+
| | | |
|
46 |
+
| | | |
|
47 |
+
| | | |
|
48 |
+
| | | |
|
49 |
+
| | | |
|
50 |
+
|
51 |
+
|
52 |
+
|
53 |
+
## 人员安排(持续招募中)
|
54 |
+
|
55 |
+
| 成员 | 个人简介 | 个人主页 |
|
56 |
+
| ---- | -------------------- | ------------------------------------- |
|
57 |
+
| 林旭 | 某机器人厂算法架构师 | [isLinXu](https://github.com/isLinXu) |
|
58 |
+
| | | |
|
59 |
+
| | | |
|
60 |
+
| | | |
|
61 |
+
|
62 |
+
|
63 |
+
|
64 |
+
## 更新计划及进度安排(持续更新中)
|
65 |
+
|
66 |
+
| 内容 | 更新时间 | 负责人 |
|
67 |
+
| -------------- | ---------- | ------ |
|
68 |
+
| 项目初始化构建 | 2022.09.26 | 林旭 |
|
69 |
+
| 总体结构设计 | 2022.09.29 | 林旭 |
|
70 |
+
| | | |
|
71 |
+
| | | |
|
72 |
+
|
73 |
+
|
74 |
+
|
75 |
+
### ChangeLog
|
76 |
+
|
77 |
+
- ...
|
78 |
+
-
|
79 |
+
- 总体结构设计 2022-09-29 [isLinXu](https://github.com/isLinXu)
|
80 |
+
- 项目初始化构建 2022-09-26 [isLinXu](https://github.com/isLinXu)
|
81 |
+
|
82 |
+
|
83 |
+
|
84 |
+
## 关注我们
|
85 |
+
<div align=center>
|
86 |
+
<p>扫描下方二维码关注公众号:Datawhale</p>
|
87 |
+
<img src="docs/_static/qrcode.jpeg" width = "180" height = "180">
|
88 |
+
</div>
|
89 |
+
|
90 |
+
  Datawhale,一个专注于AI领域的学习圈子。初衷是for the learner,和学习者一起成长。目前加入学习社群的人数已经数千人,组织了机器学习,深度学习,数据分析,数据挖掘,爬虫,编程,统计学,Mysql,数据竞赛等多个领域的内容学习,微信搜索公众号Datawhale可以加入我们。
|
91 |
+
|
92 |
+
## LICENSE
|
93 |
+
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="知识共享许可协议" style="border-width:0" src="https://img.shields.io/badge/license-CC%20BY--NC--SA%204.0-lightgrey" /></a><br />本作品采用<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议</a>进行许可。
|
database/readme_db/easy-rl/README.md
ADDED
@@ -0,0 +1,173 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
[![GitHub issues](https://img.shields.io/github/issues/datawhalechina/easy-rl)](https://github.com/datawhalechina/easy-rl/issues) [![GitHub stars](https://img.shields.io/github/stars/datawhalechina/easy-rl)](https://github.com/datawhalechina/easy-rl/stargazers) [![GitHub forks](https://img.shields.io/github/forks/datawhalechina/easy-rl)](https://github.com/datawhalechina/easy-rl/network) [![Hits](https://hits.seeyoufarm.com/api/count/incr/badge.svg?url=https%3A%2F%2Fgithub.com%2Fdatawhalechina%2Feasy-rl%2F&count_bg=%2379C83D&title_bg=%23555555&icon=&icon_color=%23E7E7E7&title=hits&edge_flat=false)](https://hits.seeyoufarm.com) <a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="知识共享许可协议" style="border-width:0" src="https://img.shields.io/badge/license-CC%20BY--NC--SA%204.0-lightgrey" /></a>
|
2 |
+
|
3 |
+
|
4 |
+
# 蘑菇书EasyRL
|
5 |
+
|
6 |
+
李宏毅老师的《深度强化学习》是强化学习领域经典的中文视频之一。李老师幽默风趣的上课风格让晦涩难懂的强化学习理论变得轻松易懂,他会通过很多有趣的例子来讲解强化学习理论。比如老师经常会用玩 Atari 游戏的例子来讲解强化学习算法。此外,为了教程的完整性,我们整理了周博磊老师的《强化学习纲要》、李科浇老师的《世界冠军带你从零实践强化学习》以及多个强化学习的经典资料作为补充。对于想入门强化学习又想看中文讲解的人来说绝对是非常推荐的。
|
7 |
+
|
8 |
+
本教程也称为“蘑菇书”,寓意是希望此书能够为读者注入活力,让读者“吃”下这本蘑菇之后,能够饶有兴致地探索强化学习,像马里奥那样愈加强大,继而在人工智能领域觅得意外的收获。
|
9 |
+
|
10 |
+
## 使用说明
|
11 |
+
|
12 |
+
* 第 4 章到第 11 章为[李宏毅《深度强化学习》](http://speech.ee.ntu.edu.tw/~tlkagk/courses_MLDS18.html)的部分;
|
13 |
+
* 第 1 章和第 2 章根据[《强化学习纲要》](https://github.com/zhoubolei/introRL)整理而来;
|
14 |
+
* 第 3 章和第 12 章根据[《世界冠军带你从零实践强化学习》](https://aistudio.baidu.com/aistudio/education/group/info/1335) 整理而来。
|
15 |
+
|
16 |
+
## 纸质版
|
17 |
+
|
18 |
+
<img src="https://raw.githubusercontent.com/datawhalechina/easy-rl/master/docs/res/mogu.png" width="300">
|
19 |
+
|
20 |
+
购买链接:[京东](https://item.jd.com/13075567.html) | [当当](http://product.dangdang.com/29374163.html)
|
21 |
+
|
22 |
+
<table border="0">
|
23 |
+
<tbody>
|
24 |
+
<tr align="center" >
|
25 |
+
<td>
|
26 |
+
<img width="120" height="120" src="https://raw.githubusercontent.com/datawhalechina/easy-rl/master/docs/res/qrcode_jingdong.png" alt="pic">
|
27 |
+
<br>
|
28 |
+
<p>京东扫码购买</p>
|
29 |
+
</td>
|
30 |
+
<td>
|
31 |
+
<img width="120" height="120" src="https://raw.githubusercontent.com/datawhalechina/easy-rl/master/docs/res/qrcode_dangdang.png" alt="pic"><br>
|
32 |
+
<p>当当扫码购买</p>
|
33 |
+
</td>
|
34 |
+
</tr>
|
35 |
+
</tbody>
|
36 |
+
</table>
|
37 |
+
|
38 |
+
豆瓣评分:https://book.douban.com/subject/35781275/
|
39 |
+
|
40 |
+
ℹ️ **勘误修订表**:https://datawhalechina.github.io/easy-rl/#/errata
|
41 |
+
|
42 |
+
## 在线阅读(内容实时更新)
|
43 |
+
|
44 |
+
地址:https://datawhalechina.github.io/easy-rl/
|
45 |
+
|
46 |
+
## 最新版PDF下载
|
47 |
+
|
48 |
+
地址:https://github.com/datawhalechina/easy-rl/releases
|
49 |
+
|
50 |
+
国内地址(推荐国内读者使用):链接: https://pan.baidu.com/s/1isqQnpVRWbb3yh83Vs0kbw 提取码: us6a
|
51 |
+
|
52 |
+
压缩版(推荐网速较差的读者使用,文件小,图片分辨率较低):链接: https://pan.baidu.com/s/1mUECyMKDZp-z4-CGjFhdAw 提取码: tzds
|
53 |
+
|
54 |
+
## 纸质版和PDF版的区别
|
55 |
+
|
56 |
+
PDF版本是全书初稿,人民邮电出版社的编辑老师们对初稿进行了反复修缮,最终诞生了纸质书籍,在此向人民邮电出版社的编辑老师的认真严谨表示衷心的感谢!(附:校对样稿)
|
57 |
+
|
58 |
+
<center class="half"><img src="https://raw.githubusercontent.com/datawhalechina/easy-rl/master/docs/res/yanggao.png" width="680"></center>
|
59 |
+
|
60 |
+
## 相关视频内容
|
61 |
+
|
62 |
+
* [《Datawhale强化学习教程》出版](https://www.bilibili.com/video/BV1rb4y1x7Zd/?spm_id_from=333.999.0.0&vd_source=642fa389e9e78cff4881c038963ac312)
|
63 |
+
* [蘑菇书起源与RL入门指南](https://www.bilibili.com/video/BV1HZ4y1v7eX/?spm_id_from=333.999.0.0&vd_source=642fa389e9e78cff4881c038963ac312)
|
64 |
+
* [蘑菇书开源组队学习活动](https://www.bilibili.com/video/BV1Ha41197Pg/?spm_id_from=333.999.0.0&vd_source=642fa389e9e78cff4881c038963ac312)
|
65 |
+
* [蘑菇书开源学习与成长](https://www.bilibili.com/video/BV1xW4y1B72o/?spm_id_from=333.999.0.0&vd_source=642fa389e9e78cff4881c038963ac312)
|
66 |
+
|
67 |
+
## 内容导航
|
68 |
+
|
69 |
+
| 章节 | 习题 | 相关项目 | 配套代码 |
|
70 |
+
| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ |
|
71 |
+
| [第一章 强化学习基础](https://datawhalechina.github.io/easy-rl/#/chapter1/chapter1) | [第一章 习题](https://datawhalechina.github.io/easy-rl/#/chapter1/chapter1_questions&keywords) | | |
|
72 |
+
| [第二章 马尔可夫决策过程 (MDP)](https://datawhalechina.github.io/easy-rl/#/chapter2/chapter2) | [第二章 习题](https://datawhalechina.github.io/easy-rl/#/chapter2/chapter2_questions&keywords) | | [值迭代算法](https://github.com/datawhalechina/easy-rl/blob/master/notebooks/Value%20Iteration/value_iteration.ipynb) |
|
73 |
+
| [第三章 表格型方法](https://datawhalechina.github.io/easy-rl/#/chapter3/chapter3) | [第三章 习题](https://datawhalechina.github.io/easy-rl/#/chapter3/chapter3_questions&keywords) | [Q-learning算法实战](https://datawhalechina.github.io/easy-rl/#/chapter3/project1) | [Q-learning](https://github.com/datawhalechina/easy-rl/tree/master/notebooks/Q-learning),[Sarsa](https://github.com/datawhalechina/easy-rl/blob/master/notebooks/Sarsa.ipynb),[蒙特卡洛](https://github.com/datawhalechina/easy-rl/blob/master/notebooks/MonteCarlo.ipynb) |
|
74 |
+
| [第四章 策略梯度](https://datawhalechina.github.io/easy-rl/#/chapter4/chapter4) | [第四章 习题](https://datawhalechina.github.io/easy-rl/#/chapter4/chapter4_questions&keywords) | | [策略梯度](https://github.com/datawhalechina/easy-rl/blob/master/notebooks/PolicyGradient.ipynb) |
|
75 |
+
| [第五章 近端策略优化 (PPO) 算法](https://datawhalechina.github.io/easy-rl/#/chapter5/chapter5) | [第五章 习题](https://datawhalechina.github.io/easy-rl/#/chapter5/chapter5_questions&keywords) | | [PPO](https://github.com/datawhalechina/easy-rl/blob/master/notebooks/PPO.ipynb) |
|
76 |
+
| [第六章 DQN (基本概念)](https://datawhalechina.github.io/easy-rl/#/chapter6/chapter6) | [第六章 习题](https://datawhalechina.github.io/easy-rl/#/chapter6/chapter6_questions&keywords) | | [DQN](https://github.com/datawhalechina/easy-rl/blob/master/notebooks/DQN.ipynb) |
|
77 |
+
| [第七章 DQN (进阶技巧)](https://datawhalechina.github.io/easy-rl/#/chapter7/chapter7) | [第七章 习题](https://datawhalechina.github.io/easy-rl/#/chapter7/chapter7_questions&keywords) | [DQN算法实战](https://datawhalechina.github.io/easy-rl/#/chapter7/project2) | [Double DQN](https://github.com/datawhalechina/easy-rl/blob/master/notebooks/DoubleDQN.ipynb),[Dueling DQN](https://github.com/datawhalechina/easy-rl/blob/master/notebooks/DuelingDQN.ipynb),[PER DQN](https://github.com/datawhalechina/easy-rl/blob/master/notebooks/PER_DQN.ipynb),[Noisy DQN](https://github.com/datawhalechina/easy-rl/blob/master/notebooks/NoisyDQN.ipynb) |
|
78 |
+
| [第八章 DQN (连续动作)](https://datawhalechina.github.io/easy-rl/#/chapter8/chapter8) | [第八章 习题](https://datawhalechina.github.io/easy-rl/#/chapter8/chapter8_questions&keywords) | | |
|
79 |
+
| [第九章 演员-评论员算法](https://datawhalechina.github.io/easy-rl/#/chapter9/chapter9) | [第九章 习题](https://datawhalechina.github.io/easy-rl/#/chapter9/chapter9_questions&keywords) | | [A2C](https://github.com/datawhalechina/easy-rl/blob/master/notebooks/A2C.ipynb) |
|
80 |
+
| [第十章 稀疏奖励](https://datawhalechina.github.io/easy-rl/#/chapter10/chapter10) | [第十章 习题](https://datawhalechina.github.io/easy-rl/#/chapter10/chapter10_questions&keywords) | | |
|
81 |
+
| [第十一章 模仿学习](https://datawhalechina.github.io/easy-rl/#/chapter11/chapter11) | [第十一章 习题](https://datawhalechina.github.io/easy-rl/#/chapter11/chapter11_questions&keywords) | | |
|
82 |
+
| [第十二章 深度确定性策略梯度 (DDPG) 算法](https://datawhalechina.github.io/easy-rl/#/chapter12/chapter12) | [第十二章 习题](https://datawhalechina.github.io/easy-rl/#/chapter12/chapter12_questions&keywords) | [DDPG算法实战](https://datawhalechina.github.io/easy-rl/#/chapter12/project3) | [DDPG](https://github.com/datawhalechina/easy-rl/blob/master/notebooks/DDPG.ipynb) |
|
83 |
+
| [第十三章 AlphaStar 论文解读](https://datawhalechina.github.io/easy-rl/#/chapter13/chapter13) | | | |
|
84 |
+
## 算法实战
|
85 |
+
|
86 |
+
算��实战部分包括附书代码和JoyRL代码:
|
87 |
+
|
88 |
+
* [蘑菇书附书代码](https://github.com/datawhalechina/easy-rl/tree/master/notebooks)
|
89 |
+
* [JoyRL离线版](https://github.com/johnjim0816/rl-tutorials/tree/master/joyrl)
|
90 |
+
* [JoyRL上线版](https://github.com/datawhalechina/joyrl)
|
91 |
+
|
92 |
+
## 经典强化学习论文解读
|
93 |
+
|
94 |
+
[点击](https://github.com/datawhalechina/easy-rl/tree/master/papers)或者网页点击```papers```文件夹进入经典强化学习论文解读
|
95 |
+
|
96 |
+
## 扩展资源
|
97 |
+
|
98 |
+
对**深度学习**感兴趣的读者,可阅读[李宏毅深度学习教程LeeDL-Tutorial](https://github.com/datawhalechina/leedl-tutorial)
|
99 |
+
|
100 |
+
## 贡献者
|
101 |
+
|
102 |
+
<table border="0">
|
103 |
+
<tbody>
|
104 |
+
<tr align="center" >
|
105 |
+
<td>
|
106 |
+
<a href="https://github.com/qiwang067"><img width="70" height="70" src="https://github.com/qiwang067.png?s=40" alt="pic"></a><br>
|
107 |
+
<a href="https://github.com/qiwang067">Qi Wang</a>
|
108 |
+
<p>教程设计(第1~12章)<br> 上海交通大学博士生<br> 中国科学院大学硕士</p>
|
109 |
+
</td>
|
110 |
+
<td>
|
111 |
+
<a href="https://github.com/yyysjz1997"><img width="70" height="70" src="https://github.com/yyysjz1997.png?s=40" alt="pic"></a><br>
|
112 |
+
<a href="https://github.com/yyysjz1997">Yiyuan Yang</a>
|
113 |
+
<p>习题设计&第13章 <br> 牛津大学博士生<br> 清华大学硕士</p>
|
114 |
+
</td>
|
115 |
+
<td>
|
116 |
+
<a href="https://github.com/JohnJim0816"><img width="70" height="70" src="https://github.com/JohnJim0816.png?s=40" alt="pic"></a><br>
|
117 |
+
<a href="https://github.com/JohnJim0816">John Jim</a>
|
118 |
+
<p>算法实战<br> 北京大学硕士</p>
|
119 |
+
</td>
|
120 |
+
</tr>
|
121 |
+
</tbody>
|
122 |
+
</table>
|
123 |
+
|
124 |
+
## 引用信息
|
125 |
+
|
126 |
+
```
|
127 |
+
王琦,杨毅远,江季,Easy RL:强化学习教程,人民邮电出版社,https://github.com/datawhalechina/easy-rl, 2022.
|
128 |
+
Qi Wang, Yiyuan Yang, Ji Jiang,Easy RL: Reinforcement Learning Tutorial,Posts & Telecom Press,https://github.com/datawhalechina/easy-rl, 2022.
|
129 |
+
```
|
130 |
+
|
131 |
+
```bibtex
|
132 |
+
@book{wang2022easyrl,
|
133 |
+
title = {Easy RL:强化学习教程},
|
134 |
+
publisher = {人民邮电出版社},
|
135 |
+
year = {2022},
|
136 |
+
author = {王琦,杨毅远,江季},
|
137 |
+
address = {北京},
|
138 |
+
isbn = {9787115584700},
|
139 |
+
url = {https://github.com/datawhalechina/easy-rl}
|
140 |
+
}
|
141 |
+
```
|
142 |
+
|
143 |
+
```bibtex
|
144 |
+
@book{wang2022easyrl,
|
145 |
+
title = {Easy RL: Reinforcement Learning Tutorial},
|
146 |
+
publisher = {Posts & Telecom Press},
|
147 |
+
year = {2022},
|
148 |
+
author = {Qi Wang, Yiyuan Yang, Ji Jiang},
|
149 |
+
address = {Beijing},
|
150 |
+
isbn = {9787115584700},
|
151 |
+
url = {https://github.com/datawhalechina/easy-rl}
|
152 |
+
}
|
153 |
+
```
|
154 |
+
|
155 |
+
如果您需要转载该教程的内容,请注明出处:[https://github.com/datawhalechina/easy-rl](https://github.com/datawhalechina/easy-rl)。
|
156 |
+
|
157 |
+
## 致谢
|
158 |
+
|
159 |
+
特别感谢 [@Sm1les](https://github.com/Sm1les)、[@LSGOMYP](https://github.com/LSGOMYP) 对本项目的帮助与支持。
|
160 |
+
|
161 |
+
另外,十分感谢大家对于Easy-RL的关注。
|
162 |
+
[![Stargazers repo roster for @datawhalechina/easy-rl](https://reporoster.com/stars/datawhalechina/easy-rl)](https://github.com/datawhalechina/easy-rl/stargazers)
|
163 |
+
[![Forkers repo roster for @datawhalechina/easy-rl](https://reporoster.com/forks/datawhalechina/easy-rl)](https://github.com/datawhalechina/easy-rl/network/members)
|
164 |
+
|
165 |
+
## 关注我们
|
166 |
+
扫描下方二维码关注公众号:Datawhale,回复关键词“强化学习”,即可加入“Easy-RL读者交流群”
|
167 |
+
<div align=center><img src="https://raw.githubusercontent.com/datawhalechina/easy-rl/master/docs/res/qrcode.jpeg" width = "250" height = "270" alt="Datawhale是一个专注AI领域的开源组织,以“for the learner,和学习者一起成长”为愿景,构建对学习者最有价值的开源学习社区。关注我们,一起学习成长。"></div>
|
168 |
+
|
169 |
+
## LICENSE
|
170 |
+
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="知识共享许可协议" style="border-width:0" src="https://img.shields.io/badge/license-CC%20BY--NC--SA%204.0-lightgrey" /></a><br />本作品采用<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议</a>进行许可。
|
171 |
+
|
172 |
+
## Star History
|
173 |
+
[![Star History](https://api.star-history.com/svg?repos=datawhalechina/easy-rl)](https://star-history.com/#datawhalechina/easy-rl&Date)
|
database/readme_db/easy-ros2arm/README.md
ADDED
@@ -0,0 +1,33 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# easy-ros2Arm
|
2 |
+
|
3 |
+
该项目旨在构建机械臂入门教程,降低学习门槛。
|
4 |
+
|
5 |
+
|
6 |
+
## 内容规划
|
7 |
+
|
8 |
+
| 章节 | 视频链接 |
|
9 |
+
| ------------------ | -------- |
|
10 |
+
| ROS2入门 | |
|
11 |
+
| 机械臂描述与可视化 | |
|
12 |
+
| MoveIt安装与使用 | |
|
13 |
+
|
14 |
+
|
15 |
+
|
16 |
+
## 代码结构
|
17 |
+
|
18 |
+
```markdown
|
19 |
+
|-src
|
20 |
+
| |-dofbot_config #MoveIt集成机械臂.
|
21 |
+
| |
|
22 |
+
| |-dofbot_description #机械臂的描述及Rviz中可视化.
|
23 |
+
| |
|
24 |
+
| |-dofbot_moveit #利用MoveIt进行路径规划.
|
25 |
+
| |
|
26 |
+
| |-dofbot_msgs #创建图片消息型接口.
|
27 |
+
| |
|
28 |
+
| |-dofbot_sensors #获取单目摄像头消息,并发布.
|
29 |
+
```
|
30 |
+
|
31 |
+
|
32 |
+
|
33 |
+
**注:** 由于该项目已与个人规划、设想偏离,计划暂缓,等待合适人选。感兴趣者,请联系DataWahle工作人员,谢谢。
|
database/readme_db/ensemble-learning/README.md
ADDED
@@ -0,0 +1,101 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# 开源项目:机器学习集成学习与模型融合(基于python)
|
2 |
+
|
3 |
+
## (一) 项目初衷
|
4 |
+
|
5 |
+
这件事开始于我们参加一些机器学习比赛,在类似于kaggle等大型数据科学竞赛的时候, 我们总喜欢去观摩高分选手的一些参赛模型,得出一个很重要的结论就是:除了深度学习以外的高分模型,无一例外地见到了集成学习和模型融合的身影。这个发现迫使我去学习一些除了基础模型以外的集成学习方法以便在这些比赛上获得更好的成绩。但是,当我使用具体的sklearn编程的时候, 往往因为不懂得集成学习的一 些底层知识而不懂参数的含义。因此,在本项目中我们会从基础模型的推导以及 sklearn应用过渡到使用集成学习的技术去优化我们的基础模型,使得我们的模型能更好地解决机器学习问题。
|
6 |
+
|
7 |
+
## (二) 内容设置
|
8 |
+
|
9 |
+
- 第一章:机器学习数学基础(待完善)
|
10 |
+
|
11 |
+
- 高等数学微分学
|
12 |
+
|
13 |
+
- 线性代数
|
14 |
+
|
15 |
+
- 概率论与数理统计
|
16 |
+
|
17 |
+
- 随机过程与抽样原理
|
18 |
+
|
19 |
+
- 第二章:机器学习基础
|
20 |
+
- 机器学习的三大主要任务
|
21 |
+
- 基本的回归模型
|
22 |
+
- 偏差与方差理论
|
23 |
+
- 回归模型的评估及超参数调优
|
24 |
+
- 基本的分类模型
|
25 |
+
- 分类问题的评估及超参数调优
|
26 |
+
- 第三章:集成学习之投票法与Bagging
|
27 |
+
- 投票法的思路
|
28 |
+
- 投票法的原理分析
|
29 |
+
- 投票法的案例分析(基于sklearn,介绍pipe管道的使用以及voting的使用)
|
30 |
+
- Bagging的思路
|
31 |
+
- Bagging的原理分析
|
32 |
+
- Bagging的案例分析(基于sklearn,介绍随机森林的相关理论以及实例)
|
33 |
+
- 第四章:集成学习之Boosting提升法
|
34 |
+
- Boosting的思路与Adaboost算法
|
35 |
+
- 前向分步算法与梯度提升决策树(GBDT)
|
36 |
+
- XGBoost算法与xgboost库的使用
|
37 |
+
- Xgboost算法案例与调参实例
|
38 |
+
- LightGBM算法的基本介绍
|
39 |
+
- 第五章:集成学习之Blending与Stacking
|
40 |
+
- Blending集成学习算法
|
41 |
+
- Stacking集成学习算法
|
42 |
+
- Blending集成学习算法与Stacking集成学习算法的案例分享
|
43 |
+
- 第六章:集成学习之案例分析
|
44 |
+
- 集成学习案例一 (幸福感预测)
|
45 |
+
- 集成学习案例二 (蒸汽量预测)
|
46 |
+
|
47 |
+
## (三) 人员安排
|
48 |
+
|
49 |
+
| 成员 | 个人简介 | 个人主页 |
|
50 |
+
| ------ | ----------------------------------------------------- | ------------------------------------------------- |
|
51 |
+
| 萌弟 | Datawhale成员,项目负责人,深圳大学数学与应用数学专业,机器学习算法工程师 | https://www.zhihu.com/people/meng-di-76-92/posts |
|
52 |
+
| 六一 | Datawhale成员,算法工程师 | |
|
53 |
+
| 杨毅远 | Datawhale成员,清华大学自动化系研二 | https://yyysjz1997.github.io/ |
|
54 |
+
| 薛传雨 | Datawhale成员,康涅狄格大学在读博士 | http://chuanyuxue.com/ |
|
55 |
+
| 陈琰钰 | Datawhale成员,清华大学深圳研究生院研一 | https://cyy0214.github.io/ |
|
56 |
+
| 李嘉骐 | 清华大学自动化系在读博士 | https://www.zhihu.com/people/li-jia-qi-16-9/posts |
|
57 |
+
|
58 |
+
教程贡献情况:
|
59 |
+
|
60 |
+
李祖贤: CH1、CH2、CH4、CH5
|
61 |
+
|
62 |
+
薛传雨:CH3
|
63 |
+
|
64 |
+
杨毅远:CH6
|
65 |
+
|
66 |
+
李嘉骐:CH3优化
|
67 |
+
|
68 |
+
组队学习贡献情况:
|
69 |
+
|
70 |
+
六一:长期学习流程设计、组织协调、23期运营&作业评审(task1)、24期运营&作业评审(task3)
|
71 |
+
|
72 |
+
萌弟:23期答疑&直播(3次)&作业评审(task3&4)、24期答疑&直播(3次)&作业评审(task4&5)
|
73 |
+
|
74 |
+
薛传雨:23期运营&答疑&作业评审(task5)、24期运营
|
75 |
+
|
76 |
+
陈琰钰:23期作业评审(task2&6)
|
77 |
+
|
78 |
+
杨毅远:23期答疑
|
79 |
+
|
80 |
+
李嘉骐:24期答疑&作业评审(task1&2)
|
81 |
+
|
82 |
+
(四) 课程编排与使用方法
|
83 |
+
|
84 |
+
- 课程编排:
|
85 |
+
课程现分为三个阶段,大致可以分为:机器学习模型回顾,集成学习方法的进阶, 集成学习项目的实践。
|
86 |
+
1. 第一部分:当我们可以比较熟练的操作数据并认识这个数据之后,我们需要开始数据清洗以及重
|
87 |
+
构, 将原始数据变为一个可用好用的数据, 基于sklearn构建模型以及模型评价,在这个部分我们会重点详细学习各个基础模型的原理以及sklearn的各个参数。
|
88 |
+
2. 第二部分:我们要使用sklearn, xgboost, lightgbm以及mIxtend库去学习集成学习的具体方法以及原理底层。
|
89 |
+
3. 第三单元:通过前面的理论学习,现在可以开始进行实践了,这里有两个大型集成学习项目的实践。
|
90 |
+
- 使用方法:
|
91 |
+
我们的代码都是jupyter notebook和markdown形式, 我们在每一章后面会给出几道小习题方便大家掌握。其中的内容会作为组队学习的项目安排!
|
92 |
+
|
93 |
+
## (五) 反馈
|
94 |
+
|
95 |
+
- 如果有任何想法可以联系邮箱 ([email protected])
|
96 |
+
- 如果有任何想法可以联系我们DataWhale
|
97 |
+
|
98 |
+
|
99 |
+
|
100 |
+
|
101 |
+
|
database/readme_db/fantastic-matplotlib/README.md
ADDED
@@ -0,0 +1,109 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Fantastic-Matplotlib
|
2 |
+
|
3 |
+
![](https://matplotlib.org/_static/logo2_compressed.svg)
|
4 |
+
|
5 |
+
本项目《Fantastic-Matplotlib》是Datawhale🐳数据可视化小组的一个开源项目。
|
6 |
+
|
7 |
+
Matplotlib可以说是python数据可视化最重要且常见的工具之一,每一位和数据打交道的人几乎都不可避免要用到,此外也有大量的可视化工具是基于matplotlib做的二次开发。
|
8 |
+
|
9 |
+
设计这样一套开源教程的初衷在于笔者最初在用python做数据可视化时面临两大痛点,
|
10 |
+
|
11 |
+
- 没有系统梳理matplotlib的绘图接口,常常是现用现查,用过即忘,效率极低
|
12 |
+
- 没有深入理解matplotlib的设计框架,往往是只会复制粘贴,不知其所以然,面对复杂图表时一筹莫展
|
13 |
+
|
14 |
+
基于此,为了彻底解决这些痛点,笔者下定决心通读[官方文档](https://matplotlib.org/),相比于市面上的很多学习材料,官方文档的内容极为详细而全面,更重要的是,其阐明了matplotlib包的设计架构,这些对于我们掌握并应用是非常有帮助的。在通读完官方文档并结合一定的归纳总结与实践之后,笔者能明显察觉到对于matplotlib的理解上了一个层次。
|
15 |
+
|
16 |
+
如果屏幕前的你们,也正在面临以上说的这两个痛点,那么学习本项目教程将会是一个不错的选择。
|
17 |
+
|
18 |
+
本项目重点希望在两个层面帮助读者构建matplotlib的知识体系,
|
19 |
+
|
20 |
+
- 从图形,布局,文本,样式等多维度系统梳理matplotlib的绘图方法,构建对于绘图方法的整体理解
|
21 |
+
- 从绘图API层级,接口等方面阐明matplotlib的设计理念,摆脱只会复制粘贴的尴尬处境
|
22 |
+
|
23 |
+
最后还要说的是,对于学习完本教程的读者,若是仍然觉得学有余力不过瘾,强烈建议按需阅读官方文档,相信你一定会有所收获的。
|
24 |
+
|
25 |
+
关于本项目的名称,fantastic-matplotlib,在笔者精读过官网文档之后,才愈发觉得精妙,仿佛看到了一角下的广袤冰山,被它强大的功能和精巧的设计惊艳到了,之前对于matplotlib的了解还是过于浅薄,因此想用fantastic来表示笔者的感慨,也希望能够通过这样一个开源教程带领读者领略的matplotlib的精彩之处。
|
26 |
+
|
27 |
+
下图是该项目的大纲,总共五个章节介绍整个Fantastic-Matplotlib数据可视化项目。
|
28 |
+
|
29 |
+
![](https://img-blog.csdnimg.cn/20210530234005720.png)
|
30 |
+
|
31 |
+
## 使用说明
|
32 |
+
|
33 |
+
- 使用前请将matplotlib升级至V3.4.2以上(2022年1月),否则可能会出现报错!
|
34 |
+
- 本教程独立网站已上线:[https://datawhalechina.github.io/fantastic-matplotlib/](https://datawhalechina.github.io/fantastic-matplotlib/)
|
35 |
+
- 使用时若发现任何问题,或是你对项目内容有好的建议,欢迎留言交流,联系邮箱[email protected],微信`skywateryang`
|
36 |
+
|
37 |
+
|
38 |
+
## 目录
|
39 |
+
|
40 |
+
* 第一回:Matplotlib初相识
|
41 |
+
|
42 |
+
> 和matplotlib的初次邂逅,赶紧拿出画布,画笔,一段奇幻的旅途即将开启
|
43 |
+
|
44 |
+
* 第二回:艺术画笔见乾坤
|
45 |
+
|
46 |
+
> 挥舞起手中的艺术画笔,发挥想象力,在画布上自由地绘制图形
|
47 |
+
|
48 |
+
* 第三回:布局格式定方圆
|
49 |
+
|
50 |
+
> 没有规矩不成方圆,你应当开始学会如何合理地在画布上布局了
|
51 |
+
|
52 |
+
* 第四回:文字图例尽眉目
|
53 |
+
|
54 |
+
> 为了让你的画流传更久远,快来学习下如何在画布上题字吧
|
55 |
+
|
56 |
+
* 第五回:样式色彩秀芳华
|
57 |
+
|
58 |
+
> 下一步你需要学习下怎么样绘制出更加花样繁复,色彩绚丽的画了
|
59 |
+
|
60 |
+
|
61 |
+
|
62 |
+
|
63 |
+
|
64 |
+
|
65 |
+
## 致谢
|
66 |
+
|
67 |
+
感谢以下Datawhale成员对项目推进作出的贡献(排名不分先后):
|
68 |
+
|
69 |
+
**贡献者名单**
|
70 |
+
|
71 |
+
| 成员 | 个人简介 | 个人主页 |
|
72 |
+
| ------ | ------------------------------------------- | -------------------------------------------------- |
|
73 |
+
| 杨剑砺 | Datawhale成员,**项目负责人**,数据分析师 | 公众号:口羊的数据分析实验室 |
|
74 |
+
| 杨煜 | Datawhale成员,数据分析师 | 公众号:BI数据可视化 |
|
75 |
+
| 耿远昊 | Datawhale成员,华东师范大学在读 | Github:https://github.com/GYHHAHA |
|
76 |
+
| 李运佳 | Datawhale成员,上海交通大学在读 | 知乎:https://www.zhihu.com/people/li-yun-jia-68-9 |
|
77 |
+
| 居凤霞 | Datawhale成员,数据分析师,南瓜书项目贡献者 | |
|
78 |
+
|
79 |
+
**项目贡献情况**
|
80 |
+
|
81 |
+
> 《Fantastic-Matplotlib》V1.0 : 项目第一版上线
|
82 |
+
|
83 |
+
项目构建与整合:杨剑砺
|
84 |
+
|
85 |
+
第一章:杨剑砺
|
86 |
+
|
87 |
+
第二章:杨煜,居凤霞
|
88 |
+
|
89 |
+
第三章:耿远昊
|
90 |
+
|
91 |
+
第四章:李运佳
|
92 |
+
|
93 |
+
第五章:杨剑砺
|
94 |
+
|
95 |
+
> 《Fantastic-Matplotlib》V1.1 :第一次全面更新
|
96 |
+
|
97 |
+
全部章节的更新完善:杨剑砺
|
98 |
+
|
99 |
+
|
100 |
+
|
101 |
+
## 关注我们
|
102 |
+
|
103 |
+
<div align=center><img src="https://img-blog.csdnimg.cn/20210607220347359.png" width = "250" height = "270" alt="Datawhale是一个专注AI领域的开源组织,以“for the learner,和学习者一起成长”为愿景,构建对学习者最有价值的开源学习社区。关注我们,一起学习成长。"></div>
|
104 |
+
|
105 |
+
## LICENSE
|
106 |
+
|
107 |
+
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="知识共享许可协议" style="border-width:0" src="https://img.shields.io/badge/license-CC%20BY--NC--SA%204.0-lightgrey" /></a>
|
108 |
+
|
109 |
+
本作品采用<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议</a>进行许可。
|
database/readme_db/faster-git/README.md
ADDED
@@ -0,0 +1,107 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# faster-git
|
2 |
+
|
3 |
+
课程内容:
|
4 |
+
|
5 |
+
1. [第一章 Git简介](lecture01/README.md)
|
6 |
+
1. [第二章 Git基础命令](lecture02/README.md)
|
7 |
+
1. [第三章 Git分支管理](lecture03/README.md)
|
8 |
+
1. [第四章 Git工具](lecture04/README.md)
|
9 |
+
1. [第五章 Git内部原理](lecture05/README.md)
|
10 |
+
1. [第六章 GitFlow工作流实战](lecture06/README.md)
|
11 |
+
1. [第七章 Git提交规范](lecture07/README.md)
|
12 |
+
1. [第八章 Github/Gitee使用说明](lecture08/README.md)
|
13 |
+
1. [第九章 Git可视化工具下载](lecture09/README.md)
|
14 |
+
1. [第十章 Git团队协作以及合并时的diff工具](lecture10/README.md)
|
15 |
+
|
16 |
+
课程安排:
|
17 |
+
| 任务信息 |
|
18 |
+
|-------------------------------------------------------------|
|
19 |
+
| Task01:Git基础:第一、二章(2天) |
|
20 |
+
| Task02:Git分支管理及工具使用:第三、四章(2天) |
|
21 |
+
| Task03:Git内部原理及工作流实战:第五、六章(3天) |
|
22 |
+
| Task04:Git提交规范及Github/Gitee的使用:第七、八章(3天) |
|
23 |
+
| Task05:Git可视化工具下载和团队协作:第九、十章(3天) |
|
24 |
+
|
25 |
+
课程贡献人员:(排名不分先后,按章节顺序排序)
|
26 |
+
| 成员 | 个人简介 | 负责章节|
|
27 |
+
| --------------- | --------------------------------------------------- |-------|
|
28 |
+
| 牛志康 | Datawhale成员,西安电子科技大学本科生 | lecture01,lecture03|
|
29 |
+
|朱松青| Datawhale成员,上海交通大学研究生|lecture02|
|
30 |
+
|徐祥军|在职,互联网金融、后端开发|lecture04|
|
31 |
+
|李碧涵|Datawhale成员,在职|lecture05|
|
32 |
+
| 宋泽山 | Datawhale成员,算法开发 | lecture06|
|
33 |
+
|王晓亮|Datawhale成员,在职|lecture07|
|
34 |
+
|张翔宇|华东师范大学研究生|lecture08|
|
35 |
+
| 沈豪 | Datawhale成员,复旦大学网安博士在读 |lecture09|
|
36 |
+
| 夏峻 | Datawhale成员,上海交通大学研究生 |lecture10|
|
37 |
+
|
38 |
+
# Contributing
|
39 |
+
|
40 |
+
主分支为`main`
|
41 |
+
## Workflow
|
42 |
+
|
43 |
+
关于本项目中出现的问题或者其他补充材料,我们鼓励大家提出pr和issue,我们将在短时间内进行解答。本项目使用`Forking`工作流,具体参考[atlassian文档](https://www.atlassian.com/git/tutorials/comparing-workflows/forking-workflow)
|
44 |
+
|
45 |
+
大致步骤如下:
|
46 |
+
|
47 |
+
1. 在GitHub上Fork本仓库
|
48 |
+
1. Clone Fork后的个人仓库
|
49 |
+
1. 设置`upstream`仓库地址,并禁用`push`
|
50 |
+
1. 使用分支开发,课程分支名为`lecture{#NO}`,`#NO`保持两位,如`lecture07`,对应课程目录
|
51 |
+
1. PR之前保持与原始仓库的同步,之后发起PR请求
|
52 |
+
|
53 |
+
命令示例:
|
54 |
+
|
55 |
+
```shell
|
56 |
+
# fork
|
57 |
+
# clone
|
58 |
+
git clone [email protected]:USERNAME/faster-git.git
|
59 |
+
|
60 |
+
# set upstream
|
61 |
+
git remote add upstream [email protected]:datawhalechina/faster-git.git
|
62 |
+
# disable upstream push
|
63 |
+
git remote set-url --push upstream DISABLE
|
64 |
+
# verify
|
65 |
+
git remote -v
|
66 |
+
# some sample output:
|
67 |
+
# origin [email protected]:tomowang/faster-git.git (fetch)
|
68 |
+
# origin [email protected]:tomowang/faster-git.git (push)
|
69 |
+
# upstream [email protected]:datawhalechina/faster-git.git (fetch)
|
70 |
+
# upstream DISABLE (push)
|
71 |
+
|
72 |
+
# do your work
|
73 |
+
git checkout -b lecture07
|
74 |
+
# edit and commit and push your changes
|
75 |
+
git push -u origin lecture07
|
76 |
+
|
77 |
+
# keep your fork up to date
|
78 |
+
## fetch upstream main and merge with forked main branch
|
79 |
+
git fetch upstream
|
80 |
+
git checkout main
|
81 |
+
git merge upstream/main
|
82 |
+
## rebase brach and force push
|
83 |
+
git checkout lecture07
|
84 |
+
git rebase main
|
85 |
+
git push -f
|
86 |
+
```
|
87 |
+
|
88 |
+
## Commit Message
|
89 |
+
|
90 |
+
提交信息使用如下格式:`<type>: <short summary>`
|
91 |
+
|
92 |
+
```
|
93 |
+
<type>: <short summary>
|
94 |
+
│ │
|
95 |
+
│ └─⫸ Summary in present tense. Not capitalized. No period at the end.
|
96 |
+
│
|
97 |
+
└─⫸ Commit Type: lecture{#NO}|others
|
98 |
+
```
|
99 |
+
|
100 |
+
`others`包括非课程相关的改动,如本`README.md`中的变动,`.gitignore`的调整等。
|
101 |
+
|
102 |
+
## 关注我们
|
103 |
+
<div align=center><img src="https://raw.githubusercontent.com/datawhalechina/easy-rl/master/docs/res/qrcode.jpeg" width = "250" height = "270" alt="Datawhale是一个专注AI领域的开源组织,以“for the learner,和学习者一起成长”为愿景,构建对学习者最有价值的开源学习社区。关注我们,一起学习成长。"></div>
|
104 |
+
|
105 |
+
## LICENSE
|
106 |
+
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="知识共享许可协议" style="border-width:0" src="https://img.shields.io/badge/license-CC%20BY--NC--SA%204.0-lightgrey" /></a><br />本作品采用<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议</a>进行许可。
|
107 |
+
|
database/readme_db/free-excel/README.md
ADDED
@@ -0,0 +1,45 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Free-Excel
|
2 |
+
|
3 |
+
free excel中文意为**自由Excel**,源于希望学习者能够通过该教程能够更加自由地使用Excel进行数据分析、数据统计,解放Excel不再为Excel所困。内容上会更加偏实践应用,力求尽可能简单而又具有一定深度。其他很多教程都是按功能模块来讲解,而且还详细的说明每个功能,令人枯燥乏味。Free Excel根据多年工作经验总结而成,很多内容是常用且重要的,同时学完后能加深对Excel的理解。授之以鱼不如授之以渔,让我们开始愉快的Excel之旅吧!
|
4 |
+
|
5 |
+
本课程提供了**网页**与**Markdown** 2种不同的版本来展现课程内容
|
6 |
+
|
7 |
+
## 文件内容
|
8 |
+
|
9 |
+
- data :项目数据集
|
10 |
+
- docs :网页版课程
|
11 |
+
- Markdown:MD版课程
|
12 |
+
- 历史版本:V2.0课程
|
13 |
+
|
14 |
+
|
15 |
+
## 环境
|
16 |
+
|
17 |
+
本教程所使用Excel版本为2016或者2019,未提供下载安装,请自行装好环境以便操作。如果电脑没有Excel,可以下载WPS进行相关的操作学习。
|
18 |
+
|
19 |
+
WPS下载链接:https://www.wps.cn/product
|
20 |
+
|
21 |
+
注:本课程中部分函数为Excel新更新的内容,如果想体验Excel新添加的函数,可将Excel更新至最新版,或将WPS更新至11.1版及以上
|
22 |
+
|
23 |
+
|
24 |
+
## 更新版本
|
25 |
+
| 版本 | 日期 | 更新内容 |
|
26 |
+
| :---------: | :--------: | :------------------: |
|
27 |
+
| v1.0.0 beta | 2021-08-08 | 添加章节内容及数据集 |
|
28 |
+
| v2.0.0 | 2022-09-09 | 全新的Excel内容与教程 |
|
29 |
+
| v2.1.0 | 2022-12-17 | 全新的Excel内容增加了网页版 |
|
30 |
+
|
31 |
+
|
32 |
+
|
33 |
+
## 贡献
|
34 |
+
|
35 |
+
| 贡献者 | 版本 | 主页 | 联系 |
|
36 |
+
| :----------------: | :-----------:| :--------------------------: | :--------------------: |
|
37 |
+
| Jan Yang(简杨君) | v1.0.0 beta | https://github.com/yangjiada | [email protected] |
|
38 |
+
| 牧小熊(聂雄伟) | v2.0.0 |https://github.com/muxiaoxiong| [email protected]|
|
39 |
+
|
40 |
+
|
41 |
+
## 关注我们
|
42 |
+
|
43 |
+
> "Datawhale是一个专注AI领域的开源组织,以“for the learner,和学习者一起成长”为愿景,构建对学习者最有价值的开源学习社区。关注我们,一起学习成长。"
|
44 |
+
|
45 |
+
[![img](Markdown/src/datawhale.jpg)](https://github.com/datawhalechina/team-learning-sql/blob/main/img/datawhale_code.jpeg)
|
database/readme_db/fun-marl/README.md
ADDED
@@ -0,0 +1,37 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# fun-marl
|
2 |
+
|
3 |
+
本项目旨在根据英文书籍、综述论文,梳理多智能体强化学习(Multi-Agent RL)的相关知识点。在内容深度上,希望能够对MARL领域内的博弈论及其解法,还有MARL常见算法类型能够均有深入梳理;在内容广度上,希望能够涵盖博弈论、单智能体强化学习、多智能体强化学习,以及多智能体强化学习的挑战。
|
4 |
+
|
5 |
+
|
6 |
+
|
7 |
+
## 内容导航
|
8 |
+
|
9 |
+
| 章节 | 进度 |
|
10 |
+
| :---------------------------------- | :----: |
|
11 |
+
| 第一章 强化学习简介 | 更新中 |
|
12 |
+
| 第二章 博弈:多智能体之间交互的模型 | 更新中 |
|
13 |
+
| 第三章 博弈的解概念 | 更新中 |
|
14 |
+
| 第四章 多智能体强化学习:概览 | 更新中 |
|
15 |
+
| 第五章 多智能体强化学习:基础算法 | |
|
16 |
+
| 第六章 多智能体强化学习:算法进阶 | |
|
17 |
+
| 第七章:多智能体环境 | |
|
18 |
+
|
19 |
+
|
20 |
+
|
21 |
+
**注:** 与该项目有关的意见以及建议可以联系<[email protected]>
|
22 |
+
|
23 |
+
|
24 |
+
|
25 |
+
## 关注我们
|
26 |
+
|
27 |
+
<div align=center>
|
28 |
+
<p>扫描下方二维码关注公众号:Datawhale</p>
|
29 |
+
<img src="https://raw.githubusercontent.com/datawhalechina/pumpkin-book/master/res/qrcode.jpeg" width = "180" height = "180">
|
30 |
+
</div>
|
31 |
+
|
32 |
+
|
33 |
+
## LICENSE
|
34 |
+
|
35 |
+
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="知识共享许可协议" style="border-width:0" src="https://img.shields.io/badge/license-CC%20BY--NC--SA%204.0-lightgrey" /></a><br />本作品采用<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议</a>进行许可。
|
36 |
+
|
37 |
+
*注:默认使用CC 4.0协议,也可根据自身项目情况选用其他协议*
|
database/readme_db/fun-rec/README.md
ADDED
@@ -0,0 +1,179 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# FunRec-[在线阅读](https://datawhalechina.github.io/fun-rec/#/)
|
2 |
+
<p align="left">
|
3 |
+
<img src='https://img.shields.io/badge/python-3.8+-blue'>
|
4 |
+
<img src='https://img.shields.io/badge/Tensorflow-2.2+-blue'>
|
5 |
+
<img src='https://img.shields.io/badge/NumPy-1.22.3-brightgreen'>
|
6 |
+
<img src='https://img.shields.io/badge/pandas-1.4.1-brightgreen'>
|
7 |
+
<img src='https://img.shields.io/badge/sklearn-1.0.2-brightgreen'>
|
8 |
+
</p>
|
9 |
+
|
10 |
+
本教程主要是针对具有机器学习基础并想找推荐算法岗位的同学。教程内容由推荐系统概述、推荐算法基础、推荐系统实战和推荐系统面经四个部分组成。本教程对于入门推荐算法的同学来说,可以从推荐算法的基础到实战再到面试,形成一个闭环。每个部分的详细内容如下:
|
11 |
+
|
12 |
+
- **推荐系统概述。** 这部分内容会从推荐系统的意义及应用,到架构及相关的技术栈做一个概述性的总结,目的是为了让初学者更加了解推荐系统。
|
13 |
+
- **推荐系统算法基础。** 这部分会介绍推荐系统中对于算法工程师来说基础并且重要的相关算法,如经典的召回、排序算法。随着项目的迭代,后续还会不断的总结其他的关键算法和技术,如重排、冷启动等。
|
14 |
+
- **推荐系统实战。** 这部分内容包含推荐系统竞赛实战和新闻推荐系统的实践。其中推荐系统竞赛实战是结合阿里天池上的新闻推荐入门赛做的相关内容。新闻推荐系统实践是实现一个具有前后端交互及整个推荐链路的项目,该项目是一个新闻推荐系统的demo没有实际的商业化价值。
|
15 |
+
- **推荐系统算法面经。** 这里会将推荐算法工程师面试过程中常考的一些基础知识、热门技术等面经进行整理,方便同学在有了一定推荐算法基础之后去面试,因为对于初学者来说只有在公司实习学到的东西才是最有价值的。
|
16 |
+
|
17 |
+
**特别说明**:项目内容是由一群热爱分享的同学一起花时间整理而成,**大家的水平都非常有限,内容难免存在一些错误和问题,如果学习者发现问题,也欢迎及时反馈,避免让后学者踩坑!** 如果对该项目有改进或者优化的建议,还希望通过下面的二维码找到项目负责人或者在交流社区中提出,我们会参考大家的意见进一步对该项目进行修改和调整!如果想对该项目做一些贡献,也可以通过上述同样的方法找到我们!
|
18 |
+
|
19 |
+
为了方便学习和交流,**我们建立了FunRec学习社区(微信群+知识星球)**,微信群方便大家平时日常交流和讨论,知识星球方便沉淀内容。由于我们的内容面向的人群主要是学生,所以**知识星球永久免费**,感兴趣的可以加入星球讨论(加入星球的同学先看置定的必读帖)!**FunRec学习社区内部会不定期分享(FunRec社区中爱分享的同学)技术总结、个人管理等内容,[跟技术相关的分享内容都放在了B站](https://space.bilibili.com/431850986/channel/collectiondetail?sid=339597)上面**。由于微信群的二维码只有7天内有效,所以直接加下面这个微信,备注:**Fun-Rec**,会被拉到Fun-Rec交流群,如果觉得微信群比较吵建议直接加知识星球!。
|
20 |
+
|
21 |
+
<div align=center>
|
22 |
+
<img src="http://ryluo.oss-cn-chengdu.aliyuncs.com/图片image-20220408193745249.png" alt="image-20220408193745249" width="500px";" />
|
23 |
+
</div>
|
24 |
+
|
25 |
+
**注意:不建议直接在github上面阅读(公式图片容易解析错误),推荐点击上面的在线阅读或者离线下载下来之后使用markdown工具(如typora)查看!**
|
26 |
+
## 内容导航
|
27 |
+
### 推荐系统概述
|
28 |
+
- [推荐系统的意义](docs/ch01/ch1.1.md)
|
29 |
+
- [推荐系统架构](docs/ch01/ch1.2.md)
|
30 |
+
- [推荐系统技术栈](docs/ch01/ch1.3.md)
|
31 |
+
|
32 |
+
### 推荐系统算法基础
|
33 |
+
#### **经典召回模型**
|
34 |
+
- **基于协同过滤的召回**
|
35 |
+
- [UserCF](docs/ch02/ch2.1/ch2.1.1/usercf.md)
|
36 |
+
- [ItemCF](docs/ch02/ch2.1/ch2.1.1/itemcf.md)
|
37 |
+
- [Swing](docs/ch02/ch2.1/ch2.1.1/Swing.md)
|
38 |
+
- [矩阵分解](docs/ch02/ch2.1/ch2.1.1/mf.md)
|
39 |
+
- **基于向量的召回**
|
40 |
+
- [FM召回](docs/ch02/ch2.1/ch2.1.2/FM.md)
|
41 |
+
- **item2vec召回系列**
|
42 |
+
- [word2vec原理](docs/ch02/ch2.1/ch2.1.2/word2vec.md)
|
43 |
+
- [item2vec召回](docs/ch02/ch2.1/ch2.1.2/item2vec.md)
|
44 |
+
- [Airbnb召回](docs/ch02/ch2.1/ch2.1.2/Airbnb.md)
|
45 |
+
- [YoutubeDNN召回](docs/ch02/ch2.1/ch2.1.2/YoutubeDNN.md)
|
46 |
+
- **双塔召回**
|
47 |
+
- [经典双塔](docs/ch02/ch2.1/ch2.1.2/DSSM.md)
|
48 |
+
- [Youtube双塔](docs/ch02/ch2.1/ch2.1.2/YoutubeTwoTower.md)
|
49 |
+
- **图召回**
|
50 |
+
- [EGES](docs/ch02/ch2.1/ch2.1.3/EGES.md)
|
51 |
+
- [PinSAGE](docs/ch02/ch2.1/ch2.1.3/PinSage.md)
|
52 |
+
- **序列召回**
|
53 |
+
- [MIND](docs/ch02/ch2.1/ch2.1.4/MIND.md)
|
54 |
+
- [SDM](docs/ch02/ch2.1/ch2.1.4/SDM.md)
|
55 |
+
- **树模型召回**
|
56 |
+
- [TDM](docs/ch02/ch2.1/ch2.1.5/TDM.md)
|
57 |
+
|
58 |
+
#### **经典排序模型**
|
59 |
+
- **[GBDT+LR](docs/ch02/ch2.2/ch2.2.1.md)**
|
60 |
+
- **特征交叉**
|
61 |
+
- [FM](docs/ch02/ch2.2/ch2.2.2/FM.md)
|
62 |
+
- [PNN](docs/ch02/ch2.2/ch2.2.2/PNN.md)
|
63 |
+
- [DCN](docs/ch02/ch2.2/ch2.2.2/DCN.md)
|
64 |
+
- [AutoInt](docs/ch02/ch2.2/ch2.2.2/AutoInt.md)
|
65 |
+
- [FiBiNET](docs/ch02/ch2.2/ch2.2.2/FiBiNet.md)
|
66 |
+
- **WideNDeep系列**
|
67 |
+
- **[Wide&Deep](docs/ch02/ch2.2/ch2.2.3/WideNDeep.md)**
|
68 |
+
- **改进Deep侧**
|
69 |
+
- [NFM](docs/ch02/ch2.2/ch2.2.3/NFM.md)
|
70 |
+
- [AFM](docs/ch02/ch2.2/ch2.2.3/AFM.md)
|
71 |
+
- **改进Wide侧**
|
72 |
+
- [DeepFM](docs/ch02/ch2.2/ch2.2.3/DeepFM.md)
|
73 |
+
- [xDeepFM](docs/ch02/ch2.2/ch2.2.3/xDeepFM.md)
|
74 |
+
- **序列模型**
|
75 |
+
- [DIN](docs/ch02/ch2.2/ch2.2.4/DIN.md)
|
76 |
+
- [DIEN](docs/ch02/ch2.2/ch2.2.4/DIEN.md)
|
77 |
+
- [DSIN](docs/ch02/ch2.2/ch2.2.4/DSIN.md)
|
78 |
+
- **多任务学习**
|
79 |
+
- [多任务学习概述](docs/ch02/ch2.2/ch2.2.5/2.2.5.0.md)
|
80 |
+
- [ESMM](docs/ch02/ch2.2/ch2.2.5/ESMM.md)
|
81 |
+
- [MMOE](docs/ch02/ch2.2/ch2.2.5/MMOE.md)
|
82 |
+
- [PLE](docs/ch02/ch2.2/ch2.2.5/PLE.md)
|
83 |
+
|
84 |
+
### 推荐系统实战
|
85 |
+
|
86 |
+
#### **竞赛实践(天池入门赛-新闻推荐【建议使用tf1.14】)**
|
87 |
+
- **视频**
|
88 |
+
- [赛题理解](https://www.bilibili.com/video/BV1do4y1d7FP?p=1)
|
89 |
+
- [多路召回](https://www.bilibili.com/video/BV1do4y1d7FP?p=4)
|
90 |
+
- [特征工程](https://www.bilibili.com/video/BV1do4y1d7FP?p=2)
|
91 |
+
- [上分技巧](https://www.bilibili.com/video/BV1do4y1d7FP?p=3)
|
92 |
+
- **文档**
|
93 |
+
- [赛题理解&Baseline](docs/ch03/ch3.1/markdown/ch3.1.1.md)
|
94 |
+
- [数据分析](docs/ch03/ch3.1/markdown/ch3.1.2.md)
|
95 |
+
- [多路召回](docs/ch03/ch3.1/markdown/ch3.1.3.md)
|
96 |
+
- [特征工程](docs/ch03/ch3.1/markdown/ch3.1.4.md)
|
97 |
+
- [排序模型&模型融合](docs/ch03/ch3.1/markdown/ch3.1.5.md)
|
98 |
+
|
99 |
+
#### **新闻推荐系统实践**
|
100 |
+
- [特别说明(必看)](docs/ch03/ch3.2/3.2.md)
|
101 |
+
- **视频**
|
102 |
+
- [新闻推荐系统流程的构建视频讲解](https://datawhale.feishu.cn/minutes/obcnzns778b725r5l535j32o)
|
103 |
+
- **文档**
|
104 |
+
- **离线物料系统的构建**
|
105 |
+
- [Mysql基础](docs/ch03/ch3.2/3.2.1.1.md)
|
106 |
+
- [MongoDB基础](docs/ch03/ch3.2/3.2.1.2.md)
|
107 |
+
- [Redis基础](docs/ch03/ch3.2/3.2.1.3.md)
|
108 |
+
- [Scrapy基础及新闻爬取实战](docs/ch03/ch3.2/3.2.1.4.md)
|
109 |
+
- [自动化构建用户及物料画像](docs/ch03/ch3.2/3.2.1.5.md)
|
110 |
+
- **前后端基础及交互**
|
111 |
+
- [前端基础及Vue实战](docs/ch03/ch3.2/3.2.2.1.md)
|
112 |
+
- [flask简介及基础](docs/ch03/ch3.2/3.2.2.2.md)
|
113 |
+
- [前后端交互](docs/ch03/ch3.2/3.2.2.3.md)
|
114 |
+
- [推荐系统流程的构建](docs/ch03/ch3.2/3.2.3.md)
|
115 |
+
- **召回**
|
116 |
+
- [规则类召回](docs/ch03/ch3.2/3.2.4.1.md)
|
117 |
+
- [YoutubeDNN召回](docs/ch03/ch3.2/3.2.4.2.md)
|
118 |
+
- [DSSM召回](docs/ch03/ch3.2/3.2.4.3.md)
|
119 |
+
- [DeepFM排序模型](docs/ch03/ch3.2/3.2.5.md)
|
120 |
+
- [重排(打散策略)](docs/ch03/ch3.2/3.2.6.md)
|
121 |
+
- **当前问题汇总**
|
122 |
+
- [熟悉推荐系统基本流程问答整理](docs/ch03/ch3.2/3.2.8.1.md)
|
123 |
+
- [数据库的基本使用问答整理](docs/ch03/ch3.2/3.2.8.2.md)
|
124 |
+
- [离线物料系统的构建问答整理](docs/ch03/ch3.2/3.2.8.3.md)
|
125 |
+
|
126 |
+
### 推荐系统算法面经
|
127 |
+
- [ML与DL基础](docs/ch04/ch4.1.md)
|
128 |
+
- [推荐模型相关](docs/ch04/ch4.2.md)
|
129 |
+
- [热门技术相关](docs/ch04/ch4.3.md)
|
130 |
+
- [业务场景相关](docs/ch04/ch4.4.md)
|
131 |
+
- [HR及其他](docs/ch04/ch4.5.md)
|
132 |
+
|
133 |
+
|
134 |
+
### 备注
|
135 |
+
|
136 |
+
[2.1 竞赛实践(天池入门赛-新闻推荐)](https://tianchi.aliyun.com/competition/entrance/531842/forum)
|
137 |
+
|
138 |
+
<div align=center>
|
139 |
+
<img src="http://ryluo.oss-cn-chengdu.aliyuncs.com/图片image-20211213165802957.png" alt="image-20211213165802957" width="800px" />
|
140 |
+
<img src="http://ryluo.oss-cn-chengdu.aliyuncs.com/图片image-20211213165847593.png" alt="image-20211213165847593" width="800px" />
|
141 |
+
</div>
|
142 |
+
|
143 |
+
**2.2 新闻推荐系统实践前端展示和后端逻辑(项目没有任何商用价值仅供入门者学习)**
|
144 |
+
|
145 |
+
<div align=center>
|
146 |
+
<img src="http://ryluo.oss-cn-chengdu.aliyuncs.com/图片image-20211205142026937.png" alt="image-20211205142026937" width="800px" />
|
147 |
+
<img src="http://ryluo.oss-cn-chengdu.aliyuncs.com/图片Fun-Rec新闻推荐系统.png" alt="Fun-Rec新闻推荐系统" width="810px" />
|
148 |
+
</div>
|
149 |
+
|
150 |
+
|
151 |
+
## 致谢
|
152 |
+
|
153 |
+
**核心贡献者**
|
154 |
+
|
155 |
+
- 罗如意-项目负责人(Datawhale成员-西安电子科技大学-算法工程师)
|
156 |
+
- 何世福-项目发起者(Datawhale成员-大连理工大学-算法工程师)
|
157 |
+
- 吴忠强(Datawhale成员-东北大学-算法工程师-CSDN博客专家)
|
158 |
+
- 赖敏材(Datawhale成员-上海科技大学-算法工程师)
|
159 |
+
- 汪志鸿(Datawhale成员-东北大学-算法工程师)
|
160 |
+
- 王辰玥(Datawhale意向成员-中国地质大学(武汉)-在校生)
|
161 |
+
|
162 |
+
**重要贡献者(根据内容+社区贡献程度筛选)**
|
163 |
+
|
164 |
+
- 唐鑫(Datawhale意向成员-西安电子科技大学-在校生)
|
165 |
+
- 王宇宸(Datawhale意向成员-上海科技大学-在校生)
|
166 |
+
|
167 |
+
**其他**
|
168 |
+
|
169 |
+
感谢徐何军,李万业,陈琰钰,陈锴,梁家晖,王贺��宁彦吉,田雨,宋禹成,刘雯静,吕豪杰,张汉隆,吴丹飞,王云川,肖桐,管柯琴,陈雨龙,宋禹成等在最早期的时候对fun-rec所做的贡献!
|
170 |
+
|
171 |
+
## 关注我们
|
172 |
+
<div align=center>
|
173 |
+
<p>扫描下方二维码关注公众号:Datawhale</p>
|
174 |
+
<img src="https://raw.githubusercontent.com/datawhalechina/pumpkin-book/master/res/qrcode.jpeg" width = "180" height = "180">
|
175 |
+
</div>
|
176 |
+
|
177 |
+
## LICENSE
|
178 |
+
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="知识共享许可协议" style="border-width:0" src="https://img.shields.io/badge/license-CC%20BY--NC--SA%204.0-lightgrey" /></a>
|
179 |
+
本作品采用<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议</a>进行许可。
|
database/readme_db/go-talent/README.md
ADDED
@@ -0,0 +1,42 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<!--
|
2 |
+
* @Author: 光城
|
3 |
+
* @Date: 2020-10-30 14:20:42
|
4 |
+
* @LastEditors: 光城
|
5 |
+
* @LastEditTime: 2020-12-06 12:45:17
|
6 |
+
* @Description:
|
7 |
+
* @FilePath: /go-talent/README.md
|
8 |
+
-->
|
9 |
+
## go-talent
|
10 |
+
|
11 |
+
![](./img/golang.png)
|
12 |
+
|
13 |
+
### 1.Go组队学习内容大纲
|
14 |
+
|
15 |
+
[0.Go初探](0.Go初探.md)
|
16 |
+
|
17 |
+
[1.数据类型、关键字、标识符](1.数据类型、关键字、标识符.md)
|
18 |
+
|
19 |
+
[2.变量、常量、枚举 ](2.变量、常量、枚举.md)
|
20 |
+
|
21 |
+
[3.运算符、控制语句](3.运算符、控制语句.md)
|
22 |
+
|
23 |
+
[4.字典、字符串](4.字典、字符串.md)
|
24 |
+
|
25 |
+
[5.数组、切片](5.数组、切片.md)
|
26 |
+
|
27 |
+
[6.函数](6.函数.md)
|
28 |
+
|
29 |
+
[7.结构体、方法、接口](7.结构体、方法、接口.md)
|
30 |
+
|
31 |
+
[8.包管理](8.包管理.md)
|
32 |
+
|
33 |
+
[9.异常处理](9.异常处理.md)
|
34 |
+
|
35 |
+
[10.反射机制](10.反射机制.md)
|
36 |
+
|
37 |
+
[11.单元测试](11.单元测试.md)
|
38 |
+
|
39 |
+
[12.并发编程](12.并发编程.md)
|
40 |
+
|
41 |
+
### 2.贡献者
|
42 |
+
光城、伊雪、苏鹏、梁家辉
|
database/readme_db/grape-book/README.md
ADDED
@@ -0,0 +1,53 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# 图深度学习(葡萄书)
|
2 |
+
|
3 |
+
<div align=center>
|
4 |
+
<img src="figures/grape_book_logo.png" width = "380">
|
5 |
+
</div>
|
6 |
+
|
7 |
+
## 葡萄书简介
|
8 |
+
|
9 |
+
本教程主要基于京东团队的《图深度学习从理论到实践》,密西根州立大学的汤继良老师团队《图深度学习》,斯坦福大学 CS224W 图机器学习的内容进行整合,旨在帮助读者无痛入门图深度学习 。除了介绍深度学习和图基础知识以及经典图神经网络模型的理论外,我们还基于开源的图框架 NetworkX, DGL 和 PyG 提供了直接的上手代码。
|
10 |
+
|
11 |
+
## 目录
|
12 |
+
在线阅读地址:https://datawhalechina.github.io/grape-book
|
13 |
+
|
14 |
+
| 章节 | 内容 |
|
15 |
+
| :--- | :--- |
|
16 |
+
| 第一章 | [介绍](https://datawhalechina.github.io/grape-book/#/docs/01%E4%BB%8B%E7%BB%8D/01%E4%BB%8B%E7%BB%8D) | |
|
17 |
+
| 第二章 | [图理论基础](https://datawhalechina.github.io/grape-book/#/docs\02%E5%9B%BE%E7%90%86%E8%AE%BA%E5%9F%BA%E7%A1%80\02%E5%9B%BE%E7%90%86%E8%AE%BA%E5%9F%BA%E7%A1%80) |
|
18 |
+
| 第三章 | [深度学习基础](https://datawhalechina.github.io/grape-book/#/docs\03%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0%E5%9F%BA%E7%A1%80\03%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0%E5%9F%BA%E7%A1%80) |
|
19 |
+
| 第四章 | [图表示学习](https://datawhalechina.github.io/grape-book/#/docs\04%E5%9B%BE%E8%A1%A8%E7%A4%BA%E5%AD%A6%E4%B9%A0\04%E5%9B%BE%E8%A1%A8%E7%A4%BA%E5%AD%A6%E4%B9%A0) |
|
20 |
+
| 第五章 | [图卷积网络](https://datawhalechina.github.io/grape-book/#/docs\05%E5%9B%BE%E5%8D%B7%E7%A7%AF%E7%BD%91%E7%BB%9C\05%E5%9B%BE%E5%8D%B7%E7%A7%AF%E7%BD%91%E7%BB%9C) |
|
21 |
+
| 第六章 | [关系图卷积神经网络](https://datawhalechina.github.io/grape-book/#/docs\06%E5%85%B3%E7%B3%BB%E5%9B%BE%E5%8D%B7%E7%A7%AF%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C\06%E5%85%B3%E7%B3%BB%E5%9B%BE%E5%8D%B7%E7%A7%AF%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C) |
|
22 |
+
| 第七章 | [图注意力网络](https://datawhalechina.github.io/grape-book/#/docs\07%E5%9B%BE%E6%B3%A8%E6%84%8F%E5%8A%9B%E7%BD%91%E7%BB%9C\07%E5%9B%BE%E6%B3%A8%E6%84%8F%E5%8A%9B%E7%BD%91%E7%BB%9C) |
|
23 |
+
| ... | ...|
|
24 |
+
|
25 |
+
本书第一版包含第一到七章,涵盖了最常见的各类图神经网络理论和代码讲解。后续章节将包含图神经网络在各个领域内更加实际的应用案例。
|
26 |
+
|
27 |
+
## 贡献者
|
28 |
+
|
29 |
+
- [@小饭](https://github.com/xinqi-fan):项目负责人,负责第一章介绍、第二章图理论基础、第四章图表示学习、及各章节校对
|
30 |
+
- [@银晗](https://github.com/YinHan-Zhang):负责第三章深度学习基础
|
31 |
+
- [@洋](https://github.com/liu-yang-maker?tab=achievements):负责第五章图卷积网络
|
32 |
+
- [@汝超](https://github.com/rickyxume):项目发起人,负责第六章关系图卷积神经网络
|
33 |
+
- [@凯](https://github.com/HaSai666):负责第七章图注意力网络
|
34 |
+
|
35 |
+
|
36 |
+
## 参与贡献
|
37 |
+
|
38 |
+
- 如果你想参与到项目中来欢迎提交 [Issue](https://github.com/datawhalechina/grape-book/issues) 申请开启一个新的章节,并在完成后进行 pull request。
|
39 |
+
- 如果你发现了一些问题,欢迎在 [Issue](https://github.com/datawhalechina/grape-book/issues) 中进行反馈🐛。
|
40 |
+
- 如果你对本项目感兴趣想要参与进来可以联系项目负责人[@小饭](https://github.com/xinqi-fan) 进行交流💬。
|
41 |
+
|
42 |
+
如果你对 Datawhale 很感兴趣并想要发起一个新的项目,欢迎查看 [Datawhale 贡献指南](https://github.com/datawhalechina/DOPMC#%E4%B8%BA-datawhale-%E5%81%9A%E5%87%BA%E8%B4%A1%E7%8C%AE)。
|
43 |
+
|
44 |
+
## 致谢
|
45 |
+
本教程得到了《图深度学习从理论到实践》作者[姚博士](https://github.com/LuckBoyPhd/Resume)的肯定与支持,大家可以可以在[京东](https://item.jd.com/13167491.html )购买此书的纸质或电子版进行更加深入的学习!
|
46 |
+
|
47 |
+
## 关注我们
|
48 |
+
<div align=center>
|
49 |
+
<p>扫描下方二维码关注公众号:Datawhale</p>
|
50 |
+
<img src="https://raw.githubusercontent.com/datawhalechina/pumpkin-book/master/res/qrcode.jpeg" width = "180" height = "180">
|
51 |
+
</div>
|
52 |
+
## LICENSE
|
53 |
+
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="知识共享许可协议" style="border-width:0" src="https://img.shields.io/badge/license-CC%20BY--NC--SA%204.0-lightgrey" /></a><br />本作品采用<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议</a>进行许可。
|
database/readme_db/hands-dirty-nlp/README.md
ADDED
@@ -0,0 +1,87 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# hands-dirty-nlp
|
2 |
+
- 课程前置要求:默认已完成<必修课程>
|
3 |
+
- 定位及目的:本课程面对具有一定机器学习基础,但尚未入门的NLPer或经验尚浅的NLPer,尽力避免陷入繁琐枯燥的公式讲解中,力求用代码展示每个模型背后的设计思想,同时也会带大家梳理每个模块下的技术演变,做到既知树木也知森林。
|
4 |
+
|
5 |
+
## 课程目录
|
6 |
+
### 文本表示
|
7 |
+
- 任务定义:文本表示是把现实中的文本数据转化为计算机能够运算的数值向量,这样就可以针对文本信息进行计算,进而来完成各种NLP任务。本章将介绍文本表示的演进过程,基于此大家也可对NLP的发展历程有一个基本了解。
|
8 |
+
- 离散表示:one-hot、bag-of-word、tf-idf
|
9 |
+
- 稠密表示-词向量:word2vec、glove
|
10 |
+
- 预训练系列:
|
11 |
+
- 初识预训练模型:elmo
|
12 |
+
- 自编码:bert、ernie等
|
13 |
+
- 自回归:gpt等
|
14 |
+
- Prompt
|
15 |
+
- 发展脉络
|
16 |
+
|
17 |
+
### 序列标注
|
18 |
+
- 任务定义:序列标注的涵盖范围很广泛,可用于解决一系列对token进行分类的问题,如分词、命名实体识别、词性标注等。本章以命名实体识别为切入点,介绍序列标注任务的前世今生。
|
19 |
+
- NER
|
20 |
+
- 任务简介:标注方式、评价指标
|
21 |
+
- 传统方法:词典匹配、CRF、HMM
|
22 |
+
- 深度学习方法:LSTM + CRF、BERT+CRF
|
23 |
+
- 融入词汇的方法:lattice、FLAT、LEBERT(位置编码在NER的重要性)
|
24 |
+
- 解码方式:softmax、CRF、span-pointer、片段排列
|
25 |
+
- flat-NER
|
26 |
+
- nested-NER
|
27 |
+
- 发展脉络
|
28 |
+
|
29 |
+
### 分类任务
|
30 |
+
- 任务定义:分类任务是NLP中应用最多的任务,在工业界很多实际业务问题都可以抽象成分类任务。本章以意图识别为切入点,介绍分类任务的经典方法。
|
31 |
+
- 意图识别:
|
32 |
+
- 任务简介:评价指标
|
33 |
+
- 经典深度学习方法:fasttext、text-cnn、lstm
|
34 |
+
- 基于预训练模型的方法:bert
|
35 |
+
- 解码:
|
36 |
+
- 单标签
|
37 |
+
- 多标签
|
38 |
+
- 发展脉络
|
39 |
+
|
40 |
+
### 文本匹配
|
41 |
+
- 任务定义:文本匹配是为了判断两个文本之间的相关关系,不同的场景下对”相关的“的定义是不同的,例如:qq匹配(query-query):对话任务中,判断两个问句是否相似;qa匹配(query-answer):对话任务中,判断用户问句与回复是否对应;qt匹配(query-title):搜索任务中,判断用户的输入和文章标题是否相关。本小节以qq切入点,介绍匹配任务方法的演进。
|
42 |
+
- qq匹配
|
43 |
+
- 任务简介
|
44 |
+
- 双塔:优缺点
|
45 |
+
- dssm
|
46 |
+
- bert双塔
|
47 |
+
- 交互:优缺点
|
48 |
+
- ESIM
|
49 |
+
- simbert
|
50 |
+
- 发展脉络
|
51 |
+
|
52 |
+
### 生成任务
|
53 |
+
- 任务定义: 文本生成是NLP中较为复杂的任务,本章只聚焦于文本到文本的生成,例如生成式摘要、机器翻译、对话生成等等。本文以其中的对话生成和机器翻译为切入点,介绍其中的经典方法。
|
54 |
+
- 对话生成
|
55 |
+
- 任务简介
|
56 |
+
- 方法:bert-base-s2s、gpt
|
57 |
+
- 机器翻译
|
58 |
+
- 任务简介
|
59 |
+
- 方法:rnn-base-s2s、bert-base-s2s
|
60 |
+
- 发展脉络
|
61 |
+
|
62 |
+
### 阅读理解
|
63 |
+
- 任务定义:相对于其他NLP任务,阅读理解侧重于深入理解文档中的语义信息,一般来说包含完型填空、多项选择、答案抽取、自由问答这4个任务。本章以其中的多项选择与答案抽取作为切入点,介绍其中的经典方法。
|
64 |
+
- 多项选择
|
65 |
+
- 任务简介
|
66 |
+
- 方法
|
67 |
+
- 答案抽取
|
68 |
+
- 任务简介
|
69 |
+
- 方法
|
70 |
+
- 发展脉络
|
71 |
+
|
72 |
+
## 贡献者名单
|
73 |
+
| 姓名 | 个人简介 | 个人主页 |
|
74 |
+
| :----| :---- | :---- |
|
75 |
+
| 慎独 | NLP算法工程师,项目负责人 | - |
|
76 |
+
| 西瓜骑士 | NLP算法工程师,项目负责人 | - |
|
77 |
+
| 芙蕖 | NLP算法工程师 | - |
|
78 |
+
|
79 |
+
|
80 |
+
## 关注我们
|
81 |
+
<div align=center>
|
82 |
+
<p>扫描下方二维码关注公众号:Datawhale</p>
|
83 |
+
<img src="https://raw.githubusercontent.com/datawhalechina/pumpkin-book/master/res/qrcode.jpeg" width = "180" height = "180">
|
84 |
+
</div>
|
85 |
+
|
86 |
+
## LICENSE
|
87 |
+
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="知识共享许可协议" style="border-width:0" src="https://img.shields.io/badge/license-CC%20BY--NC--SA%204.0-lightgrey" /></a><br />本作品采用<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议</a>进行许可。
|
database/readme_db/hands-on-data-analysis/README.md
ADDED
@@ -0,0 +1,122 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Hands-on data analysis
|
2 |
+
|
3 |
+
# 动手学数据分析
|
4 |
+
|
5 |
+
## 项目初衷
|
6 |
+
|
7 |
+
动手学数据分析是Datawhale关于数据分析方向的开源项目,这个项目始于Datawhale以前的数据分析课程,那时我作为一名学员的以《python for data analysis》这本书为教材教材,通过刷这本教材的代码来学习数据分析,书里对于pandas和numpy操作讲的很细,但是对于数据分析的逻辑的内容,就少了很多。所以很多学习者和我学完之后发现,敲了一堆代码并不知道它们有什么用。“不知道怎么用”这个想法其实很好理解,在学完了比较理论的东西之后,在生活中实际运用方式和从理论中学到的会有不小的鸿沟。如何抹平这个鸿沟,可能就需要自己的尝试以及学习实战的资料。
|
8 |
+
|
9 |
+
所以有没有这样一门课,以项目为主线,将知识点孕育其中,通过边学,边做以及边被引导的方式来使学习效果达到更好,学完之后既能掌握pandas等的知识点又能掌握数据分析的大致思路和流程。通过调查发现,市面上关于**数据分析**的项目好像没有可以完全符合这样标准的(失望.jpg)。所以Datawhale的小伙伴一拍即合,一起来做一门这样的开源课程,完成上面所说的那些小目标,让所有使用了我们课程的小伙伴可以更好的开启他的数据分析之路。
|
10 |
+
|
11 |
+
现在这门课程已经更新到了1.3版本,我们改善了更好的学习流程,以及提供了更好的答案讲解。后期将会逐步推出配套的教材。我们还是希望从基础的数据分析操作和数据分析流程讲起,在每个模块都引入实战的例子。之后会不断加入新的内容(比如数据挖掘的算法之类的)。这是开源项目,我们会不断迭代,大家共同参与,一起努力。
|
12 |
+
|
13 |
+
关于我们项目的名字——动手学数据分析(Hands-on data analysis)。数据分析是一个要从一堆数字中看到真相的过程。学会操作数据只是数据分析的一半功力,剩下的另一半要用我们的大脑,多多思考,多多总结,更要多动手,实打实的的敲代码。所以也希望在学习这门课时,多去推理,多去问问为什么;多多练习,确保理论实践结合起来,在课程结束的时候一定会有大收获。
|
14 |
+
|
15 |
+
#### 搭配资料
|
16 |
+
|
17 |
+
既然这是一门诞生于Datawhale的课程,学习它的时候搭配datawhale所配备其他资源会更好。我们提供的代码是jupyter形式的,里面有你所要完成的任务,也有我们给你的提示和引导,所以这样的形式再结合Datawhale的[组队学习](https://github.com/datawhalechina/team-learning-data-mining),可以和大家一起讨论,一起补充资料,那么学习效果一定会加倍。还有,Datawhale之前开源了一门pandas的教程—[Joyful-Pandas](https://github.com/datawhalechina/joyful-pandas)。里面梳理了Pandas的逻辑以及代码展示,所以在我们数据分析的课程中,关于Pandas的操作,你可以参考*Joyful-Pandas*,可以让你的数据分析学习事半功倍。
|
18 |
+
|
19 |
+
|
20 |
+
## 项目编排与服用方法
|
21 |
+
|
22 |
+
#### 编排
|
23 |
+
|
24 |
+
课程现分为三个单元,大致可以分为:数据基础操作,数据清洗与重构,建模和评估。
|
25 |
+
|
26 |
+
1. 第一部分:我们获得一个要分析的数据,我要学会如何加载数据,查看数据,然后学习Pandas的一些基础操作,最后开始尝试探索性的数据分析。
|
27 |
+
2. 第二部分:当我们可以比较熟练的操作数据并认识这个数据之后,我们需要开始数据清洗以及重构,将原始数据变为一个可用好用的数据,为之后放入模型做准备
|
28 |
+
3. 第三单元:我们根据任务需求不同,要考虑建立什么模型,我们使用流行的sklearn库,建立模型。对于一个模型的好坏,我们是需要评估的,之后我们会评估我们的模型,对模型做优化。
|
29 |
+
|
30 |
+
| 章节 | 小结 |
|
31 |
+
| :----- | :----------------: |
|
32 |
+
| 第一章 | 数据载入及初步观察 |
|
33 |
+
| | pandas基础 |
|
34 |
+
| | 探索性数据分析 |
|
35 |
+
| 第二章 | 数据清洗及特征处理 |
|
36 |
+
| | 数据重构1 |
|
37 |
+
| | 数据重构2 |
|
38 |
+
| | 数据可视化 |
|
39 |
+
| 第三章 | 数据建模 |
|
40 |
+
| | 模型评估 |
|
41 |
+
|
42 |
+
#### 服用方法
|
43 |
+
|
44 |
+
我们的代码都是jupyter形式,每个部分的课程都分为**课程**和**答案**两个部分。学习期间,在课程代码中,完成所有的学习,自己查找资料,自己完成里面的代码操作,思考部分以及心得。之后可以和小伙伴讨论,分享资料和心得。关于答案部分,大家可以参考,但是由于数据分析本身是开放的,所以答案也是开放式的,更多希望大家可以有自己理解和答案。 如果需要参考,我们在**答案** 部分提供了我们写的答案,大家可以参考。
|
45 |
+
|
46 |
+
<img src="./class.png" width="1000">
|
47 |
+
|
48 |
+
(课程部分-需要自己根据要求敲代码)
|
49 |
+
|
50 |
+
<img src="./book.png" width="1000">
|
51 |
+
|
52 |
+
(参考答案部分-如果有问题可以参考我们提供的答案)
|
53 |
+
|
54 |
+
## 反馈
|
55 |
+
|
56 |
+
之前版本学习者反馈
|
57 |
+
|
58 |
+
> 作为一个没基础的小白学习者,这期动手学数据分析我学得很舒服,教程也比较简单和清楚,整体学下来感觉是很流畅的。每个task我都会把教程看两遍。第一遍只看教程,按着教程思路顺下来,看完以后再啃利用Python进行数据分析这本书,边看边做笔记(顺便把csdn写了)作业的拓展性这里必须给我加分,然后第二遍看教程就是完全不看答案把作业和思考做完。基本上学完还是很有成就感的,而且真的有学到很多东西。这个课程作为一个数据分析的入门课程,真的巨赞!
|
59 |
+
>
|
60 |
+
> --------华北电力大学,吴丹飞
|
61 |
+
|
62 |
+
|
63 |
+
|
64 |
+
> 首先这个学习文档做得很好,很有引导性,也是我看下来项目中比较好的一种学习方式——主动学习,不懂就搜索、问。
|
65 |
+
> 作为有Python数据分析基础的学员很有复习、提高、巩固的功能。项目相对来说没有那么的贴切生活.建模那一块我之前有接触过,但是我搞不懂就没什么可建议的了.
|
66 |
+
>
|
67 |
+
> -------- 李晴晴ß
|
68 |
+
|
69 |
+
>
|
70 |
+
>
|
71 |
+
>帮助还不小,因为后面做项目感觉还在不断用这些技巧,非常有用。我觉得可以加点数据分析的分析思路过程。
|
72 |
+
>
|
73 |
+
>--------V1.0 版组队学习参与者
|
74 |
+
|
75 |
+
**优秀学员刘楚楚优秀作业**:https://space.bilibili.com/621981283/channel/detail?cid=191222
|
76 |
+
|
77 |
+
(欢迎大家观看这个视频讲解的优秀作业)
|
78 |
+
|
79 |
+
## 改进方式
|
80 |
+
|
81 |
+
若动手学数据分析里没有你想要的内容,或者你发现项目中哪里有错误,请毫不犹豫地去我们GitHub的Issues进行反馈,说明提问内容属于哪一个部分,然后提交你希望补充内容或者勘误信息,我们通常会在24小时以内给您回复,超过24小时未回复的话可以邮件联系我([email protected]);
|
82 |
+
|
83 |
+
## 贡献者
|
84 |
+
|
85 |
+
**项目负责人**
|
86 |
+
|
87 |
+
陈安东:Datawhale成员,哈尔滨工业大学|Queen Marry University of London(项目负责人)
|
88 |
+
|
89 |
+
**核心贡献者**
|
90 |
+
|
91 |
+
金娟娟:Datawhale成员,浙江大学硕士
|
92 |
+
|
93 |
+
杨佳达:Datawhale成员,数据挖掘工程师
|
94 |
+
|
95 |
+
老表:Datawhale成员,公众号简说Python作者
|
96 |
+
|
97 |
+
|
98 |
+
|
99 |
+
**贡献者**
|
100 |
+
|
101 |
+
红星:Datawhale成员,数据分析师
|
102 |
+
|
103 |
+
李玲:Datawhale成员,算法工程师
|
104 |
+
|
105 |
+
高立业:Datawhale成员,太原理工大学研究生
|
106 |
+
|
107 |
+
张文涛:Datawhale成员,中山大学博士研究生
|
108 |
+
|
109 |
+
|
110 |
+
|
111 |
+
## 关注我们
|
112 |
+
<div align=center>
|
113 |
+
<p>扫描下方二维码,然后回复关键词“动手学数据分析”,即可加入“项目交流群”</p>
|
114 |
+
<img src="https://raw.githubusercontent.com/datawhalechina/pumpkin-book/master/res/qrcode.jpeg" width = "250" height = "270" alt="Datawhale是一个专注AI领域的开源组织,以“for the learner,和学习者一起成长”为愿景,构建对学习者最有价值的开源学习社区。关注我们,一起学习成长。">
|
115 |
+
</div>
|
116 |
+
|
117 |
+
|
118 |
+
## LICENSE
|
119 |
+
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="知识共享许可协议" style="border-width:0" src="https://img.shields.io/badge/license-CC%20BY--NC--SA%204.0-lightgrey" /></a>
|
120 |
+
|
121 |
+
本作品采用<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议</a>进行许可。
|
122 |
+
|
database/readme_db/hello-net/README.md
ADDED
@@ -0,0 +1,48 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# hello-net
|
2 |
+
|
3 |
+
<img src="https://github.com/datawhalechina/hello-net/blob/main/pics/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C%E5%B0%81%E9%9D%A2.jpeg" width=200px>
|
4 |
+
|
5 |
+
### 项目简介
|
6 |
+
|
7 |
+
《计算机网络(第六版)》是清华大学出版社于2022年出版的书籍。该书系统地介绍了计算机网络的基本原理,与时俱进地介绍了当下计算机网络的先进技术。同时作者生动而幽默的语言令本书富有趣味性和故事性,让读者在轻松流畅的阅读体验中学到知识。
|
8 |
+
此次开源项目旨在辅助学习者在阅读此书时能够更高效地进行**回顾总结**与**习题巩固**。拟开设两个板块,内容分别如下:
|
9 |
+
1. 以章内小节为单位进行知识要点整合与写作逻辑提炼
|
10 |
+
2. 课后习题解答
|
11 |
+
|
12 |
+
### 立项理由
|
13 |
+
|
14 |
+
1. 作者在每一章末进行了本章总结,鼓励读者总结梳理该章节的知识。但是章节篇幅过长、读者碎片时间阅读等因素,可能在客观上会给读者带来总结归纳上的困难,不利于读者进行复盘。因此本项目的第一版块拟定以章内小节为单位,进行逐小节的知识要点整合和写作逻辑提炼(即文章的结构,例如案例叙述的顺序、小节主要分为哪几部分),以**知识要点填空**和**小节结构填空**的形式,引导读者在进行本小节知识回顾的同时,把握作者写作的逻辑,辅助读者及时地归纳与复盘。
|
15 |
+
2. 本书每章末附有丰富的课后习题,为了提高习题利用率,本项目的第二板块拟对课后习题进行解析与思路指引,使读者在做习题时有所参考,帮助他们更好地巩固知识。
|
16 |
+
|
17 |
+
### 项目受众
|
18 |
+
|
19 |
+
1. 计算机相关专业的学生
|
20 |
+
2. 喜欢阅读国外经典教材的读者
|
21 |
+
3. 对计算机网络的过去、当下与未来感兴趣的读者
|
22 |
+
|
23 |
+
### 项目亮点
|
24 |
+
|
25 |
+
1. 本项目帮助读者进行及时的归纳和复盘,采用**填空**的形式,有针对性地让读者把握文章的重点知识与逻辑结构。希望通过这次尝试,探索一个高效阅读“计算机原理”书籍的新方式。
|
26 |
+
2. 本项目帮助读者进一步巩固知识,提供习题解答。同时市面上尚没有该书的习题解析。
|
27 |
+
|
28 |
+
### 项目规划
|
29 |
+
|
30 |
+
目录基于《计算机网络(第六版)》原书。
|
31 |
+
项目的初步规划是在10月24日前,完成本书1、3章的回顾总结和习题解答板块。
|
32 |
+
目前项目成员有四位,分别负责一、三章。两章内容同步进行,最后统一进行汇总润色。
|
33 |
+
可预见的困难主要是习题解答环节,须确保习题的解析或者思路是正确的。
|
34 |
+
|
35 |
+
### 项目负责人
|
36 |
+
|
37 |
+
项目负责人:梁恩瑞
|
38 |
+
|
39 |
+
Github主页链接:https://github.com/BlueLumen
|
40 |
+
|
41 |
+
微信:liangen18663307291
|
42 |
+
|
43 |
+
|项目贡献者|贡献内容|联系方式|
|
44 |
+
|----|----|----|
|
45 |
+
|梁恩瑞|第3章内容梳理,第3章习题1-20题解答|[email protected]|
|
46 |
+
|张子杰|第1章1.1-1.4节内容梳理,第1章习题1-10题解答|[email protected]|
|
47 |
+
|卢水琼|第1章1.5-1.11节内容梳理,第1章习题11-20题解答|[email protected]|
|
48 |
+
|邱雯|第1章21-50题解答,第3章21-52题解答|[email protected]|
|
database/readme_db/huawei-od-python/README.md
ADDED
@@ -0,0 +1,105 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# 华为OD算法题解
|
2 |
+
|
3 |
+
本项目选取华为OD算法题,主要是该套算法题都是基于具体场景,通过精选100分题、200分题以及其他100分题能扩大数据结构知识体系,并采用模块化代码,形成解题思路。
|
4 |
+
|
5 |
+
**试题来源:** 华为OD联盟整理收集
|
6 |
+
|
7 |
+
## 使用说明
|
8 |
+
|
9 |
+
1. 本项目主要基于Python语言,使用很多Python语言的标准库,希望大家能通过题目,更好地熟悉Python语法,并灵活运用语法特性。
|
10 |
+
2. 在推荐资料部分,给出了学习Python和算法的优秀资料,如果大家觉得解题有困难,可以按照顺序学习这些资料,再来练习算法题。
|
11 |
+
3. 可以先完成精选100分题,再练习200分题,最后可以挑选其他100分题练习,建议每天练习3道题,熟悉解题思路。
|
12 |
+
4. 如果觉得解答不详细,可以[点击这里](https://github.com/datawhalechina/huawei-od-python/issues)提交你希望补充内容或者习题编号,我们看到后会尽快进行完善。
|
13 |
+
|
14 |
+
### 在线阅读地址
|
15 |
+
|
16 |
+
在线阅读地址:https://datawhalechina.github.io/huawei-od-python
|
17 |
+
|
18 |
+
### 环境安装
|
19 |
+
|
20 |
+
1. Python版本
|
21 |
+
|
22 |
+
Python 3.8以上版本。
|
23 |
+
|
24 |
+
2. 本地启动docsify
|
25 |
+
```shell
|
26 |
+
docsify serve ./docs
|
27 |
+
```
|
28 |
+
|
29 |
+
## 协作规范
|
30 |
+
|
31 |
+
1. 默认使用Python语言。
|
32 |
+
2. 做完一道题后,需提交程序及`markdown`文档,文档命名按题号。
|
33 |
+
3. 程序提交至`codes`文件夹,`markdown`文档提交至`docs`文件夹,并上传GitHub仓库。
|
34 |
+
4. `markdown`文档格式:包含题目标题、题目描述、输入描述、输出描述、示例描述、解题思路、解题代码;文档命名:001_题目名(小写英文,单词用`-`分隔).md,可参考模板`docs/template.md`。
|
35 |
+
5. 图片格式:提供`png`格式的图片;图片命名:001-图片描述(小写英文,单词用`-`分隔)。
|
36 |
+
|
37 |
+
### 项目进度
|
38 |
+
|
39 |
+
| 题号 | 负责人 | 完成情况 |
|
40 |
+
| :-----: | :--------------------: | :------: |
|
41 |
+
| 其他100分题 001~020 | 陈春龙、胡锐锋 | 已完成 |
|
42 |
+
| 其他100分题 021~040 | 陈希、胡锐锋 | 已完成 |
|
43 |
+
| 其他100分题 041~060 | 左凯文、胡锐锋 | 已完成 |
|
44 |
+
| 其他100分题 061~080 | 张超、胡锐锋 | 已完成 |
|
45 |
+
| 其他100分题 081~100 | 胡锐锋 | 已完成 |
|
46 |
+
| 其他100分题 101~120 | 毛瑞盈、胡锐锋 | 已完成 |
|
47 |
+
| 其他100分题 121~140 | 胡锐锋 | 已完成 |
|
48 |
+
| 其他100分题 141~150 | 冯亚林、胡锐锋 | 已完成 |
|
49 |
+
| 其他100分题 151~160 | 李洪荣、胡锐锋 | 已完成 |
|
50 |
+
| 其他100分题 161~180 | 李宇鸿、胡锐锋 | 已完成 |
|
51 |
+
| 其他100分题 181~200 | 袁畅、胡锐锋 | 已完成 |
|
52 |
+
| 其他100分题 201~218 | 胡锐锋 | 已完成 |
|
53 |
+
| 200分题 001~023 | 周理璇、胡锐锋 | 已完成 |
|
54 |
+
| 200分题 024~051 | 李碧涵、胡锐锋 | 已完成 |
|
55 |
+
| 精选100分题 001~027 | 胡锐锋 | 已完成 |
|
56 |
+
| 精选100分题 028~050 | 李昌盛、胡锐锋 | 已完成 |
|
57 |
+
|
58 |
+
## 项目结构
|
59 |
+
|
60 |
+
<pre>
|
61 |
+
codes----------------------------------------------习题代码
|
62 |
+
| +---choice100--------------------------------------精选100分题代码
|
63 |
+
| +---others100--------------------------------------其他100分题代码
|
64 |
+
| +---questions200-----------------------------------200分题代码
|
65 |
+
docs-----------------------------------------------习题解答
|
66 |
+
</pre>
|
67 |
+
|
68 |
+
## 致谢
|
69 |
+
|
70 |
+
**核心贡献者**
|
71 |
+
|
72 |
+
- [胡锐锋-项目负责人](https://github.com/Relph1119) (Datawhale成员-华东交通大学-系统架构设计师)
|
73 |
+
- [李碧涵](https://github.com/libihan) (Datawhale成员-东南大学-软件开发工程师)
|
74 |
+
- [周理璇](https://github.com/Aomferni) (Datawhale成员-电子科技大学-Linux C 软件开发工程师)
|
75 |
+
- [李宇鸿](https://github.com/PeakWalkerLYH) (英国利兹大学-软件开发工程师)
|
76 |
+
- [陈春龙](https://github.com/D-Dragon0318) (广东工业大学-计算机科学与技术)
|
77 |
+
- [李昌盛](https://github.com/jackielics) (Datawhale意向成员-杭州电子科技大学-软件开发)
|
78 |
+
- [陈希](https://github.com/CompassNull) (东莞理工学院-数据分析)
|
79 |
+
- [毛瑞盈](https://github.com/catcooc/) (南京大学-凝聚态物理)
|
80 |
+
- [冯亚林](https://github.com/Westwood-Lin) (Datawhale意向成员-南京大学-AI安全)
|
81 |
+
- [张超](https://github.com/BITprogramMan) (中国科学技术大学-nlp算法工程师)
|
82 |
+
- [袁畅](https://github.com/voyagebio) (Datawhale意向成员-河海大学-数据分析)
|
83 |
+
- [左凯文](https://github.com/Regankevin) (Datawhale意向成员-华威大学-计算机科学)
|
84 |
+
- [李洪荣](https://github.com/duqing12) (东华理工大学-数据科学与大数据技术)
|
85 |
+
|
86 |
+
**其他**
|
87 |
+
|
88 |
+
特别感谢 [@Sm1les](https://github.com/Sm1les)、[@LSGOMYP](https://github.com/LSGOMYP) 对本项目的帮助与支持。
|
89 |
+
|
90 |
+
## 推荐资料
|
91 |
+
|
92 |
+
【1】 [Datawhale的《聪明办法学Python第二版》](https://github.com/datawhalechina/learn-python-the-smart-way-v2)
|
93 |
+
【2】 [Datawhale的《LeetCode算法笔记》](https://github.com/datawhalechina/leetcode-notes)
|
94 |
+
【3】 [Carl的《代码随想录》](https://programmercarl.com/)
|
95 |
+
|
96 |
+
## 关注我们
|
97 |
+
|
98 |
+
<div align=center>
|
99 |
+
<p>扫描下方二维码关注公众号:Datawhale</p>
|
100 |
+
<img src="images/qrcode.jpeg" width = "180" height = "180">
|
101 |
+
</div>
|
102 |
+
  Datawhale,一个专注于AI领域的学习圈子。初衷是for the learner,和学习者一起成长。目前加入学习社群的人数已经数千人,组织了机器学习,深度学习,数据分析,数据挖掘,爬虫,编程,统计学,Mysql,数据竞赛等多个领域的内容学习,微信搜索公众号Datawhale可以加入我们。
|
103 |
+
|
104 |
+
## LICENSE
|
105 |
+
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="知识共享许可协议" style="border-width:0" src="https://img.shields.io/badge/license-CC%20BY--NC--SA%204.0-lightgrey" /></a><br />本作品采用<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议</a>进行许可。
|
database/readme_db/hugging-audio/README.md
ADDED
@@ -0,0 +1,35 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# 对课程的期待
|
2 |
+
|
3 |
+
## 欢迎来到音频课程
|
4 |
+
|
5 |
+
亲爱的学习者,
|
6 |
+
|
7 |
+
欢迎来到本课程,学习如何在音频中使用Transformer。Transformer又一次地证明了自己是最强大、最通用的深度学习架构之一,能够在自然语言处理、计算机视觉以及最近的音频处理等各种任务中取得最先进的结果。
|
8 |
+
|
9 |
+
在本课程中,我们将探索如何将Transformer应用于音频数据。您将学习如何使用它们来处理一系列与音频相关的任务。无论您对语音识别、音频分类还是从文本生成语音感兴趣,Transformer和本课程都能满足您的需求。
|
10 |
+
|
11 |
+
在整个课程中,您将了解处理音频数据的具体方法,学习不同的Transformer架构,并利用强大的预训练模型训练自己的音频Transformer。
|
12 |
+
|
13 |
+
本课程专为具有深度学习背景并熟悉Transformer的学习者设计。无需具备音频数据处理方面的专业知识。
|
14 |
+
|
15 |
+
## 课程结构
|
16 |
+
|
17 |
+
课程分为几个单元,深入涵盖不同主题:
|
18 |
+
|
19 |
+
第 1 单元:学习处理音频数据的具体方法,包括音频处理技术和数据准备。
|
20 |
+
|
21 |
+
第 2 单元: 了解音频应用,学习如何使用Transformer流水线完成不同的任务,如音频分类和语音识别。
|
22 |
+
|
23 |
+
第 3 单元:探索音频Transformer架构,了解它们之间的区别,以及它们最适合用于哪些任务。
|
24 |
+
|
25 |
+
第 4 单元:学习如何构建自己的音乐流派分类器。
|
26 |
+
|
27 |
+
第 5 单元:深入研究语音识别,并建立一个转录会议录音的模型。
|
28 |
+
|
29 |
+
第 6单元:学习如何从文本生成语音。
|
30 |
+
|
31 |
+
第 7 单元:学习如何使用Transformer构建真实世界的音频应用。
|
32 |
+
|
33 |
+
每个单元都包含一个理论部分,您将深入了解基本概念和技术。在整个课程中,我们会提供测验,帮助您测试知识,巩固学习成果。有些章节还包括实践练习,让您有机会学以致用。
|
34 |
+
|
35 |
+
课程结束时,您将在使用Transformer处理音频数据方面打下坚实的基础,并能将这些技术应用到各种音频相关任务中。
|
database/readme_db/hugging-llm/README.md
ADDED
@@ -0,0 +1,144 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<div align=center>
|
2 |
+
<img src="./resources/simple_cover.png" >
|
3 |
+
<h1>蝴蝶书ButterflyBook</h1>
|
4 |
+
<p>
|
5 |
+
<strong>配套视频教程:https://b23.tv/hdnXn1L</strong>
|
6 |
+
</p>
|
7 |
+
</div>
|
8 |
+
|
9 |
+
# HuggingLLM
|
10 |
+
|
11 |
+
随着ChatGPT的爆火,其背后其实蕴含着一个基本事实:AI能力得到了极大突破——大模型的能力有目共睹,未来只会变得更强。这世界唯一不变的就是变,适应变化、拥抱变化、喜欢变化,天行健君子以自强不息。我们相信未来会有越来越多的大模型出现,AI正在逐渐平民化,将来每个人都可以利用大模型轻松地做出自己的AI产品。所以,我们把项目起名为HuggingLLM,我们相信我们正在经历一个伟大的时代,我们相信这是一个值得每个人全身心拥抱的时代,我们更加相信这个世界必将会因此而变得更加美好。
|
12 |
+
|
13 |
+
## 关于项目
|
14 |
+
|
15 |
+
**项目简介**:介绍 ChatGPT 原理、使用和应用,降低使用门槛,让更多感兴趣的非NLP或算法专业人士能够无障碍使用LLM创造价值。
|
16 |
+
|
17 |
+
**立项理由**:ChatGPT改变了NLP行业,甚至正在改变整个产业。我们想借这个项目将ChatGPT介绍给更多的人,尤其是对此感兴趣、想利用相关技术做一些新产品或应用的学习者,尤其是非本专业人员。希望新的技术突破能够更多地改善我们所处的世界。
|
18 |
+
|
19 |
+
**项目受众**
|
20 |
+
|
21 |
+
- 项目适合以下人员:
|
22 |
+
- 对ChatGPT感兴趣。
|
23 |
+
- 希望在实际中运用该技术创造提供新的服务或解决已有问题。
|
24 |
+
- 有一定编程基础。
|
25 |
+
- 不适合以下需求人员:
|
26 |
+
- 研究其底层算法细节,比如PPO怎么实现的,能不能换成NLPO或ILQL,效果如何等。
|
27 |
+
- 自己从头到尾研发一个 ChatGPT。
|
28 |
+
- 对其他技术细节感兴趣。
|
29 |
+
|
30 |
+
另外,要说明的是,本项目并不是特别针对算法或NLP工程师等业内从业人员设计的,当然,你也可以通过本项目获得一定受益。
|
31 |
+
|
32 |
+
**项目亮点**
|
33 |
+
|
34 |
+
- 聚焦于如何使用**ChatGPT相关API**创造新的功能和应用。
|
35 |
+
- 对相关任务有详细的背景和系统设计介绍。
|
36 |
+
- 提供示例代码和实现流程。
|
37 |
+
|
38 |
+
## 内容大纲
|
39 |
+
|
40 |
+
> 本教程内容彼此之间相对独立,大家可以针对任一感兴趣内容阅读或上手,也可从头到尾学习。
|
41 |
+
|
42 |
+
- [ChatGPT 基础科普](content/chapter1/ChatGPT基础科普——知其一点所以然.md) @长琴
|
43 |
+
- LM
|
44 |
+
- Transformer
|
45 |
+
- GPT
|
46 |
+
- RLHF
|
47 |
+
- [ChatGPT 使用指南:相似匹配](content/chapter2/ChatGPT使用指南——相似匹配.ipynb) @长琴
|
48 |
+
- Embedding 基础
|
49 |
+
- API 使用
|
50 |
+
- QA 任务
|
51 |
+
- 聚类任务
|
52 |
+
- 推荐应用
|
53 |
+
- [ChatGPT 使用指南:句词分类](content/chapter3/ChatGPT使用指南——句词分类.ipynb) @长琴
|
54 |
+
- NLU 基础
|
55 |
+
- API 使用
|
56 |
+
- 文档问答任务
|
57 |
+
- 分类与实体识别微调任务
|
58 |
+
- 智能对话应用
|
59 |
+
- [ChatGPT 使用指南:文本生成](content/chapter4/ChatGPT使用指南——文本生成.ipynb) @玉琳
|
60 |
+
- 文本摘要
|
61 |
+
- 文本纠错
|
62 |
+
- 机器翻译
|
63 |
+
- [ChatGPT 使用指南:文本推理](content/chapter5/ChatGPT使用指南——文本推理.ipynb) @华挥
|
64 |
+
- 什么是推理
|
65 |
+
- 导入ChatGPT
|
66 |
+
- 测试ChatGPT推理能力
|
67 |
+
- 调用ChatGPT推理能力
|
68 |
+
- ChatGPT以及GPT-4的推理能力
|
69 |
+
- [ChatGPT 局限不足](content/chapter7/ChatGPT缺陷不足——工具不是万能的.md) @Carles
|
70 |
+
- 事实错误
|
71 |
+
- 实时更新
|
72 |
+
- 资源耗费
|
73 |
+
- [ChatGPT 商业应用](content/chapter8/ChatGPT商业应用——LLM是星辰大海.md) @Jason
|
74 |
+
- 背景
|
75 |
+
- 工具应用:搜索、办公、教育
|
76 |
+
- 行业应用:游戏、音乐、零售电商、广告营销、媒体新闻、金融、医疗、设计、影视、工业
|
77 |
+
|
78 |
+
## 如何学习
|
79 |
+
|
80 |
+
### 学习指南
|
81 |
+
|
82 |
+
要学习本教程内容(主要是四个使用指南),需具备以下条件:
|
83 |
+
|
84 |
+
- 能够正常使用OpenAI的API,能够调用模型:gpt-3.5-turbo。
|
85 |
+
- 可以没有算法经验,但应具备一定的编程基础或实际项目经历。
|
86 |
+
- 学习期间有足够的时间保证,《使用指南》每个章节的学习时长为2-3天,除《文本推理》外,其他均需要6-8个小时。
|
87 |
+
|
88 |
+
学习完成后,需要提交一个大作业,整个学习期间就一个任务,要求如下:
|
89 |
+
|
90 |
+
- 以其中任一方向为例:描述应用和设计流程,实现应用相关功能,完成一个应用或Demo程序。
|
91 |
+
- 方向包括所有内容,比如:一个新闻推荐阅读器、一个多轮的客服机器人、Doc问答机器人、模型输出内容检测器等等,鼓励大家偏应用方向。
|
92 |
+
|
93 |
+
### 学习说明
|
94 |
+
|
95 |
+
请学习者务必注意以下几点:
|
96 |
+
|
97 |
+
- 学习本教程并不能让你成为算法工程师,如果能激发起你的兴趣,我们非常欢迎你参与学习DataWhale更多算法类开源教程。
|
98 |
+
- 在学习了教程中的一些知识和任务后,千万不要认为这些东西实际上就是看到那么简单。一方面实际操作起来还是会有很多���题,另一方面每个知识其实有非常多的细节,这在本教程中是无法涉及的。请持续学习、并始终对知识保持敬畏。
|
99 |
+
- 本教程主要是负责引导入门的,鼓励大家在了解了相关知识后,根据实际情况或自己意愿大胆实践。实践出真知,脑子想、嘴说和亲自干是完全不一样的。
|
100 |
+
- 由于创作团队水平和精力有限,难免会有疏漏,请不吝指正。
|
101 |
+
|
102 |
+
最后,祝愿大家都能学有所得,期望大家未来能做出举世瞩目的产品和应用。
|
103 |
+
|
104 |
+
|
105 |
+
<p align="right">
|
106 |
+
——HuggingLLM开源项目全体成员
|
107 |
+
</p>
|
108 |
+
|
109 |
+
|
110 |
+
### 纸质版
|
111 |
+
|
112 |
+
<p>
|
113 |
+
<img src="./resources/vertical_cover.jpeg" width="300">
|
114 |
+
</p>
|
115 |
+
|
116 |
+
购买链接:[京东](https://item.jd.com/14385698.html) | [当当](https://product.dangdang.com/29691320.html)
|
117 |
+
|
118 |
+
配套视频教程:https://b23.tv/hdnXn1L
|
119 |
+
|
120 |
+
## 致谢
|
121 |
+
|
122 |
+
**核心贡献者**
|
123 |
+
|
124 |
+
- [长琴-项目负责人](https://yam.gift/)(Datawhale成员-AI算法工程师)
|
125 |
+
- [玉琳](https://github.com/lynnhuang97)(内容创作者-Datawhale成员)
|
126 |
+
- [华挥](https://github.com/HhuiYi)(内容创作者-Datawhale成员)
|
127 |
+
- [Carles](https://github.com/AmourWaltz)(内容创作者)
|
128 |
+
- [Jason](https://github.com/HeteroCat)(内容创作者)
|
129 |
+
- [胡锐锋](https://github.com/Relph1119)(Datawhale成员-华东交通大学-系统架构设计师)
|
130 |
+
|
131 |
+
**其他**
|
132 |
+
|
133 |
+
1. 特别感谢 [@Sm1les](https://github.com/Sm1les)、[@LSGOMYP](https://github.com/LSGOMYP) 对本项目的帮助与支持;
|
134 |
+
|
135 |
+
## 关注我们
|
136 |
+
|
137 |
+
<div align=center>
|
138 |
+
<p>扫描下方二维码关注公众号:Datawhale</p>
|
139 |
+
<img src="resources/qrcode.jpeg" width = "180" height = "180">
|
140 |
+
</div>
|
141 |
+
  Datawhale,一个专注于AI领域的学习圈子。初衷是for the learner,和学习者一起成长。目前加入学习社群的人数已经数千人,组织了机器学习,深度学习,数据分析,数据挖掘,爬虫,编程,统计学,Mysql,数据竞赛等多个领域的内容学习,微信搜索公众号Datawhale可以加入我们。
|
142 |
+
|
143 |
+
## LICENSE
|
144 |
+
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="知识共享许可协议" style="border-width:0" src="https://img.shields.io/badge/license-CC%20BY--NC--SA%204.0-lightgrey" /></a><br />本作品采用<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议</a>进行许可。
|
database/readme_db/hugging-multi-agent/README.md
ADDED
@@ -0,0 +1,149 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Hugging Multi-Agent
|
2 |
+
|
3 |
+
## 项目简介
|
4 |
+
- 课程说明:Hugging Multi-Agent 是一套专为期望深入了解并实践多智能体系统的开发者设计的实用指南。基于国内领先的多智能体框架 MetaGPT(iclr 2024 oral) 旨在帮助读者掌握多智能体系统的核心概念,并提供一套全面的学习路径,从智能体的基础理解到复杂系统的实际开发。
|
5 |
+
- 面向人群:
|
6 |
+
- 职业发展定位:本课程适合那些希望在**大模型和智能体开发**领域取得职业发展的工程师。与仅仅关注prompt工程的学习者不同,我们的目标受众是那些渴望**深入了解并实践****Agent****框架以及智能体系统的开发者**。
|
7 |
+
- 技术基础:
|
8 |
+
- 我们的课程将**直接从代码层面探索智能体的个性化开发**
|
9 |
+
- 适合拥有**Python编程基础**(最好拥有一定异步编程基础)
|
10 |
+
- 能**熟练阅读和理解项目源代码**的学习者
|
11 |
+
- 兴趣与动机:适合对AI智能体领域充满热情的学习者,特别是那些希望从代码层面对智能体进行个性化能力开发的人。我们的课程旨在帮助学习者将理论知识转化为实际应用。
|
12 |
+
|
13 |
+
项目在线教程:https://deepwisdom.feishu.cn/wiki/MLILw0EdRiyiYRkJLgOcskyAnUh
|
14 |
+
MetaGPT:https://github.com/geekan/MetaGPT
|
15 |
+
|
16 |
+
## 目录
|
17 |
+
|
18 |
+
**第一章:前期准备**
|
19 |
+
|
20 |
+
**1.1 获取MetaGPT**
|
21 |
+
|
22 |
+
**1.2 配置MetaGPT**
|
23 |
+
> **1.2.1 申请 ChatGPT API 接口**
|
24 |
+
>> - **1.2.1.1 获取 OpenAI API Key**
|
25 |
+
>> - **1.2.1.2 配置 OpenAI API Key**
|
26 |
+
>> - **1.2.1.3 配置Gemini 智谱/星火等LLM**
|
27 |
+
>>- **1.3 首次尝试**
|
28 |
+
|
29 |
+
**第二章:智能体结构及多智能体框架介绍**
|
30 |
+
|
31 |
+
**2.1 AI Agent体系介绍**
|
32 |
+
> - **单体AI Agent**
|
33 |
+
> - **智能体用例**
|
34 |
+
>> - 概念验证Agent-BabyAGI
|
35 |
+
>> - 生成Agents模拟
|
36 |
+
>> - 应用层的Moe-多人求解
|
37 |
+
> - **2.1.3 Sy1&Sy2给Agent的启发**
|
38 |
+
> - **2.1.4 更多仓库以及产品**
|
39 |
+
|
40 |
+
**2.2 多智能体框架介绍**
|
41 |
+
> - **2.2.1 什么是MetaGPT**
|
42 |
+
> - **2.2.2 经典案例:软件公司**
|
43 |
+
> - **2.2.3 更多关于MetaGPT**
|
44 |
+
> - **2.2.4 其他多智能体框架**
|
45 |
+
>> - ChatDev
|
46 |
+
>> - AutoAgents
|
47 |
+
>> - agents
|
48 |
+
>> - Camel
|
49 |
+
>> - AutoGen
|
50 |
+
|
51 |
+
**第三章:智能体开发**
|
52 |
+
|
53 |
+
**3.1 Agent概念模块**
|
54 |
+
|
55 |
+
**3.2 RoleContext**
|
56 |
+
|
57 |
+
**3.3 实现一个简洁的Agent**
|
58 |
+
> - **3.3.1 需求分析**
|
59 |
+
> - **3.3.2 编写SimpleWriteCode助手**
|
60 |
+
> - **3.3.3 设计SimpleCoder角色**
|
61 |
+
|
62 |
+
**3.4 实现一个多功能Agent**
|
63 |
+
> - **3.4.1 需求分析**
|
64 |
+
> - **3.4.2 编写SimpleWriteCode助手**
|
65 |
+
> - **3.4.3 编写 SimpleRunCode 助手**
|
66 |
+
> - **3.4.4 定义 RunnableCoder 角色**
|
67 |
+
> - **3.4.5 运行 RunnableCoder 角色**
|
68 |
+
|
69 |
+
**3.5 实现一个管理类Agent: 技术文档助手**
|
70 |
+
> - **3.5.1 需求分析**
|
71 |
+
> - **3.5.2 编写 WriteDirectory 助手**
|
72 |
+
> - **3.5.3 编写 WriteContent 助手**
|
73 |
+
> - **3.5.4 编写 TutorialAssistant 角色**
|
74 |
+
> - **3.5.5 运行 TutorialAssistant 角色**
|
75 |
+
|
76 |
+
**3.6 智能体案例剖析**
|
77 |
+
|
78 |
+
**3.7 智能体开发作业**
|
79 |
+
|
80 |
+
**第四章:多智能体开发**
|
81 |
+
|
82 |
+
**4.1 Multi Agent概念模块**
|
83 |
+
|
84 |
+
**4.2 多智能体组件介绍**
|
85 |
+
> - **4.2.1 Environment**
|
86 |
+
> - **4.2.2 开发一个简单的多智能体系统**
|
87 |
+
> - **4.2.3 Team**
|
88 |
+
> - **4.2.4 基于Team开发的第一个智能体团队**
|
89 |
+
|
90 |
+
**4.3 多智能体案例: 辩论**
|
91 |
+
> - **4.3.1 定义动作**
|
92 |
+
> - **4.3.2 定义角色Role**
|
93 |
+
> - **4.3.3 实例化**
|
94 |
+
|
95 |
+
**4.4 多智能体开发作业**
|
96 |
+
|
97 |
+
|
98 |
+
## Roadmap
|
99 |
+
|
100 |
+
- [x] 发布第一版内容内测
|
101 |
+
- [x] 发布第一版内容公测
|
102 |
+
- [x] 更新多智能体内容
|
103 |
+
- [ ] 飞书内容迁移仓库
|
104 |
+
- [ ] 引入 python 并发编程基础
|
105 |
+
- [ ] werewolf_game 复现分析
|
106 |
+
- [ ] minecraft 项目复现分析
|
107 |
+
- [ ] agent + RL OverCooked AI Agent 解决方案
|
108 |
+
- [ ] llm 角度看agent实现(agent实现的底层原理)
|
109 |
+
|
110 |
+
|
111 |
+
## 参与贡献
|
112 |
+
|
113 |
+
- 如果你想参与到项目中来欢迎查看项目的 [Issue]() 查看没有被分配的任务。
|
114 |
+
- 如果你发现了一些问题,欢迎在 [Issue]() 中进行反馈🐛。
|
115 |
+
- 如果你对本项目感兴趣想要参与进来可以通过 [Discussion]() 进行交流💬。
|
116 |
+
|
117 |
+
如果你对 Datawhale 很感兴趣并想要发起一个新的项目,欢迎查看 [Datawhale 贡献指南](https://github.com/datawhalechina/DOPMC#%E4%B8%BA-datawhale-%E5%81%9A%E5%87%BA%E8%B4%A1%E7%8C%AE)。
|
118 |
+
|
119 |
+
## 贡献者名单
|
120 |
+
|
121 |
+
| 姓名 | 职责 | 简介 |
|
122 |
+
| :----| :---- | :---- |
|
123 |
+
| 潘笃驿 | 项目负责人 | 西安电子科技大学本科在读 |
|
124 |
+
| 陈叶帆 | 核心贡献者 | MetaGPT成员 |
|
125 |
+
| 沈楚城 | 核心贡献者 | MetaGPT成员 |
|
126 |
+
| 郑蕲 | 核心贡献者 | MetaGPT成员 |
|
127 |
+
| 徐宗泽 | 核心贡献者 | MetaGPT成员 |
|
128 |
+
| 李柯辰 | 贡献者 | Datawhale成员 |
|
129 |
+
| 丁世奇 | 贡献者 | |
|
130 |
+
| 回车 | 贡献者 | |
|
131 |
+
|
132 |
+
|
133 |
+
## 关注我们
|
134 |
+
|
135 |
+
<div align=center>
|
136 |
+
<p>扫描下方二维码关注公众号:Datawhale</p>
|
137 |
+
<img src="https://raw.githubusercontent.com/datawhalechina/pumpkin-book/master/res/qrcode.jpeg" width = "180" height = "180">
|
138 |
+
</div>
|
139 |
+
|
140 |
+
<div align=center>
|
141 |
+
<p>扫描下方二维码关注公众号:MetaGPT</p>
|
142 |
+
<img src="overrides\assets\images\metagpt.jpg" width = "180" height = "180">
|
143 |
+
</div>
|
144 |
+
|
145 |
+
## LICENSE
|
146 |
+
|
147 |
+
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="知识共享许可协议" style="border-width:0" src="https://img.shields.io/badge/license-CC%20BY--NC--SA%204.0-lightgrey" /></a><br />本作品采用<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议</a>进行许可。
|
148 |
+
|
149 |
+
*注:默认使用CC 4.0协议,也可根据自身项目情况选用其他协议*
|
database/readme_db/hugging-rl/README.md
ADDED
@@ -0,0 +1,83 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Hugging Robot Learning
|
2 |
+
|
3 |
+
[![Awesome](https://awesome.re/badge.svg)](https://awesome.re) [![LICENSE](https://img.shields.io/badge/license-Anti%20996-blue.svg)](https://github.com/996icu/996.ICU/blob/master/LICENSE)
|
4 |
+
|
5 |
+
该项目旨在梳理应用于连续动作空间控制的强化学习、模仿学习、以及离线强化学习相关算法,方便进一步学习。
|
6 |
+
|
7 |
+
在之前两版本梳理之后,发现,完全根据综述梳理会造成知识不够具体。因此,接下来准备更关注经典算法,而不是单纯的综述。
|
8 |
+
|
9 |
+
内容一直在修改,博客中内容为最新版 :exclamation::exclamation::exclamation:
|
10 |
+
|
11 |
+
|
12 |
+
|
13 |
+
本项目计划分为三个阶段,分别是
|
14 |
+
|
15 |
+
- 知识梳理阶段 :point_left: **正在进行**:sparkles:
|
16 |
+
- 算法复现阶段
|
17 |
+
- 项目优化阶段
|
18 |
+
|
19 |
+
知识梳理阶段主要关注知识框架的搭建;算法复现阶段主要关注经典算法的代码复现;项目优化阶段主要关注**知识完整性和准确性**、**排版整洁性**、以及**代码准确性**。
|
20 |
+
|
21 |
+
欢迎批评指正~
|
22 |
+
|
23 |
+
欢迎一起做项目~
|
24 |
+
|
25 |
+
|
26 |
+
|
27 |
+
## 内容导航
|
28 |
+
|
29 |
+
### 基础篇
|
30 |
+
|
31 |
+
| 章节 | 内容 |
|
32 |
+
| ------ | ------------------------------------------------------------ |
|
33 |
+
| 第一章 | [DDPMs:去噪扩散概率模型](https://www.robotech.ink/index.php/Foundation/172.html) |
|
34 |
+
|
35 |
+
|
36 |
+
|
37 |
+
### 在线强化学习算法
|
38 |
+
|
39 |
+
| 章节 | 内容 |
|
40 |
+
| :----- | :----------------------------------------------------------- |
|
41 |
+
| 第一章 | [MCAC:蒙特卡洛增强的Actor-Critic算法](https://www.robotech.ink/index.php/RL/139.html) |
|
42 |
+
|
43 |
+
|
44 |
+
|
45 |
+
### 模仿学习篇
|
46 |
+
|
47 |
+
| 章节 | 内容 |
|
48 |
+
| :----- | :----------------------------------------------------------- |
|
49 |
+
| 第一章 | 模仿学习简介 |
|
50 |
+
| 第二章 | [GAIL:生成式对抗模仿学习](https://www.robotech.ink/index.php/AIL/187.html) |
|
51 |
+
| 第三章 | [IBC算法](https://www.robotech.ink/index.php/Robot-Learning/232.html) |
|
52 |
+
| 第三章 | [BeT:一次克隆k个模式](https://www.robotech.ink/index.php/Robot-Learning/224.html) |
|
53 |
+
| 第五章 | [扩散策略:通过动作扩散进行的视觉策略学习](https://www.robotech.ink/index.php/Robot-Learning/106.html) |
|
54 |
+
|
55 |
+
|
56 |
+
|
57 |
+
### 离线强化学习篇
|
58 |
+
|
59 |
+
| 章节 | 内容 |
|
60 |
+
| :----- | :----------------------------------------------------------- |
|
61 |
+
| 第一章 | 离线强化学习简介 |
|
62 |
+
| 第二章 | [基于策略约束的方法与BCQ算法](https://www.robotech.ink/index.php/Policy-Constrained/181.html) |
|
63 |
+
| 第三章 | [基于正则化的方法与CQL算法](https://www.robotech.ink/index.php/Regularization/120.html) |
|
64 |
+
| 第四章 | [基于不确定性估计的方法与REM算法](https://www.robotech.ink/index.php/Uncertainty/191.html) |
|
65 |
+
| 第五章 | Diffuser:敏捷行为合成的扩散规划器 |
|
66 |
+
|
67 |
+
|
68 |
+
|
69 |
+
|
70 |
+
|
71 |
+
## 关注我们
|
72 |
+
|
73 |
+
<div align=center>
|
74 |
+
<p>扫描下方二维码关注公众号:Datawhale</p>
|
75 |
+
<img src="https://raw.githubusercontent.com/datawhalechina/pumpkin-book/master/res/qrcode.jpeg" width = "180" height = "180">
|
76 |
+
</div>
|
77 |
+
|
78 |
+
|
79 |
+
## LICENSE
|
80 |
+
|
81 |
+
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="知识共享许可协议" style="border-width:0" src="https://img.shields.io/badge/license-CC%20BY--NC--SA%204.0-lightgrey" /></a><br />本作品采用<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议</a>进行许可。
|
82 |
+
|
83 |
+
*注:默认使用CC 4.0协议,也可根据自身项目情况选用其他协议*
|
database/readme_db/hugging-sd/README.md
ADDED
@@ -0,0 +1,155 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<div align="center">
|
2 |
+
<img src="./resource/huggingsd.png" width="1000">
|
3 |
+
</div>
|
4 |
+
|
5 |
+
<p align="center">
|
6 |
+
<!-- license badge -->
|
7 |
+
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="知识共享许可协议" style="border-width:0" src="https://img.shields.io/badge/license-CC%20BY--NC--SA%204.0-lightgrey" />
|
8 |
+
</a>
|
9 |
+
</p>
|
10 |
+
|
11 |
+
### 项目简介
|
12 |
+
|
13 |
+
受到[HuggingLLM](https://github.com/datawhalechina/hugging-llm)项目的启发,本项将介绍以stable-diffusion为代表的视觉生成大模型的原理、使用和应用,降低使用门槛,让更多感兴趣的非专业人士能够无障碍使用SD创造价值。
|
14 |
+
|
15 |
+
### 立项理由
|
16 |
+
|
17 |
+
以stable-diffusion为代表的视觉生成大模型正在深刻改变视觉领域中的上下游任务(包括二维、三维、视频)。且正在改变许多行业,比如绘画、3D建模、影视、游戏等等。我们将借助该项目让更多人了解并使用视觉生成大模型,尤其是对此感兴趣、想利用相关技术做一些新产品或应用的朋友。希望新的技术能够促进行业更快更好发展,提高人们工作效率和生活质量。AI for humans!
|
18 |
+
|
19 |
+
### 项目受众
|
20 |
+
|
21 |
+
项目适合以下人员:
|
22 |
+
|
23 |
+
- 学生。希望通过学习相关技术,或是开发新应用,或是入门视觉生成式大模型,或是结合其他行业做AI for science的研究等。
|
24 |
+
- 相关或非相关行业从业者。对stable-diffusion或视觉生成大模型感兴趣,希望在实际中运用该技术创造提供新的服务或解决已有问题。
|
25 |
+
|
26 |
+
项目不适合以下人员:
|
27 |
+
|
28 |
+
- 研究底层算法细节,比如DDPM数学推导、讨论SDS / SJC VSD等。
|
29 |
+
- 对其他技术细节感兴趣。
|
30 |
+
|
31 |
+
### 项目亮点
|
32 |
+
|
33 |
+
聚焦于如何使用stable-diffusion API创造新的功能和应用(二维和三维)。
|
34 |
+
了解相关算法原理以更便捷高效使用。
|
35 |
+
提供示例代码和使用流程。
|
36 |
+
|
37 |
+
### 项目规划【内容持续更新中,欢迎关注~】
|
38 |
+
|
39 |
+
**二维生成**
|
40 |
+
- 1 stable-diffusion原理简介
|
41 |
+
- 1.1 视觉生成方法
|
42 |
+
- 1.2 [DDPM算法](./content/1-2%20DDPM算法.ipynb)
|
43 |
+
- 2 stable-diffusion使用指南
|
44 |
+
- 2.1 提示词
|
45 |
+
- 2.2 文生图
|
46 |
+
- 2.3 [图生图](./content/2-3%20图生图.ipynb)
|
47 |
+
- 2.4 生成优化
|
48 |
+
- 2.4.1 [Textual Inversion](./content/2-4-1%20Textural%20Inversion.ipynb)
|
49 |
+
- 2.4.2 [DreamBooth](./content/2-4-2%20DreamBooth.ipynb)
|
50 |
+
- 2.4.3 [LoRA](./content/2-4-3%20LoRA.ipynb)
|
51 |
+
- 2.4.4 ControlNet
|
52 |
+
- 2.5 插件与工具
|
53 |
+
- 2.6 [sdxl1.0与应用](./content/2-6%20sdxl1.0与应用.ipynb)
|
54 |
+
|
55 |
+
|
56 |
+
**三维生成**
|
57 |
+
- 3 三维生成原理
|
58 |
+
- 3.1 [背景及应用](./content/3-1%20背景及应用.md)
|
59 |
+
- 3.2 [NeRF神经辐射场](./content/3-2%20NeRF神经辐射场.ipynb)
|
60 |
+
- 3.3 [文生3D](./content/3-3%20文生3D.md)
|
61 |
+
- 3.4 可控3D生成
|
62 |
+
- 4 三维视觉应用
|
63 |
+
- 4.1 blender入门
|
64 |
+
- 4.2 3D重建与打印
|
65 |
+
|
66 |
+
**视频生成**
|
67 |
+
- 5 视频编辑
|
68 |
+
- 5.1 风格迁移
|
69 |
+
- 5.2 场景编辑
|
70 |
+
- 6 视频生成
|
71 |
+
- 6.1 文生视频
|
72 |
+
- 6.2 图生视频
|
73 |
+
|
74 |
+
**技术局限与未来发展**
|
75 |
+
- 7 目前局限
|
76 |
+
- 二维生成:版权等
|
77 |
+
- 三维生成:质量有待提升、生成时间长、渲染速度慢等
|
78 |
+
- 视频生成:稳定性、连续性等
|
79 |
+
- 8 未来发展
|
80 |
+
- 8.1 [社区生态](./content/8-1%20社区生态.md)
|
81 |
+
- 8.2 行业应用
|
82 |
+
- 二维场景:营销作图、游戏作画、美图工具等
|
83 |
+
- 三维场景:游戏、数字人、电影、虚拟资产、vision pro内容等
|
84 |
+
- 视频场景:抖音、b站、直播等
|
85 |
+
|
86 |
+
### 贡献者
|
87 |
+
<table border="0" >
|
88 |
+
<tbody>
|
89 |
+
<tr align="center" >
|
90 |
+
<td>
|
91 |
+
<a href="https://github.com/xjli360"><img width="70" height="70" src="https://github.com/xjli360.png?s=40" alt="pic"></a><br>
|
92 |
+
<a href="https://github.com/xjli360">Xiaojie Li</a>
|
93 |
+
<p>项目负责人<br>清华大学硕士</p>
|
94 |
+
</td>
|
95 |
+
<td>
|
96 |
+
<a href="https://github.com/guanidine"><img width="70" height="70" src="https://github.com/guanidine.png?s=40" alt="pic"></a><br>
|
97 |
+
<a href="https://github.com/guanidine">Letian Zhang</a>
|
98 |
+
<p>主要贡献者<br>清华大学硕士</p>
|
99 |
+
</td>
|
100 |
+
<td>
|
101 |
+
<a href="https://github.com/joyenjoye"><img width="70" height="70" src="https://github.com/joyenjoye.png?s=40" alt="pic"></a><br>
|
102 |
+
<a href="https://github.com/joyenjoye">joye</a>
|
103 |
+
<p>主要贡献者<br>Data Scientist</p>
|
104 |
+
</td>
|
105 |
+
<td>
|
106 |
+
<a href="https://github.com/KashiwaByte"><img width="70" height="70" src="https://github.com/KashiwaByte.png?s=40" alt="pic"></a><br>
|
107 |
+
<a href="https://github.com/KashiwaByte">Bote Huang</a>
|
108 |
+
<p>主要贡献者<br>西安电子科技大学本科</p>
|
109 |
+
</td>
|
110 |
+
</tr>
|
111 |
+
</tbody>
|
112 |
+
</table>
|
113 |
+
|
114 |
+
|
115 |
+
<table border="0">
|
116 |
+
<tbody>
|
117 |
+
<tr align="center" >
|
118 |
+
<td>
|
119 |
+
<a href="https://github.com/Fantastic121380"><img width="70" height="70" src="https://github.com/Fantastic121380.png?s=40" alt="pic"></a><br>
|
120 |
+
<a href="https://github.com/Fantastic121380">Di Yu</a>
|
121 |
+
<p>主要贡献者<br>清华大学硕士</p>
|
122 |
+
</td>
|
123 |
+
<td>
|
124 |
+
<a href="https://github.com/flawzhang"><img width="70" height="70" src="https://github.com/flawzhang.png?s=40" alt="pic"></a><br>
|
125 |
+
<a href="https://github.com/flawzhang">Qiang Zhang</a>
|
126 |
+
<p>主要贡献者<br>清华大学硕士</p>
|
127 |
+
</td>
|
128 |
+
<td>
|
129 |
+
<a href="https://github.com/mxztflow"><img width="70" height="70" src="https://github.com/mxztflow.png?s=40" alt="pic"></a><br>
|
130 |
+
<a href="https://github.com/mxztflow">Xiaozhuang Ma</a>
|
131 |
+
<p>主要贡献者<br>西安交通大学硕士</p>
|
132 |
+
</td>
|
133 |
+
<td>
|
134 |
+
<a href="https://github.com/QJieWang"><img width="70" height="70" src="https://github.com/QJieWang.png?s=40" alt="pic"></a><br>
|
135 |
+
<a href="https://github.com/QJieWang">Qingjie Wang</a>
|
136 |
+
<p>主要贡献者<br>中国科学技术大学</p>
|
137 |
+
</td>
|
138 |
+
</tr>
|
139 |
+
</tbody>
|
140 |
+
</table>
|
141 |
+
|
142 |
+
### 致谢
|
143 |
+
特别感谢 [Sm1les](https://github.com/Sm1les)对本项目的帮助与支持。
|
144 |
+
感谢[Tango](https://github.com/it-worker-club)对2-2章节提供的部分帮助;感谢[AnSuZeaT](https://github.com/AnSuZeaT)对6-1章节提供的部分帮助。
|
145 |
+
|
146 |
+
### 关注我们
|
147 |
+
|
148 |
+
<div align=center>
|
149 |
+
<p>扫描下方二维码关注公众号:Datawhale</p>
|
150 |
+
<img src="resource/qrcode.jpeg" width = "180" height = "180">
|
151 |
+
</div>
|
152 |
+
  Datawhale,一个专注于AI领域的学习圈子。初衷是for the learner,和学习者一起成长。目前加入学习社群的人数已经数千人,组织了机器学习,深度学习,数据分析,数据挖掘,爬虫,编程,统计学,Mysql,数据竞赛等多个领域的内容学习,微信搜索公众号Datawhale可以加入我们。
|
153 |
+
|
154 |
+
### LICENSE
|
155 |
+
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="知识共享许可协议" style="border-width:0" src="https://img.shields.io/badge/license-CC%20BY--NC--SA%204.0-lightgrey" /></a><br />本作品采用<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议</a>进行许可。
|
database/readme_db/joyful-pandas/README.md
ADDED
@@ -0,0 +1,104 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Joyful-Pandas
|
2 |
+
|
3 |
+
基于Joyful Pandas教程编写的纸质版书籍已在各大网络平台上线,欢迎选购。本书使用新版的1.4.0,对网页版教程(基于1.2.0)内容作了大量修订,包括内容增改以及习题更新,同时增加了数据可视化、特征工程和性能优化三个章节的内容。本书设计练一练共计121题,章后习题共计41题,各章节分布与目录见后文。有关本书籍和pandas的任何问题可以在本仓库提issue,或者加最后的二维码进讨论群提问。
|
4 |
+
|
5 |
+
<img src="source/_static/pandas封面.jpg" width="38%"/>
|
6 |
+
|
7 |
+
购买链接:
|
8 |
+
|
9 |
+
* [当当](http://product.dangdang.com/29434656.html)
|
10 |
+
* [京东](https://item.jd.com/13268767.html)
|
11 |
+
|
12 |
+
在写作期间,本书作者积极参与pandas的开发工作和社区建设,点击[此处](https://github.com/pandas-dev/pandas/pulls?q=is%3Apr+author%3AGYHHAHA+is%3Aclosed)查看开源贡献。同时,Joyful Pandas也被pandas官方增选为[社区推荐教程](https://pandas.pydata.org/docs/dev/getting_started/tutorials.html#joyful-pandas),在此对pandas核心开发组多年来的长期维护和社区建设表示感谢!
|
13 |
+
|
14 |
+
<img src="source/_static/社区推荐.png" width="70%"/>
|
15 |
+
|
16 |
+
### 纸质版
|
17 |
+
|
18 |
+
- 数据集:[下载](https://pan.baidu.com/s/16fgy9qYXo0JOsz3GIXQeKA)(提取码:9e8r)
|
19 |
+
- 参考答案:[链接](https://gyhhaha.github.io/pd-book/)
|
20 |
+
- 勘误修订:[链接](http://joyfulpandas.datawhale.club/pandas%E6%95%B0%E6%8D%AE%E5%A4%84%E7%90%86%E4%B8%8E%E5%88%86%E6%9E%90.html#id3)
|
21 |
+
- 练一练与习题
|
22 |
+
|
23 |
+
| 章节 | 练一练(题数) | 习题(\*为纸质版新增) |
|
24 |
+
| ---- | ---- | ---- |
|
25 |
+
| 第一章 预备知识 | 15 | 一、利用列表推导式实现矩阵乘法<br>二、计算卡方统计量<br>\* 三、统计某商店的月度销量情况 |
|
26 |
+
| 第二章 pandas基础 | 8 | \* 一、整理某服装店的商品情况<br>\* 二、汇总某课程的学生总评分数<br>三、实现指数加权窗口 |
|
27 |
+
| 第三章 索引 | 6 | \* 一、实现sample()函数<br>二、公司员工数据的索引操作<br>三、巧克力评价数据的索引操作 |
|
28 |
+
| 第四章 分组 | 10 | 一、汽车数据的分组分析<br>\* 二、某海洋物种在三大海域的分布研究<br>三、实现transform()函数 |
|
29 |
+
| 第五章 变形 | 9 | \* 一、某连锁店的库存统计<br>\* 二、整理某地区的化石燃料数据<br>三、特殊的wide_to_long()方法 |
|
30 |
+
| 第六章 连接 | 5 | 一、合并员工信息表<br>二、实现join()函数<br>\* 三、条件连接 |
|
31 |
+
| 第七章 缺失数据 | 6 | \* 一、缺失数据筛选<br>二、K近邻填充<br>\* 三、条件近邻插值 |
|
32 |
+
| 第八章 文本数据 | 3 | 一、房屋数据的文本提取<br>\* 二、巴洛克作曲家的年龄统计<br>\* 三、汇总显卡测试的结果 |
|
33 |
+
| 第九章 分类数据 | 2 | 一、统计未出现的类别<br>二、钻石数据的类别构造<br>\* 三、有序类别下的逻辑斯蒂回归 |
|
34 |
+
| 第十章 时间序列数据 | 10 | 一、太阳辐射数据的时序分析<br>二、水果销量分析<br>\* 三、使用Prophet进行时序预测 |
|
35 |
+
| 第十一章 数据观测 | 15 | \* 一、图片绘制<br>\* 二、数据观测实战<br>\* 三、基于PyOD库的异常检测 |
|
36 |
+
| 第十二章 特征工程 | 12 | \* 一、卡方分箱<br>\* 二、基于标签的特征构造<br>\* 三、信用卡诈骗数据的特征工程 |
|
37 |
+
| 第十三章 性能优化 | 20 | \* 一、DNA链的碱基序列处理<br>\* 二、捕捉电信号的激活态区间<br>\* 三、药物靶点的关联性分析<br>\* 四、物质浓度的指标检测<br>\* 五、设计滑窗类 |
|
38 |
+
|
39 |
+
- 新增的三个章节目录
|
40 |
+
|
41 |
+
| | | |
|
42 |
+
| ---- | ---- | ---- |
|
43 |
+
| 第十一章 数据观测 | 11.1 可视化方法 | 11.1.1 基本绘图 |
|
44 |
+
| | | 11.1.2 元素控制 |
|
45 |
+
| | | 11.1.3 子图控制 |
|
46 |
+
| | 11.2 数据观测方法 | 11.2.1 数据类型 |
|
47 |
+
| | | 11.2.2 数据统计量 |
|
48 |
+
| | | 11.2.3 数据分布 |
|
49 |
+
| | | 11.2.4 基于数据报告的观测 |
|
50 |
+
| | 11.3 习题 | / |
|
51 |
+
| 第十二章 特征工程 | 12.1 单特征构造 | 12.1.1 特征变换 |
|
52 |
+
| | | 12.1.2 文本数据特征 |
|
53 |
+
| | | 12.1.3 时间序列数据特征 |
|
54 |
+
| | | 12.1.4 单特征构造的一般方法 |
|
55 |
+
| | 12.2 多特征构造 | 12.2.1 分组技术 |
|
56 |
+
| | | 12.2.2 特征降维 |
|
57 |
+
| | 12.3 特征选择 | 12.3.1 基于统计量的选择 |
|
58 |
+
| | | 12.3.2 基于模型的选择 |
|
59 |
+
| | 12.4 习题 | / |
|
60 |
+
| 第十三章 性能优化 | 13.1 pandasic代码要义 | / |
|
61 |
+
| | 13.2 多进程加速 | 13.2.1 多进程和多线程 |
|
62 |
+
| | | 13.2.2 多进程的陷阱 |
|
63 |
+
| | | 13.2.3 异步进程 |
|
64 |
+
| | | 13.2.4 进程中的数据共享 |
|
65 |
+
| | | 13.2.5 在pandas中使用多进程 |
|
66 |
+
| | 13.3 利用Cython加速 | 13.3.1 初识Cython |
|
67 |
+
| | | 13.3.2 优化策略 |
|
68 |
+
| | | 13.3.3 多线程加速 |
|
69 |
+
| | | 13.3.4 Cython类及其应用 |
|
70 |
+
| | | 13.3.5 模块构建 |
|
71 |
+
| | 13.4 利用Numba加速 | 13.4.1 noPython模式 |
|
72 |
+
| | | 13.4.2 ufunc与向量化 |
|
73 |
+
| | | 13.4.3 jitclass及其应用|
|
74 |
+
| | 13.5 习题 | / |
|
75 |
+
|
76 |
+
### 网页版
|
77 |
+
|
78 |
+
http://joyfulpandas.datawhale.club/
|
79 |
+
|
80 |
+
<img src="source/_static/catelog.png" width="80%"/>
|
81 |
+
|
82 |
+
### 文件内容
|
83 |
+
|
84 |
+
* data:网页版教程数据集
|
85 |
+
* ebook:网页版教程电子版
|
86 |
+
* notebook:网页版教程notebook
|
87 |
+
|
88 |
+
### 参考资料
|
89 |
+
|
90 |
+
* [Python for Data Analysis](<https://www.amazon.com/Python-Data-Analysis-Wrangling-IPython/dp/1491957662/ref=sr_1_2?keywords=wes+mckinney&qid=1656348228&sprefix=wes+mc%2Caps%2C107&sr=8-2>) Wes McKinney著
|
91 |
+
|
92 |
+
* [Pandas Cookbook](<https://www.amazon.com/Pandas-1-x-Cookbook-scientific-exploratory/dp/1839213108/ref=sr_1_1_sspa?crid=9V843I0IED24&keywords=pandas+cookbook&qid=1656348206&sprefix=pandas+cookbook%2Caps%2C153&sr=8-1-spons&psc=1&spLa=ZW5jcnlwdGVkUXVhbGlmaWVyPUEyVDZUTUUxQ0RFUVRZJmVuY3J5cHRlZElkPUEwNjkzMDczMjdXSFNaM0YzQ1NKRyZlbmNyeXB0ZWRBZElkPUEwNjczNDI3MVFZSTA0M0xWSzZKWiZ3aWRnZXROYW1lPXNwX2F0ZiZhY3Rpb249Y2xpY2tSZWRpcmVjdCZkb05vdExvZ0NsaWNrPXRydWU=>) Theodore Petrou著
|
93 |
+
|
94 |
+
* [User Guide](<https://pandas.pydata.org/docs/user_guide/index.html#user-guide>) Pandas开发团队编写
|
95 |
+
|
96 |
+
### 交流群
|
97 |
+
|
98 |
+
关注Datawhale公众号,回复关键词“熊猫”获得二维码
|
99 |
+
|
100 |
+
<img src="source/_static/qrcode.jpeg" width="30%"/>
|
101 |
+
|
102 |
+
### LICENSE
|
103 |
+
|
104 |
+
<img alt="知识共享许可协议" style="border-width:0" src="https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png" /></a><br />本作品采用<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议</a>进行许可
|