logo资料库

论文研究-基于MATLAB的BP神经网络在猪等级评定中的应用研究.pdf

第1页 / 共3页
第2页 / 共3页
第3页 / 共3页
资料共3页,全文预览结束
第 25 卷 第 6 期 2008 年 6 月 计 算 机 应 用 研 究 Application Research of Computers Vol. 25 No. 6 Jun. 2008 基 于 MATLAB 的 BP 神 经 网 络 在 猪 等 级 评 定 中 的 应 用 研 究 * 郑丽敏, 田立 军, 朱 虹, 王 伟, 于 铂, 刘艳国, 林 喆, 唐 毅 ( 中 国农 业大 学 信息 与电 气工程 学院 , 北京 100083) 摘 要: 为 了客 观评 估猪 肉各 项指 标和 猪肉 等 级, 采 用 MATLAB 神 经 网 络 工具 箱 中 的 BP 人 工 神 经网 络 , 利 用 猪胴 体图 像特 征参数 和活 体猪 图像 特征 参数 建立 BP 神 经网 络 模 型。 分别 用 猪 胴体 图 像 特征 参 数 样 本 60 个 和 活体 猪图 像特 征参数 样本 80 个进 行了 网络训 练, 并 采用不 同的 BP 神 经网 络隐含 层的 传递 函数 和隐 含层 神经 元 数量 , 得 到 BP 神经 网络模 型。 通过 仿真 , 将 仿真 结 果 与人 工 评 估 结 果 进 行 对比 , 结 果 表 明 BP 人工 神 经 网 络 模 型可 以评 估猪 肉各项 指标 和等 级识 别 。在 猪 肉 胴 体 图 像 特征 指 标 下 评 价 猪 肉 等级 准 确 率 达 到 98% , 在 活 体 猪 图像 特征参 数评 价猪 肉等 级准 确率 达到 80% 。 说明 猪肉 胴体 图 像特 征 比 活体 猪 图 像特 征 参 数更 能 代 表猪 肉 质 量品 质也符 合客 观现 实; 同时 也表 明 MATLAB 神经网 络工 具箱 中的 BP 人工 神经 网 络可 以 应 用在 猪 的 等级 评 定 中。 关键 词: 反 向传 播神 经网 络; MATLAB; 猪肉 等级 中图 分类 号: TP301. 6 文 献标 志码 : A 文 章编 号: 1001- 3695( 2008) 06- 1642- 03 Study on pork grade evaluation of BP neural network based on MATLAB ZHENG Li-min, TIAN Li-jun, ZHU Hong, WANG Wei, YU Bo, LIU Yan-guo, LIN Zhe, TANG Yi ( College of Information & Electrical Engineering, China Agricultural University, Beijing 100083, China) Abstract: In order to evaluate pork parameters and pork grade objectively, this paper adopted BP artificial neural network in neural network toolbox of MATLAB, used hog’s carcass image features and living hog’s image features to establish BP neural network model of BP. Then trained 60 samples of hog’s carcass image features and 80 samples living hog’s image features, got the neural network model of BP. And adopted different BP neural networks to imply the transmission function of layer and im- plied the quantity of one layer of neurons to the artificial result and trained the influence of errors of the goal to compare cor- rectly. Then compared simulation result and the artificial result. The result indicates BP artificial neural network model can as- sess pork every index and grade discern. Appraise the rate of accuracy of the pork grade and is up to 98% under the pork trunk vision characteristic index, appraise the rate of accuracy of the pork grade and is up to 80% in pig’s vision characteris- tic parameter of living body. It proves that pork trunk vision characteristic can represent pork quality than living body pig vision characteristic parameter accord with the objective reality. The result indicates that at the same time the BP artificial neural net- work in MATLAB neural network toolbox can be applied to the grade evaluation of the pig. Key words: BP neural network; MATLAB; pork grade 0 引言 猪肉的等级是影响生猪养 殖和屠 宰加工 企业经 济效益 的 重要因素。传统的等级评定方 法主要 是目测 或者人 工手动 测 量。这种检测方法有损肉样、效率低下、准确性差, 同时存在一 定的人为因素, 经常引起养猪者和收购者对等级的争议。因此 客观公正的猪肉无损定级系统是非常必要的。 猪肉品质是一个多方面 的、综合的 性状, 养猪 者、屠 宰者、 加工者在相同 的环 节 可能 有不 同 的要 求 [ 1] 。因 此, 应该 研 究 利用多项指标综合评定猪 肉等级。屠 宰商关 心的是 生猪瘦 肉 率、猪后躯丰满度; 猪肉的颜色是消费者决心购买与否的指标; 大理石纹的量是 肉品 加 工者 所关 心 的, 因为 它 对猪 肉的 多 汁 性、嫩度和风味均有 影响。研究 利用背 膘厚、瘦肉 率、屠 宰率、 观 [ 2] 。 罗明等人的研究表明瘦 肉率与 背膘厚、腿臀 围、眼 肌面 积 等特性指标存在关系 [ 2] ; 屠宰率 与猪的 外形有 关; 肉 色与图 像 颜色密切相关 [ 3] ; 大 理石 纹 与肌 内脂 肪 含量 密 切相 关。而 眼 肌面积、肌内脂 肪含 量等 特 性指 标 与相 应图 像 特征 呈线 性 相 关 [ 4 ~6] 。背膘厚、腿臀围、眼肌面积、猪的外形等长度特征均 可 从图像中获得, 这使得利用计算机视觉技术评定猪肉等级成为 可能 [ 6, 7] 。因此, 研究利 用多 项指 标 综合 评定 猪 肉等 级, 研 究 背膘厚、瘦肉率、屠宰 率、眼肌 面积、肉色和大理 石纹评分与 图 像特征的关系, 找出相关的 图像特 征并训 练人工 神经网 络, 是 建立基于计算机图像处理技术的猪肉无损定级系统的关键。 1 MATLAB 中 BP 神经网络原理阐述 [ 8 ] 眼肌面积、肉色和大 理 石纹 等多 项 指标 评定 猪 肉等 级更 加 客 BP 网络是一种多层前馈神经网络, 由输入层、隐含层和 输 收 稿日期 : 2007- 03- 12; 修 回日期 : 2008- 04- 20 基 金项 目: 国 家“863 ”计 划资 助项目 ( 2002AA248051- 2) 作 者简介 : 郑丽敏 ( 1962- ) , 女, 教授 , 主 要研 究方向 为模式 识别 与图像 处理 ( zhenglimin@ cau. edu. cn) .
第 6 期 郑 丽敏 , 等: 基于 MATLAB 的 BP 神经 网络在 猪等 级评 定中 的应 用研 究 ·3461· 出层组成。层与层之间采用全互连方式, 同一层之间不存在相 防止上述现象的发生, 已有学者在分析了两层网络是如何对一 互连接, 隐含层可以有一个或多个。构 造一个 BP 网 络需要 确 定其处理单元———神经元的 特性和 网络的 拓扑结 构。神经 元 个函数进行训练后, 提出了 一种选 定初始 权值的 策略: 选择 权 值的量级为 S( 1 /T) 1 。其 中 S1 为 第一 层神 经元 数目。利 用这 种 是神经网络最基本的处理单元, 隐层中的神经元采用 S 型变换 方法可以在较少的训练次数下得到满意的训练结果。 函数; 输出层的神经元可采用 S 型或线性型变换函数。 4) 学习速率 它决定了每 一次循 环训练 中所产 生的权 值 神经网络学习采用改进 BP 算法, 学习过 程由前 向计算 过 变化量。大的学习速率可能导致系统的不稳定, 但小的学习速 程和误差反向传播过程组成。在前向计算过程中, 输入信息从 率将会导致训练较长、收敛 速度很 慢, 不过能 保证网 络的误 差 输入层经隐层逐层计算并传向输出层, 每层神经元的状态只影 值不跳出误差表面的低谷 而最终 趋于最 小误差 值。 所以在 一 响下一层神经元的状态。例如输出层不能得到期望的输出, 则 般情况下, 倾向于选取较 小的学 习速率 以保证 系统的 稳定性。 转入误差反向传播过程; 误差信 号沿原 来的连 接通路 返回, 通 学习速率的选取在 0. 01 ~0. 8。 过修改各层的神经元权值, 使得网络系统误差最小。最终网络 的实际输出与各自所对应 的期望 输出逼 近。具体工 作流程 如 图 1 所示。 输入样本集 输入 保存样本集 输出 保存网络设置 网络 初始化 训练 成功 输入 训练样本集 输入 训练网络 输入 网络训练 参数接口 训练 成功 各网络参数用户接口 仿真结果显示 输出 图 1 酝粤栽蕴粤月 神经网络流程 训练结果显示 输出 输出 保存网络 输出 读取网络信息 输入 网络仿真 输入 仿真样本集 与初始权值的选取一样, 在一 个神经 网络的 设计中, 网 络 要经过几个不同的学习速率的训练, 通过观察每一次训练后的 误差平方和∑e2 的下降速率来 判断所 选择的 学习速 率是否 合 适。如果∑e2 下降很快, 则说 明速率 合适; 若∑e2 出 现震荡 现 象, 则说明学习速率过大。对于一个具体网络都存在一个合适 的学习速率, 但对于较复杂 网络, 在误 差曲面 的不同 部位可 能 需要不同的学习速率。为了减 少寻找 学习速 率的训 练次数 以 及训练时间, 比较合适的 方法是 采用变 化的自 适应学 习速率, 使网络的训练在不同阶段自动设置不同学习速率的大小。 5) 期望误差的选 取 在 设计 网 络的 训练 过 程中, 期 望 误 MATLAB 神经 网络工 具箱功 能强大, 提供 了许多 有关 神 差值也应当通过对比训练 后确定 一个合 适的值。这 个所谓 的 经网络设计、训练和仿真的函数。用户只要根据自己的需要调 合适是相对于所需要的隐含层的节点数来确定的, 因为较小的 用相关函数, 就能方便地 进行神 经网络 设计与 仿真, 从而免 除 了编写复杂而庞大的算法程序的困扰。 在进行 BP 网络设 计 前, 一般 应 从网 络 的层 数、每层 中 的 期望误差值是要靠增加隐含层的节点以及训练时间来获得的。 一般情况下, 作为对比, 可以同 时对两 个不同 期望的 误差值 的 网络进行训练, 最后通过综合因素的考虑来确定采用其中一个 神经元个数、初始值以及学习方法等方面来进行考虑。 网络。 1) 网络的层数 理论上早已证明: 具有 偏差和至少 一个 S 型隐含层加上一 个 线性 输出 层 的网 络能 够 逼近 任何 有 理数。 2 BP 神经网络参数设计 增加层数主要可以更进一步 降低误 差、提高精 度, 但 同时也 使 网络复杂化, 从而增加了网络权值的训练时间。误差精度的提 高实际上也可以通过增加隐含层中的神经元数目来获得, 其训 练效果也比增加层数更容 易观察 和调整。所 以一般 情况下 应 优先考虑增加隐含层中的神经元数。 2) 隐含层的神经元数网络 的层数 网络 训练精 度的提 高 可以通过采用一个隐含层而增加神经元个数的方法来获得, 这 在结构实现上要比增加更 多的隐 含层简 单得多。那 么究竟 选 取多少个隐含节点才合适? 这 在理论 上并没 有一个 明确的 规 定。在具体设计时, 比较实际的做法是通过对不同神经元数进 行训练比较对比, 然后适当加上一点余量。 3) 初始权值的选 取 由 于系 统 是非 线 性的, 初 始值 对 于 学习是否达到局部最小、是否能够收敛以及训练时间的长短关 系很大。如果初始值太大, 使得加权后的输入落在激活函数的 饱和区, 从而导致其导 数 f ′( x) 非 常小, 而在 计算 权值 修正 公 式中, 因为 δ正比于f ′( x) , 当 f ′( x) - > 0 时, 则有 δ- > 0, 使得 w - > 0, 从而 使调节 过程 几乎 停 顿下 来。所 以, 一般 总是 希 望 输入数据、系统设计参 数、输 出数据 主要包 括猪肉 图像 特 征参数, 如下所示: a) 胴体猪猪肉图 像特征 参数———图像 膘厚、图像腿 横长、 图像腿竖长、图 像眼 肌 面积、白 红比、G 值、腿臀 围、腿 横 竖 长 积、等级。 b) 活体 猪 图 像 特 征 参 数———猪 体 编 号、猪 体 重、头 部 面 积、躯干面积、腹部面积、臀部面积、腿长、腿宽、胸腔面积、猪 体 长、猪体宽、后背面积、腿长宽比、瘦肉率、背膘厚、屠宰率、猪 肉 等级、腹占身躯比、侧上曲线、侧腹曲线、后上曲线、后后曲线。 c) 系统设计参数———神 经元数 目、网 络层数、训练 最大 步 数、目标误差。 d) 系统输 出———仿真 瘦肉 率、仿 真背 膘 厚、仿 真 屠宰 率、 仿真猪肉等级、训练步数。 3 结果与分析 1) 根据图像特征参数进行 BP 神经网络训练 经过初始加权后的每个神经元的输出值都接近于零, 这样可以 胴体猪图像特征参数有八种, 选取 60 组数据进行训练, 19 保证每个神经元的权值都能够在 它们的 S 型 激活函 数变化 最 组数据进行仿真。用归一 化法对 原始数 据进行 预处理。隐 含 大之处进行调 节。一般 取初始 值在 ( - 1, 1) 的 随机 数。为 了 层神经元 数 目 选 取 12, 传 递 函 数 选 取 tansig, 训 练 函 数 选 取
·4461· 计 算 机 应 用 研 究 第 25 卷 trainlm。网络仿真结果与人工对比如图 2 所示。 对比三种隐含层 ( purelin, tansig, logsig) 对 应的 结果 发现, anew=columns1through11 1.10980.90391.21231.96311.97082.00691.92821.99762.05332.93073.1552 columns12through19 3.17442.12432.86913.02472.98551.99131.99723.0712 b=1 1 1 2 2 2 2 3 3 3 2 图 2 胴体猪等级归一化仿真结果 2 2 2 3 3 3 2 3 用标准化法对原始数据进行预处理。隐 含层神经元 数目 选取 12, 传递函 数选 取 tansig, 训练 函数 选 取 trainlm。网 络 仿 真结果与人工对比如图 3 所示。 anew=columns 1through11 1.08891.02341.11431.96852.04751.99861.99522.00272.00262.89623.0046 columns12through19 2.9849 2.0636 2.9928 3.0020 2.9999 2.0017 1.9914 3.0029 3 3 2 2 2 b=1 1 1 2 2 3 图 3 胴体猪等级标准化仿真结果 2 2 2 3 3 3 圆 猿 可见, 对原始数据进行归一化处理和标准化处理都有很好 的仿真结果, 表明猪胴体图像特征参数网络训练成功。 2) 根据活体猪图像特征参数进行 BP 神经网络训练 a) 进行主 成 分分 析。由 于 活 体猪 图 像 特征 参 数 多 达 19 种, 为了加快网络训练速度, 对原始数据进行主成分分析, 挑选 出主成分的累积 贡献 率已 达到了 95% 的 前 10 个主 成分 代 替 19 种参数。 b) BP 网络 实 现。在隐 含 层中 使 用传 递函 数 tan-sigmoid, 在输出层使 用一 个线 性 传递 函数 purelin, 训 练函 数选 择 函 数 trainlm。隐含层神经元数目选择 20, 输出目 标选择 1。输入 向 量采用主成分分析结果所列出的猪重、腿宽长比、臀部面积、头 部面积、背部宽度长度 比、腹 部面积 等 10 个 特征参 数; 输出 向 量为背膘厚、屠宰率、瘦肉 率、等 级。选取 70 组数 据为 训练 样 本, 10 组为仿真样本。网络仿真结果如表 1 所示。 表 1 活 体猪仿 真结 果 参 数 结 果 仿 真 0. 26 0. 36 0. 26 0. 35 0. 41 0. 39 0. 35 0. 33 0. 29 0. 34 瘦 肉 率 人 工 0. 32 0. 31 0. 34 0. 36 0. 36 0. 33 0. 35 0. 31 0. 32 0. 30 仿 真 0. 75 0. 72 0. 73 0. 73 0. 72 0. 72 0. 75 0. 73 0. 78 0. 71 屠 宰 率 人 工 0. 72 0. 68 0. 71 0. 70 0. 74 0. 70 0. 72 0. 72 0. 76 0. 76 仿 真 3. 23 2. 45 1. 68 2. 02 1. 49 1. 33 2. 10 2. 06 2. 64 2. 86 背 膘 厚 人 工 3. 20 2. 40 1. 60 2. 00 1. 40 1. 30 1. 20 2. 00 2. 60 2. 80 仿 真 5. 37 3. 36 1. 28 2. 05 1. 82 2. 97 5. 24 2. 29 1. 99 4. 32 等 级 人 工 5. 00 3. 00 1. 00 2. 00 2. 00 3. 00 5. 00 2. 00 2. 00 4. 00 结果表明, 用 10 个提取后的仿真结果作为训练样本, 仿真 误差基本相同。说明主成分分析非常成功, 达到了在不损失精 度的情况下实现降维, 提高了系统的运行速度。 3) 不同隐含层 传递函 数和 隐含 层神 经元 个数 对 BP 网 络 影响研究 a) 不同隐含层传 递函 数对 BP 网络 影 响。 以瘦 肉率 仿 真 仿真结果最好的是 tansig 和 logsig, 线性 purelin 函数较差, 误差 在 0. 1 以上。从目标 误差 收 敛曲 线看, 只有 purelin 函数 对 应 的误 差曲线没有 达到目标误 差。大 家都知道, tansig 双曲正 切 S 型传递函数用于将神经元的输入范围为( - ∞, + ∞) 映射 到 ( - ∞, + ∞) ; logsin 函数用于将神经元的输 入范围映射 到( 0, + 1) 上; 而线性 函数 只是 简单 地将 神经 元输 入 进行 线性 调 整 后传递到输出, 无法体现出 所训练 数据的 多样性 和复杂 性, 也 就不可能达到目标期望的误差, 所以就达不到系统要求的目标 误差。 b) 不同隐含 层神 经元 个数 对 BP 网络 的影 响。以瘦 肉 率 仿真结果为例, 隐含层神经元数目 分别选 取 20、40、60, 其他 输 入参量相同。对比结果如表 3 所示。 表 3 不 同隐含 层神 经元数 目对 比结果 神 经 元 数 目 仿 真 0. 33 20 人 工 0. 32 仿 真 0. 34 40 人 工 0. 32 仿 真 0. 31 60 人 工 0. 32 结 果 0. 28 0. 39 0. 38 0. 35 0. 33 0. 32 0. 32 0. 33 0. 32 0. 31 0. 34 0. 36 0. 36 0. 33 0. 35 0. 31 0. 32 0. 30 0. 33 0. 32 0. 35 0. 33 0. 34 0. 37 0. 33 0. 33 0. 29 0. 31 0. 34 0. 36 0. 36 0. 33 0. 35 0. 31 0. 32 0. 30 0. 31 0. 35 0. 35 0. 33 0. 36 0. 38 0. 33 0. 34 0. 31 0. 31 0. 34 0. 36 0. 36 0. 33 0. 35 0. 31 0. 32 0. 30 通过对比, 不同数目的隐含层神经元在本例中都得到了较 好的仿真结果。但在程序运行当中, 训练时间不相同。经过 手 工粗略计算, 20 个 隐含 层 神 经元 的 网 络训 练 时 间约 为 5s; 40 个隐含层神经元的网络训 练时 间大 约为 7s; 60 个 隐含 层神 经 元的网络训练时间大约 12s。时 间表明, 随着 隐含层 神经元 个 数的增加, 训练耗费时 间明显 增加。所以, 要在 保证训 练误 差 的情况下, 训练耗费时间越 少越好, 但 是减少 隐含层 神经元 数 目将导致神经网络学习能力下降, 仿真结果误差较大。本文实 例证明, 隐含层神经元个数选取输入神经元个数的两倍左右就 可以花费最少的时间达到满意的误差效果。 参考文献: [ 1] 刘敬顺 , 彭国良 , 刘 小红 . 浅 议猪肉 品质 的测定 和影 响因素 [ J] . 广 东畜牧 兽医 科技, 2000, 6 ( 2) : 7 -9 . [ 2] 郑丽敏 , 于铂, 唐毅 , 等 . 利用 图 像处 理 技 术 自 动估 算 猪 胴 体参 数 [ J] . 计 算机 应用研 究, 2007, 24 ( 1) : 203- 206 . [ 3] 罗明, 朱 砺. 屠宰加 工线 上瘦 肉 型猪 胴 体 瘦 肉 率估 测 方 法 的研 究 [ J] . 四 川农 业大学 学报 , 2002, 6 ( 2 ) : 153- 155. [ 4] WYLE A M, CANNELL R C, BELK K E, et al. An evaluation of the prototype portable HunterLab video imaging system as a tool to predict tenderness of beef carcasses using objective measure of lean and fat color[ R] . Fort Collins: Colorado State University, 1998. [ 5] 于铂, 任 发政, 田立 军, 等. 利 用 图像 处 理 技 术 估算 猪 肉 等 级评 价 结果为例, 分别选 取 tansig、logsig、purelin 为 隐含 层传 递 函数, 指标的 应用 研究[ J] . 肉 类科学 , 2004 ( 3) : 41 -44. 其他输入参量相同。对比结果如表 2 所示。 表 2 三种 隐含 层传递 函数 对比结 果 传 递 函 数 结 果 仿 真 0. 21 0. 29 0. 21 0. 22 0. 14 0. 19 0. 44 0. 12 0. 04 0. 14 purelin 人 工 0. 32 0. 31 0. 34 0. 36 0. 36 0. 33 0. 35 0. 31 0. 32 0. 30 仿 真 0. 26 0. 36 0. 26 0. 35 0. 41 0. 39 0. 35 0. 33 0. 29 0. 34 tansig 人 工 0. 32 0. 31 0. 34 0. 36 0. 36 0. 33 0. 35 0. 31 0. 32 0. 30 仿 真 0. 25 0. 32 0. 28 0. 27 0. 31 0. 19 0. 30 0. 35 0. 31 0. 29 lo gsig 人 工 0. 32 0. 31 0. 34 0. 36 0. 36 0. 33 0. 35 0. 31 0. 32 0. 30 [ 6] GWARTNEY B L, GAO X, TAN J, et al. Determining fat content in ground beef via color image processing [ J] . Journ al of M uscle Fo od, 1996, 16 ( 7) : 441- 451. [ 7] 刘艳国 , 朱虹, 郑丽 敏, 等. 拐 点 提取 算 法 在 活 体猪 检 测 中 的应 用 [ J] . 计 算机 应用, 2005, 25 ( Z1) : 234- 244, 247 . [ 8] 郑丽敏 . 人工智 能 与专 家 系 统 原理 及 其 应 用[ M] . 北 京: 中 国 农 业大学 出版 社, 2004. [ 9] 高隽. 人 工神经 网 络原 理 及 仿 真实 例 [ M] . 北 京: 机 械 工 业 出 版 社, 2003.
分享到:
收藏