- 博客(67)
- 资源 (13)
- 收藏
- 关注
原创 干预效果持续监控 + IV/RDD 因果验证 & Bandit 动态调优
本文提出了一套结合因果推断与动态优化的游戏玩家流失干预方案评估与优化框架。通过断点回归(RDD)和工具变量(IV)方法解决非随机干预场景下的因果效应估计问题,利用阈值附近的自然实验特性消除选择偏差。针对干预效果衰减问题,设计了持续监控机制,采用滚动时间窗口进行RDD分析并设置告警规则。进一步引入Thompson Sampling多臂老虎机算法实现多干预方案的动态流量分配,通过Beta分布建模各方案效果的不确定性,实现探索-利用的自动平衡。最终构建了完整的系统架构,将流失预测、动态干预、因果验证和效果监控形成
2026-08-15 17:00:34
231
原创 从 SHAP 到因果推断
文章摘要: 本文系统介绍了从SHAP解释到因果推断的完整学习路径。首先指出SHAP只能解释模型预测而无法回答干预效果,强调关联不等于因果。接着介绍因果DAG的三种基本结构(链、叉、碰撞)及其控制原则,这是因果推断的核心知识。然后详细讲解DoWhy的四步工作流和EconML中的关键算法(DML、因果森林、双重稳健学习等),这些方法能够估计平均或异质的因果效应。最后强调通过敏感性分析评估结论稳健性的重要性。全文为数据科学家提供了从相关性分析到因果推断的实用框架和方法论。
2026-08-15 16:59:07
184
原创 从 4192 个参数看懂 GPT:拆解 Andrej Karpathy 的 microGPT
这篇文章介绍了OpenAI创始成员Andrej Karpathy开发的microGPT项目,这是一个仅4192参数、单层Transformer的极简GPT实现,用200行纯Python代码完整展现了GPT的核心算法。文章从六个方面解析了microGPT:1)字符级分词器处理文本数据;2)手写自动求导引擎实现反向传播;3)参数结构包括词嵌入和位置嵌入;4)注意力机制的工作原理;5)训练过程使用交叉熵损失和Adam优化;6)推理时通过采样生成新名字。虽然规模微小,但microGPT与ChatGPT的核心算法完全
2026-08-15 16:57:35
438
原创 Fine-tune + Recency:如何让模型更关注近期行为
本文提出了一种名为Recency的实时流失预测方法,通过带时间偏置的加权汇聚机制改进传统单点分类方法。该方法对历史序列进行前缀归一化加权,每个预测周期学习独立的时间敏感度参数γ_k,实现可控遗忘。数学上结合内容分数和时间偏置,采用前缀softmax确保严格因果性。与标准注意力机制相比,Recency更轻量且适合在线场景,能快速响应近期行为变化而不丢失历史信息。实验表明该方法能平衡预测敏感性和因果性,使不同周期形成差异化时间敏感度。
2026-04-11 17:09:31
533
原创 真正拉开差距的,是给 AI 搭一套工程系统-Harness Engineering
《AI代码工程的系统思维:超越模型竞赛的工程化实践》摘要: OpenAI提出的Harness Engineering揭示了AI编程的新范式:单纯追求更强模型已进入瓶颈期,真正拉开团队效率差距的是工程系统设计。文章指出三大核心观点:1)代码仓库应作为AI唯一可信信息源,需内置架构规范与测试流程;2)明确约束反而提升AI效率,通过模块边界和CI规则减少试错成本;3)必须建立"生成-测试-修复"的闭环系统。实践路径包括:知识资产结构化、制定AI编码约束规则、构建自动化验证流程。这种系统化思维将
2026-04-11 16:38:56
240
原创 石子入水波纹效果:顶点扰动着色器实现
摘要: 本文探讨了基于顶点扰动技术的水面波纹真实模拟方法。通过多频率波动函数叠加(如正弦波)动态调整顶点高度,结合法线重建、纹理UV扰动和光学效果(菲涅尔反射/折射),实现高效且逼真的水面渲染。关键步骤包括:顶点着色器计算波形位移、动态法线修正、法线贴图增强细节、UV扰动模拟水流,以及菲涅尔效应优化反射表现。文末提供了Shader实现示例,通过同心圆水纹算法生成衰减波纹,并计算梯度法线提升立体感。该方法适用于游戏、影视等实时图形应用。
2025-07-17 22:32:00
1055
原创 石子入水波纹效果:UV扰动着色器实现
摘要:UV坐标扰动技术通过动态偏移水面纹理的UV坐标,模拟水波流动效果。核心原理是利用波动函数(如正弦波)结合时间参数对UV进行扰动,生成周期性波纹,并通过法线贴图增强光照交互。多层扰动叠加可提升复杂度,游戏引擎常用Panner和FlowMap优化效果。波纹扩散模型采用衰减的正弦函数(F(r,t) = A*sin(kr−ωt)*e^{-ar}),调节振幅、波数等参数控制波纹形态。该方法计算高效,无需顶点变形,适用于实时渲染。示例Shader展示了基于物理公式的圆形波纹实现,通过调节参数可灵活控制水面动态表现
2025-07-07 21:10:04
1011
原创 Qwen3-Embedding 本地部署
本文简单介绍了Qwen3-Embedding如何通过huggingface、ollama以及docker进行本地化部署。
2025-07-01 21:31:41
2364
原创 初探unity中的ECS
ECS是一种软件架构模式,就像MVC一样。ECS最早在游戏《守望先锋》中提及到的。ECS具体是指实体(entity)、 组件(component)和系统(system):实体:实体是一个ID,它是一个唯一的标识符,用于标识一个对象,它本身不包含任何数据,只是一个ID,它的作用是用于标识一个对象,它的数据是由组件来提供的。组件:组件是一个数据结构,它包含了一些数据,用于描述一个对象的属性,组件是没有任何行为的,它只是一个数据结构。系统:主要用户逻辑处理,进行状态迁移。系统中不保留数据,且是无状态的。
2024-02-03 17:20:19
2717
原创 lua之async机制
lua中的coroutine本身提供了强大的功能,但是它属于基础API,在实现复杂逻辑的过程中,需要将coroutine进行包装,或者将coroutine的句柄传来传去。针对上面的问题,借鉴C#中task机制,现用纯lua的代码实现了一套async机制。
2023-02-06 22:17:20
1881
原创 lua之coroutine
lua天然支持coroutine, coroutine属于协程而非多线程。通过coroutine.create来创建一个协程,然后调用coroutine.resume启动,当函数中遇到coroutine.yield时协程将会被挂起直到再次调用coroutine.resume。执行结果通过上面的例子我们可以发现当调用完coroutine.create返回的coroutine并不会直接启动,必须通过调用coroutine.resume来启动。
2023-02-06 22:09:24
394
原创 c#中的async和await 以及编译原理
通过上面的简单介绍我们可以看出,async/await往往会和task一起使用,并不是所有的方法都可以被await。那如何才能被await呢?T是编译时的动态类型T有一个无参的GetAwaiter方法,并返回类型为AA必须实现接口INotifyCompletionA要有一个bool的IsCompleted属性A要有一个GetResult方法.更多的文档可以参见未完待续…
2023-01-20 14:52:52
1062
原创 csharp 异步编程
当有多个任务需要同时执行,或者有比较费事的操作时但不想阻塞主线程的时候,我们往往会使用到多线程编程,但是多线程编程本身需要很强的多线程编程思维,需要解决诸多问题:如线程锁、线程间的数据同步等问题。csharp提供了异步编程的模式,.net提供了三种模式:基于任务的异步编程(TAP)、基于事件的异步编程(EAP)、异步编程模式(APM)三种模式。
2023-01-18 21:00:35
1047
原创 adb unlock
当通过adb链接手机自动化一些任务的时候,我们需要自动解锁手机(也可以不只是密码????)下面的代码是通过adb解锁手机的代码,仅供参考....#!/bin/shPASSWORD=1234STATE_OFF='OFF'STATE_ON_LOCK='ON_LOCKED'STATE_ON_UNLOCK='ON_UNLOCKED'if [ $# > 1 ]; then ...
2019-10-10 12:07:34
1088
原创 Mac 安装appium
今天在mac环境下进行了appium的安装和配置。1、正确安装nodejs,brew install node2、使用npm安装appium,npm install -g appium3、安装appium-doctor,npm install -g appium-doctor4运行doctor检测,结果为:info AppiumDoctor ✔ The Node.js bi...
2019-09-23 16:19:12
506
原创 Mac 中安装 appium遇到错误selendroid setup files did not yet exist waiting
今天在mac中安装appium的时候,第一次没有按照文档安装导致报错:selendroid setup files did not yet exist waiting折腾了半天之后发现是我安装node的时候用的root用户安装的,而安装appium的时候用sudo,这样在执行node ./bin/install.js的时候会出现权限的问题。其实在安装文档中有所提到(Make sure y...
2019-09-23 15:46:56
740
原创 unity3d package 管理
unity2018之后使用了全新的package 管理工具。下图是全新package和以前的package的不同点(摘自https://blogs.unity3d.com/2018/05/09/unity-packages-life-cycle/)。 Asset Store Package New Package File .unitypackage Gi...
2019-09-19 13:55:07
4359
原创 YAML 格式初探
简单记录一下YAML的格式YAML中是一个缩紧来代表一个block的,使用 破折号和空格("- ")来代表数组,使用冒号和空格(": ")来代表map。举例如下数组:- Mark McGwire- Sammy Sosa- Ken Griffeymap:hr: 65 # Home runsavg: 0.278 # Batting averagerbi: 1...
2019-09-09 21:12:39
259
原创 unity3d job
unity C#中的Job system 允许我们编写与unity交互的多线程代码。在写多线程代码时会涉及到很多点:线程池、线程间切换、数据共享以及锁的问题,这些问题使我们很难写出高效安全的多线程代码。然后job system是通过创建job的方式然后又job system统一调用和管理,从而避免了让用户直接去编写多线程代码。 我们编写的job将会放到job qu...
2019-08-03 17:00:37
656
原创 unqlite源码分析之unqlite_kv_fetch
现在只记录了使用文件系统的解析,后续添加使用mem的解析/* * [CAPIREF: unqlite_kv_fetch()] * Please refer to the official documentation for function purpose and expected parameters. */int unqlite_kv_fetch(unqlite *pDb,con...
2018-11-07 06:19:58
810
原创 unqlite源码分析之unqlite_kv_store
现在只记录了使用文件系统的解析,后续添加使用mem的解析int unqlite_kv_store(unqlite *pDb,const void *pKey,int nKeyLen,const void *pData,unqlite_int64 nDataLen){... if( nKeyLen < 0 ){ /* Assume a nu...
2018-11-07 06:07:30
933
原创 unqlite进阶Cursors
unqlite中的cursors可以让我们遍历数据库中的所有记录,从而让我们有在频繁读取的时候有机会自己做数据的缓存。通过cursors可以正向遍历也可以逆向遍历记录,正向遍历的话使用unqlite_kv_cursor_first_entry和unqlite_kv_cursor_next_entry组合,逆向遍历unqlite_kv_cursor_last_entry和unqlite_kv_cur...
2018-11-07 06:05:48
895
原创 unqliteAPI之read
UNQLITE_APIEXPORT int unqlite_kv_fetch(unqlite *pDb,const void *pKey,int nKeyLen,void *pBuf,unqlite_int64 /* in|out */*pBufLen);UNQLITE_APIEXPORT int unqlite_kv_fetch_callback(unqlite *pDb,const voi...
2018-11-07 06:03:51
493
原创 unqliteAPI之write
UNQLITE_APIEXPORT int unqlite_kv_store(unqlite *pDb,const void *pKey,int nKeyLen,const void *pData,unqlite_int64 nDataLen);UNQLITE_APIEXPORT int unqlite_kv_append(unqlite *pDb,const void *pKey,int n...
2018-11-07 06:02:41
469
原创 c/c++中使用unqlite
本章节记录了如何在c/c++中使用unqlite,我们通过一个官方的例子来开始。 首先需要我们自己下载unqlite文件,通过这个链接 download page 可以下载。我们主要是用里面的两个文件unqlite.h和unqlite.c。 将下面的源码和上面的两个文件放在一起,进行编译并且运行,如果结果为:testHello World说明成功将unqli...
2018-10-23 05:08:09
2313
原创 unqlite简介
偶然间发现了unqlite,在这里记录一下它的使用方法。 unqlite的官网地址https://unqlite.org/index.html unqlite是一个内嵌式的数据库,它实现了一个独立的、无服务器、零配置、事务性的nosql数据库引擎。它是一个文档存储数据库,类似于MongoDB, Redis, CouchDB等,同时也是一个标准的key/value存储类似...
2018-10-23 05:05:09
5846
转载 图形学领域的关键算法及源码链接
Last updated December 5, 2012.Try searching this page for keywords like 'segmentation' or 'PLY'.If you would like to contribute links, please e-mail them to rms@dgp.toronto.edu.Papers & Arch
2017-09-05 15:20:09
1933
原创 二微矩阵碰撞检测
//左上(x,y) 右下(z,w).返回val2和val1是否发生碰撞,如果碰撞返回val2相对val1的位置 1上 2下 4右 8左. int test(Vector4 val1, Vector4 val2) { bool ret = true; if(val2.x > val1.x && val2.x > val1.z)
2017-02-24 19:16:30
964
原创 一个uv对应多个贴图
问题:2d横版游戏中的背景宽带为2屏,并且自动滚屏。解决方案:1.将背景分为两个plane来渲染,通过代码来控制plane的移动。此种方式需要额外的两个plane来做缓存。2.通过shader的uv来控制Shader "Custom/NewShader" { Properties { _MainTex ("Base (RGB)", 2D) =
2017-02-23 14:39:17
2455
原创 unity3d dll 热更新
char* ReadStringFromFile(constchar* pathName,int* size){FILE* file = fopen(pathName,"rb");int length =0;int readLength =0;char* outData;if (file ==NULL) re
2016-12-23 18:30:32
735
翻译 unity3d mask
Shader "Custom/Unlit Flat Circle v2" { Properties { _MainTex ("Main Texture", 2D) = "white" {} _Color ("Color", Color) = (1,1,1,1) _Distort("Distort", vector) = (0.5, 0
2016-08-10 11:57:18
531
原创 html canvas 自适应
--> -->html body{ height:100%; width:100%; margin:0px; border: 0; overflow: hidden; /*display: block;*/};/*#myCanvas{ height:100%; width:100%; margin:0;};*
2016-04-07 11:04:44
2191
转载 FrameLayout, Your Best UI Friend
FrameLayout, Your Best UI Friend10 Oct 2013You have probably already used FrameLayout (doc) for what it’s named, adding a decoration around other content element. It can actually be much m
2015-01-15 09:14:09
685
石子入水波纹效果:UV扰动着色器实现
2025-07-08
内存管理模拟软件-随机访问内存
2009-12-25
哈希表--关键字字符串
2009-09-11
无重复的随即抽签器--c#编写(有点错误,请下载上面的资源http://download.youkuaiyun.com/source/1202563)
2009-04-12
局域网聊天 -- C#UDP广播
2009-06-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
1