Python实现机器学习(上)— 基础知识介绍及环境部署

news2025/1/22 12:41:36

前言:Hello大家好,我是小哥谈。本门课程将介绍人工智能相关概念,重点讲解机器学习原理机器基本算法(监督学习及非监督学习)。使用python,结合sklearn、jupyter-notebook进行编程,介绍iris、匹马印第安人数据集,建立AI模型并评估其表现。本节课主要面向刚毕业高中生、大学生、硕士生等对AI行业充满向往的同学们!🌈

     目录

🚀1.人工智能是什么?

🚀2.如何入门人工智能?

🚀3.机器学习的主要类别有哪些?

💥💥3.1 监督式学习

💥💥3.2 非监督式学习

💥💥3.3 强化学习

🚀4.开发环境介绍及部署

💥💥4.1 Python介绍

💥💥4.2 scikit-learn介绍

💥💥4.3 jupyter notebook介绍

💥💥4.4 开发环境准备

🚀1.人工智能是什么?

人工智能(英语:Artificial Intelligence,缩写为AI)亦称机器智能,指由人制造出来的可以表现出智能的机器。通常人工智能是指通过普通计算机程序来呈现人类智能的技术。该词也指出研究这样的智能系统是否能够实现,以及如何实现。人工智能于一般教材中的定义领域是“智能主体(intelligent agent)的研究与设计”,智能主体指一个可以观察周遭环境并作出行动以达致目标的系统。约翰·麦卡锡于1955年的定义是“制造智能机器的科学与工程”。安德里亚斯·卡普兰(Andreas Kaplan)迈克尔·海恩莱因(Michael Haenlein)将人工智能定义为“系统正确解释外部数据,从这些数据中学习,并利用这些知识通过灵活适应实现特定目标和任务的能力”。人工智能的研究是高度技术性和专业的,各分支领域都是深入且各不相通的,因而涉及范围极广。🌱

AI的核心问题包括建构能够跟人类似甚至超卓的推理、知识、规划、学习、交流、感知、移物、使用工具和操控机械的能力等。当前有大量的工具应用了人工智能,其中包括搜索和数学优化、逻辑推演。而基于仿生学、认知心理学,以及基于概率论和经济学的算法等等也在逐步探索当中。思维来源于大脑,而思维控制行为,行为需要意志去实现,而思维又是对所有数据采集的整理,相当于数据库,所以人工智能最后可能会演变为机器替换人类💞

🍀领域

人工智能行业所涵盖的领域,主要有:机器学习计算机视觉自然语言处理语音识别数据挖掘推荐系统等等...🍉 🍓 🍑 🍈 🍌 🍐

🍀分类 

人工智能主要分弱人工智能强人工智能超人工智能三类,其含义分别解释如下:

  • 弱人工智能(Artificial Narrow Intelligence(ANI)):弱人工智能是擅长于单个方面的人工智能。
  • 强人工智能(Artificial General Intelligence(AGI)):人类级别的人工智能。强人工智能是指在各方面都能和人类比肩的人工智能,人类能干的脑力活它都能干。
  • 超人工智能(Artificial Super Intelligence(ASI)):知名人工智能思想家Nick Bostrom把超级智能定义为“在几乎所有领域都比最聪明的人类大脑都聪明很多,包括科学创新、通识和社交技能等”。

总结:♨️♨️♨️

人工智能即让机器模拟人的各种能力,包括:感知、推理、创造、理解、语言、逻辑、社交、情感等等。


🚀2.如何入门人工智能?

人工智能(AI)是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。它是计算机科学的一个分支,旨在理解智能的实质,并生产出一种能以人类智能相似的方式做出反应的智能机器。🌴

如果你想入门人工智能,你需要了解机器学习深度学习这两种实现人工智能的方法。机器学习是一种通过让计算机从数据中学习并自动改进算法的方法,从而使计算机能够解决一些复杂的问题。而深度学习是机器学习的一个分支,它模仿人脑神经网络的工作原理,通过构建深层次的神经网络来实现更加复杂的任务。🌴

