大数据 机器学习 算法概论
视频解析 https://edu.csdn.net/course/play/7813
算法概述
算法是计算机科学领域最重要的基石之一,计算机语言和开发平台日新月异,但万变不离其宗的是那些算法和理论,数据结构和算法是软件开发必备的核心基础,是内功心法。下面举例拿推荐算法和分类算法的实际场景做下举例:
推荐算法的应用场景,各种app(偏资讯)的应用外的手机推荐:
上面可以看出有米饭资讯,优酷视频,抖音短视频等推荐,他们都倾向于在下班休息的碎片时间进行推送。他们有的是根据你的关注和兴趣进行提醒,有的是根据当下社会热点进行推荐,还有的就是优惠券性质的推送。
再有就是应用内的推荐:
可以看出手机购物时,当我们搜索某家商店的某件商品时。系统会根据我们的搜索历史和购买历史进行相似物品的推荐。
分类算法(医学上的肿瘤判断)
如何判断细胞是否属于肿瘤细胞呢?肿瘤细胞和普通细胞,有差别。但是,需要非常有经验的医生,通过病理切片才能判断。如果通过机器学习的方式,使得系统自动识别出肿瘤细胞。此时的效率,将会得到飞速的提升。并且,通过主观(医生)+客观(模型)的方式识别肿瘤细胞,结果交叉验证,结论可能更加靠谱。
如何操作?通过分类模型识别。简言之,包含两个步骤。首先,通过一系列指标刻画细胞特征,例如细胞的半径、质地、周长、面积、光滑度、对称性、凹凸性等等,构成细胞特征的数据。其次,在细胞特征宽表的基础上,通过搭建分类模型进行肿瘤细胞的判断。
对于我们来说最简单的应用案例。请看如下代码应用
对于我们来说最简单的应用案例。请看如下代码应用,根据班级同学不同的分段给出评级。一个班级里不同分段的人数不是相等的,而是有着峰值和低谷。案例:将学生的百分制成绩转换为五分制成绩:≥90 分: A,80~89分: B,70~79分: C,60~69分: D,<60分: E。一般程序写法:
/*** @author 张晨光* 测试成绩结果算法1*/
public class TestOne {public static String getGrade(int grade){String result="";if(grade<60){result="E";}else if(grade<70){result="D";}else if(grade<80){result="C";}else if(grade<90){result="B";}else{result="A";}return result;}
}
如果学生的总成绩数据有10000条,则5%的数据需 1 次比较,15%的数据需 2 次比较,40%的数据需 3 次比较,40%的数据需 4 次比较,因此10000 个数据比较的
次数为: 10000 (5%+2×15%+3×40%+4×40%)=31500次
此种形状的二叉树,需要的比较次数是:10000 (3×20%+2×80%)=22000次,显然:两种判别树的效率是不一样的。
因此,不同的算法程序的执行效率是不一样的,我们尽量找到最优算法,提高程序的执行效率。就像你编游戏,人口最高只敢100,否则机器就特慢,人家就敢让人口到300;你的农民遇到石头就停住了,人家的农民就能绕过去,找最近的路。这些都离不开算法工程师的功劳。
所谓“算法”是指解决问题的一种方法步骤或者一个过程。
一个算法应该具有以下几个重要的特征。
(1)输入:一个算法应该有n(n≥0)个初始的输入数据。
(2)输出:一个算法可以没有或有一个或多个输出信息,它们与输入数据之间会有着某种特定的关系。
(3)确定性:算法中的每一个步骤都必须具有确切的含义,不能有二义性。
(4)可行性:算法中描述的每一个操作步骤都必须是可以执行的,也就是说,都可以通过计算机实现。
(5)有穷性:一个算法必须在经历有限个步骤之后正常结束,不能形成死循环。
思考题,3个数中求最大值,比较下哪种算法比较好!!!
/*** * @author 张晨光* 求3个数中的最大值* */
public class TestFour {public static int getMax1(int a,int b,int c){int max;if(a>b&&a>c){max=a;}else if(c>a&&c>b){max=c;}elsemax=b;return max;}//第2种写法,其他比较幼稚的写法,暂时不再提供public static int getMax2(int a,int b,int c){int max=a;if(b>max){max=b;}if(c>max){max=c;}return max;}//三元运算符;public static int getMax3(int a,int b,int c){int max=(a>b)?a:b;max=(max>c)?max:c;//或者老老司机写的max =((a > b ? a : b) > c) ? (a > b ? a : b) : c;return max;}
}
大数据 机器学习 算法概论相关推荐
- 2015年《大数据》高被引论文Top10文章No.7——大数据机器学习系统研究进展(上)...
2015年<大数据>高被引论文Top10文章展示 [编者按]本刊将把2015年<大数据>高被引论文Top10的文章陆续发布,欢迎大家关注!本文为高被引Top10论文的No.7, ...
- 《大数据》第1期“专题”——大数据机器学习系统研究进展(下)
6 跨平台统一大数据机器学习系统Octopus的研究设计 6.1 Octopus的基本设计思想 上述绝大多数大数据机器学习方法和系统都是基于特定平台构建的,难以集成和兼容现有和未来出现的多种大数据处理 ...
- 《大数据》第1期“专题”——大数据机器学习系统研究进展(上)
大数据机器学习系统研究进展 黄宜华1,2 1.南京大学计算机软件新技术国家重点实验室 南京 210023: 2.南京大学PASA大数据技术实验室 南京 210023 摘要:要实现高效的大数据机器学习, ...
- 2015年《大数据》高被引论文Top10文章No.7——大数据机器学习系统研究进展(下)...
2015年<大数据>高被引论文Top10文章展示 [编者按]本刊将把2015年<大数据>高被引论文Top10的文章陆续发布,欢迎大家关注!本文为高被引Top10论文的No.7, ...
- 分布计算 | 大数据机器学习系统研究进展
1 大数据机器学习系统研究背景 近年来,大数据技术在全球发展迅猛,掀起了巨大的研究热潮,引起全球业界.学术界和各国政府的高度关注.随着计算机和信息技术的迅猛发展和普及应用,行业应用数据呈爆炸性增长.动 ...
- 《大数据机器学习实践探索》 ---- 总目录
文章大纲 1. 框架平台介绍篇 云平台 安装与调试 大数据搜索框架 Elasticsearch 大数据框架 spark 2. 数据处理篇 数据接入 数据清洗 ETL EDA 特征工程 3. 大数据机器 ...
- 大数据机器学习系统研究进展
要实现高效的大数据机器学习,需要构建一个能同时支持机器学习算法设计和大规模数据处理的一体化大数据机器学习系统.研究设计高效.可扩展且易于使用的大数据机器学习系统面临诸多技术挑战.近年来,大数据浪潮的兴 ...
- 机器学习及大数据经典算法笔记汇总
机器学习及大数据经典算法笔记汇总 一.总结 二.机器学习及大数据算法 机器学习及大数据经典算法笔记汇总 一.总结 前面的博文,介绍了很多TensorFlow 以及 DeepLeaning 的算法.这里 ...
- 大数据 机器学习 分类算法_13种用于数据科学的机器学习分类算法及其代码
大数据 机器学习 分类算法 The roundup of most common classification algorithms along with their python and r cod ...
最新文章
- 设备履历管理系统php开源,航空机载设备履历本管理制作系统诞生记
- excel2010设置列宽为像素_vba:如何设置excel图表的宽度和高度(以像素为单位)?...
- 一个古帝国做产品的故事
- php 处理 http 请求,PHP的http请求处理类
- Linux编程手册读书笔记第四章(20140407)
- IE浏览器怎么在桌面隐藏图标
- php byte stringbuffer,重拾java基础(十三):String姐妹StringBuffer、StringBuilder总结
- 图形学笔记1.直线扫描转换与devC的图形库ege扩展
- C++实现H264文件解析
- python时间格式转换为美式日期_python中有关时间日期格式转换问题
- python基础——闭包函数和生成器
- SpringBoot整合Memcached
- 你知道了区块链,现在该了解DCEP央行数字货币了
- Unity UGUI Inputfield 回车submit 按下Enter回车完成
- python绘制爱心_求问怎样用python/python turtle画“心”呢?
- Origin双坐标轴图表
- 中银泰定期存款理财技巧
- 携手合作伙伴,傲腾技术加速释放数据中心潜能
- keras yolo3 使用 CIOU Loss
- C语言实现9宫格数独
热门文章
- 理解分布式一致性:拜占庭容错与PBFT
- 科普: 中间件底层实现的分布式协议之Raft
- Spring之装配Bean(一)
- 小白也能学会的 Git 常用指令指南
- C++题解-Leecode 520. 检测大写字母——Leecode每日一题系列
- L1-011 A-B(13行代码AC!!)
- python opencv图片放大 缩小_Python OpenCV之图片缩放的实现(cv2.resize)
- ‘MicrosoftWebDriver.exe‘ executable needs to be in PATH.
- python的主要版本_Python目前主要有( )两个主要版本。_学小易找答案
- JLabel标签文字换行