BeautifulAlgorithms.jl

BeautifulAlgorithms.jl

Julia语言实现的简洁算法库

BeautifulAlgorithms.jl是一个Julia语言算法库,涵盖机器学习、优化等多个领域。项目提供简洁的算法实现和测试用例,主要用于学习目的。所有代码经Carbon格式化,方便用户理解和学习。

Julia算法机器学习优化强化学习Github开源项目

BeautifulAlgorithms.jl

构建状态 代码覆盖率

用Julia编写的简洁算法,使用Carbon进行格式化。

包含机器学习、优化、强化学习、在线规划、不确定性下的决策和排序算法。所有实现都是可运行且独立的;请参考测试用例

注意,这些主要用于学术目的,不适合实际应用。还有许多其他Julia包实现了这些算法的更可靠版本。

] add http://github.com/mossr/BeautifulAlgorithms.jl

注:算法已从原始来源进行了修改。

梯度下降

Percy Liang和Dorsa Sadigh,《人工智能:原理与技术》,斯坦福大学,2019年。

<p align="center"><a href="./src/gradient_descent.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/92a8737f-5f3c-41b1-a072-a2dff696cbb3.png"></a></p>

随机梯度下降

Percy Liang和Dorsa Sadigh,《人工智能:原理与技术》,斯坦福大学,2019年。

<p align="center"><a href="./src/stochastic_gradient_descent.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/9fe54334-4791-4bb3-b446-50c11147c7f5.png"></a></p>

两层神经网络

<p align="center"><a href="./src/neural_network.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/38b07343-df46-44bb-954d-6b1f128e5940.png"></a></p>
两层神经网络(单行版)
<p align="center"><a href="./src/neural_network_one_liner.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/ce40d4fb-e8ba-4534-aa60-e4e7e55b1b62.png"></a></p>

多层神经网络

<p align="center"><a href="./src/multi_layer_neural_network.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/730f4523-fb23-44bc-8480-46e3ab914a87.png"></a></p> ## 损失函数 <p align="center"><a href="./src/loss_functions.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/f0decf36-cb1a-4750-853a-3822940504f8.png"></a></p>

距离函数

<p align="center"><a href="./src/distance_functions.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/e7c24ae0-6a04-46ad-a602-83bc763bff98.png"></a></p>

最近邻

<p align="center"><a href="./src/nearest_neighbor.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/167a42ff-4ead-4b37-a629-01a88370c7de.png"></a></p>

K-最近邻

<p align="center"><a href="./src/k_nearest_neighbors.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/07a7baab-fdad-41d2-9fdf-82dcc05b0436.png"></a></p>

K-均值聚类

Percy Liang 和 Dorsa Sadigh,《人工智能:原理与技术》,斯坦福大学,2019年。

<p align="center"><a href="./src/k_means_clustering.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/f799e57a-177d-4af1-a970-4a31d40498cc.png"></a></p>

EM算法

Andrew Ng,《高斯混合模型和EM算法》,斯坦福大学,2020年。<sup><a href="http://cs229.stanford.edu/notes2020spring/cs229-notes7b.pdf">1</a></sup>

<p align="center"><a href="./src/em_algorithm.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/2d98a9fe-8640-40a9-8342-68735177f07c.png"></a></p>

线性回归

