自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(160)
  • 收藏
  • 关注

原创 odoo----self详解

python中一切皆对象!odoo基于python开发,那么odoo中也可以理解成一切皆对象。我们在python中定义类的时候,一般会用到self,用来表示当前对象自己。那么odoo中的self除了python语法中,自带的用法,还有哪些特殊的用法呢?一:self是什么目前新版的Odoo中使用到的self,是对 游标cr、用户ID、模型、上下文、记录集、缓存 的封装。我们可以通过 self.XX 获取到这些封装的东西,比如:self.cr、self.uid。二:通过直接设置属性来改变数

2020-07-24 16:19:34 558

原创 odoo----附件上传

附件上传基本原理实现,可以参考这篇:https://www.cnblogs.com/ljwTiey/p/7348291.htmlhttp://blog.csdn.net/wangnan537/article/details/41903159首先我们看一下odoo界面默认的附件功能,有木有感觉不是很友好!囧 :)下面给小伙伴们介绍另一种odoo自带的附件管理方式!首先,在你的模型中增加如下定义:###################################################

2020-07-24 16:16:38 1232

原创 odoo----odoo可用小图标

odoo系统的小图标都采用了 fontawesome字体图标官网: http://fontawesome.dashgame.com/Github:http://fortawesome.github.io/Font-Awesome/icons odoo可用:https://www.slideshare.net/TaiebKristou/odoo-icon-smart-buttonsodoo xml视图中引用小图标# 首先打开官网 http://fontawesome.dashgame.com/

2020-07-24 16:11:24 665

原创 odoo----用户配置界面增加模块访问权限

在odoo设置界面,点击用户,进入用户配置界面,会看到:访问权 | 个人资料菜单在访问权 page菜单界面,可以看到系统预制的一些模块都会显示在这里,那么,我们自己开发的模块如何显示在这块呢,从而方便在创建用户的时候,给该用户访问我们自己开发模块的权限!实现方式:在odoo后台代码中增加两个文件,并在__manifest__.py中申明引用这两个文件。具体编写:新建两个文件夹:(1) 在自己模块根目录下,创建data 和 security 两个目录,一般这两个目录也是平时odoo模块开

2020-07-24 16:09:09 915 1

原创 odoo----安装Backend debranding去除odoo信息模块后 隐藏开发者模式

Backend debranding找到如下文件,将相关灰色代码注释掉。<?xml version="1.0" encoding="UTF-8"?><templates> <t t-extend="mail.client_action"> <t t-jquery=".o_mail_request_permission" t-operation="inner"> Your permission is require

2020-07-24 15:52:06 317

原创 Odoo----第三方邮件服务发送设置

标题第三方发送邮件配置最常见的就是使用第三方的服务来配置发送邮件,以腾讯企业邮箱为例Settings > Technical > Outgoing Mail ServersSMTP Server: http://smtp.exmail.qq.com/SMTP Port: 465 ConnectionSecurity:SSL/TLS配置完成后点击下方 Test Connection 测试连接是否正常,正常会如图提示Connection Test Succeeded! Everyth

2020-07-24 14:21:44 4414

原创 Odoo----服务器域名配置

市场上的两大主流 Web 服务器无疑是 Apache 和 Nginx,Odoo 部署为 Web 站点时,显然不会采用 http://your.ip.address:8069的方式进行访问,于我们需要进行 Web 服务器的配置:Nginx:# vi /etc/odoo.confxmlrpc_interface = 127.0.0.1netrpc_interface = 127.0.0.1 # vi /etc/nginx/conf.d/odoo_nginx.conf upstream odoo {

2020-07-24 12:05:23 2079

原创 Odoo----如何删除 Powered by Odoo

虽然不太推荐,在使用中总是有人想去除“Powered by Odoo”这段文件,你可能会在网上查找说修改addons/web/views/webclient_templates.xml却并没有效果,下面整方法如下:1.后台左下角打开开发者模式,Settings>General Settings>Technical>User Interface>Views(如上图)搜索web.menu_secondary,找到如下代码并注释<div class="o_sub_menu_.

2020-07-24 11:58:14 1443 1

原创 PostgreSQL使用汇总

安装 Odoo 有很多种方式,或者是根本无需进行安装,这取决于你的用例。本文旨在描述大部分的安装选项。在线使用在生产环境或测试使用Odoo最简便的方式。安装包适于测试Odoo、开发模块及用于通过额外的部署和维护工作来在长期生产环境使用。源码安装提供更强的灵活性:例如允许在同一个系统中运行多个Odoo版本。有益于开发模块,可用作生产部署的基础。Docker如果你经常使用docker来进行开发或部署,可使用获取官方docker基础镜像。...

