markdown有学习的必要吗

幕布精选,「无限层级」内容都能怎么玩?
Loading...
而幕布的优点也很明确:使用简单、效率高效、逻辑清晰,你可以用来 写笔记、思维整理、内容创作、任务管理。
光说不练假把式,我们就来看看被列出来的那些内容是如何用层级管理内容的。
这是一篇读书笔记,乍一看想目录,但当点击第一层内容前面的加号后,就能看到多层级内容的优越性了:
每一个标题都可以输入一些备注,会用浅色的小字显示出来。
这样的层级可以无限扩展下去,而每一级原点前面的 + – 号可以在当前情况下展开或是收缩起来。如果直接点击原点,则会进入一个新的页面,内容将仅显示当前层级及以下内容,适合于创作时使用。
除了黑白系,幕布也可以有彩色系,比如这个:
彩色标题需要高级版本支持,幕布有推荐系统可以免费升级高级版本,而青小蛙在之前几次介绍时有不少的推荐名额,于是,结尾会送出一些 VIP。
幕布的界面极简,所以一些功能需要快捷键才能搞定,比如设置颜色,添加图片:
用幕布来展示功能列表也非常合适,内容太多,可以点击上面的标题直达,就看了预览吧:
每一篇公开分享的内容,都可以轻松保存到自己的幕布中,然后再次编辑。
福利又来了。
幕布针对邀请好友注册有奖励,只需要 3 个人就能兑换 1 个月的高级帐户,9 人兑换 1 年,19 人兑换 3 年账号。
青小蛙之前推荐了不少用户,于是,送出 10 枚 3 年账号,10 枚 1 年账号。获奖用户由留言质量决定,就这样了。
留言并不局限讨论内容,你可以推荐同类软件,也可以分享自己的使用心得,或者吐槽、意见建议,都是可以的。
我最开始是从workfloy了解到幕布的,个人比较喜欢这种层级方式。因为我们写文章或者备忘更多的需要一个逻辑分类,可是大部分类似于word直接写文章的格式很少让我们能考虑逻辑问题,于是变成了流水账。幕布的层级格式以及可以变化思维导图的特性,最适合做读书笔记和复习材料。从上而下的分类,从一点到多点的展开,让思维发散同时又收拢的一点。目前这类记录笔记方式幕布做的最好。同时也有了多种客户端很适合随身编辑。希望能得到一个3年的兑换码,谢谢!
按分类查看文章:
大家都在讨论些什么
: 我看少数派的标题我就不爽...那开发者说“要是再没人买 开发者就GG”,,我擦我管你G不G,产品好自然有人买啊。。: 看标题还以为说越做越差: 在错误的道路上越走越远?: 有快捷键就好了: 好帖好帖: 这个标题确实看得难受: 群组人太多,而且太多人说垃圾内容了
最热门标签
传说中的小众软件 让你的手机应用与众不同。
商业网站、微信公众号 或其他未授权媒体不得复制、转载、使用本站内容。&img src=&/v2-e15f6ad15feae_b.jpg& data-rawwidth=&640& data-rawheight=&436& class=&origin_image zh-lightbox-thumb& width=&640& data-original=&/v2-e15f6ad15feae_r.jpg&&&p&分享一篇来自机器之心的文章。关于机器学习的起步,讲的还是很清楚的。原文链接在:&a href=&/?target=https%3A///articles/6b4-4a57-b060-4a362993dea4& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&只需十四步:从零开始掌握Python机器学习(附资源)&i class=&icon-external&&&/i&&/a&&/p&&blockquote&&i&Python 可以说是现在最流行的机器学习语言,而且你也能在网上找到大量的资源。你现在也在考虑从 Python 入门机器学习吗?本教程或许能帮你成功上手,从 0 到 1 掌握 Python 机器学习,至于后面再从 1 到 100 变成机器学习专家,就要看你自己的努力了。本教程原文分为两个部分,机器之心在本文中将其进行了整合,原文可参阅:&a href=&/?target=https%3A//link.juejin.im/%3Ftarget%3Dhttp%253A%252F%252Fsuo.im%252FKUWgl& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&suo.im/KUWgl&i class=&icon-external&&&/i&&/a&&/i& &i&和&/i& &i&&a href=&/?target=https%3A//link.juejin.im/%3Ftarget%3Dhttp%253A%252F%252Fsuo.im%252F96wD3& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&suo.im/96wD3&i class=&icon-external&&&/i&&/a&。本教程的作者为 KDnuggets 副主编兼数据科学家 Matthew Mayo。&/i&&/blockquote&&p&「开始」往往是最难的,尤其是当选择太多的时候,一个人往往很难下定决定做出选择。本教程的目的是帮助几乎没有 Python 机器学习背景的新手成长为知识渊博的实践者,而且这个过程中仅需要使用免费的材料和资源即可。这个大纲的主要目标是带你了解那些数量繁多的可用资源。毫无疑问,资源确实有很多,但哪些才是最好的呢?哪些是互补的呢?以怎样的顺序学习这些资源才是最合适的呢?&/p&&p&首先,我假设你并不是以下方面的专家:&/p&&ul&&li&机器学习&/li&&li&Python&/li&&li&任何 Python 的机器学习、科学计算或数据分析库&/li&&/ul&&p&当然,如果你对前两个主题有一定程度的基本了解就更好了,但那并不是必要的,在早期阶段多花一点点时间了解一下就行了。&/p&&p&&br&&/p&&h2&&b&基础篇&/b&&/h2&&p&&br&&/p&&h2&&b&第一步:基本 Python 技能&/b&&/h2&&p&如果我们打算利用 Python 来执行机器学习,那么对 Python 有一些基本的了解就是至关重要的。幸运的是,因为 Python 是一种得到了广泛使用的通用编程语言,加上其在科学计算和机器学习领域的应用,所以找到一个初学者教程并不十分困难。你在 Python 和编程上的经验水平对于起步而言是至关重要的。&/p&&p&首先,你需要安装 Python。因为我们后面会用到科学计算和机器学习软件包,所以我建议你安装 Anaconda。这是一个可用于 Linux、OS X 和 Windows 上的工业级的 Python 实现,完整包含了机器学习所需的软件包,包括 numpy、scikit-learn 和 matplotlib。其也包含了 iPython Notebook,这是一个用在我们许多教程中的交互式环境。我推荐安装 Python 2.7。&/p&&p&如果你不懂编程,我建议你从下面的免费在线书籍开始学习,然后再进入后续的材料:&/p&&ul&&li&Learn Python the Hard Way,作者 Zed A. Shaw:&a href=&/?target=https%3A//learnpythonthehardway.org/book/& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&https://&/span&&span class=&visible&&learnpythonthehardway.org&/span&&span class=&invisible&&/book/&/span&&span class=&ellipsis&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&如果你有编程经验,但不懂 Python 或还很初级,我建议你学习下面两个课程:&/p&&ul&&li&谷歌开发者 Python 课程(强烈推荐视觉学习者学习):&a href=&/?target=http%3A//suo.im/toMzq& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/toMzq&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&li&Python 科学计算入门(来自 UCSB Engineering 的 M. Scott Shell)(一个不错的入门,大约有 60 页):&a href=&/?target=http%3A//suo.im/2cXycM& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/2cXycM&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&如果你要 30 分钟上手 Python 的快速课程,看下面:&/p&&ul&&li&在 Y 分钟内学会 X(X=Python):&a href=&/?target=http%3A//suo.im/zm6qX& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/zm6qX&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&当然,如果你已经是一位经验丰富的 Python 程序员了,这一步就可以跳过了。即便如此,我也建议你常使用 Python 文档:&a href=&/?target=https%3A//www.python.org/doc/& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&https://www.&/span&&span class=&visible&&python.org/doc/&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/p&&h2&&b&第二步:机器学习基础技巧&/b&&/h2&&p&KDnuggets 的 Zachary Lipton 已经指出:现在,人们评价一个「数据科学家」已经有很多不同标准了。这实际上是机器学习领域领域的一个写照,因为数据科学家大部分时间干的事情都牵涉到不同程度地使用机器学习算法。为了有效地创造和获得来自支持向量机的洞见,非常熟悉核方法(kernel methods)是否必要呢?当然不是。就像几乎生活中的所有事情一样,掌握理论的深度是与实践应用相关的。对机器学习算法的深度了解超过了本文探讨的范围,它通常需要你将非常大量的时间投入到更加学术的课程中去,或者至少是你自己要进行高强度的自学训练。&/p&&p&好消息是,对实践来说,你并不需要获得机器学习博士般的理论理解——就想要成为一个高效的程序员并不必要进行计算机科学理论的学习。&/p&&p&人们对吴恩达在 Coursera 上的机器学习课程内容往往好评如潮;然而,我的建议是浏览前一个学生在线记录的课堂笔记。跳过特定于 Octave(一个类似于 Matlab 的与你 Python 学习无关的语言)的笔记。一定要明白这些都不是官方笔记,但是可以从它们中把握到吴恩达课程材料中相关的内容。当然如果你有时间和兴趣,你现在就可以去 Coursera 上学习吴恩达的机器学习课程:&a href=&/?target=http%3A//suo.im/2o1uD& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/2o1uD&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/p&&ul&&li&吴恩达课程的非官方笔记:&a href=&/?target=http%3A//www.holehouse.org/mlclass/& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://www.&/span&&span class=&visible&&holehouse.org/mlclass/&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&除了上面提到的吴恩达课程,如果你还需要需要其它的,网上还有很多各类课程供你选择。比如我就很喜欢 Tom Mitchell,这里是他最近演讲的视频(一起的还有 Maria-Florina Balcan),非常平易近人。&/p&&ul&&li&Tom Mitchell 的机器学习课程:&a href=&/?target=http%3A//suo.im/497arw& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/497arw&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&目前你不需要所有的笔记和视频。一个有效地方法是当你觉得合适时,直接去看下面特定的练习题,参考上述备注和视频恰当的部分,&/p&&h2&&b&第三步:科学计算 Python 软件包概述&/b&&/h2&&p&好了,我们已经掌握了 Python 编程并对机器学习有了一定的了解。而在 Python 之外,还有一些常用于执行实际机器学习的开源软件库。广义上讲,有很多所谓的科学 Python 库(scientific Python libraries)可用于执行基本的机器学习任务(这方面的判断肯定有些主观性):&/p&&ul&&li&numpy——主要对其 N 维数组对象有用 &a href=&/?target=http%3A//www.numpy.org/& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://www.&/span&&span class=&visible&&numpy.org/&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&li&pandas——Python 数据分析库,包括数据框架(dataframes)等结构 &a href=&/?target=http%3A//pandas.pydata.org/& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&pandas.pydata.org/&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&li&matplotlib——一个 2D 绘图库,可产生出版物质量的图表 &a href=&/?target=http%3A//matplotlib.org/& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&matplotlib.org/&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&li&scikit-learn——用于数据分析和数据挖掘人物的机器学习算法 &a href=&/?target=http%3A//scikit-learn.org/stable/& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&scikit-learn.org/stable&/span&&span class=&invisible&&/&/span&&span class=&ellipsis&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&学习这些库的一个好方法是学习下面的材料:&/p&&ul&&li&Scipy Lecture Notes,来自 Ga?l Varoquaux、Emmanuelle Gouillart 和 Olav Vahtras:&a href=&/?target=http%3A//www.scipy-lectures.org/& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://www.&/span&&span class=&visible&&scipy-lectures.org/&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&li&这个 pandas 教程也很不错:10 Minutes to Pandas:&a href=&/?target=http%3A//suo.im/4an6gY& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/4an6gY&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&在本教程的后面你还会看到一些其它的软件包,比如基于 matplotlib 的数据可视化库 Seaborn。前面提到的软件包只是 Python 机器学习中常用的一些核心库的一部分,但是理解它们应该能让你在后面遇到其它软件包时不至于感到困惑。&/p&&p&下面就开始动手吧!&/p&&h2&&b&第四步:使用 Python 学习机器学习&/b&&/h2&&p&首先检查一下准备情况&/p&&ul&&li&Python:就绪&/li&&li&机器学习基本材料:就绪&/li&&li&Numpy:就绪&/li&&li&Pandas:就绪&/li&&li&Matplotlib:就绪&/li&&/ul&&p&现在是时候使用 Python 机器学习标准库 scikit-learn 来实现机器学习算法了。&/p&&img src=&/v2-7d858ddc1ea6_b.png& data-rawwidth=&600& data-rawheight=&240& class=&origin_image zh-lightbox-thumb& width=&600& data-original=&/v2-7d858ddc1ea6_r.png&&&p&&i&scikit-learn 流程图&/i&&/p&&p&下面许多的教程和训练都是使用 iPython (Jupyter) Notebook 完成的,iPython Notebook 是执行 Python 语句的交互式环境。iPython Notebook 可以很方便地在网上找到或下载到你的本地计算机。&/p&&ul&&li&来自斯坦福的 iPython Notebook 概览:&a href=&/?target=http%3A//cs231n.github.io/ipython-tutorial/& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&cs231n.github.io/ipytho&/span&&span class=&invisible&&n-tutorial/&/span&&span class=&ellipsis&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&同样也请注意,以下的教程是由一系列在线资源所组成。如果你感觉课程有什么不合适的,可以和作者交流。我们第一个教程就是从 scikit-learn 开始的,我建议你们在继续完成教程前可以按顺序看一看以下的文章。&/p&&p&下面是一篇是对 scikit-learn 简介的文章,scikit-learn 是 Python 最常用的通用机器学习库,其覆盖了 K 近邻算法:&/p&&ul&&li&Jake VanderPlas 写的 scikit-learn 简介:&a href=&/?target=http%3A//suo.im/3bMdEd& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/3bMdEd&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a& &/li&&/ul&&p&下面的会更加深入、扩展的一篇简介,包括了从著名的数据库开始完成一个项目:&/p&&ul&&li&Randal Olson 的机器学习案例笔记:&a href=&/?target=http%3A//suo.im/RcPR6& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/RcPR6&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&下一篇关注于在 scikit-learn 上评估不同模型的策略,包括训练集/测试集的分割方法:&/p&&ul&&li&Kevin Markham 的模型评估:&a href=&/?target=http%3A//suo.im/2HIXDD& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/2HIXDD&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&h2&&b&第五步:Python 上实现机器学习的基本算法&/b&&/h2&&p&在有了 scikit-learn 的基本知识后,我们可以进一步探索那些更加通用和实用的算法。我们从非常出名的 K 均值聚类(k-means clustering)算法开始,它是一种非常简单和高效的方法,能很好地解决非监督学习问题:&/p&&ul&&li&K-均值聚类:&a href=&/?target=http%3A//suo.im/40R8zf& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/40R8zf&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a& &/li&&/ul&&p&接下来我们可以回到分类问题,并学习曾经最流行的分类算法:&/p&&ul&&li&决策树:&a href=&/?target=http%3A///tutorial-decision-trees/& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&/t&/span&&span class=&invisible&&utorial-decision-trees/&/span&&span class=&ellipsis&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&在了解分类问题后,我们可以继续看看连续型数值预测:&/p&&ul&&li&线性回归:&a href=&/?target=http%3A//suo.im/3EV4Qn& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/3EV4Qn&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&我们也可以利用回归的思想应用到分类问题中,即 logistic 回归:&/p&&ul&&li&logistic 回归:&a href=&/?target=http%3A//suo.im/S2beL& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/S2beL&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&h2&&b&第六步:Python 上实现进阶机器学习算法&/b&&/h2&&p&我们已经熟悉了 scikit-learn,现在我们可以了解一下更高级的算法了。首先就是支持向量机,它是一种依赖于将数据转换映射到高维空间的非线性分类器。&/p&&ul&&li&支持向量机:&a href=&/?target=http%3A//suo.im/2iZLLa& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/2iZLLa&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&随后,我们可以通过 Kaggle Titanic 竞赛检查学习作为集成分类器的随机森林:&/p&&ul&&li&Kaggle Titanic 竞赛(使用随机森林):&a href=&/?target=http%3A//suo.im/1o7ofe& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/1o7ofe&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&降维算法经常用于减少在问题中所使用的变量。主成份分析法就是非监督降维算法的一个特殊形式:&/p&&ul&&li&降维算法:&a href=&/?target=http%3A//suo.im/2k5y2E& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/2k5y2E&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&在进入第七步之前,我们可以花一点时间考虑在相对较短的时间内取得的一些进展。&/p&&p&首先使用 Python 及其机器学习库,我们不仅已经了解了一些最常见和知名的机器学习算法(k 近邻、k 均值聚类、支持向量机等),还研究了强大的集成技术(随机森林)和一些额外的机器学习任务(降维算法和模型验证技术)。除了一些基本的机器学习技巧,我们已经开始寻找一些有用的工具包。&/p&&p&我们会进一步学习新的必要工具。&/p&&h2&&b&第七步:Python 深度学习&/b&&/h2&&img src=&/v2-3af8e3ea8_b.png& data-rawwidth=&490& data-rawheight=&294& class=&origin_image zh-lightbox-thumb& width=&490& data-original=&/v2-3af8e3ea8_r.png&&&p&&i&神经网络包含很多层&/i&&/p&&p&深度学习无处不在。深度学习建立在几十年前的神经网络的基础上,但是最近的进步始于几年前,并极大地提高了深度神经网络的认知能力,引起了人们的广泛兴趣。如果你对神经网络还不熟悉,KDnuggets 有很多文章详细介绍了最近深度学习大量的创新、成就和赞许。&/p&&p&最后一步并不打算把所有类型的深度学习评论一遍,而是在 2 个先进的当代 Python 深度学习库中探究几个简单的网络实现。对于有兴趣深挖深度学习的读者,我建议从下面这些免费的在线书籍开始:&/p&&ul&&li&神经网络与深度学习,作者 Michael Nielsen:&a href=&/?target=http%3A///& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&&/span&&span class=&invisible&&/&/span&&span class=&ellipsis&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&1.Theano&/p&&p&链接:&a href=&/?target=http%3A//deeplearning.net/software/theano/& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&deeplearning.net/softwa&/span&&span class=&invisible&&re/theano/&/span&&span class=&ellipsis&&&/span&&i class=&icon-external&&&/i&&/a&&/p&&p&Theano 是我们讲到的第一个 Python 深度学习库。看看 Theano 作者怎么说:&/p&&blockquote&&i&Theano 是一个 Python 库,它可以使你有效地定义、优化和评估包含多维数组的数学表达式。&/i&&/blockquote&&p&下面关于运用 Theano 学习深度学习的入门教程有点长,但是足够好,描述生动,评价很高:&/p&&ul&&li&Theano 深度学习教程,作者 Colin Raffel:&a href=&/?target=http%3A//suo.im/1mPGHe& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/1mPGHe&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&2.Caffe &/p&&p&链接:&a href=&/?target=http%3A//caffe.berkeleyvision.org/& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&caffe.berkeleyvision.org&/span&&span class=&invisible&&/&/span&&span class=&ellipsis&&&/span&&i class=&icon-external&&&/i&&/a&&/p&&p&另一个我们将测试驱动的库是 Caffe。再一次,让我们从作者开始:&/p&&blockquote&&i&Caffe 是一个深度学习框架,由表达、速度和模块性建构,Bwekeley 视觉与学习中心和社区工作者共同开发了 Caf fe。&/i&&/blockquote&&p&这个教程是本篇文章中最好的一个。我们已经学习了上面几个有趣的样例,但没有一个可与下面这个样例相竞争,其可通过 Caffe 实现谷歌的 DeepDream。这个相当精彩!掌握教程之后,可以尝试使你的处理器自如运行,就当作是娱乐。&/p&&ul&&li&通过 Caffe 实现谷歌 DeepDream:&a href=&/?target=http%3A//suo.im/2cUSXS& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/2cUSXS&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&我并没有保证说这会很快或容易,但是如果你投入了时间并完成了上面的 7 个步骤,你将在理解大量机器学习算法以及通过流行的库(包括一些在目前深度学习研究领域最前沿的库)在 Python 中实现算法方面变得很擅长。&/p&&h2&&b&进阶篇&/b&&/h2&&img src=&/v2-df9bde489d9b9bc85a1be06_b.png& data-rawwidth=&617& data-rawheight=&332& class=&origin_image zh-lightbox-thumb& width=&617& data-original=&/v2-df9bde489d9b9bc85a1be06_r.png&&&p&&i&机器学习算法&/i&&/p&&p&本篇是使用 Python 掌握机器学习的 7 个步骤系列文章的下篇,如果你已经学习了该系列的上篇,那么应该达到了令人满意的学习速度和熟练技能;如果没有的话,你也许应该回顾一下上篇,具体花费多少时间,取决于你当前的理解水平。我保证这样做是值得的。快速回顾之后,本篇文章会更明确地集中于几个机器学习相关的任务集上。由于安全地跳过了一些基础模块——Python 基础、机器学习基础等等——我们可以直接进入到不同的机器学习算法之中。这次我们可以根据功能更好地分类教程。&/p&&h2&&b&第1步:机器学习基础回顾&一个新视角&/b&&/h2&&p&上篇中包括以下几步:&/p&&p&1. Python 基础技能&/p&&p&2. 机器学习基础技能&/p&&p&3. Python 包概述&/p&&p&4. 运用 Python 开始机器学习:介绍&模型评估&/p&&p&5. 关于 Python 的机器学习主题:k-均值聚类、决策树、线性回归&逻辑回归&/p&&p&6. 关于 Python 的高阶机器学习主题:支持向量机、随机森林、PCA 降维&/p&&p&7. Python 中的深度学习&/p&&p&如上所述,如果你正准备从头开始,我建议你按顺序读完上篇。我也会列出所有适合新手的入门材料,安装说明包含在上篇文章中。&/p&&p&然而,如果你已经读过,我会从下面最基础的开始:&/p&&ul&&li&机器学习关键术语解释,作者 Matthew Mayo。地址:&a href=&/?target=http%3A//suo.im/2URQGm& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/2URQGm&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&li&维基百科条目:统计学分类。地址:&a href=&/?target=http%3A//suo.im/mquen& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/mquen&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&li&机器学习:一个完整而详细的概述,作者 Alex Castrounis。地址:&a href=&/?target=http%3A//suo.im/1yjSSq& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/1yjSSq&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&如果你正在寻找学习机器学习基础的替代或补充性方法,恰好我可以把正在看的 Shai Ben-David 的视频讲座和 Shai Shalev-Shwartz 的教科书推荐给你:&/p&&ul&&li&Shai Ben-David 的机器学习介绍视频讲座,滑铁卢大学。地址:&a href=&/?target=http%3A//suo.im/1TFlK6& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/1TFlK6&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&li&理解机器学习:从理论到算法,作者 Shai Ben-David & Shai Shalev-Shwartz。地址:&a href=&/?target=http%3A//suo.im/1NL0ix& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/1NL0ix&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&记住,这些介绍性资料并不需要全部看完才能开始我写的系列文章。视频讲座、教科书及其他资源可在以下情况查阅:当使用机器学习算法实现模型时或者当合适的概念被实际应用在后续步骤之中时。具体情况自己判断。&/p&&h2&&b&第2步:更多的分类&/b&&/h2&&p&我们从新材料开始,首先巩固一下我们的分类技术并引入一些额外的算法。虽然本篇文章的第一部分涵盖决策树、支持向量机、逻辑回归以及合成分类随机森林,我们还是会添加 k-最近邻、朴素贝叶斯分类器和多层感知器。&/p&&img src=&/v2-24fdfaa1fc9cb_b.png& data-rawwidth=&800& data-rawheight=&266& class=&origin_image zh-lightbox-thumb& width=&800& data-original=&/v2-24fdfaa1fc9cb_r.png&&&p&&i&Scikit-learn 分类器&/i&&/p&&p&k-最近邻(kNN)是一个简单分类器和懒惰学习者的示例,其中所有计算都发生在分类时间上(而不是提前在训练步骤期间发生)。kNN 是非参数的,通过比较数据实例和 k 最近实例来决定如何分类。
&/p&&ul&&li&使用 Python 进行 k-最近邻分类。地址:&a href=&/?target=http%3A//suo.im/2zqW0t& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/2zqW0t&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&朴素贝叶斯是基于贝叶斯定理的分类器。它假定特征之间存在独立性,并且一个类中任何特定特征的存在与任何其它特征在同一类中的存在无关。&/p&&ul&&li&使用 Scikit-learn 进行文档分类,作者 Zac Stewart。地址:&a href=&/?target=http%3A//suo.im/2uwBm3& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/2uwBm3&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&多层感知器(MLP)是一个简单的前馈神经网络,由多层节点组成,其中每个层与随后的层完全连接。多层感知器在 Scikit-learn 版本 0.18 中作了介绍。&/p&&p&首先从 Scikit-learn 文档中阅读 MLP 分类器的概述,然后使用教程练习实现。&/p&&ul&&li&神经网络模型(监督式),Scikit-learn 文档。地址:&a href=&/?target=http%3A//suo.im/3oR76l& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/3oR76l&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&li&Python 和 Scikit-learn 的神经网络初学者指南 0.18!作者 Jose Portilla。地址:&a href=&/?target=http%3A//suo.im/2tX6rG& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/2tX6rG&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&h2&&b&第3步:更多聚类&/b&&/h2&&p&我们现在接着讲聚类,一种无监督学习形式。上篇中,我们讨论了 k-means 算法; 我们在此介绍 DBSCAN 和期望最大化(EM)。&/p&&img src=&/v2-225a130b111b6e7756db9f_b.png& data-rawwidth=&600& data-rawheight=&300& class=&origin_image zh-lightbox-thumb& width=&600& data-original=&/v2-225a130b111b6e7756db9f_r.png&&&p&&i&Scikit-learn聚类算法&/i&&/p&&p&首先,阅读这些介绍性文章; 第一个是 k 均值和 EM 聚类技术的快速比较,是对新聚类形式的一个很好的继续,第二个是对 Scikit-learn 中可用的聚类技术的概述:&/p&&ul&&li&聚类技术比较:简明技术概述,作者 Matthew Mayo。地址:&a href=&/?target=http%3A//suo.im/4ctIvI& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/4ctIvI&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&li&在玩具数据集中比较不同的聚类算法,Scikit-learn 文档。地址:&a href=&/?target=http%3A//suo.im/4uvbbM& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/4uvbbM&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&期望最大化(EM)是概率聚类算法,并因此涉及确定实例属于特定聚类的概率。EM 接近统计模型中参数的最大似然性或最大后验估计(Han、Kamber 和 Pei)。EM 过程从一组参数开始迭代直到相对于 k 聚类的聚类最大化。&/p&&p&首先阅读关于 EM 算法的教程。接下来,看看相关的 Scikit-learn 文档。最后,按照教程使用 Python 自己实现 EM 聚类。&/p&&ul&&li&期望最大化(EM)算法教程,作者 Elena Sharova。地址:&a href=&/?target=http%3A//suo.im/33ukYd& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/33ukYd&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&li&高斯混合模型,Scikit-learn 文档。地址:&a href=&/?target=http%3A//suo.im/20C2tZ& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/20C2tZ&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&。&/li&&li&使用 Python 构建高斯混合模型的快速介绍,作者 Tiago Ramalho。地址:&a href=&/?target=http%3A//suo.im/4oxFsj& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/4oxFsj&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&如果高斯混合模型初看起来令人困惑,那么来自 Scikit-learn 文档的这一相关部分应该可以减轻任何多余的担心:&/p&&blockquote&&i&高斯混合对象实现期望最大化(EM)算法以拟合高斯模型混合。&/i&&/blockquote&&p&基于密度且具有噪声的空间聚类应用(DBSCAN)通过将密集数据点分组在一起,并将低密度数据点指定为异常值来进行操作。&/p&&p&首先从 Scikit-learn 的文档中阅读并遵循 DBSCAN 的示例实现,然后按照简明的教程学习:&/p&&ul&&li&DBSCAN 聚类算法演示,Scikit-learn 文档。地址:&a href=&/?target=http%3A//suo.im/1l9tvX& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/1l9tvX&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&li&基于密度的聚类算法(DBSCAN)和实现。地址:&a href=&/?target=http%3A//suo.im/1LEoXC& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/1LEoXC&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&h2&&b&第4步:更多的集成方法&/b&&/h2&&p&上篇只涉及一个单一的集成方法:随机森林(RF)。RF 作为一个顶级的分类器,在过去几年中取得了巨大的成功,但它肯定不是唯一的集成分类器。我们将看看包装、提升和投票。&/p&&img src=&/v2-8fb25efc6d5e24e5453171_b.png& data-rawwidth=&500& data-rawheight=&257& class=&origin_image zh-lightbox-thumb& width=&500& data-original=&/v2-8fb25efc6d5e24e5453171_r.png&&&p&&i&给我一个提升&/i&&/p&&p&首先,阅读这些集成学习器的概述,第一个是通用性的;第二个是它们与 Scikit-learn 有关:&/p&&ul&&li&集成学习器介绍,作者 Matthew Mayo。地址:&a href=&/?target=http%3A//suo.im/cLESw& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/cLESw&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&li&Scikit-learn 中的集成方法,Scikit-learn 文档。地址:&a href=&/?target=http%3A//suo.im/yFuY9& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/yFuY9&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&然后,在继续使用新的集成方法之前,请通过一个新的教程快速学习随机森林:&/p&&ul&&li&Python 中的随机森林,来自 Yhat。地址:&a href=&/?target=http%3A//suo.im/2eujI& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/2eujI&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&包装、提升和投票都是不同形式的集成分类器,全部涉及建构多个模型; 然而,这些模型由什么算法构建,模型使用的数据,以及结果如何最终组合起来,这些都会随着方案而变化。&/p&&ul&&li&包装:从同一分类算法构建多个模型,同时使用来自训练集的不同(独立)数据样本——Scikit-learn 实现包装分类器&/li&&li&提升:从同一分类算法构建多个模型,一个接一个地链接模型,以提高每个后续模型的学习——Scikit-learn 实现 AdaBoost&/li&&li&投票:构建来自不同分类算法的多个模型,并且使用标准来确定模型如何最好地组合——Scikit-learn 实现投票分类器&/li&&/ul&&p&那么,为什么要组合模型?为了从一个特定角度处理这个问题,这里是偏差-方差权衡的概述,具体涉及到提升,以下是 Scikit-learn 文档:&/p&&ul&&li&单一评估器 vs 包装:偏差-方差分解,Scikit-learn 文档。地址:&a href=&/?target=http%3A//suo.im/3izlRB& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/3izlRB&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&现在你已经阅读了关于集成学习器的一些介绍性材料,并且对几个特定的集成分类器有了基本了解,下面介绍如何从 Machine Learning Mastery 中使用 Scikit-learn 在 Python 中实现集成分类器:&/p&&ul&&li&使用 Scikit-learn 在 Python 中实现集成机器学习算法,作者 Jason Brownlee。地址:&a href=&/?target=http%3A//suo.im/9WEAr& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/9WEAr&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&h2&&b&第5步:梯度提升&/b&&/h2&&p&下一步我们继续学习集成分类器,探讨一个当代最流行的机器学习算法。梯度提升最近在机器学习中产生了显著的影响,成为了 Kaggle 竞赛中最受欢迎和成功的算法之一。&/p&&img src=&/v2-cf87cc47be_b.png& data-rawwidth=&365& data-rawheight=&256& class=&content_image& width=&365&&&p&&i&给我一个梯度提升&/i&&/p&&p&首先,阅读梯度提升的概述:&/p&&ul&&li&维基百科条目:梯度提升。地址:&a href=&/?target=http%3A//suo.im/TslWi& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/TslWi&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&接下来,了解为什么梯度提升是 Kaggle 竞赛中「最制胜」的方法:&/p&&ul&&li&为什么梯度提升完美解决了诸多 Kaggle 难题?Quora,地址:&a href=&/?target=http%3A//suo.im/3rS6ZO& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/3rS6ZO&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&li&Kaggle 大师解释什么是梯度提升,作者 Ben Gorman。地址:&a href=&/?target=http%3A//suo.im/3nXlWR& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/3nXlWR&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&虽然 Scikit-learn 有自己的梯度提升实现,我们将稍作改变,使用 XGBoost 库,我们提到过这是一个更快的实现。&/p&&p&以下链接提供了 XGBoost 库的一些额外信息,以及梯度提升(出于必要):&/p&&ul&&li&维基百科条目:XGBoost。地址:&a href=&/?target=http%3A//suo.im/2UlJ3V& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/2UlJ3V&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&li&Ghub 上的 XGBoost 库。地址:&a href=&/?target=http%3A//suo.im/2JeQI8& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/2JeQI8&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&li&XGBoost 文档。地址:&a href=&/?target=http%3A//suo.im/QRRrm& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/QRRrm&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&现在,按照这个教程把所有汇聚起来:&/p&&ul&&li&Python 中 XGBoost 梯度提升树的实现指南,作者 Jesse Steinweg-Woods。地址:&a href=&/?target=http%3A//suo.im/4FTqD5& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/4FTqD5&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&你还可以按照这些更简洁的示例进行强化:&/p&&ul&&li&XGBoost 在 Kaggle 上的示例(Python)。地址:&a href=&/?target=http%3A//suo.im/4F9A1J& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/4F9A1J&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&li&Iris 数据集和 XGBoost 简单教程,作者 Ieva Zarina。地址:&a href=&/?target=http%3A//suo.im/2Lyb1a& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/2Lyb1a&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&h2&&b&第6步:更多的降维&/b&&/h2&&p&降维是通过使用过程来获得一组主变量,将用于模型构建的变量从其初始数减少到一个减少数。&/p&&p&有两种主要形式的降维:&/p&&ul&&li&1. 特征选择——选择相关特征的子集。地址:&a href=&/?target=http%3A//suo.im/4wlkrj& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/4wlkrj&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&li&2. 特征提取——构建一个信息性和非冗余的衍生值特征集。地址:&a href=&/?target=http%3A//suo.im/3Gf0Yw& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/3Gf0Yw&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&下面是一对常用的特征提取方法。&/p&&img src=&/v2-3c1b24eae5b_b.png& data-rawwidth=&600& data-rawheight=&481& class=&origin_image zh-lightbox-thumb& width=&600& data-original=&/v2-3c1b24eae5b_r.png&&&blockquote&&i&主成分分析(PCA)是一种统计步骤,它使用正交变换将可能相关变量的一组观测值转换为一组称为主成分的线性不相关变量值。主成分的数量小于或等于原始变量的数量。这种变换以这样的方式定义,即第一主成分具有最大可能的方差(即考虑数据中尽可能多的变率)&/i&&/blockquote&&p&以上定义来自 PCA 维基百科条目,如果感兴趣可进一步阅读。但是,下面的概述/教程非常彻底:&/p&&ul&&li&主成分分析:3 个简单的步骤,作者 Sebastian Raschka。地址:&a href=&/?target=http%3A//suo.im/1ahFdW& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/1ahFdW&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&blockquote&&i&线性判别分析(LDA)是 Fisher 线性判别的泛化,是统计学、模式识别和机器学习中使用的一种方法,用于发现线性组合特征或分离两个或多个类别的对象或事件的特征。所得到的组合可以用作线性分类器,或者更常见地,用作后续分类之前的降维。&/i&&/blockquote&&p&LDA 与方差分析(ANOVA)和回归分析密切相关,它同样尝试将一个因变量表示为其他特征或测量的线性组合。然而,ANOVA 使用分类独立变量和连续因变量,而判别分析具有连续的独立变量和分类依赖变量(即类标签)。&/p&&p&上面的定义也来自维基百科。下面是完整的阅读:&/p&&ul&&li&线性判别分析——直至比特,作者 Sebastian Raschka。地址:&a href=&/?target=http%3A//suo.im/gyDOb& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/gyDOb&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&你对 PCA 和 LDA 对于降维的实际差异是否感到困惑?Sebastian Raschka 做了如下澄清:&/p&&blockquote&&i&线性判别分析(LDA)和主成分分析(PCA)都是通常用于降维的线性转换技术。PCA 可以被描述为「无监督」算法,因为它「忽略」类标签,并且其目标是找到使数据集中的方差最大化的方向(所谓的主成分)。与 PCA 相反,LDA 是「监督的」并且计算表示使多个类之间的间隔最大化的轴的方向(「线性判别式」)。&/i&&/blockquote&&p&有关这方面的简要说明,请阅读以下内容:&/p&&ul&&li&LDA 和 PCA 之间的降维有什么区别?作者 Sebastian Raschka。地址:&a href=&/?target=http%3A//suo.im/2IPt0U& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/2IPt0U&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&h2&&b&第 7 步:更多的深度学习&/b&&/h2&&p&上篇中提供了一个学习神经网络和深度学习的入口。如果你的学习到目前比较顺利并希望巩固对神经网络的理解,并练习实现几个常见的神经网络模型,那么请继续往下看。&/p&&img src=&/v2-a02d594d1d3e3197ed5cec72ca3d5878_b.png& data-rawwidth=&556& data-rawheight=&350& class=&origin_image zh-lightbox-thumb& width=&556& data-original=&/v2-a02d594d1d3e3197ed5cec72ca3d5878_r.png&&&p&首先,看一些深度学习基础材料:&/p&&ul&&li&深度学习关键术语及解释,作者 Matthew Mayo&/li&&li&理解深度学习的 7 个步骤,作者 Matthew Mayo。地址:&a href=&/?target=http%3A//suo.im/3QmEfV& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/3QmEfV&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&接下来,在 Google 的机器智能开源软件库 TensorFlow(一个有效的深度学习框架和现今几乎是最好的神经网络工具)尝试一些简明的概述/教程:&/p&&ul&&li&&a href=&/?target=https%3A//link.juejin.im/%3Ftarget%3Dhttp%253A%252F%252Fmp.%252Fs%253F__biz%253DMzA3MzI4MjgzMw%253D%253D%2526amp%253Bmid%253D%2526amp%253Bidx%253D1%2526amp%253Bsn%253D016f4d49dd4ce279d283cd%2526amp%253Bscene%253D21%2523wechat_redirect& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&机器学习敲门砖:任何人都能看懂的 TensorFlow 介绍 &i class=&icon-external&&&/i&&/a&(第 1、2 部分)&/li&&li&&a href=&/?target=https%3A//link.juejin.im/%3Ftarget%3Dhttp%253A%252F%252Fmp.%252Fs%253F__biz%253DMzA3MzI4MjgzMw%253D%253D%2526amp%253Bmid%253D%2526amp%253Bidx%253D1%2526amp%253Bsn%253Ddef9dcaff01%2526amp%253Bchksm%253D871b10beb06c99a8ccb990bb2c6b7bdcf2bed09c838f7ff03e26amp%253Bscene%253D21%2523wechat_redirect& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&入门级解读:小白也能看懂的 TensorFlow 介绍 &i class=&icon-external&&&/i&&/a&(第 3、4 部分)&/li&&/ul&&p&最后,直接从 TensorFlow 网站试用这些教程,它实现了一些最流行和常见的神经网络模型:&/p&&ul&&li&循环神经网络,谷歌 TensorFlow 教程。地址:&a href=&/?target=http%3A//suo.im/2gtkze& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/2gtkze&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&li&卷积神经网络,谷歌 TensorFlow 教程。地址:&a href=&/?target=http%3A//suo.im/g8Lbg& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/g8Lbg&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&&p&此外,目前一篇关于 7 个步骤掌握深度学习的文章正在写作之中,重点介绍使用位于 TensorFlow 顶部的高级 API,以增模型实现的容易性和灵活性。我也将在完成后在这儿添加一个链接。&/p&&p&相关的:&/p&&ul&&li&进入机器学习行业之前应该阅读的 5 本电子书。地址:&a href=&/?target=http%3A//suo.im/SlZKt& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/SlZKt&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&li&理解深度学习的 7 个步骤。地址:&a href=&/?target=http%3A//suo.im/3QmEfV& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/3QmEfV&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&li&机器学习关键术语及解释。地址:&a href=&/?target=http%3A//suo.im/2URQGm& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&suo.im/2URQGm&/span&&span class=&invisible&&&/span&&i class=&icon-external&&&/i&&/a&&/li&&/ul&
分享一篇来自机器之心的文章。关于机器学习的起步,讲的还是很清楚的。原文链接在:Python 可以说是现在最流行的机器学习语言,而且你也能在网上找到大量的资源。你现在也在考虑从 Python 入门机器学习吗…
&img src=&/v2-ade045cdf540_b.jpg& data-rawwidth=&1100& data-rawheight=&734& class=&origin_image zh-lightbox-thumb& width=&1100& data-original=&/v2-ade045cdf540_r.jpg&&&p&今天的文章来源于&a href=&/?target=https%3A///dloss/python-pentest-tools& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&dloss/python-pentest-tools&i class=&icon-external&&&/i&&/a&,本文中列举了123个Python渗透测试工具,当然不仅于渗透~&/p&&p&下面我们就开始吧~&/p&&p&————————————————————————&/p&&p&如果你想参与漏洞研究、逆向工程和渗透,我建议你时候用Python语言。Python已经有很多完善可用的库,我将在这里把他们列出来。&/p&&p&这个清单里的工具大部分都是Python写成的,一部分是现有C库的Python绑定,这些库在Python中都可以简单使用。&/p&&p&一些强力工具(pentest frameworks、bluetooth smashers、web application vulnerability scanners、war-dialers等)被排除在外,原因是部分工具在德国法律上有一点争议——就算最高法院曾经认定过。这个清单的主要目的是为了帮助白帽黑客,所以我还是怂一点。&/p&&h2&Network&/h2&&ul&&li&&a href=&/?target=http%3A//secdev.org/projects/scapy& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Scapy&i class=&icon-external&&&/i&&/a&, &a href=&/?target=http%3A///phaethon/scapy& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Scapy3k&i class=&icon-external&&&/i&&/a&: 发送,嗅探和剖析并伪造网络数据包,可以做交互式应用或单纯的作为库来使用&/li&&li&&a href=&/?target=http%3A///p/pypcap/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&pypcap&i class=&icon-external&&&/i&&/a&, &a href=&/?target=http%3A///projects/pcapy.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Pcapy&i class=&icon-external&&&/i&&/a& and &a href=&/?target=http%3A//pylibpcap.sourceforge.net/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&pylibpcap&i class=&icon-external&&&/i&&/a&: 几个不同的libpcap捆绑Python库&/li&&li&&a href=&/?target=http%3A///p/libdnet/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&libdnet&i class=&icon-external&&&/i&&/a&: 低级别的网络路由器,可用于接口查找和以太网帧转发&/li&&li&&a href=&/?target=https%3A///kbandla/dpkt& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&dpkt&i class=&icon-external&&&/i&&/a&: 快速、轻量级的数据包创建、解析工具,适用于基本TCP/IP协议&/li&&li&&a href=&/?target=http%3A///projects/impacket.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Impacket&i class=&icon-external&&&/i&&/a&: 探测和解码网络数据包,支持更高级别协议比如NMB和SMB&/li&&li&&a href=&/?target=http%3A//jon.oberheide.org/pynids/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&pynids&i class=&icon-external&&&/i&&/a&: libnids封装提供嗅探,IP碎片整理,TCP流重组和端口扫描检测&/li&&li&&a href=&/?target=http%3A//dirtbags.net/py-pcap.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Dirtbags py-pcap&i class=&icon-external&&&/i&&/a&: 无需libpcap即可读取pcap文件&/li&&li&&a href=&/?target=http%3A//monkey.org/%7Ejose/software/flowgrep/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&flowgrep&i class=&icon-external&&&/i&&/a&:通过正则表达式查找数据包中的 Payloads&/li&&li&&a href=&/?target=https%3A///guelfoweb/knock& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Knock Subdomain Scan&i class=&icon-external&&&/i&&/a&:通过字典枚举目标域上的子域名&/li&&li&&a href=&/?target=https%3A///TheRook/subbrute& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&SubBrute&i class=&icon-external&&&/i&&/a&: 快速子域枚举工具&/li&&li&&a href=&/?target=https%3A//bitbucket.org/IntrepidusGroup/mallory& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Mallory&i class=&icon-external&&&/i&&/a&:可扩展的TCP / UDP中间代理,支持即时修改非标准协议&/li&&li&&a href=&/?target=http%3A//pytbull.sourceforge.net/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Pytbull&i class=&icon-external&&&/i&&/a&: 灵活的IDS / IPS测试框架(配有300多个测试用例)&/li&&li&&a href=&/?target=https%3A///vjex/spoodle& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Spoodle&i class=&icon-external&&&/i&&/a&: 大量子域名+Poodle漏洞扫描器&/li&&li&&a href=&/?target=https%3A///ShawnDEvans/smbmap& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&SMBMap&i class=&icon-external&&&/i&&/a&: 枚举域中的Samba共享驱动器&/li&&/ul&&h2&调试和逆向工程&/h2&&ul&&li&&a href=&/?target=https%3A///OpenRCE/paimei& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Paimei&i class=&icon-external&&&/i&&/a&: 逆向工程框架,包含&a href=&/?target=https%3A///OpenRCE/pydbg& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&PyDBG&i class=&icon-external&&&/i&&/a&, PIDA, pGRAPH&/li&&li&&a href=&/?target=http%3A///& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Immunity Debugger&i class=&icon-external&&&/i&&/a&: 可脚本化的GUI和命令行调试工具&/li&&li&&a href=&/?target=https%3A//www.corelan.be/index.php//mona-py-the-manual/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&mona.py&i class=&icon-external&&&/i&&/a&:Immunity Debugger 中的扩展,用于代替 pvefindaddr&/li&&li&&a href=&/?target=https%3A///idapython/src& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&IDAPython&i class=&icon-external&&&/i&&/a&:IDA pro 中的插件,集成 Python 编程语言,允许脚本在 IDA Pro 中执行&/li&&li&&a href=&/?target=http%3A///p/pyemu/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&PyEMU&i class=&icon-external&&&/i&&/a&: 全脚本实现的英特尔32位仿真器,用于恶意软件分析 &/li&&li&&a href=&/?target=https%3A///erocarrera/pefile& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&pefile&i class=&icon-external&&&/i&&/a&: 读取并处理 PE 文件&/li&&li&&a href=&/?target=http%3A///p/libdasm/source/browse/trunk/pydasm/pydasm.c& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&pydasm&i class=&icon-external&&&/i&&/a&:&a href=&/?target=http%3A///p/libdasm/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&libdasm&i class=&icon-external&&&/i&&/a& x86反汇编库的Python接口&/li&&li&&a href=&/?target=http%3A//pydbgeng.sourceforge.net/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&PyDbgEng&i class=&icon-external&&&/i&&/a&: Python封装的微软视窗操作系统调试引擎&/li&&li&&a href=&/?target=http%3A///projects/uhooker.htm& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&uhooker&i class=&icon-external&&&/i&&/a&: 截获 DLL 或内存中任意地址可执行文件的 API 调用&/li&&li&&a href=&/?target=http%3A//www.ragestorm.net/distorm/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&diStorm&i class=&icon-external&&&/i&&/a&: AMD64平台下的反汇编库,通过BSD许可&/li&&li&&a href=&/?target=http%3A//www.frida.re/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Frida&i class=&icon-external&&&/i&&/a&: 一个动态的工具框架,可以将脚本注入到运行的进程中&/li&&li&&a href=&/?target=http%3A//python-ptrace.readthedocs.org/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&python-ptrace&i class=&icon-external&&&/i&&/a&: Python语言写成的应用ptrace的调试器(Linux,BSD和Darwin系统调用跟踪进程) &/li&&li&&a href=&/?target=http%3A///p/vdebug/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&vdb / vtrace&i class=&icon-external&&&/i&&/a&: vtrace是一个Python实现的跨平台进程调试API,vdb是一个应用该API的调试器&/li&&li&&a href=&/?target=https%3A///androguard/androguard& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Androguard&i class=&icon-external&&&/i&&/a&: 安卓应用程序的逆向分析工具&/li&&li&&a href=&/?target=http%3A//www.capstone-engine.org/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Capstone&i class=&icon-external&&&/i&&/a&:一个轻量级的多平台多架构支持的反汇编框架。支持包括ARM,ARM64,MIPS和x86/x64平台&/li&&li&&a href=&/?target=http%3A//www.keystone-engine.org/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Keystone&i class=&icon-external&&&/i&&/a&: 一个轻量级的多平台多架构支持的汇编框架&/li&&li&&a href=&/?target=https%3A///Groundworkstech/pybfd/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&PyBFD&i class=&icon-external&&&/i&&/a&: GNU 二进制文件描述(BFD)库的 Python 接口&/li&&li&&a href=&/?target=https%3A///chipsec/chipsec& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&CHIPSEC&i class=&icon-external&&&/i&&/a&: 分析硬件,系统固件(BIOS / UEFI)和平台组件等PC平台安全性的框架。&/li&&/ul&&h2&模糊测试&/h2&&ul&&li&&a href=&/?target=http%3A//jwilk.net/software/python-afl& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&afl-python&i class=&icon-external&&&/i&&/a&: 用于纯Python代码的American fuzzy lop&/li&&li&&a href=&/?target=https%3A///OpenRCE/sulley& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Sulley&i class=&icon-external&&&/i&&/a&: 一个模糊器开发和模糊测试的框架,由多个可扩展的构件组成的&/li&&li&&a href=&/?target=http%3A//peachfuzz.sourceforge.net/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Peach Fuzzing Platform&i class=&icon-external&&&/i&&/a&: 扩展的模糊测试框架(v2版本 是用 Python 语言编写的)&/li&&li&&a href=&/?target=http%3A//antiparser.sourceforge.net/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&antiparser&i class=&icon-external&&&/i&&/a&:模糊测试和故障注入的 API&/li&&li&&a href=&/?target=http%3A//sourceforge.net/projects/taof/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&TAOF&i class=&icon-external&&&/i&&/a&:(The Art of Fuzzing, 模糊的艺术)包含 ProxyFuzz, 一个中间人网络模糊测试工具&/li&&li&&a href=&/?target=http%3A//untidy.sourceforge.net/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&untidy&i class=&icon-external&&&/i&&/a&:
针对 XML 模糊测试工具&/li&&li&&a href=&/?target=http%3A///& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Powerfuzzer&i class=&icon-external&&&/i&&/a&: 高度自动化和可完全定制的 Web 模糊测试工具&/li&&li&&a href=&/?target=http%3A//www.fuzzing.org/wp-content/SMUDGE.zip& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&SMUDGE&i class=&icon-external&&&/i&&/a&&/li&&li&&a href=&/?target=http%3A//www.packetstormsecurity.org/fuzzer/mistress.rar& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Mistress&i class=&icon-external&&&/i&&/a&: 基于预设模式,侦测实时文件格式和侦测畸形数据中的协议&/li&&li&&a href=&/?target=https%3A///tools/application-security/fuzzbox.aspx& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Fuzzbox&i class=&icon-external&&&/i&&/a&: 媒体多编码器的模糊测试&/li&&li&&a href=&/?target=https%3A///tools/application-security/forensic-fuzzing-tools.aspx& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Forensic Fuzzing Tools&i class=&icon-external&&&/i&&/a&: 通过生成模糊测试用的文件,文件系统和包含模糊测试文件的文件系统,来测试取证工具的鲁棒性&/li&&li&&a href=&/?target=https%3A///tools/application-security/windows-ipc-fuzzing-tools.aspx& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Windows IPC Fuzzing Tools&i class=&icon-external&&&/i&&/a&:使用 Windows 进程间通信机制进行模糊测试的工具&/li&&li&&a href=&/?target=https%3A///tools/application-security/wsbang.aspx& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&WSBang&i class=&icon-external&&&/i&&/a&: 基于 Web 服务自动化测试 SOAP 安全性&/li&&li&&a href=&/?target=http%3A//construct.readthedocs.org/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Construct&i class=&icon-external&&&/i&&/a&: 用于解析和构建数据格式(二进制或文本)的库&/li&&li&&a href=&/?target=http%3A///site/felipeandresmanzano/fuzzer.py%3Fattredirects%3D0& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&fuzzer.py (feliam)&i class=&icon-external&&&/i&&/a&: 由 Felipe Andres Manzano 编写的简单模糊测试工具&/li&&li&&a href=&/?target=http%3A//fusil.readthedocs.org/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Fusil&i class=&icon-external&&&/i&&/a&: 用于编写模糊测试程序的 Python 库&/li&&/ul&&h2&Web&/h2&&ul&&li&&a href=&/?target=http%3A//python-requests.org/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Requests&i class=&icon-external&&&/i&&/a&: 优雅,简单,人性化的 HTTP 库&/li&&li&&a href=&/?target=http%3A//lxml.de/index.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&lxml&i class=&icon-external&&&/i&&/a&: 便于使用的XML、HTML处理库,类似于Requests&/li&&li&&a href=&/?target=http%3A//httpie.org/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&HTTPie&i class=&icon-external&&&/i&&/a&: 人性化的类似 cURL 命令行的 HTTP 客户端&/li&&li&&a href=&/?target=https%3A///tools/application-security/proxmon.aspx& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&ProxMon&i class=&icon-external&&&/i&&/a&:处理代理日志和报告发现的问题&/li&&li&&a href=&/?target=https%3A///tools/application-security/wsmap.aspx& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&WSMap&i class=&icon-external&&&/i&&/a&:寻找 Web 服务器和发现文件&/li&&li&&a href=&/?target=http%3A//twill.idyll.org/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Twill&i class=&icon-external&&&/i&&/a&: 从命令行界面浏览网页。支持自动化网络测试&/li&&li&&a href=&/?target=http%3A//jeanphix.me/Ghost.py/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Ghost.py&i class=&icon-external&&&/i&&/a&: Python 写的 WebKit Web 客户端&/li&&li&&a href=&/?target=http%3A///& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Windmill&i class=&icon-external&&&/i&&/a&: Web 测试工具帮助你轻松实现自动化调试 Web 应用&/li&&li&&a href=&/?target=http%3A//funkload.nuxeo.org/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&FunkLoad&i class=&icon-external&&&/i&&/a&: Web 功能和负载测试&/li&&li&&a href=&/?target=https%3A///makinacorpus/spynner& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&spynner&i class=&icon-external&&&/i&&/a&: Python 写的 Web浏览模块支持 Javascript/AJAX&/li&&li&&a href=&/?target=http%3A///p/python-spidermonkey/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&python-spidermonkey&i class=&icon-external&&&/i&&/a&: 是 Mozilla JS 引擎在 Python 上的移植,允许调用 Javascript 脚本和函数&/li&&li&&a href=&/?target=http%3A//mitmproxy.org/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&mitmproxy&i class=&icon-external&&&/i&&/a&: 支持 SSL 的 HTTP 代理。可以在控制台接口实时检查和编辑网络流量&/li&&li&&a href=&/?target=http%3A//pathod.net/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&pathod / pathoc&i class=&icon-external&&&/i&&/a&: 病态的守护程序/客户端,用于折磨HTTP客户端和服务器&/li&&li&&a href=&/?target=https%3A///rivermont/spidy/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&spidy&i class=&icon-external&&&/i&&/a&: 简单的命令行网页抓取器,具有页面下载和单词刮除功能&/li&&/ul&&h2&取证&/h2&&ul&&li&&a href=&/?target=http%3A//www.volatilityfoundation.org/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Volatility&i class=&icon-external&&&/i&&/a&: 从 RAM 中提取数据&/li&&li&&a href=&/?target=http%3A//www./& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Rekall&i class=&icon-external&&&/i&&/a&: Google 开发的内存分析框架&/li&&li&&a href=&/?target=http%3A///p/libforensics/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&LibForensics&i class=&icon-external&&&/i&&/a&: 数字取证应用程序库&/li&&li&&a href=&/?target=http%3A//mark0.net/code-tridlib-e.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&TrIDLib&i class=&icon-external&&&/i&&/a&:Python 实现的从二进制签名中识别文件类型&/li&&li&&a href=&/?target=http%3A///p/aft/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&aft&i class=&icon-external&&&/i&&/a&:安卓取证工具集恶意软件分析&/li&&/ul&&h2&恶意软件分析&/h2&&ul&&li&&a href=&/?target=https%3A///joxeankoret/pyew& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&pyew&i class=&icon-external&&&/i&&/a&: 命令行十六进制编辑器和反汇编工具,主要用于分析恶意软件&/li&&li&&a href=&/?target=http%3A///exefilter& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Exefilter&i class=&icon-external&&&/i&&/a&: 过滤 E-mail,网页和文件中的特定文件格式。可以检测很多常见文件格式,也可以移除文档内容&/li&&li&&a href=&/?target=http%3A//xael.org/norman/python/pyclamav/index.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&pyClamAV&i class=&icon-external&&&/i&&/a&: 增加你 Python 软件的病毒检测能力&/li&&li&&a href=&/?target=https%3A///urule99/jsunpack-n& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&jsunpack-n&i class=&icon-external&&&/i&&/a&:通用 JavaScript 解释器,通过模仿浏览器功能来检测针对目标浏览器和浏览器插件的漏洞利用&/li&&li&&a href=&/?target=https%3A///plusvic/yara/tree/master/yara-python& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&yara-python&i class=&icon-external&&&/i&&/a&: 对恶意软件样本进行识别和分类&/li&&li&&a href=&/?target=https%3A///honeynet/phoneyc& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&phoneyc&i class=&icon-external&&&/i&&/a&: 纯 Python 实现的蜜罐&/li&&li&&a href=&/?target=https%3A///omriher/CapTipper& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&CapTipper&i class=&icon-external&&&/i&&/a&: 分析,研究和重放 PCAP 文件中的 HTTP 恶意流量&/li&&/ul&&h2&PDF&/h2&&ul&&li&&a href=&/?target=http%3A///tools/peepdf-pdf-analysis-tool& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&peepdf&i class=&icon-external&&&/i&&/a&:Python 编写的PDF文件分析工具,可以帮助检测恶意的PDF文件&/li&&li&&a href=&/?target=http%3A///programs/pdf-tools& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Didier Stevens' PDF tools&i class=&icon-external&&&/i&&/a&:析,识别和创建 PDF 文件(包含&u&&a href=&/?target=http%3A///programs/pdf-tools/%23pdfid& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&PDFiD&i class=&icon-external&&&/i&&/a&&/u&,&u&&a href=&/?target=http%3A///programs/pdf-tools/%23pdf-parser& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&pdf-parser&i class=&icon-external&&&/i&&/a&&/u&,&u&&a href=&/?target=http%3A///programs/pdf-tools/%23make-pdf& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&make-pdf&i class=&icon-external&&&/i&&/a&&/u& 和 mPDF)&/li&&li&&a href=&/?target=http%3A///p/opaf/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Opaf&i class=&icon-external&&&/i&&/a&: 开放 PDF 分析框架,可以将 PDF 转化为 XML 树从而进行分析和修改&/li&&li&&a href=&/?target=http%3A///python/origapy& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Origapy&i class=&icon-external&&&/i&&/a&: Ruby 工具Origami的 Python 接口,用于审查 PDF 文件
&/li&&li&&a href=&/?target=http%3A//mstamy2.github.io/PyPDF2/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&pyPDF2&i class=&icon-external&&&/i&&/a&: Python PDF 工具包包含:信息提取,拆分,合并,制作,加密和解密等等&/li&&li&&a href=&/?target=http%3A//www.unixuser.org/%7Eeuske/python/pdfminer/index.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&PDFMiner&i class=&icon-external&&&/i&&/a&:从 PDF 文件中提取文本&/li&&li&&a href=&/?target=https%3A///wbsoft/python-poppler-qt4& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&python-poppler-qt4&i class=&icon-external&&&/i&&/a&: Python 写的 &u&Poppler&/u& PDF 库,支持 Qt4&/li&&/ul&&h2&杂项&/h2&&ul&&li&&a href=&/?target=http%3A///projects/inlineegg.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&InlineEgg&i class=&icon-external&&&/i&&/a&:使用 Python 编写的具有一系列小功能的工具箱&/li&&li&&a href=&/?target=http%3A///index.php%3Fmodule%3DWiki%26action%3Dview%26type%3Dtool%26name%3DExomind& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Exomind&i class=&icon-external&&&/i&&/a&:一种旨在通过社交网络提供针对性攻击的工具。(原文是:围绕社交网络服务、搜索引擎和即时消息为中心创建装饰图形、开源智能模块的框架(&i&framework for building decorated graphs and developing open-source intelligence modules and ideas, centered on social network services, search engines and instant messaging)&/i&感觉直接翻译原文不太到位,所以我找了一下官网,发现官网描述简单粗暴:)&/li&&li&&a href=&/?target=http%3A///tools/3851& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&RevHosts&i class=&icon-external&&&/i&&/a&:枚举指定 IP 地址包含的虚拟hosts&/li&&li&&a href=&/?target=https%3A///simplejson/simplejson/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&simplejson&i class=&icon-external&&&/i&&/a&: JSON 编码和解码器,例如使用&a href=&/?target=http%3A////google-ajax-search-api-example-python-code/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Google's AJAX API&i class=&icon-external&&&/i&&/a&&/li&&li&&a href=&/?target=http%3A///p/pymangle/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&PyMangle&i class=&icon-external&&&/i&&/a&: 命令行工具和一个创建用于渗透测试使用字典的库&/li&&li&&a href=&/?target=https%3A//bitbucket.org/haypo/hachoir/wiki/Home& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Hachoir&i class=&icon-external&&&/i&&/a&:查看和编辑二进制流&/li&&li&&a href=&/?target=http%3A///p/pymangle/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&py-mangle&i class=&icon-external&&&/i&&/a&: 重复项&/li&&li&&a href=&/?target=https%3A///CoreSecurity/impacket/blob/master/examples/wmiexec.py& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&wmiexec.py&i class=&icon-external&&&/i&&/a&: 通过WMI快速轻松地执行Powershell命令&/li&&li&&a href=&/?target=https%3A///praetorian-inc/pentestly& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Pentestly&i class=&icon-external&&&/i&&/a&: Python和Powershell内部渗透测试框架&/li&&li&&a href=&/?target=https%3A///leonli96/python-hacklib& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&hacklib&i class=&icon-external&&&/i&&/a&: 黑客爱好者的工具包:词语破解,密码猜测,反向外壳等简单工具&/li&&/ul&&h2&其他有用的库或工具&/h2&&ul&&li&&a href=&/?target=http%3A//ipython.scipy.org/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&IPython&i class=&icon-external&&&/i&&/a&: 增强的交互式Python shell,具有许多功能,用于对象内省,系统shell访问以及自己的特殊命令系统&/li&&li&&a href=&/?target=http%3A///software/BeautifulSoup/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Beautiful Soup&i class=&icon-external&&&/i&&/a&: 用于抓取的优化版HTML解析器&/li&&li&&a href=&/?target=http%3A//matplotlib.sourceforge.net/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&matplotlib&i class=&icon-external&&&/i&&/a&: 制作2维图形&/li&&li&&a href=&/?target=http%3A///projects/mayavi/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Mayavi&i class=&icon-

我要回帖

 

随机推荐