- 博客(270)
- 收藏
- 关注
原创 深度学习系列68:声音克隆项目OpenVoice
OpenVoice 是 myshell ai 开源的一款基于人工智能技术的语音克隆工具。其核心功能是通过提供发言者的短音频片段(参考语音),实现声音的高效克隆。这意味着您可以使用OpenVoice来克隆任何人的声音,而且不限于特定语言。无论您是想要模仿某位名人的声音,还是需要在不同语言之间进行语音转换,OpenVoice都能够满足您的需求。OpenVoice还可以实现音色克隆和控制。
2024-05-14 10:27:13 349
原创 运筹系列92:vrp算法包VROOM
详见:https://github.com/VROOM-Project/vroom/blob/master/docs/API.md需要定义如果没有指定经纬度和地图server的话,则需要定义matrices。
2024-05-13 15:01:15 751 1
原创 深度学习系列67:制作聊天机器人
tresponse = requests . post ( url , headers = headers , json = data , verify = False )if response . status _ code ==200:return response . json ()[" choices “][0][” message “][’ content ‘]else :return “我没有听清”async def read ( text ):tts = edge _ tts .
2024-04-24 16:58:43 1045 1
原创 深度学习系列64:数字人wav2lip详解
总体步骤差不多,但是相比于openHeygen要简化很多第一步,加载视频/图片和音频/tts。同样是用melspectrogram将wav文件拆分成mel_chunks。第二步,调用face_detect模型,给出人脸检测结果(可以改造成从文件中读取),包装成4个数组batch:img_batch(人脸),mel_batch(语音),frame_batch(原图),coords_batch(坐标)第三步,加载模型,进行计算。这个模型目前看下来就是简单的resnet,没有transfomer。
2024-04-23 13:32:01 531
原创 深度学习系列65:数字人openHeygen详解
从inference.py函数进入,主要流程包括:1) 使用cv2获取视频中所有帧的列表,如下:2)定义Croper。核心代码为69行:full_frames_RGB, crop, quad = croper.crop(full_frames_RGB)。其中crop是头肩位置,quad是人脸位置,得到的新的full_frames_RGB为人脸区域的截图。5)进行图像增强,使用的是GPEN-BFR-512模型,图片变高清了:6)接下来加载wav语音文件,并拆成块7)进行lipSync,如下图。
2024-04-21 20:46:54 640
原创 运筹系列90:生产线运输问题的julia求解
我们不妨假设仓库有3种物料需要搬运到生产线,搬运时间都是3min。三种物料假设都需要搬运3件,有2个叉车可以进行搬运,每个叉车每次智能搬运一件。
2024-04-10 08:16:34 211
原创 深度学习系列63:常用tts
使用sherpa的参考代码如下,模型下载地址见https://hf-mirror.com/csukuangfj/vits-zh-aishell3。
2024-03-22 09:56:35 358
原创 深度学习系列62:Agent入门
agent的核心是其代理协同工作的能力。每个代理都有其特定的能力和角色,你需要定义代理之间的互动行为,即当一个代理从另一个代理收到消息时该如何回复。agent目前大多使用openai标准接口调用LLM服务,说明如下。标准接口示例如下,其中role包括:system(设定了 AI 的行为和角色,和背景),user(我们输入的问题或请求),assistant(自动生成)
2024-03-13 11:02:46 513
原创 深度学习系列59:文字识别ocr
使用google加的tesseract,效果不错。首先安装tesseract,在mac直接brew install即可。
2024-02-21 20:23:40 661
原创 运筹系列89:anylogic仿真软件入门
这里概述一下help文档中Supply chain GIS model例子的要点:触发事件的agent和执行任务的agent。在这个案例中,触发事件的agent是retailer,不断有订单生成;而执行任务的agent是vehicle,不断将订单运从distributor运送到retailer。模型的最终效果如下图:首先需要设计agent。在供应链的例子中,设计了4种agent。其中dis和order最简单,order就是个classret需要包含一个,用于生成order,寻找veh。
2024-02-20 09:28:13 613
原创 深度学习系列53:大模型微调概述
固定大部分参数,仅训练少量的参数来驱动大模型。下图是delta-tuning和fine-tuning的区别。左边的fine-tuning中,每个任务都全量微调,得到一个新的模型,如果有100个任务,那么最终会给出100个数十G的大模型;但是在delta-tuning中,PLM参数大部分是固定的,每个任务只需要训练和记录有修改部分的参数(delta-object)即可。delta-tuning分为以下三大类:增加额外参数(A)、选取一部分参数更新(S)、引入重参数化(R)。
2024-02-17 18:32:17 1289
原创 深度学习系列57: 清华大模型MiniCPM上手
MiniCPM 是面壁智能与清华大学自然语言处理实验室共同开源的系列端侧大模型,主体语言模型 MiniCPM-2B 仅有 24亿(2.4B)的非词嵌入参数量。
2024-02-04 16:38:26 741
原创 python系列28:fastapi部署应用
FastAPI 是一个用于构建 API 的现代、快速(高性能)的 web 框架,类似flask,Django,webpy在部署时可能需要用到下面的库:Uvicorn 或者 Hypercorn负责ASGI 服务器。Starlette 负责 web 部分。Pydantic 负责数据部分。都用pip install安装即可。
2024-01-15 13:59:26 670
原创 Julia系列16:Julia与python/c互调
通过PyCall包,Julia可以直接调用Python包。数值、布尔、字符串、IO stream、函数、元组、数组或列表、以及包含这些类型的字典等,它们都会自动进行类型的转换(Python函数会被转换或传递为Julia的函数,反之亦然)。其它类型则是通过通用的PyObject提供的。
2024-01-15 12:41:14 530
原创 运筹系列88:JuMP中的约束规划(constraint programming)
在constraint programming中,objective是不起作用的,调用optimize!(model)后,会给出满足约束的可行解。使用JuMP的约束规划API,可以极大简化模型。
2024-01-10 15:34:13 1026
原创 运筹系列87:julia求解随机动态规划问题入门
看一个简单的数值优化的例子:我们将其建立为一个N阶段的问题:初始值为M。结果为非常接近理论最优值。
2023-12-18 11:17:35 1123
原创 大数据系列15:lightgbm笔记
建议用conda安装。首先安装miniconda,在官网下载对应的版本。然后将系统的python和pip定位到miniconda文件夹下。然后用conda安装lightgbm,在Mac m2芯片上测试可行。(用pip直接安装通不过编译)。
2023-11-24 08:36:19 667
原创 深度学习系列54:LABEL-STUDIO进行半自动化目标检测标注
打开浏览器访问 http://localhost:8080/ ,建立一个新项目。此时不要着急save,需要先点击后面的Labeling Setup连接第一步的目标检测服务。看到如下 Connected 就说明后端推理服务添加成功。在mmdetection文件夹中,执行。另开一个terminal,执行。
2023-11-20 09:39:36 634
原创 深度学习系列53:mmdetection上手
建议使用coco格式,参见https://cocodataset.org/#format-data。文件从头至尾按照顺序分为以下段落:下面是从instances_val2017.json文件中摘出的一个annotation的实例,这里的segmentation就是polygon格式:“id”: 1768},从instances_val2017.json文件中摘出的2个category实例如下所示:“id”: 1,},“id”: 2,},
2023-11-19 08:37:03 799
原创 深度学习系列52:多目标跟踪
1)FP:False Positive,即真实情况中没有,但跟踪算法误检出有目标存在。2)FN:False Negative,即真实情况中有,但跟踪算法漏检了。3)IDS:ID Switch,目标ID切换的次数。4)MOTA: Multiple Object Tracking Accuracy,多目标跟踪准确度。5)IDF1: ID F1得分,正确身份标签赋予的检测框与平均ground truth和计算的检测数量的比值。6)MT:Mostly Tracked,大多数目标被跟踪的轨迹数量。
2023-10-24 14:23:58 307 1
原创 运筹系列86:MIP问题的建模tips
添加辅助变量y。比如Either3x12x2≤18orx14x2≤16可以用3x12x2≤18Myx14x2≤16M1−y来代替。
2023-10-19 19:01:09 297
原创 深度学习系列51:hugging face加速库optimum
Optimum是huggingface transformers库的一个扩展包,用来提升模型在指定硬件上的训练和推理性能。Optimum支持多种硬件,不同硬件下的安卓方式如下:如果是国内安装的话,记得加上-i https://pypi.tuna.tsinghua.edu.cn/simple。hugging face目前是被墙的状态,在使用示例代码时,需要将模型离线下载下来使用。
2023-10-13 14:31:59 812
原创 批量下载微信公众号要点
参考GitHub 项目vWeChatCrawl,详细步骤见https://zhuanlan.zhihu.com/p/375046671,这里说下注意事项。
2023-09-15 09:36:44 229
原创 运筹系列85:求解大规模tsp问题的julia代码
关于列生成的列子,可以参考《运筹系列8:Set partitioning问题的列生成方法》。我们这里使用priority queue存储分枝节点,按照最简单的下标顺序,对所有非整数变量进行分枝。求解主问题,然后找到检验数
2023-09-07 18:09:42 256
原创 运筹系列84:使用reduced matrix法求解tsp问题
我们得到reduce cost,可以作为tsp的lb = (10 + 10 + 15 + 20 + 5 + 10) = 70。我们用行表示从每个点出去的距离,用列表示从每个点进来的距离。
2023-08-31 09:36:15 249
原创 运筹系列83:使用分枝定界求解tsp问题
Node算子用来存储搜索树的状态。其中level等于path的长度,path是当前节点已经访问过的vertex清单,bound则是当前的lb。这里的bound函数是一种启发式方法,等于当前路径的总长度,再加上往后走两步的最小值。
2023-07-29 18:09:03 362
原创 python系列27:jupyter转web app的工具Mercury
官网:https://runmercury.com/Mercury可以将 Jupyter Notebook 呈现为 Web 应用程序。类似的package还有streamlit和voila使用import mercury as mr进行安装。Mercury的页面分为左边的输入部分,和右边的输出部分,下面是极简例子:在命令行输入mercury run,可以启动客户端常用指令如下:运行Mercury Server:mercury run运行示例notebooks:mercury run demo添
2023-06-12 00:40:57 1065
原创 运筹系列81:LKH代码分析
基础的node定义在LKH.h中用于2-level tree的segment定义如下:LKH可以使用3种数据结构,默认是2-level tree:2-level tree的flip操作(即2-opt算子),在Flip_SL.c中,特殊的地方在于flip过程中涉及到重新分配segment的操作,其逻辑如下,其中P开头的是node对应的segment编号。
2023-06-09 14:12:41 1148
原创 Julia系列14:调用自定义C/C++库
接着是输出数组,需要使用unsafe_wrap进行转换,并且需要用GC.@perserve防止垃圾回收。Clang.getTranslationUnitCursor方法可以获得其根节点。首先是输入数组,注意需要convert。二维数组需要在C中注意编号。
2023-05-30 18:00:10 1018 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人