对数(log)的换算公式

2023-05-16

对数公式的换算,对于算法复杂度的推导非常重要。但是我总忘,这次特地总结一下常用的对数公式,以备后用。

名称公式
和差 log ⁡ α M N = log ⁡ α M + l o g α N \log_\alpha MN=\log_\alpha M+log_\alpha N logαMN=logαM+logαN
换底公式 log ⁡ α x = log ⁡ β x log ⁡ β α \log_\alpha x=\frac{\log_\beta x}{\log_\beta\alpha} logαx=logβαlogβx
次方公式 log ⁡ a n x m = m n log ⁡ a x \log_{a^n}x^m=\frac{m}{n}\log_ax loganxm=nmlogax
互换 M log ⁡ a N = N log ⁡ a M M^{\log_aN}=N^{\log_aM} MlogaN=NlogaM
倒数 log ⁡ a b = ln ⁡ b ln ⁡ a = 1 log ⁡ b a \log_ab=\frac{\ln b}{\ln a}=\frac{1}{\log_ba} logab=lnalnb=logba1
链式 log ⁡ γ β log ⁡ β α = ln ⁡ β ln ⁡ γ ln ⁡ α ln ⁡ β = ln ⁡ α ln ⁡ γ = log ⁡ γ α \log_\gamma \beta\log_\beta\alpha=\frac{\ln \beta}{\ln \gamma}\frac{\ln \alpha}{\ln \beta}=\frac{\ln \alpha}{\ln \gamma}=\log_\gamma\alpha logγβlogβα=lnγlnβlnβlnα=lnγlnα=logγα
还原 α log ⁡ α x = x = log ⁡ α α x \alpha^{\log_\alpha x}=x=\log_\alpha \alpha^x αlogαx=x=logααx

注:公式总结自维基百科:https://zh.wikipedia.org/wiki/%E5%AF%B9%E6%95%B0。

基底是 e e e还是2的问题

在一些计算机相关的领域,书写 log ⁡ \log log函数时经常会省略基底(base),例如时间复杂度 O ( log ⁡ N ) O(\log N) O(logN),或者在机器学习领域用来做多分类的交叉熵损失函数: L c e ( x , y ) = − ∑ c = 1 M y o , c log ⁡ ( p o , c ) L_{ce}(x,y)=-\sum^M_{c=1}y_{o,c}\log(p_{o,c}) Lce(x,y)=c=1Myo,clog(po,c),这个时候我们会想知道这些 log ⁡ \log log函数的基底到底是数学常数 e e e还是2?

一般情况下,算法复杂度和信息论领域(例如交叉熵)的 log ⁡ \log log计算都是以2为底,但也有少部分以 e e e为底的情况。其实我们对 log ⁡ \log log的基底无需过分担心,因为以 e e e为底得出的结果与以2为底得出的结果比值是个常数,使用换底公式即可求得:
log ⁡ e N log ⁡ 2 N = log ⁡ k N log ⁡ k e / log ⁡ k N log ⁡ k 2 = log ⁡ k 2 log ⁡ k e = log ⁡ e 2. \frac{\log_eN}{\log_2N}=\frac{\log_kN}{\log_ke}/\frac{\log_kN}{\log_k2}=\frac{\log_k2}{\log_ke}=\log_e2. log2NlogeN=logkelogkN/logk2logkN=logkelogk2=loge2.
因此,我们不应该过分关注 log ⁡ \log log函数的基底是 e e e还是2的问题,它们计算结果的比值总是一个常数,采用任何一个基底都不会对要解决的问题本身产生影响。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

