机器学习笔记 - 基于C++的深度学习 一、向量运算

        由于它们的可扩展性和灵活性,现在很少找到不使用TensorFlow、PyTorch、Paddle......(这里的省略号是指各种成熟的深度学习库)的项目。

         花时间从头开始编写机器学习算法(即在没有任何基础框架的情况下)似乎有些重复造轮子的感觉。然而,事实并非如此。自己编写算法可以让我们清楚、扎实地理解算法如何工作以及模型真正在做什么。

        C++ 曾经是一种古老的语言,但在过去十年中发生了巨大的发展。主要变化之一是对函数式编程的支持。然而,还引入了其他一些改进,帮助我们开发更好、更快、更安全的机器学习代码。毕竟上面提到的各种深度学习库的底层基本还是基于C/C++。

        我们这里的目标是基于C++来编写必须了解的深度学习算法,例如卷积、反向传播、激活函数、优化器、深度神经网络等等。

1、获得两个向量的内积

                C++ 在标头中包含了一组方便的通用示例。我们在这里了解一下关于向量运算的基本方法。

#include 
#include 

int main()
{
    std::vector X {1., 2., 3., 4., 5., 6.};
    std::vector Y {1., 1., 0., 1., 0., 1.};
 
    auto result = std::inner_product(X.begin(), X.end(), Y.begin(), 0.0);
    std::cout << "Inner product of X and Y is " << 

你可能感兴趣的:(机器学习,深度学习,人工智能,C++,向量运算,TensorFlow,Pytorch,神经网络)