Mykel J. Kochenderfer 和 Tim A. Wheeler,《优化算法》,麻省理工学院出版社,2019年。(感谢 @HenriDeh 使用 ones

<p align="center"><a href="./src/linear_regression.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/6586a4ac-400a-45b7-95fd-f5de1b4fbc5f.png"></a></p>
线性回归(一行代码版)
<p align="center"><a href="./src/linear_regression_one_liner.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/f1b3fb2f-eac7-4163-b562-d671fb38713e.png"></a></p>

岭回归

<p align="center"><a href="./src/ridge_regression.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/562d225f-4940-4ede-a6de-13ba3833ca6f.png"></a></p>

基函数回归

Mykel J. Kochenderfer 和 Tim A. Wheeler,《优化算法》,麻省理工学院出版社,2019年。

<p align="center"><a href="./src/basis_regression.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/55e025ba-397d-4ccf-b0a3-1b2bea63b137.png"></a></p>

径向基函数回归

Mykel J. Kochenderfer 和 Tim A. Wheeler,《优化算法》,麻省理工学院出版社,2019年。

<p align="center"><a href="./src/radial_basis_regression.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/48f0c43c-102b-464b-bc91-6e91232761fc.png"></a></p>

逻辑回归

<p align="center"><a href="./src/logistic_regression.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/27e6530e-03bc-433f-9545-7a62e24aee44.png"></a></p>

交叉熵方法

Mykel J. Kochenderfer 和 Tim A. Wheeler,《优化算法》,麻省理工学院出版社,2019年。

<p align="center"><a href="./src/cross_entropy_method.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/263ec898-9b19-4a27-b0ca-81f632834240.png"></a></p> ## 有限差分法 Mykel J. Kochenderfer 和 Tim A. Wheeler,《优化算法》,麻省理工学院出版社,2019年。 <p align="center"><a href="./src/finite_difference_methods.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/8f10035b-9d1a-4fda-a4a7-451102b26785.png"></a></p>

模拟退火

Mykel J. Kochenderfer 和 Tim A. Wheeler,《优化算法》,麻省理工学院出版社,2019年。

<p align="center"><a href="./src/simulated_annealing.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/8763818b-8f6c-4428-9f52-fd63225e0631.png"></a></p>

Twiddle算法

Sebastian Thrun,《机器人人工智能》,Udacity,2012年。

<p align="center"><a href="./src/twiddle.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/24bf29cb-c250-4d9b-a70b-baf866f93184.png"></a></p>

牛顿法

John Wallis,《代数历史与实践论文》,1685年。

<p align="center"><a href="./src/newtons_method.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/fa935e3c-318c-4a7f-b740-a04e08c85c39.png"></a></p>

高斯过程

Mykel J. Kochenderfer 和 Tim A. Wheeler,《优化算法》,麻省理工学院出版社,2019年。

<p align="center"><a href="./src/gaussian_process.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/4b0c49fd-e625-4f3d-b8f2-581c0067452f.png"></a></p>

高斯过程核函数

<p align="center"><a href="./src/gaussian_process_kernels.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/2ab47b92-4c7c-4c7e-b4e0-6ee8fa4dfdaa.png"></a></p>

汤普森采样

Daniel J. Russo、Benjamin Van Roy、Abbas Kazerouni、Ian Osband 和 Zheng Wen,《汤普森采样教程》,arXiv:1707.02038,2020年。

<p align="center"><a href="./src/thompson_sampling.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/1d101988-6ffc-4644-b6e7-fa469a0d3cc8.png"></a></p>

粒子滤波

Mykel J. Kochenderfer、Tim A. Wheeler 和 Kyle H. Wray,《决策算法》,预印本。

<p align="center"><a href="./src/particle_filter.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/4dcd9e90-f3bc-4a2b-9b60-e881dba5fae7.png"></a></p>

价值迭代

Mykel J. Kochenderfer、Tim A. Wheeler 和 Kyle H. Wray,《决策算法》,预印本。

<p align="center"><a href="./src/value_iteration.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/f2bb4a34-335b-46e3-bad3-8b4aefb98182.png"></a></p>

分支定界法

Mykel J. Kochenderfer、Tim A. Wheeler 和 Kyle H. Wray,《决策算法》,预印本。

<p align="center"><a href="./src/branch_and_bound.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/d07b20eb-f2c0-42a4-88b8-02a8e6b7b3b8.png"></a></p>

蒙特卡罗树搜索

Mykel J. Kochenderfer、Tim A. Wheeler 和 Kyle H. Wray,《决策算法》,预印本。

<p align="center"><a href="./src/monte_carlo_tree_search.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/6fe28f20-d3c9-491a-80e9-4f7bb12c4124.png"></a></p>

霍夫曼编码

David A. Huffman,《构建最小冗余编码的方法》,IEEE,1952年。

<p align="center"><a href="./src/huffman_coding.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/1d6666c5-645c-4f3b-853c-cc82375bfa49.png"></a></p> ## 冰雹序列(考拉兹猜想) <p align="center"><a href="./src/hailstone.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/f50da184-f345-4a78-8937-710f04abc523.png"></a></p>

冒泡排序

Karey Shi,《算法设计与分析》,斯坦福大学,2020年。

<p align="center"><a href="./src/bubble_sort!.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/bd755d81-8f54-4012-b02e-f7e93c03770e.png"></a></p>

归并排序

Karey Shi,《算法设计与分析》,斯坦福大学,2020年。

<p align="center"><a href="./src/merge_sort.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/7509513b-c4e3-4ee0-ad9b-9216cc4ddc5b.png"></a></p>

插入排序

Karey Shi,《算法设计与分析》,斯坦福大学,2020年。

<p align="center"><a href="./src/insertion_sort!.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/6487919b-6794-4a34-bdac-9f030b7a9e26.png"></a></p>

猴子排序

<p align="center"><a href="./src/bogo_sort!.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/ec945bb2-7397-4ed7-978b-07ead548bae7.png"></a></p>
猴子排序(单行代码)
<p align="center"><a href="./src/bogo_sort!_one_liner.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/38a22105-5f4b-4c41-929a-707a8c99f499.png"></a></p>

自产生程序

Nathan Daly,《Julia Discord》,2019年。<sup><a href="https://discourse.julialang.org/t/quines-and-loons-self-replicating-programs/12607/7" target="_blank">2</a></sup>

<p align="center"><a href="./src/quine.jl"> <img src="https://yellow-cdn.veclightyear.com/0a4dffa0/b9e40eac-a3e3-4ea9-9b78-4ecf5bbbca8e.png"></a></p>

作者:Robert Moss

编辑推荐精选

讯飞智�文

讯飞智文

一键生成PPT和Word,让学习生活更轻松

讯飞智文是一个利用 AI 技术的项目,能够帮助用户生成 PPT 以及各类文档。无论是商业领域的市场分析报告、年度目标制定,还是学生群体的职业生涯规划、实习避坑指南,亦或是活动策划、旅游攻略等内容,它都能提供支持,帮助用户精准表达,轻松呈现各种信息。

AI办公办公工具AI工具讯飞智文AI在线生成PPTAI撰写助手多语种文档生成AI自动配图热门
讯飞星火

讯飞星火

深度推理能力全新升级,全面对标OpenAI o1

科大讯飞的星火大模型,支持语言理解、知识问答和文本创作等多功能,适用于多种文件和业务场景,提升办公和日常生活的效率。讯飞星火是一个提供丰富智能服务的平台,涵盖科技资讯、图像创作、写作辅助、编程解答、科研文献解读等功能,能为不同需求的用户提供便捷高效的帮助,助力用户轻松获取信息、解决问题,满足多样化使用场景。

热门AI开发模型训练AI工具讯飞星火大模型智能问答内容创作多语种支持智慧生活
Spark-TTS

Spark-TTS

一种基于大语言模型的高效单流解耦语音令牌文本到语音合成模型

Spark-TTS 是一个基于 PyTorch 的开源文本到语音合成项目,由多个知名机构联合参与。该项目提供了高效的 LLM(大语言模型)驱动的语音合成方案,支持语音克隆和语音创建功能,可通过命令行界面(CLI)和 Web UI 两种方式使用。用户可以根据需求调整语音的性别、音高、速度等参数,生成高质量的语音。该项目适用于多种场景,如有声读物制作、智能语音助手开发等。

Trae

Trae

字节跳动发布的AI编程神器IDE

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
咔片PPT

咔片PPT

AI助力,做PPT更简单!

咔片是一款轻量化在线演示设计工具,借助 AI 技术,实现从内容生成到智能设计的一站式 PPT 制作服务。支持多种文档格式导入生成 PPT,提供海量模板、智能美化、素材替换等功能,适用于销售、教师、学生等各类人群,能高效制作出高品质 PPT,满足不同场景演示需求。

讯飞绘文

讯飞绘文

选题、配图、成文,一站式创作,让内容运营更高效

讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。

热门AI辅助写作AI工具讯飞绘文内容运营AI创作个性化文章多平台分发AI助手
材料星

材料星

专业的AI公文写作平台,公文写作神器

AI 材料星,专业的 AI 公文写作辅助平台,为体制内工作人员提供高效的公文写作解决方案。拥有海量公文文库、9 大核心 AI 功能,支持 30 + 文稿类型生成,助力快速完成领导讲话、工作总结、述职报告等材料,提升办公效率,是体制打工人的得力写作神器。

openai-agents-python

openai-agents-python

OpenAI Agents SDK,助力开发者便捷使用 OpenAI 相关功能。

openai-agents-python 是 OpenAI 推出的一款强大 Python SDK,它为开发者提供了与 OpenAI 模型交互的高效工具,支持工具调用、结果处理、追踪等功能,涵盖多种应用场景,如研究助手、财务研究等,能显著提升开发效率,让开发者更轻松地利用 OpenAI 的技术优势。

Hunyuan3D-2

Hunyuan3D-2

高分辨率纹理 3D 资产生成

Hunyuan3D-2 是腾讯开发的用于 3D 资产生成的强大工具,支持从文本描述、单张图片或多视角图片生成 3D 模型,具备快速形状生成能力,可生成带纹理的高质量 3D 模型,适用于多个领域,为 3D 创作提供了高效解决方案。

3FS

3FS

一个具备存储、管理和客户端操作等多种功能的分布式文件系统相关项目。

3FS 是一个功能强大的分布式文件系统项目,涵盖了存储引擎、元数据管理、客户端工具等多个模块。它支持多种文件操作,如创建文件和目录、设置布局等,同时具备高效的事件循环、节点选择和协程池管理等特性。适用于需要大规模数据存储和管理的场景,能够提高系统的性能和可靠性,是分布式存储领域的优质解决方案。

下拉加载更多