chi

数仓-维度表建设

核能气质少年 提交于 2021-02-17 02:06:28
建表SQL参考:(每个字典一个表,比如办学类型一个表dim_bxlx,民族一个表dim_mz) CREATE TABLE rkk_dim_baoxlx ( bzdm STRING COMMENT ' 标准代码 ' , bzdmmc STRING COMMENT ' 标准代码注释 ' , table_name STRING COMMENT ' 表名 ' , table_chi_name STRING COMMENT ' 表中文名 ' , col_name STRING COMMENT ' 字段名 ' , col_chi_name STRING COMMENT ' 字段中文名 ' , ywxtdm STRING COMMENT ' 业务系统代码 ' , ywxtdmmc STRING COMMENT ' 业务系统代码注释 ' ) COMMENT ' 维度表_保险类型 ' ; ----更新   通常标准字典表中的字典名和原始表会有出入,例如标准字典为男女,原始为男性女性,则需要一个原始字典名和值的映射,加上不同表的原始字典名字典值是不一样的,这样使用分组列来区分即可 基于产品映射的考虑,字典表设计可以是以下字段:   标准字典名   标准字典值   原始字典名   原始字典值   分组列    这样一个基本的码表就算可以使用了,有些时候还需要保存历史纬度,会使用如时间等分区

图像识别

自闭症网瘾萝莉.ら 提交于 2021-02-15 16:54:11
1、Tess4j 最近在GitHub上看到一个图像识别的开源框架 tess4j ,而且是Java版的,为此利用此框架来识别验证码中的信息,利用它提供的字体库,来提取信息,对于没有什么干扰线的验证码准确率还是蛮高的,对于有一些干扰线的就差一些,不过也可以能通过训练字体库,从而可以提高准确率的。 根据范例,写了一个简单的提取验证码信息的工具类VerificationCode: 主要是用这个类的extract方法,这个方法有3个参数: 第1个参数是指定图片的路径 第2个参数是指定字体库的,其中chi_sim表示中文简体,eng表示英文 第3个参数是指定是否需要去除干扰线,true表示需要,false表示不需要 package com.swnote.tess4j.test; import java.awt.image.BufferedImage; import java.io.File; import javax.imageio.ImageIO; import com.recognition.software.jdeskew.ImageDeskew; import net.sourceforge.tess4j.ITesseract; import net.sourceforge.tess4j.Tesseract; import net.sourceforge.tess4j.util

AdaBoost

会有一股神秘感。 提交于 2021-02-15 01:39:39
AdaBoost 是英文"Adaptive Boosting"(自适应增强)的缩写,其自适应在于:前一个分类器分错的样本会被用来训练下一个分类器。是一种集成学习方法。 算法 设训练数据集$T={(x_1,y_1), (x_2,y_2)...(x_N,y_N)}$. 初始化训练数据的权值分布(均匀分布) $$D_1=(w_{11},w_{12}\dots w_{1i}\dots w_{1N}), w_{1i}={1 \over N}, i=1,2,\dots,N$$ 权值仅用于计算分类误差,并不改变数据的真实分布.并在训练时选择误差最小的分类点得到当前的最优分类器. 使用具有权值分布Dm的训练数据集学习,得到基本分类器(二分类) $$G_m(x):\chi\longrightarrow {-1,+1}$$ 计算Gm(x)在训练数据集上的分类误差率 $$e_m=P(G_m(x_i)\neq y_i)=\sum_{i=1}^N w_{mi}I(G_M(x_i)\neq y_i)$$ 分类误差率是被错分的样本的权值之和. 计算Gm(x)的系数 $$\alpha_m={1 \over 2}log{1-e_m \over e_m}$$ 可见,分类器的系数与误差率呈负相关,目的是减小最终误差 更新训练数据集的权值分布(对分类误差率较大的数据集加大权重,提高后续的分类器对这部分数据的分类准确率)

Tesseract-OCR文字识别