对数(log)的换算公式 的相关文章

  • Android调试获取Log

    1 Android Log 最近遇到一些抓log 的事情 xff0c 很多来自网上达人的分享 xff0c 加在一起总结一下 xff1a log文件分为实时打印的 xff0c 还有状态信息的两种 实时打印的主要有 xff1a logcat m
  • python解析log文件_python解析基于xml格式的日志文件

    大家中午好 xff0c 由于过年一直还没回到状态 xff0c 好久没分享一波小知识了 xff0c 今天 xff0c 继续给大家分享一波Python解析日志的小脚本 首先 xff0c 同样的先看看日志是个啥样 都是xml格式的 xff0c 是
  • 手机重启问题 Log 抓取方法

    极力推荐文章 xff1a 欢迎收藏 Android 干货分享 本篇文章主要介绍展讯平台手机开发中的部分重启问题知识点 xff0c 通过阅读本篇文章 xff0c 您将收获以下内容 一 User 版本 默认开启 sysdump 方法 二 插入S
  • android log详解

    之前两篇文章之后 xff0c 打算再分享一点儿经验 xff1a 之前文章见这里 xff1a 1 xff0c 全看懂了 加两年经验 语音朗读 语音识别 语音控制软件源码 2 xff0c 学生作品 配置NDK集成开发环境全过程第一版 这次打算通
  • Android抓取log文件的方法

    很简单 xff0c 使用命令行来就可以 xff0c 步骤如下 xff1a 1 adb devices 检查调试设备是否连接好 xff0c 没有调试设备抓不了 2 adb logcat c 3 cd Desktop 进入你要存放日志文件的目录
  • 找不到系统安全日志/var/log/secure文件的问题

    今天打算配置一个服务器防止暴力破解的脚本 xff0c 原理不复杂 xff0c 搜索登录错误超过一定次数的ip地址 xff0c 加入防火墙 xff0c 但是在找登录日志的时候出现了问题 一般服务器的ssh登录等操作日志都是 var log s
  • 解决华为手机不显示Log日志

    1 xff09 进入工程模式 有两种方式可以进入工程模式 xff1a a 在拨号界面输入 2846579 b 若是小米4 0系统 MIUI xff0c 进入 设置 gt 全部设置 gt 原厂设置 gt 工程模式 2 打开Log 1 依次进入
  • Undo Log学习

    一 Undo Log的作用 数据库故障恢复机制的前世今生中提到过 xff0c Undo Log用来记录每次修改之前的历史值 xff0c 配合Redo Log用于故障恢复 这也就是InnoDB中Undo Log的第一个作用 xff1a 1 事
  • C语言自我实现模块化打印log

    在一个嵌入式稍微大些的工程中实现模块化控制打印输出信息是很有必要的 xff0c 下面是模仿别人的实现的模块化打印 xff0c 需要时可以根据下面的实现代码去修改满足自己所需要的 xff01 xff01 xff01 span class to
  • log以2为底的对数

  • linux /var/log/httpd 清理错误日志方法

    报错 xff1a 启动httpd报错 Job for httpd service failed 没有空间 linux中var磁盘满了的问题 BugSayNo的博客 CSDN博客 var目录满了有什么影响
  • Linux 通过 log 日志检查服务器是否被暴力破解

    远程服务器一般需要启用 ssh 远程登录功能 对于 ssh 协议的常见攻击是进行暴力破解 通过查看 log 日志检测服务器是否被暴力破解 日志位置 不同的linux发行版 xff0c 关于 ssh 登录的日志信息存储的地方不同 xff1a
  • 一个小巧的C++Log输出到文件类

    一个小巧的C 43 43 Log输出到文件类 xff08 转 xff09 作者 xff1a wangyin159 http www cnblogs com mazhenyu p 4139352 html 一个小巧的C 43 43 Log输出
  • Nginx根据Status保存日志,及ngx_http_log_module 模块介绍

    前言 Nginx日志对于统计 系统服务排错很有用 Nginx日志主要分为两种 xff1a access log 访问日志 和error log 错误日志 通过访问日志我们可以得到用户的IP地址 浏览器的信息 xff0c 请求的处理时间等信息
  • 【mmdetection 】analyze_logs.py等工具测试

    绘制一些运行的分类损失 python tools analyze logs py plot curve work dirs faster rcnn r50 fpn 1x 20200306 175509 log json keys loss
  • 2018-02-07 如何记录日志

    一 简介 二 记录日志的目的 why 开发调试 记录用户行为 程序运行状况 系统 机器状况 三 日志的要素 what 时间 位置 级别 内容 唯一标识 事件上下文 格式化 其他 四 记录日志的一些原则和技巧 使用框架或模块 不能出错 避免敏
  • 阿里云 日志服务接入

    目前项目中都有用到日志记录 一般会存到本地 但是时间长了 去删除也是很麻烦的 阿里云日志服务 是个不错的选择 可分为两种 自动采集和自动上传到云 1 写文件到本地 然后配置 让阿里云自动采集 LogHub 支持客户端 网页 协议 SDK A
  • mmdetection W&B 用wandb权重和偏差以进行记录

    如题 共需要修改四个文件 1 mmcv runner hooks logger init py from pavi import PaviLoggerHook from tensorboard import TensorboardLogge
  • 如何使用 Rsyslog 和 MySQL 设置 LogAnalyzer

    本文是文章的第二部分使用 MySQL 和 LogAnalyzer 设置 Rsyslog在 CentOS RHEL 系统上 在里面第一部分我们已经将Rsyslog与MySQL数据库服务器集成 所有日志现在都保存在数据库中 下面是我们在第 1
  • python pyplot logscale 画图对数

    原文来自公众号 工程师看海 事情的起因是我要在公众号 工程师看海 更新一篇文章 介绍电感 磁珠的区别 需要画阻抗 频率曲线 横坐标频率要按照log对数尺度缩放 就写了python代码 废话不多说 先看结果 公众号后台回复 python lo

