Read the Docs

(数据科学学习手札86)全平台支持的pandas运算加速神器

强颜欢笑 提交于 2020-08-10 03:19:01
本文示例代码已上传至我的 Github 仓库 https://github.com/CNFeffery/DataScienceStudyNotes 1 简介   随着其功能的不断优化与扩充, pandas 已然成为数据分析领域最受欢迎的工具之一,但其仍然有着一个不容忽视的短板——难以快速处理大型数据集,这是由于 pandas 中的工作流往往是建立在单进程的基础上,使得其只能利用单个处理器核心来实现各种计算操作,这就使得 pandas 在处理百万级、千万级甚至更大数据量时,出现了明显的性能瓶颈。   本文要介绍的工具 modin 就是一个致力于在改变代码量最少的前提下,调用起多核计算资源,对 pandas 的计算过程进行并行化改造的 Python 库,并且随着其近期的一系列内容更新, modin 基于 Dask 开始对 Windows 系统同样进行了支持,使得我们只需要改变一行代码,就可以在所有平台上获得部分 pandas 功能可观的计算效率提升。 图1 2 基于modin的pandas运算加速    modin 支持 Windows 、 Linux 以及 Mac 系统,其中 Linux 与 Mac 平台版本的 modin 工作时可基于并行运算框架 Ray 和 Dask ,而 Windows 平台版本目前只支持 Dask 作为计算后端(因为 Ray 没有 Win 版本)

这所985大学宣布调查结果:论文抄袭事实成立!撤销其硕士学位!

孤者浪人 提交于 2020-08-10 02:13:31
点击“ 开发者技术前线 ”,选择“星标🔝” 在看|星标|留言, 真爱 来源:中国青年报 近日,电子科技大学宣布了一项调查结果: 该校2005级硕士研究生贾桂林硕士学位论文抄袭事实成立,决定撤销其硕士学位。 据澎湃新闻6月报道,有网友反映称,电子科技大学电子与通信工程领域2007届毕业生贾桂林2007年11月提交的硕士学位论文《基于CAN总线的汽车组合仪表研究》和武汉理工大学信息工程学院通信与信息系统专业2007届毕业生付胜波2007年4月提交的硕士学位论文《基于CAN总线的汽车组合仪表研究》两篇论文高度雷同。 经比对发现,上述两篇论文从标题、摘要到目录都几乎完全一致。且对比来看,付胜波硕士学位论文中参考文献的引用信息标注更为详细。 △ 付胜波论文(左)和贾桂林论文(右)比对。 但是, 武汉理工大学付胜波 的硕士学位论文 比电子科技大学贾桂林 的硕士学位论文 提交早了7个月 。 涉嫌抄袭者:在职研究生要求不是很高 付胜波硕士学位论文的指导教师、武汉理工大学黄涛副教授表示,付胜波的论文是在一个科研项目下完成的。在黄涛的全程指导中,没有发现付胜波存在抄袭的情况。付胜波本人也承诺不存在论文买卖的情况。 同时,电子科技大学的贾桂林在接受澎湃新闻采访时回应称, 读在职研究生要求不是很高, 硕士学位论文确实参考了别人的资料 。 贾桂林透露,资料是当时陕汽集团宝鸡华山车辆公司的高工孙克俭提供

Detectron2 进行评估 | 九

坚强是说给别人听的谎言 提交于 2020-08-09 16:00:16
作者|facebookresearch 编译|Flin 来源|Github 评估 评估是一个过程,需要多个输入/输出对并进行汇总。你始终可以直接使用模型,而只是手动解析其输入/输出以执行评估。或者,可以使用DatasetEvaluator 接口在detectron2中实现评估。 接口。 直接使用模型: https://detectron2.readthedocs.io/tutorials/models.html DatasetEvaluator: https://detectron2.readthedocs.io/modules/evaluation.html#detectron2.evaluation.DatasetEvaluator ) Detectron2包括一些 DatasetEvaluator 使用标准数据集特定的API(例如COCO,LVIS)来计算指标的工具。你还可以实现自己的 DatasetEvaluator ,它使用输入/输出对来实现自己的其他一些工作。例如,要计算在验证集上检测到多少个实例: class Counter(DatasetEvaluator): def reset(self): self.count = 0 def process(self, inputs, outputs): for output in outputs: self.count +=