谁说我不能喝 提交于 2021-02-14 14:13:46
放在前面 :本文主要参考了这篇 知乎专栏-Gemfield 时间有限,长话短说,主要是放一些资源,方便查找。 1.预处理 对于中文识别来说,不做预处理简直惨不忍睹。主要手段为 binarize and de-noise image; 高斯模糊之类的blur算法; 缩放图像(fix text size,e.g. 12 pt should be ok); 锐化(Sharpening effect); fix DPI (if needed) 300 DPI is minimum; try to fix illumination of image (e.g. no dark part of image); contrast, brightness... it tends to work best when there is just black & white, i.e. no greyscale; 去掉图片中无关的线条; 高对比度; 详细的 官方教程 再放一个有人制作的相关工具 textcleaner , 这里 有一小段介绍 2. 识别中文 下载中文语言包,简体中文的代号为chi_sim,每种语言在新时代的tesseract都应该有3种语言包:fast版、best版、raw版。fast版是考量了速度,并对准确度做了一定的妥协,apt安装的时候下载的语言包模型正是fast版

10. 前方高能-函数的进阶

做~自己de王妃 提交于 2021-02-14 11:15:32
本节主要内容: 1.函数参数—动态传参 2.名称空间,局部名称空间,全局名称空间,作用域,加载顺序 3.函数的嵌套 4.gloabal,nonlocal关键字 一.函数参数—动态传参 之前我们说过了传参,如果我们需要一个函数传参,而参数又不确实的,或者我给一个函数传很多参数,我的形参就要写很多,很麻烦,那怎么办呢,我们可以考虑使用动态参数。 形参的第三种:动态参数 动态参数分为两种: 1.动态接受为止参数 首先我们先回顾一下为止参数,位置参数,按照位置进行传参 def chi(quality_food,junk_food): print ( " 我要吃 " ,quality_food,junk_food) chi( " 大米饭 " , " 小米饭 " ) # “大米饭”传递给quality_food "小米饭"传递给junk_food按照位置传 现在问题来了,我想吃任意食物,数量是任意的,食物也是任意的,这时我们就要用到动态参数了。 在参数位置编写*表示接收任意内容 def chi(* food): print ( " 我要吃 " ,food) chi( " 大米饭 " , " 小米饭 " ) 结果: 我要吃( " 大米饭 " , " 小米饭 " ) # 多个参数传递进去,收到的内容是元祖tuple 动态接受参数的时候要注意:动态参数必须在位置参数后面 def chi(* food

java 基于Tesseract实现图片文字识别

旧巷老猫 提交于 2021-02-14 03:49:06
摘自: https://www.cnblogs.com/yszd/p/12072145.html 一.简介    Tesseract是一个开源的文本识别【OCR】引擎,可通过Apache 2.0许可获得。它可以直接使用,或者使用API从图像中提取打印的文本,支持多种语言。该软件包包含一个ORC引擎【libtesseract】和一个命令行程序【tesseract】。Tesseract4添加了一个新的基于LSTM的OCR引擎,该引擎专注于行识别,但仍支持Tesseract 3的传统Tesseract OCR引擎,该引擎通过识别字符模式进行工作。通过使用传统OCR引擎模式【--oem 0】,可以与Tesseract 3兼容。它还需要训练好的数据文件对旧引擎进行支持,例如tessdata目录下的数据文件。   特点:     1.具有Unicode【UTF-8】支持,并且可以“开箱即用”地识别100多种语言。     2.支持各种输出格式,纯文本,hOCR【HTML】,PDF,仅不可见文本的PDF,TSV。Master分支还对ALTO【XML】输出提供实验性支持。     3.在许多情况下,要想获得更好的OCR结果,需要提高提供给Tesseract的图像的质量。 二.在python环境中安装pytesseract      安装成功! 三.在Windows系统下安装Tesseract   

浅谈p值(p-value是什么)

 ̄綄美尐妖づ 提交于 2021-02-11 08:29:23
