【Scikit-Learn 中文文档】三十六:随机投影 - 数据集转换 - 用户指南 | ApacheCN

中文文档: http://sklearn.apachecn.org/cn/stable/modules/random_projection.html

英文文档: http://sklearn.apachecn.org/en/stable/modules/random_projection.html

官方文档: http://scikit-learn.org/stable/

GitHub: https://github.com/apachecn/scikit-learn-doc-zh(觉得不错麻烦给个 Star,我们一直在努力)

贡献者: https://github.com/apachecn/scikit-learn-doc-zh#贡献者

关于我们: http://www.apachecn.org/organization/209.html




4.5. 随机投影

sklearn.random_projection 模块实现了一个简单且高效率的计算方式来减少数据维度,通过牺牲一定的精度(作为附加变量)来加速处理时间及更小的模型尺寸。 这个模型实现了两类无结构化的随机矩阵: Gaussian random matrix 和 sparse random matrix.

随机投影矩阵的维度和分布是受控制的,所以可以保存任意两个数据集的距离。因此随机投影适用于基于距离的方法。

参考:

4.5.1. Johnson-Lindenstrauss 辅助定理

支撑随机投影效率的主要理论成果是`Johnson-Lindenstrauss lemma (quoting Wikipedia) <https://en.wikipedia.org/wiki/Johnson%E2%80%93Lindenstrauss_lemma>`_:

在数学中,Johnson-Lindenstrauss引理是考虑轻度变形(内置点从高维到低维欧式空间)在内的结果. 引理阐释了高维空间下的可以小的点集可以内嵌到非常低维的空间,这种方式下点之间的距离几乎全部被保留。 内嵌所用到的隐射至少是Lipschitz,而且可以被当做正交投影。

有了样本数量, sklearn.random_projection.johnson_lindenstrauss_min_dim 会保守估计随机子空间的最小大小来保证随机投影导致的变形在一定范围内:

>>>
>>> from sklearn.random_projection import johnson_lindenstrauss_min_dim
>>> johnson_lindenstrauss_min_dim(n_samples=1e6, eps=0.5)
663
>>> johnson_lindenstrauss_min_dim(n_samples=1e6, eps=[0.5, 0.1, 0.01])
array([    663,   11841, 1112658])
>>> johnson_lindenstrauss_min_dim(n_samples=[1e4, 1e5, 1e6], eps=0.1)
array([ 7894,  9868, 11841])
../_images/sphx_glr_plot_johnson_lindenstrauss_bound_0011.png
../_images/sphx_glr_plot_johnson_lindenstrauss_bound_0021.png

例子:

参考:

4.5.2. 高斯随机投影

The sklearn.random_projection.GaussianRandomProjection 通过将原始输入空间投影到随机生成的矩阵(该矩阵的组件由以下分布中抽取) :math:`N(0, frac{1}{n_{components}})`降低维度。

以下小片段演示了任何使用高斯随机投影转换器:

>>>
>>> import numpy as np
>>> from sklearn import random_projection
>>> X = np.random.rand(100, 10000)
>>> transformer = random_projection.GaussianRandomProjection()
>>> X_new = transformer.fit_transform(X)
>>> X_new.shape
(100, 3947)

4.5.3. 稀疏随机矩阵

sklearn.random_projection.SparseRandomProjection 使用稀疏随机矩阵,通过投影原始输入空间来降低维度。

稀疏矩阵可以替换高斯随机投影矩阵来保证相似的嵌入质量,且内存利用率更高、投影数据的计算更快。

如果我们定义 s = 1 / density, 随机矩阵的元素由