2020-07-24 11:35:02 330

原创 sklearn实战-----9.sklearn中的线性回归大家族

1 概述1.1 线性回归大家族回归是一种应用广泛的预测建模技术,这种技术的核心在于预测的结果是连续型变量。决策树,随机森林,支持向量机的分类器等分类算法的预测标签是分类变量,多以{0,1}来表示,而无监督学习算法比如PCA,KMeans并不求解标签,注意加以区别。回归算法源于统计学理论,它可能是机器学习算法中产生最早的算法之一,其在现实中的应用非常广泛,包括使用其他经济指标预测股票市场指数,根据喷射流的特征预测区域内的降水量,根据公司的广告花费预测总销售额,或者根据有机物质中残留的碳-14的量来估计化石

2020-07-24 11:23:35 1631

原创 odoo开发(二)2)创建第一个应用模块(module)

以前,我一直都不知道为什么好多框架的入门都是“hello world”开始,当我思前想后我要如何介绍odoo的model、record、template等继承等高级特性时,发现在那之前便需要清楚地介绍什么是模型(model),什么是记录(record),什么是模板(template),以及他们到底是干什么用以及是怎么用的?想要知道它们是怎么用的,就得介绍odoo的一个应用模块(module)的结构是什么样的。那么了解一个应用结构最快的办法,那就是我们自己去完成一个。Let’s do it!Tips: 初

2020-07-23 16:20:48 1869 1

原创 odoo开发(一)安装odoo运行环境(Mac)

在Mac Os上安装odoo12开发环境我们将要安装的软件包:1)、git: 代码管理2)、postgres: odoo12运行所需要的数据库3)、docker: 用于构建postgres容器,pgadmin4容器4)、>=python3.5: odoo12运行的python环境4)、odoo requirements: 运行odoo需要的python依赖包项目代码:git clone -b v1.0 https://github.com/lingjiawen/odoo_projec.

2020-07-23 16:20:41 1753

原创 ODOO Many2one ondelete属性

class PinBan(models.Model): _name = "pinban.pinban" _description = "Pin Ban" pinban_ids = fields.One2many('pinban.record', 'pinban_id', string='工位记录') class PinBanRecord(models.Model): _name = "pinban.record" _description = 'P

2020-07-23 16:19:01 565

原创 ODOO 按日期分组

<filter string="日期" name="group_by_check_in_day" context="{'group_by':'check_in:day'}"/>我有个字段 check_in 是datetime类型的,我想按字段的date分组,也就是按日期,忽略掉时间我查看odoo源码,看odoo是怎么实现按日期分组的,我看到:<filter string="Date" name="groupby_date" domain="[]" context="{'group_

2020-07-23 16:17:43 569

原创 ODOO 在form视图中创建按钮并调用后台方法

在 from 视图中,允许增加 button ,并调用后台方法。实现方式:在表单视图的 form 标签中,插入 header 标签,在 header 标签中,定义button ,并在当前模块中,定义后台方法,就像这样,type=object ,name = 后台方法名: <!--Form View--> <record id="view_zerone_books_form" model="ir.ui.view"> <fi

2020-07-23 16:17:33 1345

原创 odoo开发(二)1)个性化定制odoo12之修改数据库创建页面

上一文章,我们已经成功运行了odoo12,并访问localhost:8069看到如下界面:我们还没有创建数据库,但是我们发现,数据库管理页面的logo是odoo,数据库页面全是英文的,对于我们国内用户来说,这是不太友好的。我们想要自定义这个数据库页面,有没有办法?答案是肯定的。本节代码git clone -b v2.1 https://github.com/lingjiawen/odoo_project.git探索数据库页面我们在Chrome浏览器右键检查odoo的logo,发现它的url是

2020-07-23 16:14:30 883

原创 sklearn实战-----8.支持向量机SVM(下)

1 二分类SVC的进阶1.1 SVC用于二分类的原理复习在上周的支持向量SVM(上)中,我们学习了二分类SVC的所有基本知识,包括SVM的原理,二分类SVC的损失函数,拉格朗日函数,拉格朗日对偶函数,预测函数以及这些函数在非线性,软间隔这些情况上的推广,并且引出了核函数这个关键概念。今天,基于我们已经学过的理论,我们继续探索支持向量机的其他性质,并在真实数据集上运用SVM。开始今天的探索之前,我们先来简单回忆一下支持向量机是如何工作的。支持向量机分类器,是在数据空间中找出一个超平面作为决策边界,利用

2020-06-16 19:20:27 1792