总结:♨️♨️♨️

机器学习是一种实现人工智能的方法,而深度学习是一种实现机器学习的技术。

机器学习:使用算法来解析数据并从中学习,然后对真实世界中的事件作出决策和预测,比如:垃圾邮件检测、房价预测等。

深度学习:模仿人类神经网络建立模型并进行数据分析,比如:人脸识别、语义理解、无人驾驶等。

要入门人工智能,你可以从学习机器学习算法开始,了解常见的机器学习算法和它们的应用。你还可以学习编程语言和工具,如Python和TensorFlow,来实现机器学习和深度学习模型。同时,你可以通过参加在线课程、阅读相关书籍和论文,以及参与项目实践来提升自己的人工智能技能。📚

总结来说,人工智能入门涉及学习机器学习和深度学习的基本概念和方法,掌握相关的编程语言和工具,以及通过实践项目来应用所学知识。这将帮助你逐步了解和掌握人工智能的基础,并为进一步深入研究奠定基础。📚


🚀3.机器学习的主要类别有哪些?

💥💥3.1 监督式学习

监督式学习是一种机器学习方法,其中算法通过使用带有标签的训练数据集来学习模式和规律。在监督式学习中,我们有一个包含输入特征和对应标签的训练数据集,算法通过学习输入与标签之间的关系,从而能够对新的输入进行预测或分类。🐳

具体来说,监督式学习的目标是通过找到一个函数,将输入映射到输出。这个函数被称为模型,它可以是线性模型、决策树、支持向量机、神经网络等等。在训练阶段,模型使用训练数据集来调整自身的参数,使其能够最好地拟合训练数据中的特征和标签之间的关系。然后,在预测阶段,模型可以根据已学习到的规律对新的输入进行预测或分类。🐳

举个例子,如果我们想构建一个垃圾邮件过滤器,我们可以使用监督式学习。我们会收集一批已经标记好的电子邮件(训练数据集),其中包含了垃圾邮件和非垃圾邮件,并提取出一些特征,比如邮件中的单词、发件人信息等。然后,我们使用这些特征和标签进行训练,让模型学会识别垃圾邮件和非垃圾邮件之间的模式和规律。最后,当我们有一个新的未标记的电子邮件时,模型可以根据已学习到的规律预测它是垃圾邮件还是非垃圾邮件。🐳

总结来说,监督式学习是一种常用的机器学习方法,通过使用带有标签的训练数据集来训练模型,并用于预测或分类新的输入数据。🍃

监督式学习核心步骤:

🍀(1)使用标签数据训练机器学习模型

  • 标签数据”是指由输入数据对应的正确的输出结果。
  • 机器学习模型”将学习输入数据与之对应的输出结果间的函数关系。

🍀(2)调用训练好的机器学习模型,根据新的输入数据预测对应的结果。

💥💥3.2 非监督式学习

非监督式学习是机器学习的一种方法,其目标是从无标签的数据中发现隐藏的结构、模式或关系。与监督式学习不同,非监督式学习不需要预先提供标签或目标变量。相反,它通过对数据进行聚类、降维或异常检测等技术来发现数据的内在结构。🚵

在非监督式学习中,算法主要关注数据本身的特征和相似性,以便从中提取有用的信息。常见的非监督式学习算法包括聚类算法(如K-means、层次聚类)降维算法(如主成分分析、独立成分分析)关联规则挖掘算法(如Apriori算法)等。🚵

非监督式学习在许多领域都有广泛的应用,例如推荐系统、市场分割、图像分割、异常检测等。它可以帮助我们发现数据中的隐藏模式,从而提供洞察力和决策支持。🚵

相比于监督式学习,非监督式学习不需要标签数据,而是通过引入预先设定的优化准则进行模型训练,比如自动将数据分为三类。👇

💥💥3.3 强化学习

