├── 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 | GitHub stars 8 | 9 | 10 | GitHub issues 12 | 13 | 14 | 15 | 16 | 17 | GitHub license 19 | 20 |

21 | 22 | 23 |

简介

24 | 我们将基于mooc场景,搭建一个深度理解视频,文本,PPT内容的跨模态搜索引擎。 25 | 26 | **直接搜索到,你最关心的那个知识点!** 27 | 28 | ![](./images/structure.png) 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 | 185 | 186 | 187 | 188 | 189 | 190 | 191 | 192 | 193 | 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 | 209 | 210 | 211 | 212 | 213 | 214 | 215 | 216 | 217 | 218 | 219 | 220 | 221 | 222 | 223 | 224 | 225 | 226 | 227 | 228 | 229 | 230 | 231 | 232 | 233 | 234 | 235 | 236 | 237 | 238 | 239 | 240 | 241 | 242 | 243 | 244 | 245 | 246 | 247 | 248 | 249 | 250 | 251 | 252 | 253 | 254 | 255 | 256 |
模块分组提交作业时间段
慕课网站爬虫模块王佳佳,汪舰,王维,王浚宇,于明飞13:00 - 13:20
李东,李世林,谢斌辉,彭成,李浩宇13:20 - 13:40
唐汉霖,毛洪力,邵靖斐,赵菊文13:40 - 14:00
视频字幕提取与翻译模块徐恒达,郭佳楠,柏宇,林书阳,辛成鑫14:00 - 14:20
陈牧乔,付乐萌,徐逍君,孙今达14:20 - 14:40
赖一多,于杨,郭振宇,王艳平,李丽丽14:40 - 15:00
文本检索文本模块张思嘉,程浩东,李敏琴,殷昕,朱乐15:00 - 15:20
陈秀琦,钟子岳,及朋飞,马思怡15:20 - 15:40
张辰,曹健,展佳傲,杜建成,陆旭阳15:40 - 16:00
文本检索视频模块何龙,郑俊康,佘宇峰,薛晓军,周泳宇16:00 - 16:20
文本检索PPT模块王蔚然,冯姝榕,黄云飞,王元杰,赵培雯16:20 - 16:40
李佳钰,徐兰天,王文琪,刘龙耀,贺韵16:40 - 17:00
任泽槟,陈立围,王海,费伟伦17:00 - 17:20
图片检索视频模块李彤,刘东辉,邵江逸,宫佳豪17:20 - 17:40
图片检索PPT模块耿坤男,吴昊,苏静宇,孙佩霞17:40 - 18:00
戴子彭,赵一诺,高硕,葛晶,苏丽敏18:00 - 18:20
刘曦,焦青青,吴楠楠,辛永顺18:20 - 18:40
257 | 258 | 259 |

FAQs

260 | 261 | #### Q: 检索模块自己构建数据集吗?还是等待爬虫模块的同学完成? 262 | A: 每个小组都需要自己构建数据集;爬虫模块是跟其他小组完全独立的一项工作。 263 | --------------------------------------------------------------------------------