python多进程运行MIC(最大信息系数)
MIC是最大信息系数,可以参考:
- 特征筛选10——MIC最大信息系数(有监督筛选):https://blog.csdn.net/weixin_35757704/article/details/121976825
计算相对比较复杂,数据量大的话消耗的时间也较长,MIC计算可以参考的库有:
- minepy github地址:https://github.com/minepy/minepy
- mictools github地址:https://github.com/minepy/mictools
这里使用多进程加速计算,安装minepy
pip install minepy
然后进行多进程运算即可
示例代码
import pandas as pd
import numpy as np
from minepy import MINE
from joblib import Parallel, delayeddef cal_mic(x, y):m = MINE()m.compute_score(x, y)return m.mic()def multi_mic(dataframe: pd.DataFrame, value: np.ndarray, cpu_num=5):job_list = []for co_index, col_x in dataframe.iteritems():job_list.append(delayed(cal_mic)(col_x, value))multi_work = Parallel(n_jobs=cpu_num, backend='multiprocessing')res = multi_work(job_list)return resif __name__ == '__main__':df = pd.DataFrame(np.random.randn(2000, 10))value_y = df[0]multi_mic(df, value_y)
python多进程运行MIC(最大信息系数)相关推荐
- python多进程运行死机_python多进程假死
结论:python多进程间用Queue通信时,如果子进程操作Queue满了或者内容比较大的情况下,该子进程会阻塞等待取走Queue内容(如果Queue数据量比较少,不会等待),如果调用join,主进程 ...
- 特征筛选10——MIC最大信息系数(有监督筛选)
理论部分可以参考:https://blog.csdn.net/qq_27586341/article/details/90603140 互信息也是通过衡量x与y的线性关系,来判断特征的重要性,整个算法 ...
- 机器学习 特征选择篇——python实现MIC(最大信息系数)计算
机器学习 特征选择篇--python实现MIC(最大信息系数)计算 摘要 python实现代码 计算实例 摘要 MIC(最大信息系数) 可以检测变量之间的非线性相关性,常用于特征工程中的特征选择,即通 ...
- 最大信息系数MIC的python代码
完整代码 import numpy as np import logging import sys import pandas as pdclass CyrusMIC(object):logger = ...
- MIC:最大信息系数
目录 1. 概念 1.1 MIC 1.2 互信息 2. MIC的优点 3. 算法原理 3.1 MIC公式原理 3.2 MIC计算步骤 (1)计算最大互信息值 (2)对最大的互信息值进行归一化 (3) ...
- Python 多进程的进程池pool运行时报错:ValueError: Pool not running
本文仅供学习交流使用,如侵立删!demo下载见文末 Python 多进程的进程池pool运行时报错:ValueError: Pool not running def main(self, num):& ...
- ML之MIC:利用某数据集计算机最大信息系数MIC并可视化MIC矩阵热图及其代码实现
ML之MIC:利用某数据集计算机最大信息系数MIC并可视化MIC矩阵热图及其代码实现 目录 利用某数据集计算机最大信息系数MIC并可视化MIC矩阵热图及其代码实现 实现结果 实现代码 利用某数据集计算 ...
- ML之MIC:利用有无噪音的正余弦函数理解相关性指标的不同(多图绘制Pearson系数、最大信息系数MIC)
ML之MIC:利用有无噪音的正余弦函数理解相关性指标的不同(多图绘制Pearson系数.最大信息系数MIC) 目录 利用有无噪音的正余弦函数理解相关性指标的不同(多图绘制Pearson系数.最大信息系 ...
- 最大信息系数(MIC)——大数据时代的相关性分析
在信息爆炸的当今社会,单靠人力已经不能在无穷无尽的数据中有效的捕获信息.数据挖掘这一学科的兴起也预示着在各行业即将展开一场数据革命.在大数据集中识别两个变量的相关关系越来越重要.数据的相关性又分为线性 ...
最新文章
- 学好web前端开发要注意哪些问题
- 《Docker容器:利用Kubernetes、Flannel、Cockpit和Atomic构建和部署》——2.2 容器式Linux系统的Docker配置...
- Java-Java反射
- 干货 | 神经网络与深度学习精选文章汇总
- htmlcss笔记--标签默认值样式重置css reset(2)
- Java引用类型有哪些
- java项目关联关系_Mybatis一对多关联关系映射实现过程解析
- python生成数字证书_makecert 制作数字证书
- 巴斯勒相机的相机控制类析构函数多次调用的问题
- isbn书号查询php代码,eoLinker-API Shop ISBN书号查询 PHP调用示例代码
- 支付宝小程序需要服务器吗,开通支付宝小程序收款功能-小程序商城收款后钱在哪-微信小程序需要备案吗...
- kafka:sync、async以及oneway 几种发送消息模式
- PB控件属性之Tab
- 数字变成大写的类,把人民币转化为大写汉字
- python中def _init_是什么意思_python3类中的def __init()__如何使用?
- 电子封装行业市场专项调查分析
- STM32串口自动识别波特率
- 如何尴尬而又不失礼貌的拒绝大厂offer?
- SLB负载均衡和DNS协议
- 安卓设置keychain_Keychain的使用