随机推荐

  • Cause: java.sql.SQLException: Expression #1 of ORDER BY clause is not in SELECT list

    文章目录 原因分析 xff1a 解决方法 xff1a 原因分析 xff1a mysql 8里sql mode 中 select distinct 不允许和 order by 连用 可以查看 sql model show variables
  • 14.2 shell函数参数

    2 shell函数参数 2 1 位置参数2 2 选项参数2 2 1 getopts getopt的区别2 2 2 getopts的使用2 2 3 getopt的使用 Shell 函数参数的传递和其它编程语言不同 xff0c 没有所谓的形参和
  • protoc和protoc-gen-go-grpc安装及编译

    一 install protocol buffer compiler PB REL 61 34 https github com protocolbuffers protobuf releases 34 curl LO PB REL dow
  • powershell 脚本解压zip文件到指定目录

    span class token keyword Function span Unzip span class token operator span File span class token punctuation span span
  • 不用第三方软件 用DISM命令备份与还原win8系统

    分享一个来自远景论坛的的教程如何通过dism命令给自己的win8系统备份和如何通过dism命令还原系统 用 DISM 命令进行系统备份与还原不需要任何第三方软件 xff0c 是利用 Windows 7 Windows 8 系统自带的 DIS
  • ubuntu20.04+anaconda3+tensorflow-gpu2.1安装

    磁盘分区 WIN系统中 xff0c 右键我的电脑 管理 磁盘管理 xff0c 首先留给Ubuntu一定的空间 xff0c 这里为600G左右 Ubuntu系统盘制作 下载Ubuntu对应版本 xff0c 制作启动盘 Ubuntu安装 U盘启
  • nyist 27 水池数目(dfs搜索)

    xfeff xfeff 水池数目 时间限制 xff1a 3000 ms 内存限制 xff1a 65535 KB 难度 xff1a 4 描述 南阳理工学院校园里有一些小河和一些湖泊 xff0c 现在 xff0c 我们把它们通一看成水池 xff
  • XTUOJ 1176 I Love Military Chess(模拟)

    xfeff xfeff I Love Military Chess Accepted 45 Submit 141Time Limit 1000 MS Memory Limit 65536 KB 题目描述 陆军棋 xff0c 又称陆战棋 xf
  • 数据结构课程设计之一元多项式的计算

    数据结构不是听会的 xff0c 也不是看会的 xff0c 是练会的 xff0c 对于写这么长的代码还是心有余也力不足啊 xff0c 对于指针的一些操作 xff0c 也还是不熟练 xff0c 总出现一些异常错误 xff0c 对于数据结构掌握还
  • 数据结构课程设计之通讯录管理系统

    数据结构的第二个课程设计 xff0c 在c语言课程设计的基础上加以改进 xff0c xff08 加强版 xff09 xff0c 保存一下代码 xff0c 对文件的处理 xff0c 还是有一点一问题 xff0c 还有待改进 include l
  • 在网页中添加音乐

    最近在折腾一个网页 xff0c 对于一个有强迫症的人来说 xff0c 就想在网页中插入音乐 xff0c xff08 当做背景音乐 xff09 xff0c 然后自己百度了好多资料 xff1b 就在这里总结一下 xff1a 第一步 xff1a
  • nyist oj 214 单调递增子序列(二) (动态规划经典)

    单调递增子序列 二 时间限制 xff1a 1000 ms 内存限制 xff1a 65535 KB 难度 xff1a 4 描述 给定一整型数列 a1 a2 an xff08 0 lt n lt 61 100000 xff09 xff0c 找出
  • 思科CCNA第一学期期末考试答案

    1 第 3 层头部包含的哪一项信息可帮助数据传输 xff1f 端口号 设备物理地址 目的主机逻辑地址 虚拟连接标识符 2 IP 依靠 OSI 哪一层的协议来确定数据包是否已丢失并请求重传 xff1f 应用层 表示层 会话层 传输层 3 请参
  • 使用pprof分析在线服务cpu性能

    一 安装pprof go install github com google pprof 64 latest 执行后如果报下面错误 build github com google pprof cannot load embed malfor
  • hexo博客出现command not found解决方案

    由于前一段时间忙于考试 xff0c 也有好久没有去更新博客了 xff0c 今天去添加友链的时候 xff0c 突然发现用不了了 xff0c 出现了conmand not found的提示 xff1a 按照字面上的翻译就是 找不到所使用的命令
  • 思科CCNA第二学期期末考试答案

    1 关于数据包通过路由器传输时的封装和解封的叙述 xff0c 下列哪三项是正确的 xff1f xff08 选择三项 xff09 路由器修改 TTL 字段 xff0c 将其值减 1 路由器将源 IP 更改为送出接口的 IP 路由器保持相同的源
  • Hexo版本升级和Next主题升级之坑

    缘起 差不多用了一年hexo的3 2 0版本 xff0c next主题版本也用的5 0的 xff0c 本来用的好好的 xff0c 但是最近访问其他人的博客 xff0c 发现访问速度比我的提升了不止一点点 xff0c 遂决定折腾一番 过程 H
  • Python中JSON的基本使用

    JSON JavaScript Object Notation 是一种轻量级的数据交换格式 Python3 中可以使用 json 模块来对 JSON 数据进行编解码 xff0c 它主要提供了四个方法 xff1a dumps dump loa
  • 卷积和快速傅里叶变换(FFT)的实现

    卷积运算 卷积可以说是图像处理中最基本的操作 线性滤波通过不同的卷积核 xff0c 可以产生很多不同的效果 假如有一个要处理的二维图像 xff0c 通过二维的滤波矩阵 xff08 卷积核 xff09 xff0c 对于图像的每一个像素点 xf
  • 对数(log)的换算公式

    对数公式的换算 xff0c 对于算法复杂度的推导非常重要 但是我总忘 xff0c 这次特地总结一下常用的对数公式 xff0c 以备后用 名称公式和差 log