强化学习是一种机器学习的方法,它通过与环境的交互来学习如何做出最优决策。在强化学习中,一个智能体从环境中观察到一系列状态,并通过采取不同的行动来影响环境。智能体通过接收环境反馈的奖励或惩罚来评估自己的行动,并利用这些信息来调整策略,以最大化长期累积的奖励。🌾

强化学习的核心思想是基于试错学习。智能体通过尝试不同的行动并观察结果,逐步调整策略以获得更好的结果。这种学习方式类似于人类学习的方式,通过不断实践和反馈来提高自己的技能。🌾

强化学习在许多领域都有广泛应用,包括机器人控制、游戏玩法、自动驾驶等。它能够处理复杂的决策问题,并能够在没有明确标签的情况下进行学习。🌾

强化学习的例子有:马尔可夫决策过程(Markov Decision Process)🌹

总结:♨️♨️♨️

监督式学习:基于数据及结果进行预测

非监督式学习:从数据中挖掘关联性

强化学习:通过与环境的交互来学习如何做出最优决策


🚀4.开发环境介绍及部署

💥💥4.1 Python介绍

Python是一种高级、通用的编程语言,它具有简单易学、可读性强的特点。Python语言的设计注重代码的简洁和可读性,使得开发者能够更快速地编写清晰、可维护的代码。它广泛应用于数据分析、人工智能、网络开发、科学计算等领域。Python有丰富的第三方库和工具生态系统,例如NumPy、Pandas、Django等,这些库大大提高了开发效率。同时,Python也是一种跨平台的语言,可以在多个操作系统上运行。📚

Python语言特点:

🍀(1)解释性:不需要编译成二进制代码,可以直接从源代码运行。

🍀(2)面向对象:Python既支持面向过程的编程,也支持面向对象的编程。

🍀(3)可移植性:由于它的开源本质,可以在不同平台进行开发。

🍀(4)高层语言:无须考虑诸如如何管理程序使用的内存一类的底层细节

说明:♨️♨️♨️

Python官网:Welcome to Python.org

💥💥4.2 scikit-learn介绍

Scikit-learn是一个基于Python的机器学习库,它提供了许多用于数据预处理、建模和评估的工具和算法。它包含了各种常用的机器学习算法,例如分类回归聚类降维等。通过使用Scikit-learn,你可以轻松地构建和训练机器学习模型,并对其进行评估和优化。它还提供了丰富的功能,例如特征提取、特征选择和模型选择等,以帮助你更好地处理和分析数据。无论你是机器学习初学者还是专业人士,Scikit-learn都是一个非常有用的工具。🌻

Scikit-learn特点:

🍀(1)集成了机器学习中各类成熟的算法,容易安装和使用,样例丰富,教程和文档也非常详细。

🍀(2)不支持Python之外的语言,不支持深度学习和强化学习。

说明:♨️♨️♨️

Scikit-learn中文社区:scikit-learn中文社区

Scikit-learn官方文档(中文版):scikit-learn (sklearn) 官方文档中文版

💥💥4.3 jupyter notebook介绍

Jupyter Notebook是一个开源的交互式计算环境,可以让你创建和共享实时代码、方程式、可视化和文本。它支持多种编程语言,包括Python、R和Julia等,并且可以在Web浏览器中运行。

Jupyter Notebook的主要特点是所见即所得的编辑和执行代码的能力。它以一种笔记本的形式组织代码和文本,并且你可以在笔记本中编写和运行代码块,同时还可以添加文本、图像、数学公式和交互式图表等内容。🍄

Jupyter Notebook还具有代码自动补全、语法高亮、代码调试和丰富的展示功能等特性,使得它成为数据分析、机器学习、科学研究和教学等领域中广泛使用的工具。🍄

Jupyter Notebook特点:

🍀(1)允许把代码写入独立的cell中,然后单独执行。用户可以在测试项目时单独测试特定代码块,无需从头开始执行代码。

