sklearn
介绍 Scikit-learn项目始于scikits.learn,这是David Cournapeau的Google Summer of Code项目。它的名称源于它是“ SciKit”(SciPy工具包)的概念,它是SciPy的独立开发和分布式第三方扩展。原始代码库后来被其他开发人员重写。2010年费边Pedregosa,盖尔Varoquaux,亚历山大Gramfort和Vincent米歇尔,全部由法国国家信息与自动化研究所的罗屈昂库尔,法国,把该项目的领导和做出的首次公开发行在二月一日2010在各种scikits中,scikit-learn以及scikit-image在2012年11月被描述为“维护良好且受欢迎” 。Scikit-learn是GitHub上最受欢迎的机器学习库之一。 scikit-learn.pdf 8 Scikit Learn 速查表.pdf Python数据科学速查表 - Scikit-Learn.pdf
回归分析
在实际中,常常希望根据已有数据,确定因变量(数值变量)与自变量(可以是类别变量)的关系,在此关系的基础上对未知数据进行预测。这种方法叫回归分析。 一般情况下可以按照模型的形式分为线性回归和非线性回归两种形式。 分类 线性模型 线性回归是在研究相关关系时优先考虑(最为直观)的一种模型,它假定所有解释变量对被解释变量的影响是线性叠加的,一般假设总体存在如下关系(矩阵形式): \begin{equation} \boldsymbol{Y}=\boldsymbol{X}...
强化学习
强化学习(reinforcement learning.)是指智能系统在与环境的连续互动中学习最优行为策略的机器学习问题。假设智能系统与环境的互动基于马尔可夫决策过程(Markov decision process).,智能系统能观测到的是与环境互动得到的数据序列。强化学习的本质是学习最优的序贯决策。
Counter
Counter 是字典类的一个子类可以用来统计可以查数目的对象中元素个数的。 c = Counter() # a new, empty counterc = Counter('gallahad') # a new counter from an iterablec = Counter({'red': 4, 'blue': 2}) # a new counter from a mappingc = Counter(cats=4, dogs=8) # a new counter from keyword args 对于没有的元素进行查询时会返回 0 而不会报错。 如果要想把一个元素从计数器中移出,要使用del 与字典对象相比,计数器对象还有三个额外的方法: elements():返回一个和统计结果完全一致的列表。 c = Counter(a=4, b=2, c=0,...
分类方法
线性分类方法 感知机和线性判别分析/Fisher分析是非常经典的硬分类线性模型,模型提出都比较早。 感知机 感知机是二类分类的线性分类模型。 感知机只在求出线性可分的分类超平面,通过梯度下降法对损失函数极小化建立感知机模型。 感知机1957年由Rosenblatt提出,是神经网络和支持向量机的基础 模型 输入空间是实例向量组成的空间,输出空间是-1和+1(正负两类)。建立如下函数: \begin{align*} f(x)&=sign(\omega \cdot x+b)\\ \omega&:weight\quad or\quad weight\quad...
爬虫注意
大多数浏览器都支持对网页的审查,在对我们提取的数据的位置进行定位时往往需要借助网页的开发者工具。鼠标右键选择对网页“检查”即可打开该功能 检查浏览器DOM时的注意事项 当我们查看网页的DOM时,我们看到的并不是原本的html文件,而是浏览器清理和执行过Java代码的网页。例如火狐会给网页中的表格元素添加元素,但如果这样的东西出现在我们的xpath语句中,则不能提取出任何东西。 在对网页审查在开发者模式下禁用JavaScript(或者可以右键查看页面源代码) 不要使用包含全部路径的Xpath的语句(避免包含/tbody)使用相对路径或者比较大的搜索语句 动态网页抓取 在抓取网页时,有的页面是经过几次连续的请求才抓取成功的,这个时候我们可以借助检查工具中的“网络”来对网页加载的请求进行一个查看。拿https://quotes.toscrape.com/scroll网站举一个例子,打开该网站发现,该网站的页面加载功能是当我们将页面滚动到最下面之后自动加载出来的。这个时候就需要用到Net-work...
神经网络
神经网络 scikit-learn提供了MLPClassifier()和MLPRegression()两个类,分别用于神经网络分类和回归任务。 多层感知器(MLP) 的监督学习算法,通过在数据集特征 X = {x1, x2, …, xm} 和标签y上训练来学习函数:MLPClassifier(): class sklearn.neural_network.MLPClassifier(hidden_layer_sizes=(100, ), activation='relu', solver='adam', alpha=0.0001, batch_size='auto', learning_rate='constant', learning_rate_init=0.001, power_t=0.5, max_iter=200, shuffle=True, random_state=None, tol=0.0001, verbose=False, warm_start=False,...
图像
图像处理与分类 Python有很多的数字图像处理相关的包,像PIL, Pillow, OpenCV, scikit-image等等。 其中PIL和Pillow只提供最基础的数字图像处理,功能有限。 OpenCV实际上是一个c++库,只是提供了Python接口。 scikit-image是基于SciPy的一款图像处理包,它将图片作为NumPy数组进行处理,与matlab处理方法类似**。(对图像的简单处理如截取、擦除、改变RGB某一通道的值或者拼接只需要对对应的数组进行操作即可)** skimage包的全称是scikit-image SciKit (toolkit for SciPy),它对SciPy.ndimage进行了扩展,提供了更多的图片处理功能。 它由Python语言编写,由SciPy...
聚类实现
聚类分析 scikit-learn的sklearn.cluster模块提供了多种聚类方法 K-means聚类 仿射传播聚类 均值漂移聚类 谱聚类 凝聚聚类 密度聚类 高斯混合聚类 层次聚类 K-means聚类分析 K-means聚类分析可以使用KMeans()类和k_means方法。 使用KMeans类进行聚类 KMeans()类的格式如下: class sklearn.cluster.KMeans(n_clusters=8, init='k-means++', n_init=10, max_iter=300, tol=0.0001, precompute_distances='auto', verbose=0, random_state=None, copy_x=True, n_jobs=1, algorithm='auto') KMeans()类的主要参数: KMeans()类的主要属性有: KMeans()类提供了fit(),...