Detectron2 配置 | 十

白昼怎懂夜的黑 提交于 2020-08-09 08:49:44
作者|facebookresearch 编译|Flin 来源|Github 使用配置 Detectron2的配置系统使用yaml和yacs( https://github.com/rbgirshick/yacs )。 除了访问和更新配置的基本操作外,我们还提供以下额外功能: 配置中可以包含" BASE :base.yaml"字段,该字段将首先加载基本配置。如果存在任何冲突,则基本配置中的值将在子配置中被覆盖。我们为标准模型架构提供了一些基本配置。 我们提供配置版本控制,以实现向后兼容。如果你的配置文件使用诸如"VERSION:2"之类的配置行进行了版本控制,即使我们将来重命​​名某些密钥,detectron2仍会识别它。 使用配置 CfgNode对象的一些基本用法如下所示: from detectron2.config import get_cfg cfg = get_cfg()#获取detectron2的默认配置 cfg.xxx = yyy#为你自己的自定义组件添加新配置 cfg.merge_from_file("my_cfg.yaml")#从文件加载值 cfg.merge_from_list(["MODEL.WEIGHTS","weights.pth"])#也可以从str列表中加载值 print(cfg.dump())#打印格式化的配置

HMM-前向后向算法

冷暖自知 提交于 2020-08-09 02:38:16
基本要素 状态 \(N\) 个 状态序列 \(S = s_1,s_2,...\) 观测序列 \(O=O_1,O_2,...\) \(\lambda(A,B,\pi)\) 状态转移概率 \(A = \{a_{ij}\}\) 发射概率 \(B = \{b_{ik}\}\) 初始概率分布 \(\pi = \{\pi_i\}\) 观测序列生成过程 初始状态 选择观测 状态转移 返回step2 HMM三大问题 概率计算问题(评估问题) 给定观测序列 \(O=O_1O_2...O_T\) ,模型 \(\lambda (A,B,\pi)\) ,计算 \(P(O|\lambda)\) ,即计算观测序列的概率 解码问题 给定观测序列 \(O=O_1O_2...O_T\) ,模型 \(\lambda (A,B,\pi)\) ,找到对应的状态序列 \(S\) 学习问题 给定观测序列 \(O=O_1O_2...O_T\) ,找到模型参数 \(\lambda (A,B,\pi)\) ,以最大化 \(P(O|\lambda)\) , 概率计算问题 给定模型 \(\lambda\) 和观测序列 \(O\) ,如何计算 \(P(O| \lambda)\) ? 暴力枚举 每一个可能的状态序列 \(S\) 对每一个给定的状态序列 \[P(O|S,\lambda) = \prod^T_{t=1} P(O_t|s_t,

如何安装带有.whl文件的Python软件包?

妖精的绣舞 提交于 2020-08-08 10:00:30
问题: I'm having trouble installing a Python package (specifically, JPype1 0.5.7) on my Windows machine, and would like to install it with Christoph Gohlke's Window binaries. 我在Windows机器上安装Python软件包(特别是JPype1 0.5.7)时遇到问题,并且想用Christoph Gohlke的Window二进制文件安装它。 (Which, to my experience, alleviated much of the fuss for many other package installations.) (根据我的经验,这减轻了许多其他软件包安装的麻烦。) However, while Christoph used to provide .exe files in the past, recently it seems he's uploading .whl files instead. 但是,尽管Christoph过去曾经提供过.exe文件,但最近看来他正在上传.whl文件。 http://www.lfd.uci.edu/~gohlke/pythonlibs/#jpype http://www

第57天: Flask 用户登录 Flask-Login

試著忘記壹切 提交于 2020-08-07 04:03:30
by 太阳雪 用户登录功能是 Web 系统一个基本功能,是为用户提供更好服务的基础,在 Flask 框架中怎么做用户登录功能呢?今天我们学习一下 Flask 的用户登录组件 Flask-Login Python 之所以如此强大和流行,除了本身易于学习和功能丰富之外,最重要的是因为各种类库和组件,可以说没有 Python 做不了的事情,只有不知道的组件。 但是同一个问题领域中的组件或类库名称、功能可能近似,版本多而混乱,会给使用者造成了困扰,比如之前讲述的 Flask-Bootstrap 和 Bootstrap-Flask ,以及今天要讲述的用户登录,由于方式多样,功能相似,所以出现了很多类似的框架,比如 Flask-Login 、 Flask-Auth 、 Flask-Security 等等 之所以选择 Flask-Login ,是因为它基于 Session ,适合做有 UI 交互的用户登录,用我们学习了的 Flask 表单做演示,更容易理清用户登录的流程 用户登录说明 Flask-Login 和其他 Flask 组件并没有太大区别,有必要开始之前了解下用户登录的步骤: 1 登录:用户提供登录凭证(如用户名和密码)提交给服务器 2 建立会话:服务器验证用户提供的凭证,如果通过验证,则建立会话( Session ),并返回给用户一个会话号( Session id ) 3 验证

Python自动化办公知识点整理汇总

房东的猫 提交于 2020-08-06 06:23:01
知乎上有人提问: 用python进行办公自动化都需要学习什么知识呢? ​ 很多人学习python,不知道从何学起。 很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。 很多已经做案例的人,却不知道如何去学习更加高深的知识。 那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码! QQ群:1097524789 这可能是很多非IT职场人士面临的困惑,想把python用到工作中,却不知如何下手?python在自动化办公领域越来越受欢迎,批量处理简直是加班族的福音。 自动化办公无非是excel、ppt、word、邮件、文件处理、数据分析处理、爬虫这些,这次就来理一理python自动化办公的那些知识点。 python基础 excel自动化 ppt自动化 word自动化 邮件处理 文件批量处理 数据处理与分析 自动化爬虫 下面一一详解。 python基础 能做这些的前提是会使用Python,最起码要熟悉基本语法,可以编写小脚本。 对于python语法的要求,你可以对照python基础教程的部分查看需要学那些,找个免费视频教程跟着学,然后多敲代码练习。如果习惯看书的话,可以买本python入门书备查。 语法 主要内容 基本数据类型 不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组) 可变数据(3 个)

涨见识了,在终端执行 Python 代码的 6 种方式!

删除回忆录丶 提交于 2020-08-04 23:46:58
原作: BRETT CANNON 译者:豌豆花下猫@Python猫 英文: https://snarky.ca/the-many-ways-to-pass-code-to-python-from-the-terminal 为了我们推出的 VS Code 的 Python 插件 [1],我写了一个 简单的脚本来生成变更日志 [2](类似于 Towncrier [3],但简单些,支持 Markdown,符合我们的需求)。在发布过程中,有一个步骤是运行 python news ,它会将 Python 指向我们代码中的"news"目录。 前几天,一位合作者问这是如何工作的,似乎我们团队中的每个人都知道如何使用 -m ?(请参阅我的有关 带 -m 使用 pip 的文章 [4],了解原因)(译注:关于此话题,我也写过一篇 更为详细的文章 ) 这使我意识到其他人可能不知道有五花八门的方法可以将 Python 指向要执行的代码,因此有了这篇文章。 1、通过标准输入和管道 因为如何用管道传东西给一个进程是属于 shell 的内容,我不打算深入解释。毋庸置疑,你可以将代码传递到 Python 中。 # 管道传内容给 python echo "print('hi')" | python 如果将文件重定向到 Python,这显然也可以。 # 重定向一个文件给 python python < spam.py