在科学松鼠会的网站上有一篇漫画,来自imgur.com,讲述了 科学理论是如何建立的
我用到d3.js把这个静态的图改成了动态效果,代码可见github
See the Pen Occam's Razor cn by gangtao (@gangtao) on CodePen.
注:这个其实主要就是奥卡姆剃刀原理,“若无必要,勿增实体”。
附原图 :

墨衍会员
·
AI 创作全网分发
墨衍智能分发
本文由作者通过墨衍一键同步至各平台
1分发平台
600+累计阅读
674平均单平台
已同步平台
优快云
微信公众号
微博
知乎
掘金
百家号
博客园
抖音
小红书
你的文章也可以这样分发
墨衍会员 ¥399起/年,写一次发全网
我也要 →
码龄9年
在科学松鼠会的网站上有一篇漫画,来自imgur.com,讲述了 科学理论是如何建立的
我用到d3.js把这个静态的图改成了动态效果,代码可见github
See the Pen Occam's Razor cn by gangtao (@gangtao) on CodePen.
注:这个其实主要就是奥卡姆剃刀原理,“若无必要,勿增实体”。
附原图 :

数据故事化:让大数据可视化更具说服力
数据故事化(Data Storytelling)正是破解这一困境的关键。它不是简单地在图表旁添加文字说明,而是将数据洞察、叙事结构与可视化设计融为一体,构建一个有逻辑、有情感、有行动指引的数据叙事。如果说数据可视化是"展示数据",那么数据故事化则是"通过数据讲述有说服力的故事"。数据(Data):坚实的事实基础,经过严谨分析得出的洞察叙事(Narrative):有逻辑的故事框架,引导受众从问题到结论可视化(Visualization):精心设计的视觉呈现,强化数据与叙事的传递冲突引入。
可视化叙事
Hello,豆皮范儿粉丝大家好,今天「香港科技大学 计算机科学与工程学系 李文超博士」给大家带来了《可视化叙事》分享。可视化 & 叙事在分享之前我们先聊聊可视化叙事,可视化技术是将...
从数据到故事:用可视化工具讲好商业“话本“
在"数据即石油"的时代,企业的核心竞争力不再是"拥有多少数据",而是"能否用数据讲好故事"。从Excel的基础图表到Python的定制分析,从Tableau的交互叙事到AI的智能创作,数据可视化工具正在成为商业世界的"新语言"。
长篇故事可视化方法Story-Adapter:能够生成更高质量、更具细腻交互的故事图像,确保每一帧都能准确地传达故事情节。
故事可视化是一项基于叙述生成连贯图像的任务,随着文本到图像模型(尤其是扩散模型)的出现,该任务取得了重大进展。然而,保持语义一致性、生成高质量的细粒度交互以及确保计算可行性仍然具有挑战性,尤其是在长篇故事可视化(即最多 100 帧)中。本文工作提出了一个无需训练且计算效率高的框架,称为 Story-Adapter,以增强长篇故事的生成能力。具体来说提出了一个迭代范式来细化每个生成的图像,利用文本提示和上一次迭代生成的所有图像。
数据可视化:从信息展示到故事讲述的转变
本文从Cole Nussbaumer Knaflic的新书《Storytelling with Data》中汲取灵感,探讨了如何通过有效的故事讲述技巧来提高数据可视化的能力。文章分析了糟糕图表的普遍现象,阐述了人们在数据故事讲述上的天然不足,以及技术进步带来的工具普及化对数据理解和表达的影响。同时,强调了个人分析和沟通能力在将数据转化为有说服力的故事中的重要性,并提出了通过学习和实践提升这些技能的建议。
数据可视化:商业专业人士的故事讲述指南
本书《用数据讲故事:商业专业人士的数据可视化指南》由Cole Nussbaumer Knaflic撰写,旨在指导商业专业人士如何通过数据可视化进行有效的故事讲述。作者通过一系列实际案例和简明的图表,深入浅出地介绍了数据可视化的重要性、选择有效视觉效果的技巧、如何避免杂乱无章、如何集中观众注意力、以及如何像设计师一样思考。书中还包含了一些模型视觉效果的解剖分析和案例研究,帮助读者更好地理解和应用所学知识。
推荐故事可视化利器:StoryGAN
推荐故事可视化利器:StoryGAN 项目介绍 在数字艺术与人工智能的交汇点上,诞生了一款令人惊叹的开源项目——StoryGAN。这款基于Python 3.7+和Pytorch 1.6的工具,能够帮助开发者将文字故事转化为连贯的视觉序列。它的目标是利用深度学习的力量,让计算机理解文本叙述,并将其转换为栩栩如生的动态图像,开启AI创作新篇章。 项目技术分析 StoryGAN的核心是一个序列条件生成对...
优化的可视化故事情节设计
优化的可视化故事情节设计,通过对故事情节的可视化了解对整个故事布局
故事情节可视化
故事情节可视化摘要1 介绍 参考论文: PlotThread: Creating Expressive Storyline Visualizations using Reinforcement Learning 摘要 故事情节可视化对于展示情节的演变,揭示人物之间的场景互动是一种有效的手段。然而故事情节可视化的设计是一项艰难的人物,因为用户需要在美学目标和叙事限制之间取得平衡。尽管基于优化的方法在产生美学和可读性
Revit+Deepseek AI插件保姆级安装教程:从零配置到一键生成模型
本文提供Revit集成Deepseek AI插件的完整安装与配置教程。从环境准备、插件获取安装,到Deepseek API密钥配置及界面集成,手把手指导用户实现从自然语言指令到三维模型的智能生成,旨在为建筑设计师带来革命性的高效工作流。
R语言实战:非正态数据下的Scheirer–Ray–Hare检验全流程解析
本文详细解析了在R语言中执行Scheirer–Ray–Hare检验的全流程。当数据不满足正态分布假设时,该非参数检验是传统双因素方差分析的有效替代方案。文章从原理、R环境配置、数据准备、代码实现、结果解读到事后比较与可视化,提供了完整的实战指南,帮助研究者稳健地分析多因素实验设计中的主效应和交互效应。
数据可视化:讲故事技巧
欢迎学习“数据可视化:讲故事的技巧”课程。 我是比尔·沙德尔,是波士顿一家 信息设计和数据可视化咨询公司的创始人。 讲故事在营销领域是一个热门词汇。 但这个课程要说的是它其实对人类生存 至关重要。因此与人沟通时, 你应该尽量使用讲故事的结构和方法, 当然,用数据讲故事比讲述虚构的故事 并不一样,我们将讨论如何运用 讲故事的关键组成部分和结构, 在用数据沟通时,充分发挥讲故事的魔力。 我将简要介绍如何在数据中找到故事, 然后详细介绍一些用数据讲故事的好例子。 并探讨优秀的数据故事,好在哪里。 最后我还要介绍,
飞书云文档API实战:从权限申请到自动化操作
本文详细介绍了飞书云文档API的实战应用,从权限申请到自动化操作。内容涵盖如何创建应用、获取关键API权限、理解并使用Tenant Access Token,并通过Python代码示例演示了读取和写入飞书表格数据的具体方法,旨在帮助开发者和业务人员实现文档数据处理的自动化,提升工作效率。
故事可视化AI
i68,爱六八,链接你我他原文链接:https://i68.ltd/notes/posts/20250102-llm-story/
狂神说docker(最全笔记)
一.Docker入门 1. Docker 为什么会出现 2. Docker的历史 3.Docker最新超详细版教程通俗易懂 Docker是基于Go语言开发的!开源项目 官网 官方文档Docker文档是超详细的 仓库地址 4. 虚拟化技术和容器化技术对比 4.1. 虚拟化技术的缺点 资源占用十分多 冗余步骤多 启动很慢 2.2. 容器化技术 比较Docker和虚拟化技术的不同 传统虚拟机, 虚拟出一条硬件,运行一个完整的操作系统,然后在这个系统上安装和运行软.
光学测量仿真软件:OpticsBuilder_(9).热应力分析与补偿
在OpticsBuilder中,定义材料的热膨胀系数可以通过API进行。以下是一个Python代码示例,展示如何在OpticsBuilder中定义材料的热膨胀系数。
AI公益故事智能可视化生成系统
在InsCode平台部署时,发现其内置的AI模型能很好理解公益场景的特殊需求。最惊喜的是自动生成的对比插图——破旧教室与崭新课桌的并置,这个视觉隐喻比单纯文字有力得多。这个系统的核心目标就是通过AI技术,保留故事原貌的同时提升呈现效率。现在每次采访完公益项目,我都会先用这个系统快速生成初版素材,节省下来的时间可以更专注在故事核实的环节。作为经常参与公益传播的自媒体人,我一直在寻找能快速将真实案例转化为传播素材的方法。上构建自己的工具链,整个过程就像搭积木一样直观,不需要专业的开发背景也能上手。
反爬虫:POST 请求参数中 Sign 的加密机制详解,并设计带 Sign 校验的网站
本文介绍了API请求中sign签名的生成原理及实现方法。sign是通过对请求参数加密生成的一串字符串,用于验证请求合法性,防止参数篡改、重放攻击和伪造请求。其生成步骤包括参数排序、拼接字符串、加盐和哈希加密。文章还演示了如何在FastAPI后端实现带sign验证的新闻网站,包括参数校验、时间戳验证和签名比对等安全措施,有效提升API安全性,增加爬虫逆向难度。
可视化设计:如何用数据讲述引人入胜的故事
通过数据叙事、视觉编码、情感共鸣、交互设计和工具应用,设计师可以利用可视化设计将数据转化为引人入胜的故事。在数据驱动的时代,掌握这些策略和方法不仅能够提升数据传达的效果,还能激发用户的情感共鸣和行动力。在快速迭代的设计环境中,这些技巧将帮助设计师更高效地完成数据叙事任务,为业务发展提供有力支持。本人是10年经验的前端开发和UI设计资深“双料”老司机,1500+项目交付经历,带您了解最新的观点、技术、干货,下方微信我可以和我进一步沟通。可视化设计:如何用数据讲述引人入胜的故事。
华为OD机试双机位C卷-敌情监控 (Py/Java/C/C++/Js/Go)
华为OD机试(机考)双机位C卷 【敌情监控】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD机试 - 敌情监控。
深度学习工具包 DeepLearningToolbox
深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[](https://bitdeli.com/free "Bitdeli Badge")
数据可视化的力量:让枯燥的数据讲述故事
在当今数字化时代,数据如潮水般涌来,充斥着我们生活与工作的各个角落。然而,原始数据往往是枯燥、抽象且难以理解的,犹如未经雕琢的璞玉,其潜在价值难以被直观察觉。数据可视化技术的出现,宛如一把神奇的刻刀,能够将这些看似平淡无奇的数据雕琢成引人入胜的故事,使其焕发出独特的魅力。
ET2012新版免狗免安装绿色软件
ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,
如何利用数据可视化讲好一个数据故事?
“数据的力量有多大?” 如何激发企业的数据,发现其独特的信息故事,并转化为引人注目的数据可视化叙述,从而大大提高业务成功率是我们需要思考的一个问题。 通过对业务数据的集中分析并以有逻辑的数据可视化方式进行显示,在遵循逻辑的情况下,数据可视化能够提供有关特定数据信息的宝贵见解,提高决策水平,你就有可能与竞争对手拉开业务差距,并成为该领域的佼佼者。 本篇文章,我们将探究数字时代下的讲好数据故事能给我们带来多大的力量,同时结合现代数据可视化平台生成的强大的数据叙事案例。 一、什么是数据叙事? 通过数据讲故事是将数
计算机控制技术及应用
《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。
数据可视化的数据故事讲述:如何吸引用户关注
1.背景介绍 数据可视化是现代数据分析和科学研究中的一个重要组件,它可以帮助用户更好地理解和解释复杂的数据关系和模式。然而,在数据可视化中,吸引用户关注的关键在于如何讲述数据故事。在这篇文章中,我们将探讨一种名为“数据故事讲述”的方法,以及如何使用这种方法来吸引用户关注。 数据故事讲述是一种将数据可视化与故事结构相结合的方法,它可以帮助用户更好地理解数据的关系和模式。这种方法的核心是将数据可视...
pydata-book数据故事讲述:用数据可视化讲述compelling故事
pydata-book是Wes McKinney编写的《Python for Data Analysis》一书的源代码仓库,书中涵盖了使用pandas、NumPy和其他相关库进行数据处理和分析的实践案例和技术指南,通过数据可视化技术帮助用户讲述引人入胜的数据故事。 ## 为什么数据可视化是讲述故事的强大工具 数据可视化不仅仅是将数字转化为图表,更是一种强大的叙事工具。通过直观的图形展示,复杂的
惊人的可视化技巧,让你的数据故事生动起来
例如,在展示城市人口增长趋势的动态图表中,随着时间的推移,人口数量的变化以动画形式呈现出来,观众可以直观地看到人口增长的速度和阶段性变化,这种动态展示方式比静态图表更能吸引观众的注意力,加深他们对数据变化的理解。例如,在分析全球不同国家和地区的经济数据时,观众可以通过下拉菜单选择感兴趣的国家,通过滑块调整时间范围,从而有针对性地查看特定国家在不同时间段内的经济指标变化,这种个性化的交互体验能够极大地提高观众对数据的关注度和理解程度。同时,注释的位置应合理,既要靠近所解释的数据元素,又不能遮挡其他重要信息。
3069
932

被折叠的 条评论
为什么被折叠?



