├── images
└── structure.png
├── LICENSE
└── readme.md
/images/structure.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/BIT-IR/final-project-2019/HEAD/images/structure.png
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 BIT-IR
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
--------------------------------------------------------------------------------
/readme.md:
--------------------------------------------------------------------------------
1 |
Cross-Modal-Search-Engine
2 | 从0到1,构建跨模态搜索引擎!
3 |
4 |
5 |
6 |
8 |
9 |
10 |
12 |
13 |
14 |
15 |
16 |
17 |
19 |
20 |
21 |
22 |
23 | 简介
24 | 我们将基于mooc场景,搭建一个深度理解视频,文本,PPT内容的跨模态搜索引擎。
25 |
26 | **直接搜索到,你最关心的那个知识点!**
27 |
28 | 
29 |
30 |
31 | 模块列表
32 |
33 | ### 1. 慕课网站爬虫模块
34 |
35 | #### 作业内容
36 | - 抓取的站点: Coursera,edX,Udacity,中国大学MOOC(任选一个)
37 | - 抓取的信息:
38 | 1. 课程基本信息:开课学校,主讲老师,课程简介,课程主页URL
39 | 2. 每节课:单次课URL,视频,字幕,课程说明,单次课材料(PPT/pdf)
40 |
41 | #### 提交内容
42 | - 已经爬好的10门课程的全部课程内容(mp4 + srt + pdf + json )
43 | - 爬虫系统
44 | ```
45 | 输入: 课程的URL与存储路径,比如:https://www.coursera.org/learn/machine-learning
46 | 输出: 课程的全部内容(mp4 + srt + pdf + json)
47 | ```
48 | - 系统说明书
49 |
50 |
51 | ### 2. 视频字幕提取与翻译模块
52 |
53 | #### 作业内容
54 | - 给定视频文件,生成字幕文件(srt)
55 | - 对视频字幕与课程信息的翻译(英文 -> 中文)
56 |
57 | #### 提交内容
58 | - 视频字幕提取系统
59 | ```
60 | 输入: 单个视频
61 | 输出: 视频的字幕文件
62 | ```
63 |
64 | - 文本翻译系统
65 | ```
66 | 输入: 英文的txt文件
67 | 输出: 中文的txt文件
68 | ```
69 | - 系统说明书
70 |
71 |
72 | ### 3. 文本检索文本模块
73 |
74 | #### 作业内容
75 | - 根据文本,在大规模语料中快速检索出相似的句子
76 | - 基于粗排模型,召回一批句子
77 | - 基于精排模型,准确找出相似的句子
78 |
79 | #### 提交内容
80 | - 文本检索文本系统
81 | ```
82 | 输入: 文本query + 句子的集合
83 | 输出: 指定时间内,存在结果,输出相匹配的句子
84 | ```
85 |
86 | - 系统说明书
87 |
88 |
89 | ### 4. 文本检索视频模块
90 |
91 | #### 作业内容
92 | - 根据query文本,定位到视频中某一帧
93 | - 根据Coco等数据集的特点,从YouTube上下载可用的视频文件
94 |
95 | #### 提交内容
96 | - 文本检索视频系统
97 | ```
98 | 输入: 文本query + 多个视频
99 | 输出: 如果存在结果,输出指定视频编号+定位的秒
100 | ```
101 | - 系统说明书
102 |
103 | ### 5. 文本检索PPT模块
104 |
105 | #### 作业内容
106 | - 根据query文本,定位到PPT的某一页
107 | - 基于[PPT分享网站](https://www.slideshare.net)构建PPT数据集
108 |
109 | #### 提交内容
110 | - 文本检索PPT系统
111 | ```
112 | 输入: 文本query + 多个PPT文件
113 | 输出: 如果存在结果,输出指定PPT文件,以及该PPT文件的第几页
114 | ```
115 | - 系统说明书
116 |
117 |
118 | ### 6. 图片检索视频模块
119 |
120 | #### 作业内容
121 | - 根据query图片,快速定位到视频中某一帧
122 |
123 | #### 提交内容
124 | - 图片检索图片系统
125 | ```
126 | 输入: 图片 + 视频的集合
127 | 输出: 如果存在结果,输出相匹配的图片
128 | ```
129 | - 系统说明书
130 |
131 |
132 | ### 7. 图片检索PPT模块
133 |
134 | #### 作业内容
135 | - 根据图片,从多个PPT文件中快速检索出相似的图片
136 | - 基于[PPT分享网站](https://www.slideshare.net)构建PPT数据集
137 |
138 |
139 | #### 提交内容
140 | - 图片检索图片系统
141 | ```
142 | 输入: 图片 + 多个PPT文件
143 | 输出: 如果存在结果,输出指定PPT文件,以及该PPT文件的第几页
144 | ```
145 | - 系统说明书
146 |
147 |
148 | 其他说明
149 |
150 | - 分组说明:每组不超过5个人,自由组队,选出组长。
151 | - 选题说明:请组长尽快在群里说明分组情况,以及选题,每个模块不超过3个小组,先到先得!
152 | - 代码规范:
153 | 1. 全部代码基于Python3.6实现
154 | 2. 代码遵守[Google代码规范](https://zh-google-styleguide.readthedocs.io/en/latest/google-python-styleguide/python_style_rules/)
155 | 3. 代码需要有规范的注释,遵循[注释规范](https://python-guide.gitbooks.io/python-style-guide/content/style-guide/comment_and_docs.html)
156 | 4. 系统需要在Ubuntu 16.04环境下可以运行,文档需要注明系统的依赖
157 | - **作业提交时间: 2019.11.17(周日),作业提交地点:中教1011,具体各组提交时间表见下面的表格。作业提交时候需要拷贝代码和文档,并进行演示。**
158 |
159 | 参考内容
160 |
161 | - requests / xpath / re / scrapy
162 | - selenium + Chrome
163 | - OCR / Speech to Text
164 | - [TensorFlow Neural Machine Translation Tutorial](https://github.com/tensorflow/nmt)
165 | - Elesticsearch
166 | - Annoy: Approximate Nearest Neighbors in C++/Python optimized for memory usage
167 | - Pre-Train NLP Model: ELMO / BERT
168 | - Pre-Train CV Model: Resnet / VGG
169 | - [Cross-Modal Learning in Real World](https://cromol.github.io/)
170 |
171 | **GOOGLE IS ALL YOU NEED**
172 |
173 | 分组汇总
174 |
175 |
176 |
177 | | 模块 |
178 | 分组 |
179 | 提交作业时间段 |
180 |
181 |
182 | | 慕课网站爬虫模块 |
183 | 王佳佳,汪舰,王维,王浚宇,于明飞 |
184 | 13:00 - 13:20 |
185 |
186 |
187 | | 李东,李世林,谢斌辉,彭成,李浩宇 |
188 | 13:20 - 13:40 |
189 |
190 |
191 | | 唐汉霖,毛洪力,邵靖斐,赵菊文 |
192 | 13:40 - 14:00 |
193 |
194 |
195 | | 视频字幕提取与翻译模块 |
196 | 徐恒达,郭佳楠,柏宇,林书阳,辛成鑫 |
197 | 14:00 - 14:20 |
198 |
199 |
200 | | 陈牧乔,付乐萌,徐逍君,孙今达 |
201 | 14:20 - 14:40 |
202 |
203 |
204 | | 赖一多,于杨,郭振宇,王艳平,李丽丽 |
205 | 14:40 - 15:00 |
206 |
207 |
208 | | 文本检索文本模块 |
209 | 张思嘉,程浩东,李敏琴,殷昕,朱乐 |
210 | 15:00 - 15:20 |
211 |
212 |
213 | | 陈秀琦,钟子岳,及朋飞,马思怡 |
214 | 15:20 - 15:40 |
215 |
216 |
217 | | 张辰,曹健,展佳傲,杜建成,陆旭阳 |
218 | 15:40 - 16:00 |
219 |
220 |
221 | | 文本检索视频模块 |
222 | 何龙,郑俊康,佘宇峰,薛晓军,周泳宇 |
223 | 16:00 - 16:20 |
224 |
225 |
226 | | 文本检索PPT模块 |
227 | 王蔚然,冯姝榕,黄云飞,王元杰,赵培雯 |
228 | 16:20 - 16:40 |
229 |
230 |
231 | | 李佳钰,徐兰天,王文琪,刘龙耀,贺韵 |
232 | 16:40 - 17:00 |
233 |
234 |
235 | | 任泽槟,陈立围,王海,费伟伦 |
236 | 17:00 - 17:20 |
237 |
238 |
239 | | 图片检索视频模块 |
240 | 李彤,刘东辉,邵江逸,宫佳豪 |
241 | 17:20 - 17:40 |
242 |
243 |
244 | | 图片检索PPT模块 |
245 | 耿坤男,吴昊,苏静宇,孙佩霞 |
246 | 17:40 - 18:00 |
247 |
248 |
249 | | 戴子彭,赵一诺,高硕,葛晶,苏丽敏 |
250 | 18:00 - 18:20 |
251 |
252 |
253 | | 刘曦,焦青青,吴楠楠,辛永顺 |
254 | 18:20 - 18:40 |
255 |
256 |
257 |
258 |
259 | FAQs
260 |
261 | #### Q: 检索模块自己构建数据集吗?还是等待爬虫模块的同学完成?
262 | A: 每个小组都需要自己构建数据集;爬虫模块是跟其他小组完全独立的一项工作。
263 |
--------------------------------------------------------------------------------