首页 AI学术青年与开发者社区

从Python入门-如何成为一名AI工程师

开课时间:
开课时长:30+课时,实践项目和案例
机器学习 基础入门
会员免费
现价:¥299.00
原价:¥499.00

  开通会员,立省299元 立即开通

  当前课程,会员领券立减30元>>

  • 数据结构 + 算法 = 程序
  • 栈: 先进后出
  • 队列: 先进先出
  •  Python数据类型:整型\浮点\字符串\布尔
  • type(x)获取x的数据类型
  • 逻辑运算: and\or\not
  • Python的数据结构:列表\元组\字典\集合 
  • 列表追加元素: list.append()
  • 列表追加列表: list.extend([...])
  • 不要在遍历时改变列表结构
  • 任意位置插入: x.insert()
  • 尾部删除: x.pop
  • 删除指定元素: x.remove()
  • 清空: x.clear()
  • 复制: x.copy()
  • 统计元素出现个数: x.count()
  • x.index()查找元素,找到返回索引,未找到返回-1
  • 逆置: x.reverse()
  • 排序(默认升序): x.sort()
  • list是顺序结构,结合数组+队列+栈
  • tuple不能修改.x = {1,2,3,4,5)
  • d['a']获取,不存在时报错
  • d.get('a',0)不存在时给默认值
  • d['c'] = 5增加
  • d.update({'c':5, 'd':8})更新
  • del d['d']删除
  • d.popitem()从尾部删除键值对
  • d.keys()获取所有key值,返回list
  • d.values()获取所有value值,返回list
  • 字典也可以有序:inport collections \n ordered_dict = collections.OrderedDict(items)
  • a = set([a,s,d,])
  • 并集: a.union(b)
  • 交集: a.intersection(b)
  • c = a - b 差集(a独有)
  • c = b - a 差集(b独有)
  • c = a ^ b 对称差集(a ,b独有)
  • a.symmetric_difference(b)
  • a.symmetric_difference_update(b)
  • 添加元素: a.add(20)
  • 用一个列表更新集合: a.update([10, 11])
  • 删除集合中的元素: a.remove(10),元素不存在时报错
  • 删除集合中的元素:a.discard(10),元素不存在时不报错
  • a.pop(10)移除尾部元素
  • 把集合变成不能变的集合: c = frozenset(a),类似tuple与list的关系
  • 两个集合判断: a == b, a != b
  • a in b 是否 $\blong$ a.issubset(b), a.issuperset(b)
  • a mot in b
  • a.isdisjoint(b), 是否存在交集
[展开全文]
Boylad · 2019-03-13 · 数据结构 5

阶段性小结:

机器学习经典算法案例+总结

1 获取数据

1.1导入sklearn数据集

1.2创建数据集

2 数据预处理

2.1数据归一化

2.2正则化(normalize)

2.3one-hot编码

3 数据集拆分

4 定义模型

4.1线性回归

4.2逻辑回归LR

4.3朴素贝叶斯算法NB

4.4决策树DT

4.5支持向量机SVM

4.6k近邻算法KNN

4.7多层感知机(神经网络)

5 模型评估与选择篇

5.1交叉验证

5.2检验曲线

6 保存模型

6.1保存为pickle文件

6.2sklearn自带方法joblib

 

 

 

[展开全文]

学习方法总结:

传统式:从入门到放弃

突击式:蜻蜓点水,覆盖率有限

实战式:理论部分欠佳

敏捷式:突击+实战 从案例入手 以点带面 逢山开路 遇水架桥 get√

[展开全文]
  • python intro_raw.py——执行脚本,import部分生成pyc字节码文件。
  • 首次执行或者文件更新时才有pyc
  • 下次执行时,如果pyc时间戳跟py无差异就直接调用pyc给解释器执行,否则重新生成。
  • pyc,即PythonCodeObject,提速+代码加密
  • python -m filename.py——执行包,生成pyc。
  • python -c "print('hello')"——执行单行脚本
  • windows下生成的pyc文件在——_pycache_目录里。
  • 调试工具:IDLE的debugger、pdb、pudb。
  • python -m pdb filename.py
[展开全文]
Boylad · 2019-03-11 · Hello World 1
x = [12, 74, 23, 43, 19]
x.append(54)
print(x)
x.extend([34, 37])
print(x)