原创 sklearn实战-----7.支持向量机SVM(上)

1 概述支持向量机(SVM,也称为支持向量网络),是机器学习中获得关注最多的算法没有之一。它源于统计学习理论, 是我们除了集成算法之外,接触的第一个强学习器。它有多强呢?从算法的功能来看,SVM几乎囊括了我们前六周讲解的所有算法的功能:功能有监督学习线性二分类与多分类(Linear Support Vector Classification) 非线性二分类与多分类(Support Vector Classification, SVC) 普通连续型变量的回归(Support Vecto

2020-06-16 19:20:14 2078 1

原创 sklearn实战-----6.聚类算法K-Means

1 概述1.1 无监督学习与聚类算法在过去的五周之内,我们学习了决策树,随机森林,逻辑回归,他们虽然有着不同的功能,但却都属于“有监督学习”的一部分,即是说,模型在训练的时候,即需要特征矩阵X,也需要真实标签y。机器学习当中,还有相当一部分算法属于“无监督学习”,无监督的算法在训练的时候只需要特征矩阵X,不需要标签。我们曾经学过的PCA降维算法就是无监督学习中的一种,聚类算法,也是无监督学习的代表算法之一。聚类算法又叫做“无监督分类”,其目的是将数据划分成有意义或有用的组(或簇)。这种划分可以基于我们

2020-06-16 19:20:03 2689 1

原创 sklearn实战-----5.逻辑回归与评分卡

1 概述1.1 名为“回归”的分类器在过去的四周中,我们接触了不少带“回归”二字的算法,回归树,随机森林的回归,无一例外他们都是区别于分类 算法们,用来处理和预测连续型标签的算法。然而逻辑回归,是一种名为“回归”的线性分类器,其本质是由线性回 归变化而来的,一种广泛使用于分类问题中的广义回归算法。要理解逻辑回归从何而来,得要先理解线性回归。线 性回归是机器学习中简单的的回归算法,它写作一个几乎人人熟悉的方程:z=θ0+θ1x1+θ2x2+...θnxnz=\theta_0+\theta_1x_1+\t

2020-06-16 19:19:57 3603 6

原创 sklearn实战-----1.sklearn入门与决策树

sklearn入门官网:https://scikit-learn.org决策树1.概述1.1决策树是如何工作的决策树(Decision Tree)是一种非参数的有监督学习方法,它能够从一系列有特征和标签的数据中总结出决策规 则,并用树状图的结构来呈现这些规则,以解决分类和回归问题。决策树算法容易理解,适用各种数据,在解决各 种问题时都有良好表现,尤其是以树模型为核心的各种集成算法,在各个行业和领域都有广泛的应用。我们来简单了解一下决策树是如何工作的。决策树算法的本质是一种图结构,我们只需要问一系

2020-06-16 19:19:34 8250 3

原创 sklearn实战-----4.降维算法PCA和SVD

1 概述1.1 从什么叫“维度”说开来在过去的三周里,我们已经带大家认识了两个算法和数据预处理过程。期间,我们不断提到一些语言,比如说:随 机森林是通过随机抽取特征来建树,以避免高维计算;再比如说,sklearn中导入特征矩阵,必须是至少二维;上 周我们讲解特征工程,还特地提到了,特征选择的目的是通过降维来降低算法的计算成本……这些语言都很正常地 被我用来使用,直到有一天,一个小伙伴问了我,”维度“到底是什么?对于数组和Series来说,维度就是功能shape返回的结果,shape中返回了几个数字,就

2020-06-16 19:19:24 1610

原创 sklearn实战-----3.数据预处理和特征工程

1 概述1.1 数据预处理与特征工程想象一下未来美好的一天,你学完了菜菜的课程,成为一个精通各种算法和调参调库的数据挖掘工程师了。某一天 你从你的同事,一位药物研究人员那里,得到了一份病人临床表现的数据。药物研究人员用前四列数据预测一下最 后一数据,还说他要出差几天,可能没办法和你一起研究数据了,希望出差回来以后,可以有个初步分析结果。于 是你就看了看数据,看着很普通,预测连续型变量,好说,导随机森林回归器调出来,调参调呀调,MSE很小,跑 了个还不错的结果。几天后,你同事出差回来了,准备要一起开会

2020-06-16 19:19:15 2089 1

原创 sklearn实战-----2.随机森林

1 概述1.1 集成算法概述集成学习(ensemble learning)是时下非常流行的机器学习算法,它本身不是一个单独的机器学习算法,而是通 过在数据上构建多个模型,集成所有模型的建模结果。基本上所有的机器学习领域都可以看到集成学习的身影,在 现实中集成学习也有相当大的作用,它可以用来做市场营销模拟的建模,统计客户来源,保留和流失,也可用来预 测疾病的风险和病患者的易感性。在现在的各种算法竞赛中,随机森林,梯度提升树(GBDT),Xgboost等集成 算法的身影也随处可见,可见其效果之好,应用之广。

2020-06-16 19:19:05 1142

原创 NLP——4.朴素贝叶斯与应用(语种检测)

我们试试用朴素贝叶斯完成一个语种检测的分类器,说起来,用朴素贝叶斯完成这个任务,其实准确度还不错。机器学习的算法要取得好效果,离不开数据,咱们先拉点数据(twitter数据,包含English, French, German, Spanish, Italian 和 Dutch 6种语言)瞅瞅。in_f = open('data.csv')lines = in_f.readlines()...

2020-06-16 19:18:44 450

原创 NLP——4.朴素贝叶斯与应用(新闻分类)

贝叶斯理论简单回顾在我们有一大堆样本(包含特征和类别)的时候,我们非常容易通过统计得到 p(特征∣类别)p(特征|类别)p(特征∣类别)大家又很熟悉的公式:p(x)p(y∣x)=p(y)p(x∣y)p(x)p(y|x)=p(y)p(x|y)p(x)p(y∣x)=p(y)p(x∣y)所以做一个小小的变换p(特征)p(类别∣特征)=p(类别)p(特征∣类别)p(特征)p(类别|特征)=p(类...

2020-06-16 19:18:35 536

原创 Oracle基础操作

一、ORACLE的启动和关闭在单机环境下要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下su - oracle 启动ORACLE系统oracle>svrmgrl SVRMGR>connect internal SVRMGR>startup SVRMGR>quit 关闭ORACLE系统oracle>svrmgrl SVRMGR>connect internal SVRMGR>shutdown SVRMGR&g

2020-05-27 22:44:18 399

原创 Mysql常用操作

一、用户管理:新建用户:>CREATE USER name IDENTIFIED BY 'ssapdrow';更改密码:>SET PASSWORD FOR name=PASSWORD('fdddfd');权限管理>SHOW GRANTS FOR name; //查看name用户权限>GRANT SELECT ON db_name.* TO name;    //给name用户db_name数据库的所有权限>REVOKE SELECT

2020-05-27 22:07:13 141

原创 Selenium-webdriver Chrome实战

Selenium是一个浏览器自动化操作框架。Selenium主要由三种工具组成。第一个工具SeleniumIDE,是Firefox的扩展插件,支持用户录制和回访测试。录制/回访模式存在局限性,对许多用户来说并不适合,因此第二个工具——Selenium WebDriver提供了各种语言环境的API来支持更多控制权和编写符合标准软件开发实践的应用程序。最后一个工具——SeleniumGrid帮助工程师使用Selenium API控制分布在一系列机器上的浏览器实例,支持并发运行更多测试。在项目内部,它们分别被称为

2020-05-26 15:19:29 1257

原创 sklearn的train_test_split()各函数参数含义解释

在机器学习中,我们通常将原始数据按照比例分割为“测试集”和“训练集”,从 sklearn.model_selection 中调用train_test_split 函数简单用法如下:X_train,X_test, y_train, y_test =sklearn.model_selection.train_test_split(train_data,train_target,test_size=0.4, random_state=0,stratify=y_train)# train_data:所要划分的

2020-05-25 16:44:26 10712

转载 pandas数据合并与重塑(concat)

1 concatconcat函数是在pandas底下的方法,可以将数据根据不同的轴作简单的融合pd.concat(objs, axis=0, join='outer', join_axes=None, ignore_index=False, keys=None, levels=None, names=None, verify_integrity=False)参数说明objs: series,dataframe或者是panel构成的序列lsitaxis: 需要合并链接的轴,0是

2020-05-25 16:26:00 681

转载 Numpy详细教程

NumPy - 简介NumPy 是一个 Python 包。 它代表 “Numeric Python”。 它是一个由多维数组对象和用于处理数组的例程集合组成的库。Numeric,即 NumPy 的前身,是由 Jim Hugunin 开发的。 也开发了另一个包 Numarray ,它拥有一些额外的功能。 2005年,Travis Oliphant 通过将 Numarray 的功能集成到 Numeric 包中来创建 NumPy 包。 这个开源项目有很多贡献者。NumPy 操作使用NumPy,开发人员可以执

2020-05-13 10:04:55 823

原创 NLP——13.条件随机场与应用

一、最大熵模型《数学之美》中的描述:

2020-05-11 15:43:11 228

原创 NLP——12.词向量及相关应用

表示人类造出的词:(1)从语料中提取出含义表达。(2)从文字到数值向量词编码的方式:N-gram,TF-IDF——Word2vec(对于多义词会转化到同一个数值向量,从而导致不准确)——sense2vec(区分在不同语境下某些单词的具体含义)·给每个词一个索引,每个词都编码一个下标,但是由于词与词之间有一些隐含的关系,这样做会破坏这个关系。近义词,同一类。绘制到一个二维空间中,希望保证向量空间的相似度,即含义上相近的词绘制到二维空间中之后仍然是相近的。词典:给每个不同的词一个下标

2020-05-11 15:17:56 643

原创 NLP——11.深度学习与NLP简单应用

希望在毫不知情(很少的人类介入)的情况下实现。即端对端的实现。一、Intro工具推荐:二、Auto-Encoder使用自编码器的情况:1)拿到的原始数据缺少标签 (数据降噪) 2)数据太大了,需要进行降维,使得最后数据集大小可接受(例如可以讲原始的88图片压缩成21的)将原始图片“数字2”压缩(encoder一个从大到小的NN)到一个中间量(compressed representation),然后通过一个完全反过来的(Decoder一个从小到大的NN)恢复出原始图片。自编码器实

