我的AI学习之旅年度总结

1.前言 从1956年AI概念的提出至今,人工智能技术已发展了60多年,22年12月底ChatGPT的横空出世使得生成式AI的全球爆火,ChatGPT的火爆出圈,也相继出现了文心一言、Midjourn

1.前言

从1956年AI概念的提出至今,人工智能技术已发展了60多年,22年12月底ChatGPT的横空出世使得生成式AI的全球爆火,ChatGPT的火爆出圈,也相继出现了文心一言、Midjourney等创新性的 AI 产品,互联网掀起的 AI 风暴可以说已经席卷了全球。

一系列AI产品的出现当然引起了诸多的关注,年初我也作为一名AI小白进入了AI领域,通过时长近一年的学习和实践,总算对深度学习和计算机视觉方面有一定的了解了,这更加坚定了我继续努力探索AI世界的信心,我觉得努力就会有回报。下面我将通过项目经验进行我的年度总结与心得分享。

2.项目总结与心得

年初准备进行学习AI的时候,恰巧碰到遇到学校也开设了这门选修课程,自然是非常高兴的参加了课程的学习。通过自己和学习小组的共同决定,我们选择了深度学习和计算机视觉方向进行了学习,并且也进行了实践,对于一个AI小白来说效果还是不错的。

深度学习和计算机视觉是AI领域两个比较核心的模块,是相互关联的,也经常一起被用于实际问题中,我们小组课题是研发一款影响识别功能的方案。可能是比较感兴趣的原因,我们课下也经常一起学习探讨,共同进步。下面大致总结项目中的一些知识。

  我们的设计思路是,第一步先进行数据收集和与处理工作。

  影像识别一般就包括一些医学影像,比如X射线,MRI等等影像数据,这些数据很好获得,我们小组是去学校附近的医院进行沟通,获得了一些废弃的影像数据等,或者从网络拉去也可,方式多样。收集数据后进行数据的标注,比如疾病部位或是异常情况,作为深度学习算法的训练标签。之后就是预处理工作,这里设计的比较复杂,包括去噪,归一化,裁剪等等操作,也是比较耗时的部分,结束后材料用于深度模型的训练。这里也应用到了计算机视觉的一些知识,令人印象深刻的就是系统可以自动提取影像特征。

这里我简单演示如何进行MRI影像数据的标注和预处理。

ini
复制代码
import numpy as npimport cv2 #标注 def annotate_image(image, annotations): annotated_image = image.copy() for annotation in annotations: #在影像上绘制矩形边界框 x, y, w, h = annotation cv2.rectangle(annotated_image, (x, y), (x+w, y+h), (0, 255, 0), 2) return annotated_image #预处理 def preprocess_image(image): #使用高斯滤波去噪 denoised_image = cv2.GaussianBlur(image, (3, 3), 0) #将像素值映射到[0, 1]范围 normalized_image=cv2.normalize(denoised_image,None,0,1,cv2.NORM_MINMAX, dtype=cv2.CV_32F) #根据需要进行裁剪操作 cropped_image = normalized_image[100:300, 100:300] return cropped_image #加载原始影像数据 image = cv2.imread('mri_image.jpg', 0) #标注数据 annotations = [(50, 50, 100, 100), (200, 200, 150, 150)] annotated_image = annotate_image(image, annotations) #预处理数据 preprocessed_image = preprocess_image(image) #显示结果 cv2.imshow('Original Image', image) cv2.imshow('Annotated Image', annotated_image) cv2.imshow('Preprocessed Image', preprocessed_image) cv2.waitKey(0) cv2.destroyAllWindows()

  实践远远比我们设计时困难,这也是很正常的。毕竟从实践过程中我也通过排除困难学习到了新的东西。然后是是我们学习的主题,深度学习了。我们选择了最常用的卷积神经网络(CNN),它是一个非常经典的深度学习模型,在处理图像数据方面表现也十分优异。通过使用数据对深度模型进行训练后,通过迭代模型参数,就能更准确的学习图像特征并进行一些诊断预测了。说起来几笔带过的过程,其实也花了不少精力,但是快有成果的时候,总能激励我们更加努力。

我的AI学习之旅年度总结

在模型部署和优化方面,我们选择了 Distribution of OpenVINO™工具套件来进行模型的部署,并且利用Intel® VTune™ Profiler对深度学习模型进行了性能优化,提高了计算效率。

大致步骤:

1.安装Intel® Distribution for Python和Intel® oneAPI Base Toolkit,确保安装适合的CPU的优化库和驱动程序。

2.使用Intel® VTune™ Profiler对深度学习模型进行性能分析,以识别瓶颈并调整参数。

ini
复制代码
import tensorflow as tffrom tensorflow.keras import layers, modelsfrom keras.applications.vgg16 import VGG16import numpy as npfrom PIL import Imageimport time #加载 vgg_model = VGG16(weights='imagenet') #输入数据 img_path = 'test.jpg' img = Image.open(img_path) img = img.resize((224, 224)) x = np.asarray(img) x = np.expand_dims(x, axis=0) #进行性能分析with tf.device('/CPU:0'): start_time = time.time() preds = vgg_model.predict(x) end_time = time.time()

这里我们的项目使用预训练的VGG16模型,并对测试图片进行了推理,同时还使用了Intel® VTune™ Profiler进行了简单的性能分析。VTune Profiler挺强大的,可以使用VTune Profiler的各种分析工具来分析CPU使用情况、内存使用情况、I/O使用情况等,并识别瓶颈以便调整参数,推荐大家调优使用。

最后,我们进行了一些其他的工作,包括将学习模型集成到一些诊断系统中,设计了一些交互界面的交互逻辑等等,并进行了功能方面的验证。

我觉得有些东西是要通过实践经历才能有所体会,比如说我们收集影像数据等进行一些资源密集型的任务时,也要进行相关专业的学习,这也能提升我们的知识和经验,进行专业的交叉和融合;还有在模型训练和优化时,也不光会遇到我们预想的结果,往往要根据实际的情况进行训练和优化,这是纸上谈兵所不能比拟的;系统集成的时候,又要考虑系统稳定性与用户的体验等问题。总之,想要透彻的学习好一项知识,掌握理论仅仅只是开始~唯有实践能帮助我们熟练运用!

3.结语

上周我们小组提交了方案文档和训练模型,效果还不错,听老师说结课后还可以带我们搞搞其他的项目,非常期待又能学到新东西了。通过这个项目的实操,确实带给人不小的进步,我也深刻体会到了通过深度学习和计算机视觉的相互结合,能使得计算机能更加精确地理解和处理图像信息,也能应用到更多的领域。由于篇幅有限,没有给出一些核心代码等详细设计,有兴趣的小伙伴也可留言,我们共同学习,一起进步。

最后,我在思考AI如此强大的同时,也明白了虽然是站在”巨人”的肩膀上,也要更努力才能有更好的成果!2023转瞬即逝,期待2024AI会再有改变世界的创举,你我将一起见证!

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
人工智能

[AIGC] LangChain 框架--OpenAI目前最“强”框架入门

2024-5-17 3:36:19

人工智能

大模型应用(一)不光能聊天!看看大模型都能干什么,AI时代感扑面而来。

2024-5-17 7:36:59

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索