\left\{\begin{array}{c c l}-\sqrt{\frac{s}{n_{\text{components}}}} & & 1 / 2s\\0 &\text{with probability}  & 1 - 1 / s \\+\sqrt{\frac{s}{n_{\text{components}}}} & & 1 / 2s\\\end{array}\right.

抽取。

其中 n_{\text{components}} 是投影后的子空间大小。 默认非零元素的浓密度设置为最小浓密度,该值由Ping Li et al.:推荐,根据公式:math:`1 / sqrt{n_{text{features}}}`计算。

以下小片段演示了如何使用稀疏随机投影转换器:

>>>
>>> import numpy as np
>>> from sklearn import random_projection
>>> X = np.random.rand(100,10000)
>>> transformer = random_projection.SparseRandomProjection()
>>> X_new = transformer.fit_transform(X)
>>> X_new.shape
(100, 3947)

参考:




中文文档: http://sklearn.apachecn.org/cn/stable/modules/random_projection.html

英文文档: http://sklearn.apachecn.org/en/stable/modules/random_projection.html

官方文档: http://scikit-learn.org/stable/

GitHub: https://github.com/apachecn/scikit-learn-doc-zh(觉得不错麻烦给个 Star,我们一直在努力)

贡献者: https://github.com/apachecn/scikit-learn-doc-zh#贡献者

关于我们: http://www.apachecn.org/organization/209.html

有兴趣的们也可以和我们一起来维护,持续更新中 。。。

机器学习交流群: 629470233

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: scikit-learn是一个Python编程语言的机器学习库,具有广泛的应用和卓越的性能。为了方便国内用户使用,scikit-learn提供了中文文档下载。 要下载scikit-learn0.20.1中文文档用户可以按照以下步骤进行: 1. 打开scikit-learn的官方网站:https://scikit-learn.org 2. 在导航栏上选择“下载”选项。 3. 在下载页面上,用户可以找到与Python版本对应的文档下载链接。选择0.20.1版本。 4. 当点击下载链接后,用户将被重定向到下载页面。 5. 在下载页面上,用户可以找到中文版本的文档下载链接。点击该链接,开始下载中文文档。 6. 下载完成后,用户可以将文档解压缩,并在本地进行阅读和学习。 下载的中文文档将为用户提供有关scikit-learn0.20.1版本的详细说明和使用指南。其中包含丰富的示例代码、算法介绍、数据预处理方法等等。这将帮助用户更好地理解和使用scikit-learn库,从而进行机器学习任务。 总之,通过以上步骤用户可以下载scikit-learn0.20.1中文文档,以便更好地学习和使用这个强大的机器学习工具。希望这个回答对您有所帮助! ### 回答2: 要下载scikit-learn0.20.1中文文档,可以按照以下步骤进行: 1. 打开scikit-learn官方网站(https://scikit-learn.org)。 2. 在网站的顶部菜单栏中找到"Documentation"(中文翻译为"文档")选项,点击进入文档页面。 3. 在文档页面上,可以找到不同版本的scikit-learn文档链接。找到0.20.1版本的链接并点击进入。 4. 进入0.20.1版本的文档页面后,可以看到左上角有一个"v0.20.1"的下拉菜单,点击它可以展开其他语言的选项。 5. 在下拉菜单中选择中文(Chinese)选项,页面会自动刷新显示中文版本的文档。 6. 浏览器上方会出现一个类似下载按钮的图标,点击该图标可以将当前页面保存为PDF文件。 7. 选择保存位置,并点击保存按钮即可将scikit-learn0.20.1中文文档下载到本地计算机中。 以上是下载scikit-learn0.20.1中文文档的简要步骤。可以根据这些步骤在官方网站上找到并下载所需的中文文档。 ### 回答3: scikit-learn是一个重要的机器学习库,它提供了丰富的机器学习算法和工具,可以帮助开发者进行数据预处理、特征选择、模型训练和评估等任务。然而,不幸的是,scikit-learn官方文档目前只提供了英文版。 然而,也有很多志愿者和开发者翻译了scikit-learn的官方文档中文版本,提供给中文用户使用。一种方法是通过搜索引擎,比如Google,输入“scikit-learn中文文档下载”,会有很多结果提供下载链接。 另一种方法是通过GitHub等代码托管平台查找中文文档的仓库,可能会找到相关的翻译项目。这些仓库通常包含有关scikit-learn中文文档和示例代码。你可以在这些仓库中下载文档或查看在线文档。 同时,也可以参考scikit-learn非官方中文文档,如CSDN等技术论坛上有许多志愿者进行翻译和整理,提供给中文用户学习和使用。 无论是官方还是非官方的中文文档,我们都需要注意查看文档的版本以及与所使用的scikit-learn版本的对应关系,以确保文档的准确性和适用性。 总结而言,想要下载scikit-learn中文文档,可以通过搜索引擎、GitHub或技术论坛等途径寻找相关的翻译项目或非官方文档,以便更好地使用并学习scikit-learn这一优秀的机器学习库。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值