2020-05-11 15:04:50 269

原创 NLP——10.使用HMM进行词性标注

这里我们用NLTK自带的Brown词库进行学习。假设我们的单词集: words = w1 … wNTag集: tags = t1 … tNP(tags | words) 正比于 P(ti | t{i-1}) * P(wi | ti) 类似贝叶斯公式(利用中间量)为了找一个句子的tag,我们其实就是找的最好的一套tags,让他最能够符合给定的单词(words)。首先,导入需要的库In [1]:import nltkimport sysfrom nltk.corpus import b

2020-05-11 14:55:33 745

原创 NLP——9.隐式马尔科夫链

在初始状态确定的情况下,(1 0)状态下,马尔科夫链的结果最终会趋于稳态分布。即最终结果会得到一个固定的稳态分布。没有办法给出完整的判断,这个时候就需要多一条马尔科夫链。先设置一个牛市和熊市的马尔科夫链,然后牛市对应涨跌,熊市也对应涨跌。从而得到一个双层结构的马尔科夫链。能观测到的最外侧的涨跌(显性的状态集合),而牛市和熊市没办法直接观测得到为隐式。通过能观测的显性求解出整个双层马尔科夫链集合,这就是隐马尔科夫链。由于每次掷骰子的时候只能得到黑盒输出的数字(可见状态链:1,6,8...

2020-05-11 11:43:30 330

原创 NLP——8.基于统计的翻译系统

基于统计的机器翻译:mosesdecoder作为比对翻译效果的baseline,如果不如这个的效果,就说明测试系统效果不算好。首先看看一共需要以下三个模型:语言模型:用来评估这句话的通畅程度。1、需要从大量的语料中学习出在新的句子知道对应的英语翻译是什么。2、翻译模型:实质是基于短语的(不是基于单词的翻译)3、平行语料:只要中英文两个文件中行是相同的,那他们就是相互对应的中英文4、在大量的平行语料中学习出该怎样去完成。可能会对词进行一些表示,例如word2vec等将文字表示为计算机能读懂的向量

2020-05-11 11:25:16 3703

转载 PyQt5交互界面

一、前言最近使用python3 + PyQt5 做了一个带界面的小软件,并使用PyInstaller进行了软件打包发布,遇到了一些坑,不过经过一通查阅,基本解决,接下来就汇个总,简单讲解使用python与Qt如何开发一个交互界面。二、实现目标实现一个简单的用户登录后跳转到另一个UI这样的流程,重在解析如何使用python将Qt融合进去,比如登录时访问数据库就暂时忽略。登录 --> 访问数据库(本文略) --> 跳转到主界面 --> 使用PyInstaller打包为exe三、环

2020-05-10 18:23:17 3635

原创 NLP——7.LDA主题模型(数学公式推导)

这篇文章看一下公式式怎么推导出来的。正经的LDA,主要有以下几个方面:一个函数:gamma函数四个分布:二项分布,多项分布,beta分布,狄利克雷分布一个概念一个理念:共轭先验与贝叶斯框架pLSA,LDA一个采样:Gibbs采样我们来看一下它是怎么推导出来的。共轭先验与共轭分布假定似然函数p(x|θ)p(x|θ)已知,问题是选取什么样的先验分布p(θ)p(θ)和后验分布p(...

2020-05-05 21:26:32 4926

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除