🍀(2)基于web框架进行开发,非常方便。

说明:♨️♨️♨️

Jupyter Notebook官网:Project Jupyter | Home

💥💥4.4 开发环境准备

说明:♨️♨️♨️

安装Python:Python安装教程(2022最新)

安装Pycharm:PyCharm安装教程(详细步骤)

安装Anaconda:PyTorch基础知识(1)— PyTorch框架介绍和安装步骤

Jupyter Notebook教程:手把手教你安装Jupyter Notebook(保姆级教程)

新建开发环境,安装numpy、Scikit-learn库。👇

conda create -n env_name(环境名)

pip(conda)install package_name(包名)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/991014.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Mysql系列】(二)日志系统:一条更新语句是如何执行的

有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准https://blog.zysicyj.top 这篇文章是从Github ReadMe拷贝的,内容实践下载是没问题的,能够正常发送短信,而且也不需要服务器,本地…

语言基础篇14——Python源文件组织结构,模块与包、命名空间与作用域的奥秘

源文件组织结构 模块与包 模块,module 一个文件,包含Python源码,以.py为后缀 包,package 结构化模块,一个文件夹,包含__init__.py文件、若干.py文件和若干文件夹 module对象 模块和包被导入后为modu…

保姆级-微信小程序开发教程

一,注册微信小程序 如果你还没有微信公众平台的账号,请先进入微信公众平台首页,点击 “立即注册” 按钮进行注册。注册的账号类型可以是订阅号、服务号、小程序以及企业微信,我们选择 “小程序” 即可。 接着填写账号信息&#x…

洗衣洗鞋小程序干洗店洗衣店上门取衣门店管理系统开发定制

校园洗衣洗鞋软件是一款非常优质的校园洗护服务软件,软件功能非常强大,学生们可以通过软件预约洗衣服务,支持上门取送,还能够浏览洗衣产品商城,操作非常便捷,感兴趣的朋友快来体验吧! 后台管理…

开发板插入sd/tf卡后自动挂载

测试平台-hisi-dv500 要在Linux系统上实现TF卡(Micro SD卡)插入后自动挂载,类似于SD卡/TF卡插入也会触发内核事件,你可以使用udev工具来监控并处理这些事件,创建一个udev规则文件来捕获TF卡插入事件. 1:创建一个udev规则文件,例…

飞书即时消息无需API开发连接Cohere,打造飞书AI智能问答助手

飞书即时消息用户使用场景: 许多企业都在使用飞书系统进行协同办公,而现在有了Cohere大语言模型技术,能够根据用户的提问来自动产生回答,无需人为干预。对于企业负责人来说,他们认为如果将Cohere技术融入到飞书机器人中…

SpringBoot+jSerialComm实现Java串口通信 读取串口数据以及发送数据

记录一下使用SpringBootjSerialComm实现Java串口通信,使用Java语言开发串口,对串口进行读写操作,在win和linux系统都是可以的,有一点好处是不需要导入额外的文件。 案例demo源码:SpringBootjSerialComm实现Java串口通信 读取串口…

easypoi导入数值精度丢失

记录一下easypoi导入数值,精度丢失的解决方案 1.导入的excel字段如图 2.easypoi解析CellValueService部分源码: 这个方法拿到的原始数据如图: 解决方法: 1.统一处理方式:在解析的时候使用DecimaFormat进行数据格式化 //格式化为6为小数 De…

Day57|leetcode 647. 回文子串、516.最长回文子序列

leetcode 647. 回文子串 题目链接:647. 回文子串 - 力扣(LeetCode) 视频链接:动态规划,字符串性质决定了DP数组的定义 | LeetCode:647.回文子串_哔哩哔哩_bilibili 题目概述 给你一个字符串 s ,…

使用动态住宅代理还能带来哪些好处?

一、什么是动态住宅代理ip 动态住宅代理是一种代理技术,它利用代理服务器中转用户和目标服务器之间的网络流量,实现用户真实位置的屏蔽。代理提供商会有自己的ip大池子,当你通过代理服务器向网站发送请求时,服务器会从池子中选中…

