半小时搞定Hadoop+Mysql+Hive+Python
半小时搞定 Hadoop+Mysql+Hive
#操作系统/Linux #数据存储/MYSQL
1. 说明
搭建过 Hadoop 集群的小伙伴一定知道,如果不用 docker,半小时配好
Hadoop+Mysql+Hive(后简称 Hive)肯定是胡吹,有了 Docker
镜像,没有说明文档,配好了也不一定会用。本文将介绍如何在半小时内,让
Hive 在你的 Linux 系统上运行起来,并且可以通过 Python
程序访问其中数据。
2. 使用集群
Hadoop 需要安装 Java 虚拟机,创建 Hadoop 用户,下载安装 Hadoop
软件,修改多个配置文件,启动服务等,有时由于操作系统不同还需要重编
Hadoop 源码。没亲亲自搭建过可以参考这篇 Python海量数据处理之_Hadoop(一)集群搭建。整个
Hadoop 系统就非常复杂,涉及各种类型 Node 的概念及原理。本文主要介绍对
HIVE 的使用方法,只需要 Hadoop 可用,因此使用了 Hadoop,MySQL 及 Hive
都正常安装和配置好的 dokcer image.
首先,查找可用的 Hive 的 ...
python数据统计分析
python 数据统计分析
1. 常用函数库
scipy 包中的 stats 模块和 statsmodels 包是 python
常用的数据分析工具,scipy.stats 以前有一个 models
子模块,后来被移除了。这个模块被重写并成为了现在独立的 statsmodels
包。
scipy 的 stats 包含一些比较基本的工具,比如:t
检验,正态性检验,卡方检验之类,statsmodels
提供了更为系统的统计模型,包括线性模型,时序分析,还包含数据集,做图工具等等。
2. 小样本数据的正态性检验
(1) 用途
夏皮罗维尔克检验法 (Shapiro-Wilk)
用于检验参数提供的一组小样本数据线是否符合正态分布,统计量越大则表示数据越符合正态分布,但是在非正态分布的小样本数据中也经常会出现较大的
W 值。需要查表来估计其概率。由于原假设是其符合正态分布,所以当 P
值小于指定显著水平时表示其不符合正态分布。
正态性检验是数据分析的第一步,数据是否符合正态性决定了后续使用不同的分析和预测方法,当数据不符合正态性分布时,我们可以通过不同的转换方法把非正太态数据转换成 ...
迁移学习之_猫狗大战
迁移学习之 _ 猫狗大战
#图形图像 #算法实战
1. 迁移学习
迁移学习(transfer
learning)是指将已经学习的知识应用到其它领域,在图像识别问题中,是将训练好的模型通过简单调整来解决新的问题。从图像中提取特征,不一定需要算力强大的
GPU,训练上百层的神经网络。
卷积神经网络中卷积层和池化层可以抽取图片的几何特征,比如浅层的卷积用于抽取出一些直线,角点等简单的抽象信息,深层的卷积层用于抽取人脸等复杂的抽象信息,最后的全连接层是对图片分类的处理。因此,我们可以使用网络的前
N-1 层提取特征。
例如,利用在 ImageNet 数据集上训练好的 ResNet50
模型来解决一个自定义的图像分类问题:保留训练好的 ResNet50
模型中卷积层的参数,只去掉最后一个全连接层,将新图像输入训练好的神经网络,利用前
N-1 层的输出作为图片的特征,将 ResNet50
模型作为图片特征提取器,提取得到的特征向量作为输入训练新的单层全连接网络来处理新的分类问题,或者将这些特征代入
SVM,LR 等其它机器学习模型进行训练和预测。
在数据量足够的情况下,迁移学习的效 ...
图片分割之_训练模型和预测
图片分割之 _ 训练模型和预测
1. 说明
本篇使用 Mask R-CNN
算法,以及十几张从网络上下载的香蕉图片,训练一个模型。用于识别图像中的香蕉,不同于苹果,桔子,香蕉从不同的角度看差异很大,尤其是三五根香蕉放连在一起,或者整把香蕉的形态和单根香蕉差异很大。可以算是一种识别起来相对困难的水平。
下图是用训练好的模型识别出的香蕉图片,可以看到,基本识别正确。
操作步骤可分为:安装工具,标注图片,修改源码,模型训练和模型预测。我的工作环境是
Ubuntu,硬件有 GPU 支持,操作过程中使用了 python,图片标注工具,以及
shell 脚本。
2. 安装工具
(1) 下载程序源码
1$ git clone https://github.com/matterport/Mask_RCNN.git # (大概200多M)
(2) 下载相关软件
12345$ sudo pip install opencv-python$ sudo pip install tensorflow$ sudo pip install scikit-image$ sudo pip install ...
Python常用的色板
1. 说明
有时候需要从图像中判断某种颜色,或者获取某个颜色区域,此时常用 HSV
色板判断。因为在 HSV 的色彩空间中,只需要判断颜色通道即可。本篇介绍 HSV
色板,及其在 python 中的转换和使用方法。
2. 色板
(1) RGB
三个通道,红色 Red, 绿色 Green, 蓝色
Blue,值越大颜色越大,当三个值都大时为白色,三个值都为 0 时为黑色。
(1) HSV
三个通道,HSV(Hue, Saturation, Value)
是根据颜色的直观特性创建的一种颜色空间, 也称六角锥体模型 (Hexcone
Model)。这个模型中颜色的参数分别是:色调(H),饱和度(S),明度(V)。
[](https://upload-
images.jianshu.io/upload_images/5357893-5e3dce368c7a1cfb.png?imageMogr2/auto-
orient/strip%7CimageView2/2/w/217)
(1) GRAY
灰度图,只有一个通道。
3. 图示代码
12345678910111213141516171819202 ...
图像处理之_ARToolKit自定义Marker
图像处理之 _ARToolKit
自定义 Marker
#图形图像
1. 制作 marker
ARToolKit 支持两种标记,一种是黑白图,另一种是普通图。黑白图使用工具
mk_patt
制作,它有一些硬性的规定,比如必须是黑白图,正方形,且有边框等等。
普通图更灵活,它可以是我们生活中的图像,比如公交卡,身份证等等,但相对黑白图,不那么容易识别,其原理主要是根据图片上的边缘,识别其中的一些点,把这些点之间的关系保存下来,并在摄像机图片中寻找对应的关系,以实现图片识别和跟踪,本文主要介绍操作普通图。
ARToolKit 入门文档请见:图像处理之_增强现实工具ARToolKit
2. 用普通图片制作 marker
(1) 拍一张工交卡的相片,只留前景
(2) 计算特征点
1$ bin/genTexData /tmp/card.jpg
置换时需要输入几个参数,我设置的参数如上图所示,尽量多取特征点,并把 DPI
范围设大,以达到更好的识别效果。
(3) 查看特征点
1$ bin/dispFeatureSet /tmp/card.jpg
可以看到边缘大多被识别到了,对 ...
修改上传文件按钮的风格
修改上传文件按钮的风格
一段 HTML 代码,目标是显示 bootstrap
风络的上传按钮(不带路径显示),且点击后无需再点 submit 按钮,直接发
post 请求。
[](https://img-blog.csdnimg.cn/20190119165910888.png?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3hpZXlhbjA4MTE=,size_16,color_FFFFFF,t_70)
<!DOCTYPE html>
<html>
<head>
<link href="bootstrap.css" rel="stylesheet" media="screen">
<style>
.fileinput-button {
...
显示远程机器上的图形界面
显示远程机器上的图形界面
#操作系统/Linux
在使用 SSH 或 Telnet 从一台 Linux 机器 A 连接到另一台 Linux 机器 B
时,通常会遇到 B 机上的图形界面无法显示的问题,报错为:
cannot open display:
此时只需要在你的 A 机上打开配置文件:
$ sudo vi /etc/ssh/ssh_config
写入
ForwardX11 yes
之后重启 sshd 服务
$ service sshd restart
最后重新连接 SSH 或 Telnet 即可.
Bootstrap、Python、Flask做简单的前端
Bootstrap、Python、Flask
做简单的前端
1. 说明
无论做什么类型的程序,都难免需要给别人展示一下。Web
展示是个很好的方案,做起来省事,效果好,可交互,无需安装,跨平台,等等等等,算是个必备技能,与做
PPT 比肩。前一阵用 pyecharts
做网页统计图,发现自己做的界面实在太丑,同时又想引用一些现成的风格和控件,于是学习了一下
Web 前端框架,顺带熟悉一下 JS。菜鸟入门,记录如下,仅供参考。
2. 前端流行框架
先看看几种流行的前端框架:BootStrap, React, Vue。
BootStrap 容易上手,学习成本低,它提供了一些常用的 css 和
js,拿来就能用。
React 是数据单向响应的,数据发生变化时,前端 UI 即可随之变化。React
可管理 Dom 树的变化,使页面呈现更快。
Vue 站在了 React 的肩膀上,
许多方面更出色,如数据的双向绑定,速度更快,组件化,方便打包和发布等等,但相对来说上手的难度较大。
长远考虑, 建议使用 Vue+node.js. 短期简单使用, BootStrap
是个不错的选择 ...
DockerBuild
Docker Build
#Docker
1. 说明
之前介绍过用 commit 的方式生成新的 Docker Image,今天介绍用 Build
方式做 image,Build 方式需要写一个配置文件,然后利用当前是已存在的
image,按照配置文件进行调整生成新的 image。
相对来说,commit 方法更随意,我们用它将现场保存为 image,而 build
image 生成的 image 更“干净”。
2. 基本操作
(1) 看当前环境
1$ docker images
看一下当前的 image,确定新的 image 是基于哪个
image,记下它的大版本号 (REPOSITORY) 和小版本号 (TAG)。
(2) 写配置文件 Dockerfile
1$ vi Dockerfile
写入以下内容,我这里是安装了一个新 python 包 pyecharts
12FROM 基础大版本号:基础小版本号RUN ["pip", "install", "pyecharts"]
(3) BUILD 新的 Dock ...