文章目录
1、关键词
人工智能、机器学习、深度学习
2、人工智能
2.1、什么是人工智能
- Artificial Intelligence
- 研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门技术科学
- 是计算机科学的一个分支
- 讲人话就是:赋予 机器 学习能力,让机器像人一样聪明
2.2、什么不属于人工智能
不具备学习能力的程序 不属于人工智能
举个栗子:
晚上使用高德地图,程序贴心地提醒我们开车灯,表现很智能;
但这个智能提醒是预设程序,不具备学习能力,故该功能不是人工智能
2.3、什么属于人工智能
人工智能程序的必要条件:具备学习能力
人工智能的应用有哪些:
人脸识别、语音识别、美颜、机器翻译、AI客服、舆情分析、推荐系统、自动驾驶、写诗机器人……
3、人工智能、机器学习、深度学习的关系
- 技术范畴:人工智能 > 机器学习 > 深度学习
- 人工智能是个宽泛的概念;机器学习是实现人工智能的其中一种方式;深度学习是机器学习算法的热门分支。
4、什么是机器学习
机器学习是一类算法的总称,能从历史数据中挖掘出其中隐含的规律,并用于预测未来
早在中学的时候,我们就已经开始接触机器学习的知识,只是当时不知道,而那个知识就是数学书上的线性回归
以销量预测为例
根据 历史销量 预测 未来销量
根据 预测的销量 进行补货
补货少了 则 供货不足 很多客户买不到货,补货多了 则 卖不完 库存积压
数据分析师 建模后,凭个人经验 人工调节模型参数
比如: 销 量 4 月 = 销 量 3 月 × a + 销 量 上 年 4 月 × b + 销 量 大 盘 3 月 × c 销量_{4月}=销量_{3月} \times a +销量_{上年4月} \times b + 销量 _{大盘3月} \times c 销量4月=销量3月×a+销量上年4月×b+销量大盘3月×c
数据分析师凭个人经验设定abc为[0.5
,0.1
,0.4
],明年可能要手工调到[0.6
,0.1
,0.3
]
而机器学习则是代替个人经验以及人工操作,自动算出abc,让模型参数自动化调节,每日更新abc
4.1、手写一个【具有学习能力的】NLP程序
电商网站数以亿计的文字评论,人工一条一条地看 怕是猴年马月 都找不出差评痛点
使用 机器学习 则能高效找出 差评痛点
比如 客户流失主因:卫生?味道?排队久?价格?空调?不顺路?车位少?店员太丑?…
from collections import Counter
class Clf2:
def __init__(self, x, y):
self.model = dict()
length = len(y)
for word, total in Counter(word for sentence in x for word in sentence.split()).most_common():
self.model[word] = sum(y[i] for i in range(length) if word in x[i]) / total
def predict(self, sentence):
value = sum(self.model.get(word, 0) for word in sentence.split())
print(sentence.replace(' ', ''), '\033[031m好评\033[0m' if value > 0 else '\033[34m差评\033[0m')
4.1.1、同样的程序,学习正确知识,就能做正确预测
告诉程序:味道差
是差评
,程序学习后,再次遇到类似评论,就会预测为差评
X = ['橘子 很 甜', '味道 差', '味道 太 甜', '橘子 很 难吃', '甜 甜']
Y = [1, -1, -1, -1, 1]
test1 = '太 难吃 了'
test2 = '西瓜 足够 甜'
clf = Clf2(X, Y)
print(clf.model)
clf.predict(test1)
clf.predict(test2)
4.1.2、同样的程序,学习错误知识,就会造成错误预测
X = ['价格 高', '价格 低', '价值 低']
Y = [-1, 1, -1]
test1 = '价值 高'
clf = Clf2(X, Y)
print(clf.model)
clf.predict(test1)
机器学习程序 好比 孩子,输入的数据 好比 灌输给孩子的知识
如果给孩子灌输错误知识,那么孩子未来就会作出错误的判断