当我们说到p-value时,我们在说什么? “这个变量的p-value小于0.05,所以这个变量很重要” ........ 你真的知道自己在说什么么???这个p-value到底是个什么鬼?为什么小于0.05就很重要?很重要是什么意思????? 终于... 这次,我们通俗易懂地来讲讲到底什么是p-value(p值)。 在讲p-value之前,我们用掷硬币来举个例子。 硬币有正反两面,在概率中我们知道,出现正反面的概率各为50%(1/2),所以作为一个正常的硬币,如果我们投无限次后,结果一定会是正反各占50%。但是,如果我想知道自己手中的硬币,到底是不是正常的硬币,有没有做过手脚,在实际操作中是没办法投掷无限次的。因此,我们只能用有限的结果来判断“硬币是否为常规硬币”这个问题的答案。 在统计学上,做这个检验时,通常会设定一个虚无假设(也叫零假设,Null Hypothesis),通常记作H0。以及一个对立假设(Alternative Hypothesis),及与虚无假设对立的假设,如果证明虚无假设错误,则可以推出对立假设成立。 在掷硬币这个例子中,我们可以设定 H0: 手中的硬币是常规硬币 H1: 手中的硬币做过手脚 如果手中硬币是常规硬币,我们知道正面和反面出现的概率各为50%,所以如果我投掷10次硬币,则正面和反面出现的次数各位5次。正面5次,反面5次

Parametric Statistics

て烟熏妆下的殇ゞ 提交于 2021-01-09 20:53:30
1、What are “Parametric Statistics”? 统计中的参数指的是总体的一个方面,而不是统计中的一个方面,后者指的是样本的一个方面。例如,总体均值是一个参数,而样本均值是一个统计量。参数统计检验对总体参数和数据的分布进行假设。这些类型的测试包括学生的T测试和方差分析测试,假设数据来自正态分布。 A parameter in statistics refers to an aspect of a population, as opposed to a statistic, which refers to an aspect about a sample. For example, the population mean is a parameter, while the sample mean is a statistic. A parametric statistical test makes an assumption about the population parameters and the distributions that the data came from . These types of test includes Student’s T tests and ANOVA tests, which assume data is from a

R语言学习笔记之十

家住魔仙堡 提交于 2021-01-06 07:23:35
摘要: 仅用于记录R语言学习过程: 内容提要: 描述性统计;t检验;数据转换;方差分析;卡方检验;回归分析与模型诊断;生存分析;COX回归 写在正文前的话,关于基础知识,此篇为终结篇,笔记来自医学方的课程,仅用于学习R的过程。 正文: 描述性统计 n 如何去生成table1 用 table()函数 ,快速汇总频数 u 生成四格表:table(行名,列名) > table(tips$sex,tips$smoker) No Yes Female 54 33 Male 97 60 u addmargins()函数 :对生成的table表格进行计算 > table(esoph$agegp,esoph$ncases) 0 1 2 3 4 5 6 8 9 17 25-34 14 1 0 0 0 0 0 0 0 0 35-44 10 2 2 1 0 0 0 0 0 0 45-54 3 2 2 2 3 2 2 0 0 0 55-64 0 0 2 4 3 2 2 1 2 0 65-74 1 4 2 2 2 2 1 0 0 1 75+ 1 7 3 0 0 0 0 0 0 0 > tt <- table(esoph$agegp,esoph$ncases) > addmargins(tt,margin = c(1,2)) # margin 1表示行,2表示列 0 1 2 3 4 5 6 8 9 17

Python —— sklearn.feature_selection模块

六眼飞鱼酱① 提交于 2021-01-02 16:57:11
Python —— sklearn.feature_selection模块 sklearn.feature_selection模块的作用是feature selection,而不是feature extraction。 Univariate feature selection:单变量的特征选择 单变量特征选择的原理是分别单独的计算每个变量的某个统计指标,根据该指标来判断哪些指标重要。剔除那些不重要的指标。 sklearn.feature_selection模块中主要有以下几个方法: SelectKBest和SelectPercentile比较相似,前者选择排名排在前n个的变量,后者选择排名排在前n%的变量。而他们通过什么指标来给变量排名呢?这需要二外的指定。 对于regression问题,可以使用f_regression指标。对于classification问题,可以使用chi2或者f_classif变量。 回归: f_regression:相关系数,计算每个变量与目标变量的相关系数,然后计算出F值和P值; 分类 : chi2:卡方检验; f_classif:方差分析,计算方差分析(ANOVA)的F值 (组间均方 / 组内均方); 使用的例子: 1 from sklearn.feature_selection import SelectPercentile, f_classif 2