print('Hello %$!' %('World'))
x = [12, 74, 23, 43, 19]
print(x)
x.append(54) #在list后追加一个元素
print(x)
x.extend([34, 37]) #在列表后追加列表
print(x)
print(x[1:4]) #字符串切片操作
del(x[3]) #字符串删除操作,小心使用,不要在遍历时改变list结构
print(x) 
y = x[1:4]
print(y) #切片,左闭右开
x.insert(6,6666)
print(x)
x.pop() #尾部删除
print(x)
x.remove(6666) #删除指定元素
print(x)
print(x.count(23)) #统计元素出现个数
print(x.index(23)) #查找元素,返回下标
x.reverse() #列表逆置
print(x)
x.sort()
print(x) #排序(默认升序)
  •   转义:\
  •  横向制表符:\t
  • -纵向制表符: \v
  • -换行(软回车):\n
  • -硬回车:\r\n
  • 字符串运算符:+,*,[],in,not in
a = 'hello Python'
print(a.capitalize()) #将字符串首字母大写
print(a.center(20)) #将字符串a置于20个空格字符的中间
print(a.startswith('H')) #判断字符串是否以某个字母开始
print(a.startswith('h'))
print(a.endswith('n')) #判断字符串是否以某个字母结束
print(a.lower()) #将字符串统一小写
print(a.upper()) #将字符串统一大写
print(a.islower()) #判断字符串是否小写
print(a.isupper()) #判断字符串是否大写
print(a.find('l')) #查找字符串,返回第一个查找到的字符串的首字符的索引,找不到不报错返回-1
print(a.index('P')) #查找字串,返回索引,查不到报错
print(a.replace('l', 'W')) #替换所有

 

[展开全文]

《线性代数的本质》

《马同学高等数学》

对于初学者来说,良好的解释比证明重要得多。

  • 线性变换 + 平移变换 = 仿射变换

线性空间的任意点在线性变换前后一定保持等距分布。

  • 特征值就是运动的速度
  • 特征向量就是运动的方向

对一个向量做线性变换,N(A^N)次以后它会趋近于一个方向,这个方向就是矩阵分解的最大特征值对应的方向。

高斯混合模型:

  • 通过简单的概率分布构造复杂的概率分布
  • 万能近似器
[展开全文]
Boylad · 2019-03-20 · 数学基础 1

AI 改变生活:

- 图像、语音、文字、游戏、无人驾驶

- NLP

DL发展历史:

神经元-->单层神经网络-->两层神经网络-->多层神经网络

三大因素:

- 海量数据

- 计算能力

- 算法突破

DL结构:

- 基础知识:

    - 线性代数、概率、信息论、数值计算

    - 机器学习

 - 深度学习算法:

    - FFN、正则化、优化

    - CNN、RNN

    - 实战、应用

- 展望:

   - 线性因子模型、自编器

   - 结构概率模型、蒙特卡洛方法

   - 深度生成模型

 

 

 

[展开全文]

学习效率,学习质量(广度和深度),态度和意识,学习强度.

拒绝烂,拒绝懒.

有监督--目标明确,严格要求.

学到能给别人讲明白的程度,自我反思.勤于实践.

理解为主,脑图,Xmind.

贪多必失,理解--重构--呈现.

明确目标,写出自己的理解,化整为零,总结提炼.

用提问学习.多角度,深度提问.

走出舒适区.目标可实现(经过努力).

大量重复,刻意训练.

图谱结构+注意力+联想记忆+推理反思

多看多动手多思考

好奇心+分享+上进心

归纳演绎

[展开全文]

神经网络的优点:

网络实质上实现了一个从输入到输出的映射功能,而数学理论已证明它具有实现任何复杂非线性映射的功能。这使得它特别适合于求解内部机制复杂的问题。

网络能通过学习带正确答案的实例集自动提取“合理的”求解规则,即具有自学习能力。

网络具有一定的推广、概括能力。

神经网络的缺点:

对初始权重非常敏感,极易收敛于局部极小。

容易 Over Fitting 和 Over Training。

如何选择隐藏层数和神经元个数没有一个科学的指导流程,有时候感觉就是靠猜。

[展开全文]

如何高效学习AI

  •     学习效率
  •     学习质量 :广度+深度
  •     态度+意识
  •     没有章法的勤劳=白劳
  •     学习强度​

     反思:

  •     主动吃苦
  •     学习方法至关重要
  •     赶路时千万别忘了: 停下来,回头看看脚印,抬头看看前方

 

 

(1)学习金字塔

  • 主动学习>被动学习
  • 教授>总结>实践>看书

 经验

  • 学而不用就忘记
  • 学而不思也忘记
  • 理解>记忆
  • 图像记忆>文字记忆
  • 贪多必失,学该学的

 

 

大脑学习之道:

图谱结构+注意力+联想记忆+推理反思

[展开全文]

相关课程

开课日期:直播已结束,可回看开始
智能驾驶 基础入门 86414
开课日期:开始
机器学习 基础入门 111104

授课教师

资深算法工程师,曾就职于BAT,有多年企业数据挖掘/机器学习/深度学习项目经验
微信扫码分享课程