Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenDocCN
apachecn-dl-zh
提交
b7cbbe41
A
apachecn-dl-zh
项目概览
OpenDocCN
/
apachecn-dl-zh
12 个月 前同步成功
通知
298
Star
83
Fork
35
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
A
apachecn-dl-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
b7cbbe41
编写于
9月 02, 2020
作者:
W
wizardforcel
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
2020-09-02 18:23:03
上级
1059527b
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
26 addition
and
26 deletion
+26
-26
docs/dl-cv/03.md
docs/dl-cv/03.md
+7
-7
docs/dl-cv/04.md
docs/dl-cv/04.md
+10
-10
docs/dl-cv/05.md
docs/dl-cv/05.md
+9
-9
未找到文件。
docs/dl-cv/03.md
浏览文件 @
b7cbbe41
...
...
@@ -22,10 +22,10 @@
Wikipedia is a good source for understanding dimensionality reduction techniques. Here are a few links that you can refer to:
*
[
https://zh.wikipedia.org/wiki/Dimensionality_reduction
](
https://en.wikipedia.org/wiki/Dimensionality_reduction
)
*
[
https://zh.wikipedia.org/wiki/Principal_component_analysis
](
https://en.wikipedia.org/wiki/Principal_component_analysis
)
*
[
https://zh.wikipedia.org/wiki/T-distributed_stochastic_neighbor_embedding
](
https://en.wikipedia.org/wiki/T-distributed_stochastic_neighbor_embedding
)
*
[
https://en.wikipedia.org/wiki/Locality-sensitive_hashing
](
https://en.wikipedia.org/wiki/Locality-sensitive_hashing
)
*
<https://en.wikipedia.org/wiki/Dimensionality_reduction>
*
<https://en.wikipedia.org/wiki/Principal_component_analysis>
*
<https://en.wikipedia.org/wiki/T-distributed_stochastic_neighbor_embedding>
*
<https://en.wikipedia.org/wiki/Locality-sensitive_hashing>
*
**最大补丁**
:激活一个神经元,并捕获最大激活的相应补丁。
*
**遮挡**
:在各个位置遮挡(遮挡)图像,并且激活以热图显示,以了解图像的哪些部分很重要。
...
...
@@ -155,7 +155,7 @@ for filter_idx in range(20):
![](
img/f741f405-d2e9-4598-822b-d269d004e882.png
)
如图所示,用于缝合图像并产生输出的代码与代码束一起提供。 由于修道院的接受区域变大,因此可视化在以后的层变得复杂。 一些滤镜看起来很相似,但只是旋转而已。 在这种情况下,可视化的层次结构可以清楚地看到,
如 Zeiler 等人所示。 (
[
https://arxiv.org/pdf/1412.6572.pdf
](
https://arxiv.org/pdf/1412.6572.pdf
)
)
。 下图显示了不同层的直接可视化:
如图所示,用于缝合图像并产生输出的代码与代码束一起提供。 由于修道院的接受区域变大,因此可视化在以后的层变得复杂。 一些滤镜看起来很相似,但只是旋转而已。 在这种情况下,可视化的层次结构可以清楚地看到,
[
如 Zeiler 等人所示
](
https://arxiv.org/pdf/1412.6572.pdf
)
。 下图显示了不同层的直接可视化:
![](
img/810e2adf-2cf5-44d2-b729-91dfd56cadb1.png
)
...
...
@@ -305,7 +305,7 @@ PIL.Image.fromarray(image).save('dream_' + image_name, 'jpeg')
# 对抗性例子
在几个数据集上,图像分类算法已达到人类水平的准确性。 但是它们可以被对抗性例子轻易地欺骗。 对抗示例是合成图像,它们使模型无法产生所需的结果。 拍摄任何图像,然后选择不正确的随机目标类别。 可以用噪声修改该图像,
直到网络被 Goodfellow 等人所欺骗。 (
[
https://arxiv.org/pdf/1412.6572.pdf
](
https://arxiv.org/pdf/1412.6572.pdf
)
)
。 该模型的对抗攻击示例如下所示:
在几个数据集上,图像分类算法已达到人类水平的准确性。 但是它们可以被对抗性例子轻易地欺骗。 对抗示例是合成图像,它们使模型无法产生所需的结果。 拍摄任何图像,然后选择不正确的随机目标类别。 可以用噪声修改该图像,
[
直到网络被 Goodfellow 等人所欺骗
](
https://arxiv.org/pdf/1412.6572.pdf
)
。 该模型的对抗攻击示例如下所示:
![](
img/5fc3a7dd-4e49-4215-a821-e026811ca3fd.png
)
...
...
@@ -603,7 +603,7 @@ matches = annoy_index.get_nns_by_vector(query_feature, 20)
匹配项列表可用于检索图像详细信息。 项目的索引将被返回。
请访问
[
https://github.com/spotify/annoy
](
https://github.com/spotify/annoy
)
以获取
`ANNOY`
的完整实现,以及其在准确性和速度方面与其他近似最近邻算法的基准比较。
请访问
[
这里
](
https://github.com/spotify/annoy
)
以获取
`ANNOY`
的完整实现,以及其在准确性和速度方面与其他近似最近邻算法的基准比较。
# ANNOY 的优点
...
...
docs/dl-cv/04.md
浏览文件 @
b7cbbe41
...
...
@@ -41,7 +41,7 @@ PASCAL VOC 挑战赛于 2005 年至 2012 年进行。该挑战赛被认为是物
*
车辆: A 飞机,自行车,轮船,公共汽车,汽车,摩托车,火车
*
室内: B 水壶,椅子,餐桌,盆栽,沙发,电视/显示器
您可以从
[
http://host.robots.ox.ac.uk/pascal/VOC/voc2012/VOCtrainval_11-May-2012.tar
](
http://host.robots.ox.ac.uk/pascal/VOC/voc2012/VOCtrainval_11-May-2012.tar
)
下载数据集。 每个图像平均有 2.4 个对象。
您可以从
[
这里
](
http://host.robots.ox.ac.uk/pascal/VOC/voc2012/VOCtrainval_11-May-2012.tar
)
下载数据集。 每个图像平均有 2.4 个对象。
# 可可物体检测挑战
...
...
@@ -137,7 +137,7 @@ logits = tf.reshape(logits, [-1, 10])
# 滑动窗口的卷积实现
在这种技术中,最终目标不是滑动,而是变成一些需要深度的目标,并需要多个框作为窗口。
Sermanet 等。 (
[
https://arxiv.org/pdf/1312.6229.pdf
](
https://arxiv.org/pdf/1312.6229.pdf
)
)
使用完全卷积实现来克服滑动窗口的这一问题。 这是滑动窗口的这种卷积实现的说明:
在这种技术中,最终目标不是滑动,而是变成一些需要深度的目标,并需要多个框作为窗口。
[
Sermanet 等人
](
https://arxiv.org/pdf/1312.6229.pdf
)
使用完全卷积实现来克服滑动窗口的这一问题。 这是滑动窗口的这种卷积实现的说明:
![](
img/615888e7-8aac-425c-83be-0802095b2cd8.png
)
...
...
@@ -179,7 +179,7 @@ logits = tf.reshape(logits, [-1, 10])
# 卷积神经网络(R-CNN)的区域
该系列的第一个工作是 Girshick 等人提出的
CNN 区域(
[
https://arxiv.org/pdf/1311.2524.pdf
](
https://arxiv.org/pdf/1311.2524.pdf
)
)
。 它提出了一些框,并检查是否有任何框对应于基本事实。
**选择性搜索**
用于这些地区提案。 选择性搜索通过对各种大小的窗口的颜色/纹理进行分组来建议区域。 选择性搜索寻找斑点样的结构。 它以一个像素开始,并在更大范围内产生斑点。 它产生了大约 2,000 个区域提案。 与所有可能的滑动窗口相比,该区域建议更少。
该系列的第一个工作是 Girshick 等人提出的
[
CNN 区域
](
https://arxiv.org/pdf/1311.2524.pdf
)
。 它提出了一些框,并检查是否有任何框对应于基本事实。
**选择性搜索**
用于这些地区提案。 选择性搜索通过对各种大小的窗口的颜色/纹理进行分组来建议区域。 选择性搜索寻找斑点样的结构。 它以一个像素开始,并在更大范围内产生斑点。 它产生了大约 2,000 个区域提案。 与所有可能的滑动窗口相比,该区域建议更少。
调整提案的大小并通过标准的 CNN 体系结构,例如 Alexnet / VGG / Inception / ResNet。 CNN 的最后一层是通过 SVM 进行训练的,该 SVM 使用无对象类来标识对象。 通过拉紧图像周围的框可以进一步改善框。 使用对象区域建议训练用于预测更近边界框的线性回归模型。 R-CNN 的架构如下所示:
...
...
@@ -197,7 +197,7 @@ logits = tf.reshape(logits, [-1, 10])
# 快速 R-CNN
Girshick 等人提出的
Fast R-CNN。 (
[
https://arxiv.org/pdf/1504.08083.pdf
](
https://arxiv.org/pdf/1504.08083.pdf
)
)
方法仅运行一次 CNN 推理,因此减少了计算量。 CNN 的输出用于建议网络并选择边界框。 它介绍了一种称为
**感兴趣区域池**
的技术。 感兴趣区域池采用 CNN 功能,并根据区域将它们合并在一起。 合并使用 CNN 进行推理后获得的特征,并选择区域,如下图所示:
Girshick 等人提出的
[
Fast R-CNN
](
https://arxiv.org/pdf/1504.08083.pdf
)
方法仅运行一次 CNN 推理,因此减少了计算量。 CNN 的输出用于建议网络并选择边界框。 它介绍了一种称为
**感兴趣区域池**
的技术。 感兴趣区域池采用 CNN 功能,并根据区域将它们合并在一起。 合并使用 CNN 进行推理后获得的特征,并选择区域,如下图所示:
![](
img/9607861d-014a-4574-980d-90fb23f91ae4.png
)
...
...
@@ -207,7 +207,7 @@ Girshick 等人提出的 Fast R-CNN。 ( [https://arxiv.org/pdf/1504.08083.pdf
# 更快的 R-CNN
Ren 等人提出了
更快的 R-CNN。 (
[
https://arxiv.org/pdf/1506.01497.pdf
](
https://arxiv.org/pdf/1506.01497.pdf
)
)
。 Faster R-CNN 和 Fast R-CNN 方法之间的区别在于,Faster R-CNN 使用诸如 VGG 和 Inception 等体系结构的 CNN 功能来提案而不是选择性搜索。 CNN 功能进一步通过区域提议网络传递。 滑动窗口通过具有潜在边界框和分数的要素传递,并输出一些直观的长宽比,模型输出边界框和分数:
Ren 等人提出了
[
Faster R-CNN
](
https://arxiv.org/pdf/1506.01497.pdf
)
。 Faster R-CNN 和 Fast R-CNN 方法之间的区别在于,Faster R-CNN 使用诸如 VGG 和 Inception 等体系结构的 CNN 功能来提案而不是选择性搜索。 CNN 功能进一步通过区域提议网络传递。 滑动窗口通过具有潜在边界框和分数的要素传递,并输出一些直观的长宽比,模型输出边界框和分数:
![](
img/ea103e8f-b553-4d9d-89cd-077888fb7db0.png
)
...
...
@@ -238,7 +238,7 @@ Google 发布了经过预先训练的模型,并在`COCO`数据集上对各种
```
py
mkdir
protoc_3
.
3
cd
protoc_3
.
3
wget
[
https
:
//
github
.
com
/
google
/
protobuf
/
releases
/
download
/
v3
.
3.0
/
protoc
-
3.3
.
0
-
linux
-
x86_64
.
zip
](
https
:
//
github
.
com
/
google
/
protobuf
/
releases
/
download
/
v3
.
3.0
/
protoc
-
3.3
.
0
-
linux
-
x86_64
.
zip
)
wget
https
:
//
github
.
com
/
google
/
protobuf
/
releases
/
download
/
v3
.
3.0
/
protoc
-
3.3
.
0
-
linux
-
x86_64
.
zip
```
更改文件夹的权限并提取内容,如下所示:
...
...
@@ -248,7 +248,7 @@ chmod 775 protoc-3.3.0-linux-x86_64.zip
unzip
protoc
-
3.3
.
0
-
linux
-
x86_64
.
zip
```
协议缓冲区(protobuf)是 Google 的语言无关,平台无关的可扩展机制,用于序列化结构化数据。 它用于 XML 的使用,但是更加简单快捷。 模型通常在 TensorFlow 中导出为这种格式。 一个人可以定义一次数据结构,但可以用多种语言进行读写。 然后运行以下命令来编译 protobuf。 返回到工作文件夹,然后
c 从
[
https://github.com/tensorflow/models.git
](
https://github.com/tensorflow/models.git
)
克隆存储库,并将它们移至以下文件夹:
协议缓冲区(protobuf)是 Google 的语言无关,平台无关的可扩展机制,用于序列化结构化数据。 它用于 XML 的使用,但是更加简单快捷。 模型通常在 TensorFlow 中导出为这种格式。 一个人可以定义一次数据结构,但可以用多种语言进行读写。 然后运行以下命令来编译 protobuf。 返回到工作文件夹,然后
从
[
这里
](
https://github.com/tensorflow/models.git
)
克隆存储库,并将它们移至以下文件夹:
```
py
git
clone
https
:
//
github
.
com
/
tensorflow
/
models
.
git
...
...
@@ -281,7 +281,7 @@ Ran 7 tests in 0.022s
OK
```
可以从
[
https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/installation.md
](
https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/installation.md
)
获得有关安装的更多信息。 现在安装已完成并经过测试。
可以从
[
这里
](
https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/installation.md
)
获得有关安装的更多信息。 现在安装已完成并经过测试。
# 预训练模型
...
...
@@ -354,7 +354,7 @@ python object_detection/create_pet_tf_record.py \
*
数据集的
`train_input_`
配置
*
评估数据集的
`eval_input_`
配置
我们将使用
[
https://github.com/tensorflow/models/blob/master/research/object_detection/samples/configs/ssd_mobilenet_v1_pets.config
](
https://github.com/tensorflow/models/blob/master/research/object_detection/samples/configs/ssd_mobilenet_v1_pets.config
)
中的配置文件。 通过运行以下命令将其下载到
`Chapter04`
文件夹。 打开
`config`
文件并编辑以下行:
我们将使用
[
这个页面
](
https://github.com/tensorflow/models/blob/master/research/object_detection/samples/configs/ssd_mobilenet_v1_pets.config
)
中的配置文件。 通过运行以下命令将其下载到
`Chapter04`
文件夹。 打开
`config`
文件并编辑以下行:
```
py
fine_tune_checkpoint
:
"~/Chapter04/ssd_mobilenet_v1_coco_11_06_2017/model.ckpt"
...
...
@@ -401,7 +401,7 @@ tensorboard --logdir=/home/ubuntu/Chapter04
# 训练自动驾驶汽车的行人检测
可以在
[
http://pascal.inrialpes.fr/data/human/
](
http://pascal.inrialpes.fr/data/human/
)
中找到用于训练行人物体检测的数据集。 可以在
[
https://github.com/diegocavalca/machine-learning/blob/master/supervisioned/object.detection_tensorflow/simple.detection.ipynb
](
https://github.com/diegocavalca/machine-learning/blob/master/supervisioned/object.detection_tensorflow/simple.detection.ipynb
)
中找到检测行人的步骤。 可以从
[
http://www.vision.ee.ethz.ch/~timofter/traffic_signs/
](
http://www.vision.ee.ethz.ch/~timofter/traffic_signs/
)
和
[
http://btsd.ethz.ch/下载用于训练符号检测器的数据集。 shareddata /
](
http://btsd.ethz.ch/shareddata/
)
。 对于无人驾驶汽车,图像中将有四个类别用于标记:行人,汽车,摩托车和背景。 当不存在任何后台类时,必须检测到该后台类。 训练深度学习分类模型的一个假设是,至少一个对象将出现在图像中。 通过添加
`background`
类,我们克服了这个问题。 神经网络还可以根据标签生成对象的边界框。
可以在
[
这个页面
](
http://pascal.inrialpes.fr/data/human/
)
中找到用于训练行人物体检测的数据集。 可以在
[
这个页面
](
https://github.com/diegocavalca/machine-learning/blob/master/supervisioned/object.detection_tensorflow/simple.detection.ipynb
)
中找到检测行人的步骤。 可以从
[
这个页面
](
http://www.vision.ee.ethz.ch/~timofter/traffic_signs/
)
和
[
这个页面
](
http://btsd.ethz.ch/shareddata/
)
下载用于训练符号检测器的数据集
。 对于无人驾驶汽车,图像中将有四个类别用于标记:行人,汽车,摩托车和背景。 当不存在任何后台类时,必须检测到该后台类。 训练深度学习分类模型的一个假设是,至少一个对象将出现在图像中。 通过添加
`background`
类,我们克服了这个问题。 神经网络还可以根据标签生成对象的边界框。
# YOLO 对象检测算法
...
...
docs/dl-cv/05.md
浏览文件 @
b7cbbe41
...
...
@@ -60,15 +60,15 @@
除了上面提到的那些以外,在医学影像和卫星影像领域还有其他几个数据集。 这里提供了指向其中一些链接的供您参考:
*
[
http://www.cs.bu.edu/~betke/BiomedicalImageSegmentation
](
http://www.cs.bu.edu/~betke/BiomedicalImageSegmentation/
)
*
[
https://www.kaggle.com/c/intel-mobileodt-cervical-cancer-screening/data
](
https://www.kaggle.com/c/intel-mobileodt-cervical-cancer-screening/data
)
*
[
https://www.kaggle.com/c/diabetic-retinopathy-detection
](
https://www.kaggle.com/c/diabetic-retinopathy-detection
)
*
[
https://grand-challenge.org/all_challenges
](
https://grand-challenge.org/all_challenges/
)
*
[
http://www.via.cornell.edu/databases
](
http://www.via.cornell.edu/databases/
)
*
[
https://www.kaggle.com/c/dstl-satellite-imagery-feature-detection
](
https://www.kaggle.com/c/dstl-satellite-imagery-feature-detection
)
*
[
https://aws.amazon.com/public-datasets/spacenet
](
https://aws.amazon.com/public-datasets/spacenet/
)
*
[
https://www.iarpa.gov/challenges/fmow.html
](
https://www.iarpa.gov/challenges/fmow.html
)
*
[
https://www.kaggle.com/c/planet-understanding-the-amazon-from-space
](
https://www.kaggle.com/c/planet-understanding-the-amazon-from-space
)
*
<http://www.cs.bu.edu/~betke/BiomedicalImageSegmentation/>
*
<https://www.kaggle.com/c/intel-mobileodt-cervical-cancer-screening/data>
*
<https://www.kaggle.com/c/diabetic-retinopathy-detection>
*
<https://grand-challenge.org/all_challenges/>
*
<http://www.via.cornell.edu/databases/>
*
<https://www.kaggle.com/c/dstl-satellite-imagery-feature-detection>
*
<https://aws.amazon.com/public-datasets/spacenet/>
*
<https://www.iarpa.gov/challenges/fmow.html>
*
<https://www.kaggle.com/c/planet-understanding-the-amazon-from-space>
为分割任务创建训练数据非常昂贵。 有在线工具可用于注释数据集。 麻省理工学院
**MIT 大学**
提供的
**LabelMe**
移动应用程序非常适合注释,可以从
[
下载 http://labelme.csail.mit.edu/Release3.0
](
http://labelme.csail.mit.edu/Release3.0
)
。
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录