2020-实习生面试题-2

2020-实习生面试题-2

深度学习算法

1、什么是面向对象、面向过程?

面向过程:(C语言)自顶向下、逐步求精、模块化封装函数,主张按功能把软件系统逐步细分,对每个涉及到的功能都进行一次数据处理然后输出。由主函数把函数中的所有接口串接起来,程序的实现非常强调达到某功能的算法。每个函数都有唯一的入口和出口。(注重过程。解决问题时,把事情按步骤拆分成 一个个函数和数据(用于函数/方法的参数),每个函数看作一个过程,然后按照一定的顺序执行完这些函数。)
面向对象:(Python,C++,JAVA)利用面向过程的结构化程序流来设计,基本思想是使用类、对象、继承、封装、消息等基本概念来进行程序设计。强调直接以对象来思考、认识问题,并根据对象的本质特点把它们抽象为构成系统的基本单元,使得软件系统组件能够直接映像到客观世界,并保持客观世界中事物原本的相互关系。(注重对象。解决问题时,把事物抽象成对象的概念(按功能划分,而不是按步骤),给问题里的每个对象赋予一些属性和方法,让每个对象去执行自己的方法解决问题。)

2、为什么要使用面向对象?

面向对象与人们习惯的思维方法一致,使程序代码更加容易让人理解和接受,开发效率高,代码重用性好,并且有利于程序的后期修改和维护;
面向过程的程序设计方法则不同,所有程序代码都包含在几个模块中,开发效率低,可读性差,不利于程序的后期修改和维护。

3、python有哪些用于机器学习、深度学习的高级包?

核心库与统计:Numpy、Scipy、Pandas、StatsModels。
可视化:Matplotlib、Seaborn、Plotly、Bokeh、Pydot、Scikit-learn、XGBoost/LightGBM/CatBoost、Eli5。
深度学习:Tensorflow、PyTorch、Keras。
分布式深度学习:Dist-keras/elephas/spark-deep-learning。
自然语言处理:NLTK、SpaCy、Gensim。
数据抓取:Scrapy。
机器学习常用Python扩展包

4、PyTorch、TensorFlow的区别和各自的优缺点?

TensorFlow是一个静态的框架,需要先构建一个TensorFlow的计算图,构建好了之后,计算图不能改变,然后再传入不同的数据进去,进行计算。
PyTorch是一个动态的框架,对变量做任何操作都是灵活的。
PyTorch 和 TensorFlow 的关键差异是它们执行代码的方式。这两个框架都基于基础数据类型张量(tensor)而工作。PyTorch 和 TensorFlow 的一个主要差异特点是数据并行化。PyTorch 优化性能的方式是利用 Python 对异步执行的本地支持。而用 TensorFlow 时,必须手动编写代码,并微调要在特定设备上运行的每个操作,以实现分布式训练。
TensorFlow与PyTorch

5、python中的迭代器、生成器?

python_魔法方法(六):迭代器和生成器

6、python中的魔法方法?

了解描述器
python的常用魔法方法详细总结

7、python中字典的键有哪些数据类型?

字典是一种可变容器模型,且可存储任意类型对象。字典格式如下所示:d = {key1 : value1, key2 : value2 }。
键必须是唯一的,但值则不必。键必须是不可变的,如数字、字符串、元组,列表不可以作为键因为列表是一种可变容器模型。

8、python中字典内部的数据结构?

字典又称为哈希表(hashmap)、映射(map),以 key-value 的方式进行存储。字典中的 key 对象必须实现__hash__和__eq__方法。
将字典的存储看做一个数组,字典在查找时会计算 key 的 hash 值,然后通过模运算快速的定位到 “数组” 的下标,如果这个下标只有一个元素,那么直接返回该 value;如果有多个元素存储在同一个下标里面,就再使用__eq__方法进行比较,相同者返回。

9、python中字典的特性和操作复杂度?

  1. 查找速度快,无论 dict 有10个元素还是10万个元素,查找速度都一样。速度快的代价是占用内存大,还会浪费很多内容。
  2. 字典的值可以没有限制地取任何 python 对象,既可以是标准对象,也可以是用户定义的。
  3. 不允许同一个键出现两次,创建时如果同一个键被赋值两次,后一个值会被记住。键必须不可变,所以可以用数字,字符串或元组充当,而用列表就不行。
  4. Python3.6以上版本中的 dict 遍历时会保持 key-value 序对插入Python中的顺序。在这里插入图片描述

10、python中列表的特性和操作复杂度?

list 的查找速度随着元素增加而逐渐下降,但是占用内存小。
在这里插入图片描述

11、python中类成员函数、静态函数、普通函数?

Python:普通成员函数、类成员函数、静态函数

发布了231 篇原创文章 · 获赞 54 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/clover_my/article/details/105149016