Spring系列文章:Spring6集成MyBatis3.5

1、引入依赖 <dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>6.0.2</version></dependency><dependency><groupId>org.mybatis</groupId><artif…

jsp页面出现“String cannot be resolved to a type”错误解决办法

篇首语&#xff1a;小编为大家整理&#xff0c;主要介绍了jsp页面出现“String cannot be resolved to a type”错误解决办法相关的知识&#xff0c;希望对你有一定的参考价值。 jsp页面出现“String cannot be resolved to a type”错误解决办法 解决办法&#xff1a; 右键项目…

软考高级架构师下篇-14面向服务架构设计理论

目录 1. 引言2. SOA的相关概念3. SOA的发展历史4. SOA的参考架构5. SOA 主要协议和规范6. SOA设计的标准要求7. SOA的作用与设计原则8. SOA的设计模式9. SOA构建与实施10. 前文回顾1. 引言 在面向服务的体系结构(Service-Oriented Architecture,SOA)中,服务的概念有了延伸…

详解:API开发【电商API封装商品数据SKU接口的开发接入】

电商API开发8.1 RESTful API的设计8.2 API的路由和控制器8.3 API的认证和授权 RESTful API的设计 RESTful API是一种通过HTTP协议发送和接收数据的API设计风格。它基于一些简单的原则&#xff0c;如使用HTTP动词来操作资源、使用URI来标识资源、使用HTTP状态码来表示操作结果等…

Java多线程(四)锁策略(CAS,死锁)和多线程对集合类的使用

锁策略&#xff08;CAS&#xff0c;死锁&#xff09;和多线程对集合类的使用 锁策略 1.乐观锁VS悲观锁 2.轻量级锁VS重量级锁 3.自旋锁VS挂起等待锁 4.互斥锁VS读写锁 5.可重入锁vs不可重入锁 死锁的第一种情况 死锁的第二种情况 死锁的第三种情况 CAS 1.实现原子类 …

苹果发布会:iPhone15系列

苹果将在北京时间9月13日凌晨1点召开发布会&#xff0c;本次发布会的主角是iPhone 15系列&#xff0c;包含四款机型&#xff1a;iPhone 15、iPhone 15 Plus、iPhone 15 Pro 以及 iPhone 15 Pro Max&#xff0c;本次发布会快科技全程视频直播&#xff0c;有关产品的细节也会在新…

四川百幕晟科技:抖音新店怎么快速起店?

抖音作为全球最大的短视频平台&#xff0c;拥有庞大的用户基础和强大的影响力&#xff0c;成为众多商家宣传产品、增加销量的理想选择。那么&#xff0c;如何快速开店并成功运营呢&#xff1f;下面描述了一些关键步骤。 1、如何快速开新店&#xff1f; 1、确定产品定位&#x…

系列一、前言

本系列文章是参考B站尚硅谷老师讲的 "尚硅谷Nginx教程由浅入深&#xff08;一套打通丨初学者也可掌握&#xff09;"系列课程&#xff0c;然后结合自己真实的操作而总结的系列文章。我也把自己学习、实操过程中的详细笔记以脑图的形式分享了出去&#xff0c;发现大家对…

SpringMVC实战crud增删改查

一.公共页面的跳转 1.编写页面跳转控制类 package com.YU.web;import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping;/*** author YU* create …

Apache Linki 1.3.1+DataSphereStudio+正常启动+微服务+端口号

我使用的是一键部署容器化版本&#xff0c;官方文章 默认会启动6个 Linkis 微服务&#xff0c;其中下图linkis-cg-engineconn服务为运行任务才会启动,一共七个 LINKIS-CG-ENGINECONN:38681 LINKIS-CG-ENGINECONNMANAGER:9102 引擎管理服务 LINKIS-CG-ENTRANCE:9104 计算治理入…