求职意向:深度学习算法工程师
期望薪资:
出生日期:1989.04
工作年限: 5 年
教育背景
2009.09-2013.07
四川理工学院(自贡)
电子信息工程(本科)
工作经历
成都万创科技有限责任公司
2013.05-2018.06
工作描述:
1. 根据客户需求来定制开发 Android 系统(基于 NXP i.MX53 / i.MX6 和 RK3288 等嵌入式平台);
2. 为定制的 Android 系统自研开发一套压力测试工具和量产测试工具,代表有 FactoryTest,StressTest 等;
3. 为客户编写 Demo 程序,代表有 udpDataTrans,DataTrans,AutoDataConnector 等(数据传输相关)。
Android 底层开发经理
技能特长
深度学习:
1. 熟悉 Python 常用科学计算框架的使用,如 Numpy, Pandas, PIL, Matplotlib, OpenCV, Pygame
2. 熟悉主流深度学习框架的使用,如 TensorFlow, Pytorch, Keras 等
3. 熟悉常用神经网络的原理和实现,如多层感知机 MLP,卷积神经网络 CNN,循环神经网络 RNN, LSTM
4. 熟悉 YOLOv3, Faster RCNN, MTCNN 等常用检测识别跟踪算法的实现和使用
5. 熟悉常用网络模型实现和使用,如 VGG16, MobileNet, ResNet 等
6. 掌握生成式对抗神经网络 GAN,变分自编码 VAE 等算法实现
7. 掌握 Q-Learning, DQN, DDPG 等强化学习算法实现
8. 掌握 Ubuntu 环境下主流深度学习框架的配置,训练,测试和部署等流程
9. 掌握机器学习主流技术,如线性回归,逻辑回归,支持向量机 SVM,聚类等
嵌入式开发:
1. 熟悉 Android/Linux 系统驱动架构,能对 Android HAL/JNI/Framework/APP 等进行修改与优化
2. 精通 Android 系统构建的整套流程(源码下载->Repo 代码管理与仓库维护->源码编译->源码裁剪与定制)
3. 熟悉 Ubuntu 操作系统下代码服务器、编译服务器部署与搭建
4. 精通 Git / Repo / Docker 等工具的使用
5. 熟悉嵌入式系统移植与使用
6. 熟悉 C, C++, Java, Python, Shell 脚本等编程语言
其他特长:
1. 有带团队开发的经验,熟悉任务拆分和资源整合
2. 有国外客户支持经验,能较好地和客户沟通,了解客户需求并协助解决客户问题
项目经历
项目名称:自助面包付款系统
开发环境:Ubuntu 16.04, Pytorch, Pygame
主要技术:MTCNN, NMS, IOU, Center Loss
项目背景:
面包店收银员在顾客较多时任务繁忙,大部分时间花费在鉴别顾客面包类别上,精力有限时容易出错。为了降
低收银员劳动成本,减少顾客等待时间,提升付款效率,需要开发一款自动识别顾客购买面包的系统。面包贴 RFID
标签成本高昂,故采用高清摄像头拍摄面包图片的计算机视觉方式实现面包自动识别。
算法实现:
该项目采用 MTCNN 检测算法实现面包检测,采用 Softmax Loss + Center Loss 实现不同面包的识别,并通
过 Pygame 来实现 UI 界面交互,主要实现步骤如下:
1. 数据采集 -- 采集面包店多类面包在各个角度的照片;
2. 制作训练数据集 -- 对采集的数据进行清洗整理,标注面包类别,并基于 Pytorch 的 DataSet 和 DataLoader
实现训练数据的打包和导入;
3. 编写并训练 MTCNN 神经网络,用于在摄像头视频中框出面包 -- P 网络采用全卷积实现,可以支持任意大小图
片输入,主要实现粗选功能,R/O 网络用于进一步优化建议框;
4. 编写并训练识别神经网络,用于更为准确的识别出不同的面包 -- 考虑到有些面包类别非常相似,团队在 Softmax
Loss 损失函数的基础上加入了 Center Loss 损失函数,实现多类目标损失函数联合训练;
5. 根据识别出的面包种类,查询本地数据库价位,并通过 UI 界面显示出这些面包的详细信息(名称和单价等),计算
所有面包的累计总价,供客户确认。
责任描述:
主要负责原始数据集采集与制作,网络模型的编写、训练和测试,以及通过添加 Center Loss 损失函数来提高识别
的准确率。
项目名称:简化版 AlphaZero -- 五子棋实现
开发环境:Ubuntu 16.04, TensorFlow, Pygame
主要技术:蒙特卡洛树搜索, 策略价值网络
项目描述:
该项目的核心算法基于蒙特卡洛树搜索,使用深度神经网络来实现策略价值网络,通过 Pygame 来实现 UI 界面交
互
算法实现:
1. 通过自我对局(Self-Play)方式来产生训练数据(包括局面描述,根据每个节点分支访问次数求得的概率,Self-Play
对局的结果),并通过经验池来收集这些数据;
2. 设计策略价值网络,主要使用多层卷积+双头龙的全连接(一个 FC 输出棋盘落子概率,一个 FC 输出局面评分);
3. 使用经验池中的数据来训练策略价值网络,在 Self-Play 数据集上不断优化损失函数 L = P(Action) + P(Value),
即就是让策略价值网络输出的 Action 概率 P 更加接近 MCTS 输出的概率 Pi ,让策略价值网络输出的局面评分 v 能
更准确地预测真实的对局结果 z。
责任描述:
基于 GitHub 上现有代码修改调试,参考 AlphaGo Paper 弄懂了其算法实现原理和蒙特卡洛树搜索原理,并基于
Pygame 实现了可视化操作。
项目名称:Android 工控平板,媒体盒子,HMI 等(万创科技)
开发环境:Ubuntu 14.04, 嵌入式板块(NXP i.MX6S/D/Q 主板 、Rockchip RK3288/RK3399)
项目描述:
1. 根据客户需求,定制开发 Android 平板,媒体盒子,HMI(人机交互设备)等;
2. 主板一般都包含多类主流模块,如 LCD、TP、3G、WiFi、Bluetooth、Camera、Battery 等,为了达到易扩展
性,主平板有时也会扩展多功能接口(类似苹果的 Dock 接口)来引出串口,CAN 总线等常用控制接口。
3. 本人主要工作是基于官方 Android SDK 移植客户定制的设备驱动,修改优化裁剪 Android 的 HAL、JNI、
Framework 以及系统 APP,实现所有相关模块功能齐全、性能稳定。
责任描述:
1. 主要负责简单驱动移植开发;
2. Android 框架定制修改;
3. 量产测试工具 APP 编写;
4. 代码集成、全功能自测、打包发布、研发测试等工作。
荣誉证书
英语技能
CET-4
兴趣爱好
运动、看电影、听音乐、学英语、乐高机器人爱好者,DIY 爱好者
自我评价
1. 热爱 IT 行业、自小就对电子产品开发有浓厚的兴趣,并不断学习丰富计算机、单片机等相关知识技能,有较强的
动手实践能力。
2. 对新事物有强烈的好奇心,富有挑战意识,较强的适应环境能力并且勤奋好学、踏实肯干。
3. 具有良好的人际沟通能力,具备团队协作能力,有顾大局思想,长远的眼光。
4. 孝敬父母,懂得感恩,珍惜身边的人,自幼勤劳,具备较强的独立生活和自理能力。
本人愿意根据单位需求进行针对性补课,以适应新需求,力争到了单位能迅速上手干活。