(57)【要約】【課題】より正確に種卵分類を特定するための技術を提供する。【解決手段】種卵検査装置は、検査対象の種卵に光を照射するための発光部と、発光部から照射されて種卵を透過した光を受けるための受光部と、受光部が受けた光以外の、種卵または種卵の外部から得られる情報を取得する取得部と、受光部が受けた光と、取得部が取得した情報とから、種卵が属する種卵分類を特定するための分類部と備える。【選択図】図６
2020204570.tif 000002
【特許請求の範囲】
【請求項１】
検査対象の種卵に光を照射するための発光部と、
前記発光部から照射されて前記種卵を透過した光を受けるための受光部と、
前記受光部が受けた光以外の、前記種卵または前記種卵の外部から得られる情報を取得する取得部と、
前記受光部が受けた光と、前記取得部が取得した情報とから、前記種卵が属する種卵分類を特定するための分類部と備える、種卵検査装置。
【請求項２】
前記種卵検査装置は、さらに、
前記受光部が受けた光から、前記種卵の内部の特徴を表す特徴量を抽出するための特徴量抽出部と、
前記特徴量の入力を受けて、前記種卵が複数の種卵分類の各々に属する可能性を推定結果として出力する学習済モデルとを備え、
前記学習済モデルは、学習用データセットを用いた学習処理により生成されており、前記学習用データセットは、他の種卵について得られた特徴量に対して、当該他の種卵の種卵分類をラベルとして関連付けた学習用データを複数含む、請求項１に記載の種卵検査装置。
【請求項３】
前記学習済モデルは、さらに、前記取得部が取得した前記種卵を孵卵器に入れている期間に関する情報を入力として受け付けるように構成されており、
前記学習用データの前記ラベルには、さらに、前記他の種卵を孵卵器に入れている期間に関する情報が関連付けられている、請求項２に記載の種卵検査装置。
【請求項４】
前記学習済モデルは、さらに、前記取得部が取得した前記種卵についての鶏種に関する情報を入力として受け付けるように構成されており、
前記学習用データの前記ラベルには、さらに、前記他の種卵についての鶏種に関する情報が関連付けられている、請求項２または３に記載の種卵検査装置。
【請求項５】
前記学習済モデルは、さらに、前記取得部が取得した前記種卵のサイズに関する情報を入力として受け付けるように構成されており、
前記学習用データの前記ラベルには、さらに、前記他の種卵のサイズに関する情報が関連付けられている、請求項２〜４のいずれか１項に記載の種卵検査装置。
【請求項６】
前記学習済モデルは、さらに、前記取得部が取得した前記種卵が載せられるトレイの色に関する情報を入力として受け付けるように構成されており、
前記学習用データの前記ラベルには、さらに、前記他の種卵が載せられるトレイの色に関する情報が関連付けられている、請求項２〜５のいずれか１項に記載の種卵検査装置。
【請求項７】
前記取得部は、前記種卵の温度を検知するための検知部を備える、請求項１に記載の種卵検査装置。
【請求項８】
種卵検査装置による種卵分類の特定方法であって、
検査対象の種卵に光を発光部から照射させるステップと、
前記発光部から照射されて前記種卵を透過した光を受光部で受けるステップと、
前記受光部が受けた光以外の、前記種卵または前記種卵の外部から得られる情報を取得するステップと、
前記受けるステップで受けた光と、前記取得するステップで取得した情報とから、前記種卵が属する種卵分類を特定するステップとを備える、特定方法。
【請求項９】
種卵検査装置で実行される種卵分類の特定プログラムであって、
前記特定プログラムは、前記種卵検査装置に、
検査対象の種卵に光を発光部から照射させるステップと、
前記発光部から照射されて前記種卵を透過した光を受光部で受けるステップと、
前記受光部が受けた光以外の、前記種卵または前記種卵の外部から得られる情報を取得するステップと、
前記受けるステップで受けた光と、前記取得するステップで取得した情報とから、前記種卵が属する種卵分類を特定するステップとを実行させる、特定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、種卵を検査するための技術に関する。
【背景技術】
【０００２】
鶏卵等に代表される卵には、食用のための卵の他に雛を生産するための卵や、ワクチンを生産するための卵がある。このような卵は、特に「種卵（または孵化途中卵）」と称されている。孵卵場では、種卵をセッタートレイと称される専用のトレイに載置し、孵卵器の中へ入れて孵卵工程を行う。
【０００３】
ところで、孵卵工程を開始する日が入卵日とされ、その入卵日からの経過日数が、孵卵日数とされる。雛は、ほぼ孵卵日数２１日目に生まれることになる。雛を生産するための種卵は、およそ孵卵日数１１日目〜１５日目になると、孵卵日数２１日目に予定どおりの数の雛を出荷することができるかを事前に確認するため、中間検卵と呼ばれる検査が行われる。また、ワクチンを生産するための種卵は、ウィルスを注入する直前の孵卵日数１０日目に所定の検査が行われる。
【０００４】
種卵といえども、すべての種卵が順調に成長するわけではなく、ある割合で当初から未受精の卵が含まれていたり、また、孵卵工程の途中において、胚の発育が止まってしまう発育中止卵がある。このような未受精卵や発育中止卵には、中身が腐ってしまうものがあり、中身が腐った卵は腐敗卵と呼ばれる。
【０００５】
通常、雛を生産するための種卵に対しては、孵化後に伝染病等に感染するリスクを抑えるために、種卵の状態でワクチン接種が行われる。すると、セッタートレイに収容されている種卵にワクチンを接種する際に、腐敗によって内圧が上昇した種卵が、殻に注射針が接触するときの衝撃によって爆発してしまうことがある。また、爆発しないまでも、腐敗卵にワクチンを接種することによって注射針が汚染されてしまい、その汚染された注射針によって他の健全な種卵も汚染されてしまうことになる。さらに、他の種卵から雛が孵化した後に腐敗卵が爆発すると、すでに生まれた雛を汚染してしまうことがある。
【０００６】
このような汚染を未然に防ぐために、種卵を胚が生存している種卵である「生存卵」と、未受精卵や、胚が死亡している発育中止卵である「非生存卵」とに分ける検査が行われる。すなわち、種卵が生存卵であれば「良」とし、非生存卵であれば「不良」とする良否判定が行われる。従来、種卵の良否判定には、たとえば、特許文献１〜３に提案されているように、主に光学的な手法が採用されている。これらの手法では、種卵に所定の光を照射し、種卵を通過した光に生体活動に起因する変化が含まれているかどうかを解析することによって良否判定が行われる。このようにして非生存卵と判定された種卵は直ちに除去されて、生存卵が汚染されるのを防いでいる。
【０００７】
他にも、特許文献４，５は、光学的な手法を用いて、種卵から孵化する雛の性別を推定するための技術を開示している。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１５−０３５９６３号公報
【特許文献２】特表２０１６−５３８５５０号公報
【特許文献３】特開２０１２−１０８０４０号公報
【特許文献４】特開２０１３−１８８２２２号公報
【特許文献５】特開２０１７−２２７４７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
特許文献１〜５に開示される技術によって生存卵などを推定することができるが、近年では、さらに種卵の生産性を高めることが求められている。そのため、より正確に種卵分類を特定することができる技術が望まれている。
【課題を解決するための手段】
【００１０】
本開示の一例では、種卵検査装置は、検査対象の種卵に光を照射するための発光部と、上記発光部から照射されて上記種卵を透過した光を受けるための受光部と、上記受光部が受けた光以外の、上記種卵または上記種卵の外部から得られる情報を取得する取得部と、上記受光部が受けた光と、上記取得部が取得した情報とから、上記種卵が属する種卵分類を特定するための分類部と備える。
【００１１】
本開示の一例では、上記種卵検査装置は、さらに、上記受光部が受けた光から、上記種卵の内部の特徴を表す特徴量を抽出するための特徴量抽出部と、上記特徴量の入力を受けて、上記種卵が複数の種卵分類の各々に属する可能性を推定結果として出力する学習済モデルとを備える。上記学習済モデルは、学習用データセットを用いた学習処理により生成されており、上記学習用データセットは、他の種卵について得られた特徴量に対して、当該他の種卵の種卵分類をラベルとして関連付けた学習用データを複数含む。
【００１２】
本開示の一例では、上記学習済モデルは、さらに、上記取得部が取得した上記種卵を孵卵器に入れている期間に関する情報を入力として受け付けるように構成されている。上記学習用データの上記ラベルには、さらに、上記他の種卵を孵卵器に入れている期間に関する情報が関連付けられている。
【００１３】
本開示の一例では、上記学習済モデルは、さらに、上記取得部が取得した上記種卵についての鶏種に関する情報を入力として受け付けるように構成されている。上記学習用データの上記ラベルには、さらに、上記他の種卵についての鶏種に関する情報が関連付けられている。
【００１４】
本開示の一例では、上記学習済モデルは、さらに、上記取得部が取得した上記種卵のサイズに関する情報を入力として受け付けるように構成されている。上記学習用データの上記ラベルには、さらに、上記他の種卵のサイズに関する情報が関連付けられている。
【００１５】
本開示の一例では、上記学習済モデルは、さらに、上記取得部が取得した上記種卵が載せられるトレイの色に関する情報を入力として受け付けるように構成されている。上記学習用データの上記ラベルには、さらに、上記他の種卵が載せられるトレイの色に関する情報が関連付けられている。
【００１６】
本開示の一例では、上記取得部は、上記種卵の温度を検知するための検知部を備える。
本開示の他の例では、種卵検査装置による種卵分類の特定方法は、検査対象の種卵に光を発光部から照射させるステップと、上記発光部から照射されて上記種卵を透過した光を受光部で受けるステップと、上記受光部が受けた光以外の、上記種卵または上記種卵の外部から得られる情報を取得するステップと、上記受けるステップで受けた光と、上記取得するステップで取得した情報とから、上記種卵が属する種卵分類を特定するステップとを備える。
【００１７】
本開示の他の例では、種卵検査装置で実行される種卵分類の特定プログラムは、上記種卵検査装置に、検査対象の種卵に光を発光部から照射させるステップと、上記発光部から照射されて上記種卵を透過した光を受光部で受けるステップと、上記受光部が受けた光以外の、上記種卵または上記種卵の外部から得られる情報を取得するステップと、上記受けるステップで受けた光と、上記取得するステップで取得した情報とから、上記種卵が属する種卵分類を特定するステップとを実行させる。
【図面の簡単な説明】
【００１８】
【図１】第１の実施の形態に従う種卵検査装置の構成を示す斜視図である。
【図２】第１の実施の形態に従う種卵検査装置の構成を示す側面図である。
【図３】第１の実施の形態に従う計測部の構成を示す概念側面図である。
【図４】第１の実施の形態に従う学習システムの装置構成の一例を示す図である。
【図５】第１の実施の形態に従う学習用データセットのデータ構造の一例を示す図である。
【図６】第１の実施の形態における学習工程および推定工程を実現するための機能構成の一例を示す図である。
【図７】第１の実施の形態に従う学習装置による学習工程を実現するための構成の一例を示す図である。
【図８】第１の実施の形態に従う特徴抽出部による特徴抽出処理の一例を概略的に示す図である。
【図９】第１の実施の形態に従う特徴抽出部による特徴抽出処理の他の例を概略的に示す図である。
【図１０】第１の実施の形態に従う種卵検査装置による推定工程を実現するための主要な構成を示す図である。
【図１１】第１の実施の形態に従う種卵検査装置のハードウェア構成の一例を示す図である。
【図１２】第１の実施の形態に従う学習装置のハードウェア構成の一例を示す図である。
【図１３】第１の実施の形態に従う学習装置による学習処理の流れを示すフローチャートである。
【図１４】第１の実施の形態に従う種卵検査装置による種卵分類の推定処理の流れを示すフローチャートである。
【図１５】第１変形例に従う学習用データセットのデータ構造の一例を示す図である。
【図１６】第１変形例に従う学習工程を実現するための構成の一例を示す図である。
【図１７】第１変形例に従う性別推定工程を実現するための構成の一例を示す図である。
【図１８】第２変形例に従う学習用データセット２２４Ｂのデータ構造の一例を示す図である。
【図１９】第２変形例に従う学習工程を実現するための構成の一例を示す図である。
【図２０】第２変形例に従う種卵分類の推定工程を実現するための構成の一例を示す図である。
【図２１】第２の実施の形態における、種卵温度と、種卵内の胚の心拍数との関係を示す図である。
【図２２】第２の実施の形態における、異なる温度下で計測された透過光量データのそれぞれを周波数分解したスペクトルを示す図である。
【図２３】第２の実施の形態に従う種卵検査装置の機能構成の一例を示す図である。
【発明を実施するための形態】
【００１９】
以下、図面を参照しつつ、本発明に従う各実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、これらについての詳細な説明は繰り返さない。なお、以下で説明される各実施の形態および各変形例は、適宜選択的に組み合わされてもよい。
【００２０】
＜第１の実施の形態＞
［Ａ．種卵検査装置１００］
図１〜図３を参照して、本実施の形態に係る種卵検査装置について説明する。図１〜図３に示すように、種卵検査装置１００は、種卵Ｅを通過した光の変化を計測する計測部１０と、計測部１０による計測結果に基づいて種卵Ｅの良否判定を行う判定部５と、計測部１０の制御を行う制御部６と、判定部５の判定結果に基づいて種卵Ｅを移載する移載ヘッド２１が取り付けられた移載部２０と、複数の種卵Ｅが収容されたセッタートレイ２を搬送する搬送部３０を備えている。
【００２１】
次に、計測部１０について、詳しく説明する。図２および図３に示すように、計測部１０には、種卵Ｅに向けて所定の光を照射する発光部１２と、発光部１２によって照射された光のうち、種卵Ｅの内部を通過した光を受光する受光部１１とが設けられている。
【００２２】
発光部１２は、たとえば、発光ダイオード等の複数の発光素子が、後述する搬送部３０によって搬送されるセッタートレイ２に収容された複数の種卵Ｅのそれぞれの配置に対応するように配置されている。なお、発光素子としては、所定の波長領域の光を発光する素子であれば、発光ダイオードに限られず、たとえば、レーザ光でもよい。
【００２３】
受光部１１には、発光部１２の発光素子の配置に対応するようにキャップ１３が複数取り付けられている。すなわち、キャップ１３の数はセッタートレイ２上の種卵Ｅの数と同数となっている。キャップ１３は柔軟性と遮光性を有しており、種卵Ｅの上端部に接触して、種卵Ｅの内部から透過してくる光のみを通過させる構造となっている。
【００２４】
複数のキャップ１３の内側には、フォトダイオード等の受光素子が配置されている。発光部１２の発光素子が発した光は種卵Ｅの内部を通り、種卵Ｅの上端部から通過してくる光のみがキャップ１３の内側で受光素子によって受光される。受光素子は受光した光を電気信号に変換し、判定部５へ送る。なお、受光素子としては、種卵Ｅを通過した所定の光を信号として捉えることができれば、フォトダイオード等に限られない。
【００２５】
判定部５は、種卵Ｅが生存卵であれば「良」とし、非生存卵であれば「不良」とする良否判定を行う演算処理装置である。判定部５は、受光素子から送られてきた電気信号の変化や通過光量によって、セッタートレイ２に収容されているそれぞれの種卵Ｅが生存卵であるか、非生存卵Ｆであるかの良否判定を行う。
【００２６】
制御部６は、計測部１０の制御を行う演算処理装置であり、発光部１２の発光量制御や、計測伸縮部１５を駆動して受光部１１を上下動させるタイミング等の制御を行っている。なお、本実施の形態では、判定部５と制御部６を別々の演算処理装置として記載しているが、これらの機能を単一の演算処理装置で実現することができる。また、計測部１０の制御以外に、移載部２０や搬送部３０の制御を行ってもよい。
【００２７】
受光部１１は、計測部１０のフレームに固定された固定部１４に、計測伸縮部１５を介して取り付けられている。計測伸縮部１５は、種卵Ｅの計測時には受光部１１を下降させてキャップ１３を種卵Ｅの上端部に密着させる。また、計測後には受光部１１を図２の破線で描かれた位置まで上昇させる。本実施の形態では、計測伸縮部１５はエアシリンダを用いているが、受光部１１を昇降させることができれば、エアシリンダに限られず、たとえば、モータ駆動によって昇降させてもよい。
【００２８】
次に、移載ヘッド２１が取り付けられた移載部２０について、詳しく説明する。図２に示すように、移載部２０には、判定部５による判定結果に基づいて種卵Ｅを移載する移載ヘッド２１と、移載ヘッド２１がセッタートレイ２から移載した非生存卵Ｆを種卵検査装置１００の外部へ排除する非生存卵排除部２５とが設けられている。
【００２９】
移載ヘッド２１には、非生存卵Ｆを選択的に真空吸引するための吸盤２２が、後述する搬送部３０によって搬送されるセッタートレイ２に収容された種卵Ｅの半数の配置に対応するように複数取り付けられている。本実施の形態では、移載ヘッド２１による一回の移載動作で、セッタートレイ２に収容されている複数の種卵Ｅの半分を移載することができる。つまり、１つのセッタートレイ２を前半部分と後半部分に分けて、二回の移載動作でセッタートレイ２上の非生存卵Ｆを取り除くので、移載ヘッド２１に取り付けられている吸盤２２の数は、受光部１１に取り付けられているキャップ１３の半数で構成されている。
【００３０】
移載ヘッド２１には、真空を発生させるコンプレッサ(図示せず)に繋がれた真空配管が複数の吸盤２２のそれぞれに設けられており、前述の判定部５の判定結果に基づいて、吸盤２２がセッタートレイ２上の種卵Ｅの中から非生存卵Ｆと判定されたものを選択的に真空吸引することができるように構成されている。また、セッタートレイ２から非生存卵Ｆを選択的に移載する技術として特開２０１２−２３１７００などに詳しい移載技術が記載されており、その技術等を利用することができる。
【００３１】
移載ヘッド２１は、移載部２０のフレームに固定された移載スライド部２３に、移載伸縮部２４を介して接続されている。移載伸縮部２４は、非生存卵Ｆを移載する時には移載ヘッド２１を下降させて吸盤２２を非生存卵Ｆの上端部に密着させる。また、非生存卵Ｆに対して真空吸引が行われた後には移載ヘッド２１を図２の破線で描かれた位置まで上昇させる。本実施の形態では、移載伸縮部２４はエアシリンダを用いているが、移載ヘッド２１を昇降させることができれば、エアシリンダに限られず、たとえば、モータ駆動によって昇降させてもよい。
【００３２】
移載スライド部２３は、移載ヘッド２１をセッタートレイ２上から非生存卵排除部２５上まで水平移動させるスライダである。本実施の形態では、移載スライド部２３の駆動にはモータとボールねじを用いているが、移載ヘッド２１を水平移動させることができれば、モータとボールねじに限られず、たとえば、リニアモータの駆動によって水平移動させてもよい。
【００３３】
非生存卵排除部２５は、移載ヘッド２１がセッタートレイ２から移載した非生存卵Ｆを種卵検査装置１００の外部へ排除することができるように、わずかに傾斜を付けて移載部２０に取り付けられている。移載ヘッド２１が非生存卵排除部２５上で非生存卵Ｆの真空吸引を解除すると、非生存卵Ｆは非生存卵排除部２５上を傾斜面に沿って転がり、種卵検査装置１００の外部に置かれた非生存卵用の回収容器(図示せず)に回収される。本実施の形態では、非生存卵Ｆが自重で傾斜面を転がるように構成されているが、ベルトコンベア等を用いて能動的に非生存卵Ｆを排除するようにしてもよい。
【００３４】
移載部２０は、図１および図２に示すように、カバーで覆われている。これにより、腐敗卵が移載の衝撃によって爆発した場合に、種卵検査装置１００の外部へ腐敗卵の内容物が飛散しないようにしている。本実施の形態では、このカバーは不透明な部材で構成されているが、アクリル板などの透明な部材で構成すれば、種卵検査装置１００の外部へ腐敗卵の内容物が飛散しないようにしながら、外部から移載の様子を監視することも可能となる。
【００３５】
次に、搬送部３０について説明する。図１および図２に示すように、搬送部３０には、種卵Ｅが収容されているセッタートレイ２を搬入方向３へ搬送し、計測等が行われた後のセッタートレイ２を搬出方向４へ搬送するためのドグ３１が設けられている。
【００３６】
ドグ３１は、セッタートレイ２を搬送方向の前後から挟んで搬送するための部材である。ドグ３１の端部は、搬送部３０の搬送方向に向かって右側と左側に設けられた２本のチェーン(図示せず)に連結されており、２本のチェーンが同時に駆動することで、搬送面３２上を滑らせながらセッタートレイ２を搬送する。本実施の形態では、図３に示すように、搬送面３２はセッタートレイ２を滑らせることができるようにステンレス部材３３で構成されているが、受光部１１の直下の計測場所では、発光部１２からの光を通すことができるように搬送面３２が透明体であるガラス部材３４となっている。
【００３７】
次に、本実施の形態に係る種卵検査装置１００の動作について説明する。
孵卵器から取り出したセッタートレイ２を搬送部３０上のドグ３１とドグ３１との間の搬入位置に載せると、搬送部３０はセッタートレイ２を搬入方向３へ搬送し、受光部１１の直下(計測場所)までセッタートレイ２を搬送して停止する。
【００３８】
次に、計測部１０の計測動作について説明する。セッタートレイ２が計測場所で停止すると、図３に示すように、計測伸縮部１５は、受光部１１に取り付けられているキャップ１３が計測場所で停止している種卵Ｅの上端部に接触する位置まで受光部１１を下降させる。
【００３９】
キャップ１３が種卵Ｅの上端部に接触する位置まで受光部１１が下降すると、発光部１２の発光素子から光が照射され、光は種卵Ｅの内部を通過し、通過した光がキャップ１３の内側を通って、受光部１１の受光素子によって受光されることで計測が行われる。受光された光は電気信号に変換されて判定部５へ送られる。当該電気信号は、種卵Ｅを透過した光の強度を表わす。以下では、受光部１１から出力される電気信号を数値化したデータを「透過光量データ」ともいう。すなわち、透過光量データは、受光部１１の出力信号をＡ／Ｄ（Analog/Digital）変換することで得られる。透過光量データは、複数タイミングの透過光量を時系列に示す数値列であってもよいし、一タイミングの透過光量を示す数値であってもよい。
【００４０】
判定部５は、受光部１１から送られてきた電気信号の変化を基にセッタートレイ２上の複数の種卵Ｅそれぞれの良否判定を行い、判定結果を制御部６へ送る。その後、計測伸縮部１５は図２の破線で示す位置まで受光部１１を上昇させる。これで、計測部１０の計測動作は完了となる。
【００４１】
［Ｂ．学習システム５０］
図４および図５を参照して、本実施の形態に従う学習システム５０について説明する。図４は、学習システム５０の装置構成の一例を示す図である。
【００４２】
図４に示されるように、学習システム５０は、１つ以上の種卵検査装置１００と、１つ以上の学習装置２００とを含む。図４の例では、種卵検査装置１００として、種卵検査装置１００Ａ〜１００Ｄが示されている。以下では、種卵検査装置１００Ａ〜１００Ｄを総称して種卵検査装置１００ともいう。
【００４３】
種卵検査装置１００および学習装置２００は、互いに通信可能に構成される。種卵検査装置１００および学習装置２００は、有線で通信接続されてもよいし、無線で通信接続されてもよい。
【００４４】
学習装置２００は、ノート型のパソコン、デスクトップ型のパソコン、タブレット端末、または、その他の情報処理端末である。
【００４５】
学習システム５０が実行する処理は、学習済モデル１２６を生成する学習工程と、生成された学習済モデル１２６に基づいて検査対象の種卵の分類を推定する推定工程とに分けられる。以下では、図４を参照して、学習工程から推定工程までの大まかな流れについて説明する。
【００４６】
ステップＳ１において、学習装置２００は、種々の種卵検査装置１００から、種卵の検査時に用いられた上記透過光量データを取得する。図４の例では、学習装置２００は、種卵検査装置１００Ａ〜１００Ｃのそれぞれから透過光量データを収集している。
【００４７】
収集された透過光量データの各々には、種卵分類がラベル付けされる。ここでいう「種卵分類」とは、種卵の検査結果を区別するためのカテゴリーを意味する。典型的には、種卵分類は、種卵内部の胚の状態に応じて区別される。種卵分類は、推定結果として出力したい検査結果の種類に応じて種々に定義される。種卵分類がラベル付けされた透過光量データは、学習用データ２２５として学習装置２００に蓄積される。図４の例では、蓄積された複数の学習用データ２２５が学習用データセット２２４として示されている。
【００４８】
図５は、学習用データセット２２４のデータ構造の一例を示す図である。図５に示されるように、学習用データセット２２４は、複数の学習用データ２２５を含む。学習用データ２２５の各々において、学習用データＩＤ（Identification）と、透過光量データと、種卵分類とが対応付けられている。
【００４９】
本実施の形態においては、種卵分類は、胚が生存していることを示す「生存卵」と、胚が生存していないことを示す「非生存卵」とを含む。好ましくは、「非生存卵」は、さらに細かく分類され、たとえば、受精が失敗していることを示す「未受精卵」や、種卵の中身が腐敗していることを示す「腐敗卵」や、胚の発育が止まっていることを示す「中止卵」などに分類される。これらの分類は一例であり、学習用データセット２２４で規定される種卵分類の種類は、１種類であってもよいし、２種類以上であってもよい。
【００５０】
種卵分類のラベルは、たとえば、作業者がマウスやキーボードなどの入力デバイスを用いて手動で入力される。一例として、作業者は、実際に孵化が成功した種卵の透過光量データについては「生存卵」のラベルを関連付け、孵化に失敗した種卵については「非生存卵」のラベルを関連付ける。作業者は、より詳細なラベル付けを行う場合には、孵化に失敗した種卵を実際に割り、中身の状態に応じて「未受精卵」、「腐敗卵」、「中止卵」のいずれかのラベルを当該種卵の透過光量データに関連付ける。ラベルは、種卵分類を識別するための数値で表わされてもよいし、種卵分類の名前を示す文字列で表わされてもよい。
【００５１】
再び図４を参照して、ステップＳ２において、学習装置２００は、学習用データセット２２４を用いて予め定められた学習処理を実行し、透過光量データと種卵分類との間の相関関係を学習する。学習処理の詳細については後述する。学習処理により、透過光量データの入力を受けて種卵分類を出力する学習済モデル１２６が生成される。
【００５２】
ステップＳ３において、学習装置２００は、生成した学習済モデル１２６を種卵検査装置１００Ｄに送信する。種卵検査装置１００Ｄは、学習装置２００から受信した学習済モデル１２６を記憶する。なお、図４には、学習済モデル１２６の送信先が種卵検査装置１００Ｄに送信されている例が示されているが、学習済モデル１２６は、種卵検査装置１００Ａ〜１００Ｃに送信されてもよい。
【００５３】
ステップＳ４において、種卵検査装置１００Ｄは、検査対象の種卵について透過光量データを取得したとする。このことに基づいて、種卵検査装置１００Ｄは、学習済モデル１２６を用いて、当該透過光量データから検査対象の種卵分類を推定する。当該推定処理の詳細については後述する。
【００５４】
［Ｃ．概要］
次に、図６を参照して、学習装置２００による学習工程と、種卵検査装置１００による推定工程との概要について説明する。図６は、学習工程および推定工程を実現するための機能構成の一例を示す図である。
【００５５】
理解を容易にするために、以下では、学習処理中における人工知能モデルを「学習中モデル」と称し、学習処理が完了した人工知能モデルを「学習済モデル」と称する。
【００５６】
学習装置２００は、学習工程を実現するための構成として、学習用データセット２２４と、学習中モデル２２６と、特徴抽出部２５２と、パラメータ更新部２５４とを含む。
【００５７】
特徴抽出部２５２は、学習用データセット２２４に規定される透過光量データを順次取得し、当該透過光量データから、種卵の内部の特徴を表わす複数の特徴量（以下、「種卵特徴量」ともいう。）を抽出する。ここでいう「種卵特徴量」とは、種卵分類に相関する指標を意味する。抽出される種卵特徴量の種類は、特に限定されず、種卵分類と相関のある指標であればいずれでもよい。種卵特徴量の詳細については後述する。抽出された種卵特徴量は、学習中モデル２２６に入力される。
【００５８】
学習中モデル２２６は、特徴抽出部２５２から種卵特徴量の入力を受けて、種卵が予め定められた複数の種卵分類の各々に属する可能性を推定結果として出力する。学習中モデル２２６の構造や内部処理の詳細については後述する。
【００５９】
パラメータ更新部２５４は、学習中モデル２２６から出力される推定結果と、学習用データセット２２４に含まれているラベルとを比較し、当該推定結果がラベルによって示される正解値に近付くように、学習中モデル２２６の内部パラメータを更新する。このようなパラメータの更新処理が、学習用データセット２２４に含まれる全ての学習用データ２２５を用いて順次行われる。これにより、学習中モデル２２６の内部パラメータが最適化され、学習中モデル２２６は、学習が進むにつれて正確な推定結果を出力するようになる。学習処理が済んだ学習中モデル２２６は、学習済モデル１２６として種卵検査装置１００に送信される。
【００６０】
種卵検査装置１００は、推定工程を実現するための構成として、学習済モデル１２６と、特徴抽出部１５２と、分類部１５４とを含む。
【００６１】
特徴抽出部１５２は、検査対象の種卵の透過光量データを取得する。当該透過光量データは、種卵検査装置１００の発光部１２が検査対象の種卵に光を照射し、受光部１１が検査対象の種卵を透過した光を受けることで取得される。典型的には、発光部１２によって検査時に照射される光の波長成分は、学習用データに規定される透過光量データを得るために他の種卵検査装置１００で照射された光の波長成分と同じまたは略同じである。
【００６２】
特徴抽出部１５２は、検査対象の種卵について取得された透過光量データから、複数の種卵特徴量を抽出する。特徴抽出部１５２における特徴抽出処理は、学習装置２００の特徴抽出部２５２における特徴抽出処理と同じである。すなわち、特徴抽出部１５２が抽出する種卵特徴量の種類は、学習装置２００の特徴抽出部２５２が抽出する種卵特徴量の種類と同じである。特徴抽出部１５２は、抽出した種卵特徴量を学習済モデル１２６に出力する。
【００６３】
学習済モデル１２６は、特徴抽出部１５２によって抽出された複数の種卵特徴量の入力を受けて、検査対象の種卵が予め定められた複数の種卵分類のそれぞれに属する可能性を推定結果として出力する。学習済モデル１２６の構造や内部処理の詳細については後述する。学習済モデル１２６の推定結果は、分類部１５４に出力される。
【００６４】
分類部１５４は、学習済モデル１２６から出力される推定結果に基づいて、予め定められた複数の種卵分類の中から、検査対象の種卵が属する種卵分類を特定する。特定された種卵分類は、上述の制御部６に出力される。
【００６５】
以上のように、種卵検査装置１００は、学習用データセット２２４を用いて生成された学習済モデル１２６に基づいて、検査対象の種卵の分類を推定する。学習済モデル１２６の生成に用いられた学習用データセット２２４は、様々な透過光量データに対して種卵分類がラベル付けされている学習用データ２２５を複数含む。このような学習用データセット２２４を用いた機械学習処理により、透過光量データと種卵分類との間の相関関係が学習され、学習済モデル１２６の内部パラメータが自動的に最適化される。ルールベースの推定手法では、使用環境に応じて、種卵分類の推定処理に係るパラメータを最適化する必要があったが、学習済モデル１２６を用いた推定手法では、ルールベースの推定手法よりも、最適化すべきパラメータの数を大幅に減らすことができる。これにより、種々の環境に対応した種卵分類の推定処理を実現することができ、より柔軟に種卵を分類することができる。
【００６６】
［Ｄ．学習装置２００による学習工程］
次に、図７〜図９を参照して、学習装置２００による学習工程について詳細に説明する。図７は、学習装置２００による学習工程を実現するための構成の一例を示す図である。
【００６７】
上述のように、学習装置２００は、学習用データセット２２４を用いた機械学習を実行し、学習済モデル１２６を生成する。採用される機械学習の手法は、特に限定されず、たとえば、ディープラーニング（深層学習）やサポートベクターマシンなどの種々の機械学習が採用され得る。以下では、ディープラーニングを例に挙げて学習装置２００の学習工程を説明する。
【００６８】
図７を参照して、学習装置２００は、ディープラーニングによる学習処理を実現するための構成として、学習中モデル２２６と、特徴抽出部２５２と、パラメータ更新部２５４とを含む。
【００６９】
以下では、特徴抽出部２５２、学習中モデル２２６、およびパラメータ更新部２５４について順に説明する。
【００７０】
（Ｄ１．特徴抽出部２５２）
まず、図８および図９を参照して、特徴抽出部２５２の機能について説明する。図８は、特徴抽出部２５２による特徴抽出処理の一例を概略的に示す図である。
【００７１】
図８には、種卵の検査時に得られた１つの透過光量データ２２７が示されている。上述のように、透過光量データ２２７は、種卵検査装置１００の受光部１１の出力信号を時系列に数値化したデータである。透過光量データ２２７は、種卵検査装置１００の発光部１２の発光が開始された時刻Ｔ０から予め定められた時間ΔＴ（たとえば、２〜３秒）の間に受光部１１からサンプリングされた出力信号に相当する。
【００７２】
特徴抽出部２５２は、透過光量データ２２７を周波数分解し、周波数別のスペクトル強度を算出する。当該周波数分解は、たとえば、フーリエ変換により実現される。図８の例では、フーリエ変換の結果としてスペクトル２２９が示されている。種卵内の胚が正常である場合には、胚の胎動や心拍に起因して特定の周波数に対応するスペクトル強度が大きくなる。すなわち、特定の周波数に対応するスペクトル強度が大きいことは、胚が生存していることを示す。反対に、特定の周波数に対応するスペクトル強度が小さいことは、胚が活動していないことを示す。そのため、特定の周波数に対応するスペクトル強度は、胚が生存しているか否かを表わす指標となる。この点に着目して、特徴抽出部２５２は、スペクトル２２９に含まれる複数のスペクトル強度の内、特定の周波数に対応する１つ以上のスペクトル強度を種卵特徴量として抽出する。
【００７３】
一例として、特徴抽出部２５２は、周波数「ｆ１」に対応するスペクトル強度「ｍ１」と、周波数「ｆ２」に対応するスペクトル強度「ｍ２」とを種卵特徴量として抽出する。周波数「ｆ１」は、胚の平均的な胎動周期に相当し、たとえば、０〜２Ｈｚである。周波数「ｆ２」は、胚の平均的な心拍数に相当し、たとえば、２〜６Ｈｚである。
【００７４】
なお、特徴抽出部２５２によって抽出される種卵特徴量は、周波数「ｆ１」，「ｆ２」に対応するスペクトル強度「ｍ１」，「ｍ２」に限定されない。特徴抽出部２５２は、１つの周波数に対応するスペクトル強度を種卵特徴量として抽出してもよいし、３つ以上の周波数のそれぞれに対応するスペクトル強度を種卵特徴量として抽出してもよい。
【００７５】
次に、図９を参照して、他の種類の種卵特徴量について説明する。図９は、特徴抽出部２５２による特徴抽出処理の他の例を概略的に示す図である。
【００７６】
本例では、特徴抽出部２５２は、透過光量データ２２７を周波数分解して得られたスペクトル２２９から種卵特徴量を抽出するのではなく、時系列の透過光量データ２２７の内の、１つ以上の透過光量を種卵特徴量として抽出する。
【００７７】
このような透過光量に着目する理由は、次の通りである。透過光量は、種卵内部における物体の大きさや色に応じて変動する。たとえば、種卵が未受精卵である場合には、種卵の内部の多くが卵白で占められるため、透過光量が多くなる。また、種卵が腐敗卵である場合には、胚が黒く腐敗しているため、光の吸収量が多くなる。そのため、腐敗卵においては、透過光量が少なくなる。また、中止卵は、胚の成長が止まっているため、生存卵に比べて、透過光量が多くなる。そのため、種卵分類を推定する上では、透過光量が有効な指標となる。
【００７８】
この点に着目して、特徴抽出部２５２は、時系列の透過光量の内の、１つ以上の透過光量を種卵特徴量として抽出する。一例として、図９に示されるように、特徴抽出部２５２は、透過光量データ２２７に示される透過光量の内の最大値「ｍ３」を種卵特徴量として抽出する。他の例として、特徴抽出部２５２は、透過光量データ２２７に示される透過光量の平均値を種卵特徴量として抽出する。他の例として、特徴抽出部２５２は、透過光量データ２２７に示される透過光量の中央値を種卵特徴量として抽出する。
【００７９】
特徴抽出部２５２によって抽出された種卵特徴量「ｍ１」〜「ｍ３」は、学習中モデル２２６に入力される。
【００８０】
（Ｄ２．学習中モデル２２６）
次に、図７を参照して、学習中モデル２２６の構造と内部処理について説明する。図７に示されるように、学習中モデル２２６は、入力層Ｘと、中間層Ｈと、出力層Ｙとで構成される。
【００８１】
入力層Ｘは、複数のユニットｘ１〜ｘ３で構成される。以下では、ユニットｘ１〜ｘ３をユニットｘとも称する。ユニットｘの各々は、特徴抽出部２５２によって抽出された種卵特徴量の入力を受ける。入力層Ｘのユニット数は、入力される種卵特徴量の種類の数と同数である。ユニットｘ１は、たとえば、種卵特徴量「ｍ１」を受けるように構成される。ユニットｘ２は、たとえば、種卵特徴量「ｍ２」を受けるように構成される。ユニットｘ３は、たとえば、種卵特徴量「ｍ３」を受けるように構成される。ユニットｘ１，ｘ２，ｘ３のそれぞれは、入力された種卵特徴量を中間層Ｈの１層目の各ユニットに出力する。
【００８２】
中間層Ｈは、複数の層で構成されている。中間層Ｈの層数は、任意である。図７の例では、中間層Ｈは、Ｎ層で構成されている。中間層Ｈの各層は、複数のユニットを含む。図７の例では、中間層Ｈの１層目は、ユニットｈＡ１，ｈＡ２・・・で構成されている。中間層Ｈの最終層は、ユニットｈＮ１，ｈＮ２・・・で構成されている。
【００８３】
中間層Ｈの各層を構成する各ユニットは、前の層の各ユニットと、次の層の各ユニットと接続される。各層の各ユニットは、前の層の各ユニットからの各出力値を受けて、各出力値に重みを乗算し、それらの乗算結果を積算し、その積算結果に対して所定のバイアスを加算（または減算）し、その加算結果（または減算結果）を所定の関数（たとえば、ランプ関数）に入力し、その関数の出力値を次の層の各ユニットに出力する。
【００８４】
出力層Ｙは、複数のユニットｙ１〜ｙ４で構成される。以下では、ユニットｙ１〜ｙ４をユニットｙとも称する。ユニットｙの各々は、中間層Ｈの最終層の各ユニットｈＮ１，ｈＮ２・・・と接続される。ユニットｙの各々は、中間層Ｈの最終層の各ユニットからの出力値を受けて、各出力値に重みを乗算し、それらの乗算結果を積算し、その積算結果に対して所定のバイアスを加算（または減算）し、その加算結果（または減算結果）を所定の関数（たとえば、ランプ関数）に入力し、その関数の出力結果を出力値として出力する。
【００８５】
典型的には、出力層Ｙを構成するユニット数は、種卵分類の種類数に応じて決定される。一例として、「生存卵」、「未受精卵」、「腐敗卵」、「中止卵」の４種類のいずれかに種卵を分類する場合、出力層Ｙを構成するユニット数は、４つとなる。
【００８６】
ユニットｙ１は、種卵が「生存卵」である確率を示すスコア「ｓ１」を出力する。ユニットｙ２は、種卵が「未受精卵」である確率を示すスコア「ｓ２」を出力する。ユニットｙ３は、種卵が「腐敗卵」である確率を示すスコア「ｓ３」を出力する。ユニットｙ４は、種卵が「中止卵」である確率を示すスコア「ｓ４」を出力する。スコア「ｓ１」〜「ｓ４」は、たとえば、０以上１以下の数値で表わされる。
【００８７】
（Ｄ３．パラメータ更新部２５４）
次に、図７を参照して、パラメータ更新部２５４の機能について説明する。
【００８８】
まず、パラメータ更新部２５４は、ある学習用データ「α」に含まれる透過光量データについて学習中モデル２２６から出力された推定結果「ｓ１」〜「ｓ４」と、学習用データ「α」に含まれるラベルとを比較する。当該ラベルは、たとえば、スコア「ｓＡ」〜「ｓＤ」で表わされる。
【００８９】
一例として、ラベルが「生存卵」を示す場合には、（ｓＡ，ｓＢ，ｓＣ，ｓＤ）＝（１，０，０，０）となる。ラベルが「未受精卵」を示す場合には、（ｓＡ，ｓＢ，ｓＣ，ｓＤ）＝（０，１，０，０）となる。ラベルが「腐敗卵」を示す場合には、（ｓＡ，ｓＢ，ｓＣ，ｓＤ）＝（０，０，１，０）となる。ラベルが「中止卵」を示す場合には、（ｓＡ，ｓＢ，ｓＣ，ｓＤ）＝（０，０，０，１）となる。
【００９０】
パラメータ更新部２５４は、学習中モデル２２６の出力結果「ｓ１」〜「ｓ４」と、ラベル「ｓＡ」〜「ｓＤ」との間の誤差「Ｚ」を算出する。一例として、誤差「Ｚ」は、下記の式（１）に基づいて算出される。
【００９１】
Ｚ＝{（ｓ１−ｓＡ）２＋（ｓ２−ｓＢ）２＋（ｓ３−ｓＣ）２＋（ｓ４−ｓＤ）２}／２・・・（１）
次に、パラメータ更新部２５４は、誤差「Ｚ」が小さくなるように、学習中モデル２２６に含まれる各種のパラメータ（たとえば、重みやバイアス）を更新する。当該パラメータの更新は、たとえば、誤差逆伝播法により実現される。
【００９２】
パラメータ更新部２５４は、学習中モデル２２６に含まれるパラメータの更新処理を、学習用データセット２２４に含まれる各学習用データ２２５について繰り返し行う。その結果、学習用データセット２２４は、学習が進むにつれて正確な推定結果を出力するようになる。学習処理が済んだ学習中モデル２２６は、学習済モデル１２６として種卵検査装置１００に送信される。
【００９３】
なお、パラメータ更新部２５４は、学習中モデル２２６の内部パラメータを最適化するために、学習用データセット２２４に含まれる全ての学習用データ２２５を必ずしも用いる必要はなく、学習用データセット２２４に含まれる一部の学習用データ２２５を用いて学習用データ２２５を生成してもよい。この場合、残りの学習用データ２２５は、学習用データセット２２４の推定精度の評価などに用いられる。
【００９４】
［Ｅ．種卵検査装置１００による推定工程］
次に、図１０を参照して、種卵検査装置１００による推定工程について詳細に説明する。図１０は、種卵検査装置１００による推定工程を実現するための構成の一例を示す図である。
【００９５】
上述のように、種卵検査装置１００は、学習装置２００によって生成された学習済モデル１２６を用いて、検査対象の種卵の分類を推定する。
【００９６】
図１０に示されるように、種卵検査装置１００、本実施の形態に従う学習処理を実現するための構成として、特徴抽出部１５２と、学習済モデル１２６と、分類部１５４とを含む。これらは、上述の判定部５（図３参照）を構成する。
【００９７】
特徴抽出部１５２は、検査対象の種卵の透過光量データを取得し、当該透過光量データから種卵特徴量を抽出する。特徴抽出部１５２における特徴抽出処理は、学習装置２００の特徴抽出部２５２における特徴抽出処理と同じであるので、特徴抽出部１５２の機能の説明については繰り返さない。特徴抽出部１５２は、検査対象の種卵の透過光量データから抽出した種卵特徴量を学習済モデル１２６に出力する。
【００９８】
学習済モデル１２６は、特徴抽出部１５２によって抽出された複数の種卵特徴量の入力を受けて、検査対象の種卵が予め定められた複数の種卵分類の各々に属する可能性（確率）を出力する。学習済モデル１２６の構造や内部処理は、上述の学習中モデル２２６と同じであるので、学習済モデル１２６の構造や内部処理については説明を繰り返さない。学習済モデル１２６は、たとえば、推定結果として、検査対象の種卵が「生存卵」である確率を示すスコア「ｓ１」と、検査対象の種卵が「未受精卵」である確率を示すスコア「ｓ２」と、検査対象の種卵が「腐敗卵」である確率を示すスコア「ｓ３」と、検査対象の種卵が「中止卵」である確率を示すスコア「ｓ４」とを出力する。スコア「ｓ１」〜「ｓ４」は、分類部１５４に出力される。
【００９９】
分類部１５４は、スコア「ｓ１」〜「ｓ４」に基づいて、検査対象の種卵の分類を判別する。一例として、分類部１５４は、スコア「ｓ１」〜「ｓ４」の最大スコアに対応する種卵分類を最終的な分類結果として出力する。本実施の形態においては、分類部１５４は、検査対象の種卵を、「生存卵」、「未受精卵」、「腐敗卵」、および「中止卵」のいずれかに分類する。分類部１５４による分類結果は、上述の制御部６に出力される。
【０１００】
好ましくは、分類部１５４は、最大スコアが所定値以下である場合には、種別分類「分類不明」として出力する。
【０１０１】
［Ｆ．種卵検査装置１００のハードウェア構成］
図１１を参照して、種卵検査装置１００のハードウェア構成について順に説明する。図１１は、種卵検査装置１００のハードウェア構成の一例を示す図である。
【０１０２】
種卵検査装置１００は、制御装置１０１と、ＲＯＭ（Read  Only  Memory）１０２と、ＲＡＭ（Random  Access  Memory）１０３と、通信インターフェイス１０４と、表示インターフェイス１０５と、入力インターフェイス１０７と、カメラインターフェイス１０９と、温度センサ１１１と、記憶装置１２０とを含む。これらのコンポーネントは、バス１１５に接続される。
【０１０３】
制御装置１０１は、たとえば、少なくとも１つの集積回路によって構成される。集積回路は、たとえば、少なくとも１つのＣＰＵ（Central  Processing  Unit）、少なくとも１つのＧＰＵ（Graphics Processing Unit）、少なくとも１つのＡＳＩＣ（Application  Specific  Integrated  Circuit）、少なくとも１つのＦＰＧＡ（Field  Programmable  Gate  Array）、またはそれらの組み合わせなどによって構成され得る。
【０１０４】
制御装置１０１は、種卵分類の特定プログラム１２２などの各種プログラムを実行することで種卵検査装置１００の動作を制御する。制御装置１０１は、各種プログラムの実行命令を受け付けたことに基づいて、記憶装置１２０またはＲＯＭ１０２からＲＡＭ１０３に実行対象のプログラムを読み出す。ＲＡＭ１０３は、ワーキングメモリとして機能し、プログラムの実行に必要な各種データを一時的に格納する。
【０１０５】
通信インターフェイス１０４には、ＬＡＮ（Local  Area  Network）やアンテナなどが接続される。種卵検査装置１００は、通信インターフェイス１０４を介して、外部機器との間でデータをやり取りする。当該外部機器は、たとえば、他の種卵検査装置１００、上述の学習装置２００、およびサーバーなどを含む。
【０１０６】
表示インターフェイス１０５には、表示デバイス１０６が接続される。表示インターフェイス１０５は、制御装置１０１などからの指令に従って、表示デバイス１０６に対して、画像を表示するための画像信号を送出する。表示デバイス１０６は、たとえば、液晶表示デバイス、有機ＥＬ（Electro  Luminescence）表示デバイス、またはその他の表示機器である。一例として、表示デバイス１０６には、種卵分類の推定結果などが逐次的に表示される。なお、表示デバイス１０６は、種卵検査装置１００と一体的に構成されてもよいし、種卵検査装置１００とは別に構成されてもよい。
【０１０７】
入力インターフェイス１０７には、入力デバイス１０８が接続される。入力デバイス１０８は、たとえば、マウス、キーボード、タッチパネル、またはユーザの操作を受け付けることが可能なその他の装置である。なお、入力デバイス１０８は、種卵検査装置１００と一体的に構成されてもよいし、種卵検査装置１００とは別に構成されてもよい。
【０１０８】
カメラインターフェイス１０９は、カメラ１１０と種卵検査装置１００とを有線または無線で接続するためのインターフェイスである。カメラ１１０は、セッタートレイ２に載せられている検査対象の種卵を撮影視野に含むように配置される。カメラ１１０は、種卵検査装置１００と一体的に構成されてもよいし、種卵検査装置１００と一体的に構成されてもよいし、種卵検査装置１００とは別に構成されてもよい。
【０１０９】
温度センサ１１１は、セッタートレイ２に載せられている検査対象の種卵の表面温度を検知する。温度センサ１１１は、サーモパイルなどの非接触型の温度センサである。温度センサ１１１によって検知された温度は、「第２の実施の形態」における心拍数推定処理で用いられる。
【０１１０】
記憶装置１２０は、たとえば、ハードディスクやフラッシュメモリなどの記憶媒体である。記憶装置１２０は、たとえば、特定プログラム１２２と、学習済モデル１２６とを格納する。特定プログラム１２２および学習済モデル１２６の格納場所は、記憶装置１２０に限定されず、制御装置１０１の記憶領域（たとえば、キャッシュメモリなど）、ＲＯＭ１０２、ＲＡＭ１０３、外部機器（たとえば、サーバー）などに格納されていてもよい。
【０１１１】
なお、特定プログラム１２２は、単体のプログラムとしてではなく、任意のプログラムの一部に組み込まれて提供されてもよい。この場合、特定プログラム１２２による種卵分類の推定処理は、任意のプログラムと協働して実現される。このような一部のモジュールを含まないプログラムであっても、本実施の形態に従う特定プログラム１２２の趣旨を逸脱するものではない。さらに、特定プログラム１２２によって提供される機能の一部または全部は、専用のハードウェアによって実現されてもよい。さらに、少なくとも１つのサーバーが特定プログラム１２２の処理の一部を実行する所謂クラウドサービスのような形態で種卵検査装置１００が構成されてもよい。
【０１１２】
［Ｇ．学習装置２００のハードウェア構成］
図１２を参照して、学習装置２００のハードウェア構成について順に説明する。図１２は、学習装置２００のハードウェア構成の一例を示す図である。
【０１１３】
学習装置２００は、制御装置２０１と、ＲＯＭ２０２と、ＲＡＭ２０３と、通信インターフェイス２０４と、表示インターフェイス２０５と、入力インターフェイス２０７と、記憶装置２２０とを含む。これらのコンポーネントは、バス２１５に接続される。
【０１１４】
制御装置２０１は、たとえば、少なくとも１つの集積回路によって構成される。集積回路は、たとえば、少なくとも１つのＣＰＵ、少なくとも１つのＧＰＵ、少なくとも１つのＡＳＩＣ、少なくとも１つのＦＰＧＡ、またはそれらの組み合わせなどによって構成され得る。
【０１１５】
制御装置２０１は、学習プログラム２２２などの各種プログラムを実行することで学習装置２００の動作を制御する。制御装置２０１は、各種プログラムの実行命令を受け付けたことに基づいて、記憶装置２２０またはＲＯＭ２０２からＲＡＭ２０３に実行対象のプログラムを読み出す。ＲＡＭ２０３は、ワーキングメモリとして機能し、プログラムの実行に必要な各種データを一時的に格納する。
【０１１６】
通信インターフェイス２０４には、ＬＡＮやアンテナなどが接続される。学習装置２００は、通信インターフェイス２０４を介して、外部機器との間でデータをやり取りする。当該外部機器は、たとえば、種卵検査装置１００およびサーバーなどを含む。
【０１１７】
表示インターフェイス２０５には、表示デバイス２０６が接続される。表示インターフェイス２０５は、制御装置２０１などからの指令に従って、表示デバイス２０６に対して、画像を表示するための画像信号を送出する。表示デバイス２０６は、たとえば、液晶表示デバイス、有機ＥＬ表示デバイス、またはその他の表示機器である。なお、表示デバイス２０６は、学習装置２００と一体的に構成されてもよいし、学習装置２００とは別に構成されてもよい。
【０１１８】
一例として、表示デバイス２０６には、学習用データ生成画面が表示される。学習用データ生成画面は、種卵検査装置１００の各々から収集した透過光量データに対してラベル付けの作業を行うための画面である。学習用データ生成画面は、ラベル付け対象の透過光量データの表示領域と、次の透過光量データを表示させるためのボタンと、前の透過光量データを表示させるためのボタンと、種卵分類の選択を受け付けるための種卵分類選択欄とを含む。学習用データ生成画面に対する操作は、たとえば、入力デバイス２０８を用いて実現される。種卵分類選択欄において種卵分類が選択された状態で、学習用データ生成画面上のＯＫボタンが押下されると、学習装置２００は、表示中の透過光量データに、選択された種卵分類を関連付ける。関連付けられたデータは、学習用データ２２５として学習用データセット２２４に格納される。
【０１１９】
入力インターフェイス２０７には、入力デバイス２０８が接続される。入力デバイス２０８は、たとえば、マウス、キーボード、タッチパネル、またはユーザの操作を受け付けることが可能なその他の装置である。なお、入力デバイス２０８は、学習装置２００と一体的に構成されてもよいし、学習装置２００とは別に構成されてもよい。
【０１２０】
記憶装置２２０は、たとえば、ハードディスクやフラッシュメモリなどの記憶媒体である。記憶装置２２０は、たとえば、学習プログラム２２２と、学習用データセット２２４と、学習中モデル２２６とを格納する。これらの格納場所は、記憶装置２２０に限定されず、制御装置２０１の記憶領域（たとえば、キャッシュメモリなど）、ＲＯＭ２０２、ＲＡＭ２０３、外部機器（たとえば、サーバー）などに格納されていてもよい。
【０１２１】
なお、学習プログラム２２２は、単体のプログラムとしてではなく、任意のプログラムの一部に組み込まれて提供されてもよい。この場合、学習プログラム２２２による学習処理は、任意のプログラムと協働して実現される。このような一部のモジュールを含まないプログラムであっても、本実施の形態に従う学習プログラム２２２の趣旨を逸脱するものではない。さらに、学習プログラム２２２によって提供される機能の一部または全部は、専用のハードウェアによって実現されてもよい。さらに、少なくとも１つのサーバーが学習プログラム２２２の処理の一部を実行する所謂クラウドサービスのような形態で学習装置２００が構成されてもよい。
【０１２２】
［Ｈ．学習処理のフローチャート］
図１３を参照して、学習装置２００による学習処理のフローについて説明する。図１３は、学習装置２００による学習処理の流れを示すフローチャートである。
【０１２３】
図１３に示される処理は、学習装置２００の制御装置２０１が上述の学習プログラム２２２（図１２参照）を実行することにより実現される。他の局面において、処理の一部または全部が、回路素子またはその他のハードウェアによって実行されてもよい。
【０１２４】
ステップＳ１１０において、制御装置２０１は、変数「ｉ」を初期化する。一例として、変数「ｉ」は、ゼロに初期化される。
【０１２５】
ステップＳ１１２において、制御装置２０１は、学習用データセット２２４に含まれる学習用データ２２５の中から、学習用データＩＤが変数「ｉ」と一致するものを取得する。
【０１２６】
ステップＳ１１４において、制御装置２０１は、上述の特徴抽出部２５２（図６参照）として機能し、ステップＳ１１２で取得した学習用データに含まれる透過光量データから種卵特徴量を抽出する。
【０１２７】
ステップＳ１１６において、制御装置２０１は、ステップＳ１１４で抽出した種卵特徴量を学習中モデル２２６に入力する。これにより、学習中モデル２２６は、学習対象の透過光量データが複数の種卵分類の各々に属する可能性を推定結果として出力する。
【０１２８】
ステップＳ１１８において、制御装置２０１は、上述のパラメータ更新部２５４（図６参照）として機能し、ステップＳ１１０で取得した学習用データ２２５に規定されるラベルと、ステップＳ１１６で得られた推定結果との間の誤差を算出し、当該誤差が現在よりも小さくなるように学習中モデル２２６の内部パラメータを更新する。
【０１２９】
ステップＳ１２０において、制御装置２０１は、学習処理を終了するか否かを判断する。一例として、制御装置２０１は、変数「ｉ」が所定値よりも大きい場合に、学習処理を終了すると判断する。あるいは、制御装置２０１は、学習用データセット２２４に含まれる全ての学習用データ２２５を学習した場合に、学習処理を終了すると判断する。制御装置２０１は、学習処理を終了すると判断した場合（ステップＳ１２０においてＹＥＳ）、図１３に示される学習処理を終了する。そうでない場合には（ステップＳ１２０においてＮＯ）、制御装置２０１は、制御をステップＳ１２２に切り替える。
【０１３０】
ステップＳ１２２において、制御装置２０１は、変数「ｉ」をインクリメントする。すなわち、制御装置２０１は、変数「ｉ」を１増加する。
【０１３１】
以上のように、制御装置２０１は、学習用データセット２２４に含まれる学習用データ２２５について機械学習処理を実行し、学習済モデル１２６を生成する。なお、学習用データセット２２４が更新された場合には、制御装置２０１は、新たな学習用データセット２２４を用いて、学習済モデル１２６を再学習してもよい。この場合、再学習前の学習済モデル１２６について、図１３に示される学習処理が実行される。
【０１３２】
［Ｉ．推定処理のフローチャート］
図１４を参照して、種卵検査装置１００による種卵分類の推定処理のフローについて説明する。図１４は、種卵検査装置１００による種卵分類の推定処理の流れを示すフローチャートである。
【０１３３】
図１４に示される処理は、種卵検査装置１００の制御装置１０１が上述の特定プログラム１２２（図１１参照）を実行することにより実現される。他の局面において、処理の一部または全部が、回路素子またはその他のハードウェアによって実行されてもよい。
【０１３４】
ステップＳ１５０において、制御装置１０１は、検査対象の種卵を載せているセッタートレイ２（図１〜図３参照）が予め定められた位置に搬送されたことに基づいて、検査対象の各種卵について透過光量の測定を開始する。これにより、制御装置１０１は、セッタートレイ２に載せられている検査対象の各種卵について透過光量データを取得する。
【０１３５】
ステップＳ１５２において、制御装置１０１は、変数「ｊ」を初期化する。一例として、変数「ｊ」は、ゼロに初期化される。
【０１３６】
ステップＳ１５４において、制御装置１０１は、上述の特徴抽出部１５２（図６参照）として機能し、ステップＳ１５０で得られた複数の透過光量データの内の「ｊ」番目の透過光量データから種卵特徴量を抽出する。
【０１３７】
ステップＳ１５６において、制御装置１０１は、ステップＳ１５４で抽出した種卵特徴量を学習済モデル１２６に入力する。これにより、学習済モデル１２６は、検査対象の種卵が複数の種卵分類の各々に属する可能性を推定結果として出力する。
【０１３８】
ステップＳ１５８において、制御装置１０１は、上述の分類部１５４（図６参照）として機能し、ステップＳ１５６で得られた推定結果に基づいて、「ｊ」番目の種卵について種卵分類を特定する。
【０１３９】
ステップＳ１６０において、制御装置１０１は、検査対象の全ての種卵について種卵分類を特定したか否かを判断する。制御装置１０１は、検査対象の全ての種卵について種卵分類を特定したと判断した場合（ステップＳ１６０においてＹＥＳ）、制御をステップＳ１６４に切り替える。そうでない場合には（ステップＳ１６０においてＮＯ）、制御装置１０１は、制御をステップＳ１６２に切り替える。
【０１４０】
ステップＳ１６２において、制御装置１０１は、変数「ｊ」をインクリメントする。すなわち、制御装置１０１は、変数「ｊ」を１増加する。
【０１４１】
ステップＳ１６４において、制御装置１０１は、検査対象の各種卵の分類結果を一画面に表示する。当該分類結果は、たとえば、表示デバイス１０６（図１１参照）に表示される。各種卵の分類結果は、推定された分類種別に応じて異なる色で表示される。
【０１４２】
ステップＳ１６６において、制御装置１０１は、「未受精卵」、「腐敗卵」、または「中止卵」に分類された非生存卵を除去するように移載部２０に指示する。
【０１４３】
ステップＳ１７０において、制御装置１０１は、検査処理を終了するか否かを判断する。一例として、制御装置１０１は、検査処理の終了操作をユーザから受け付けた場合に、検査処理を終了すると判断する。制御装置１０１は、検査処理を終了すると判断した場合（ステップＳ１７０においてＹＥＳ）、図１４に示される検査処理を終了する。そうでない場合には（ステップＳ１７０においてＮＯ）、制御装置１０１は、制御をステップＳ１５０に戻す。
【０１４４】
［Ｊ．第１変形例］
次に、図１５〜図１７を参照して、第１変形例に従う学習システム５０について説明する。
【０１４５】
上述の実施の形態では、種卵が、「生存卵」、「未受精卵」、「腐敗卵」、および「中止卵」のいずれかに分類される例について説明を行った。これに対して、本変形例においては、種卵が、内部の胚の性別に応じて分類される。以下では、このような変形例について説明する。
【０１４６】
まず、図１５を参照して、第１変形例に従う学習用データセット２２４Ａについて説明する。図１５は、第１変形例に従う学習用データセット２２４Ａのデータ構造の一例を示す図である。
【０１４７】
図１５に示されるように、学習用データセット２２４Ａは、学習用データＩＤごとに、透過光量データ「Ｄａｙ０」と、透過光量データ「Ｄａｙ７」と、卵重と、種卵分類とを関連付けている。
【０１４８】
透過光量データ「Ｄａｙ０」は、孵卵器に入卵する前の種卵から得られた透過光量データである。以下では、孵卵器に入卵する前の種卵を種卵「Ｄａｙ０」と表わす。また、孵卵開始からＮ日が経過した種卵を種卵「ＤａｙＮ」と表わす。「Ｎ」は、１以上の整数である。
【０１４９】
より具体的には、透過光量データ「Ｄａｙ０」を取得する際には、発光部１２は、所定波長の光を種卵「Ｄａｙ０」に照射する。当該波長は、たとえば、５７４ｎｍである。５７４ｎｍの波長の光が照射されることで、種卵内の血管および／または血液の形成の程度が推定され得る。なお、発光部１２から照射される光の波長は、任意である。たとえば、発光部１２は、卵黄比率を推定するのに適した波長の光を種卵に照射してもよい。
【０１５０】
種卵検査装置１００は、種卵「Ｄａｙ０」を透過した光を、受光部１１によって、数ｍｓｅｃ〜数十ｍｓｅｃの間に１点以上サンプリングし、当該サンプリングにより得られたデータを透過光量データ「Ｄａｙ０」として取得する。同様に、種卵検査装置１００は、種卵「Ｄａｙ７」を透過した光を、受光部１１によって、数ｍｓｅｃ〜数十ｍｓｅｃの間に１点以上サンプリングし、当該サンプリングにより得られたデータを透過光量データ「Ｄａｙ７」として取得する。
【０１５１】
なお、上述では、種卵「Ｄａｙ０」から取得した透過光量データ「Ｄａｙ０」と、種卵「Ｄａｙ７」から取得した透過光量データ「Ｄａｙ７」とが学習用データセット２２４Ａに含まれる例について説明を行ったが、学習用データセット２２４Ａに含まれる透過光量データは、これらに限定されない。学習用データセット２２４Ａは、透過光量データ「Ｄａｙ０」〜「ＤａｙＮ」の２種類以上の任意のデータを含み得る。
【０１５２】
典型的には、学習用データセット２２４Ａに示される卵重は、種卵「Ｄａｙ０」の重さを表わす。当該卵重は、たとえば、計量器によって計量される。なお、学習用データセット２２４Ａに示される卵重は、必ずしも種卵「Ｄａｙ０」の重さに限定されず、種卵「Ｄａｙ０」〜「ＤａｙＮ」の少なくとも１つ以上の卵重が学習用データセット２２４Ａに含まれ得る。
【０１５３】
学習用データセット２２４Ａに示される種卵分類は、本変形例においては、種卵内の胚が雄であることを示す「雄種卵」と、種卵内の胚が雌であることを示す「雌種卵」とを含む。種卵分類のラベルは、たとえば、作業者がマウスやキーボードなどの入力デバイスを用いて手動で入力される。雄雌の判別は、たとえば、種卵が孵化した後の雛の羽毛鑑別により行われる。あるいは、雄雌の判別は、孵化前の種卵から得られた細胞に基づく遺伝子検査により行われてもよい。
【０１５４】
次に、図１６を参照して、学習用データセット２２４Ａを用いた学習工程について説明する。図１６は、第１変形例に従う学習工程を実現するための構成の一例を示す図である。
【０１５５】
図１６には、第１変形例に従う学習中モデル２２６Ａが示されている。学習中モデル２２６Ａは、入力層Ｘと出力層Ｙとの構成が図７に示される学習中モデル２２６と異なる。以下では、当該差異点に係る説明のみを行い、それ以外の説明については繰り返さない。
【０１５６】
入力層Ｘは、複数のユニットｘ１〜ｘ２で構成される。ユニットｘ１は、特徴抽出部２５２によって抽出された種卵特徴量の入力を受ける。より具体的には、特徴抽出部２５２は、上述の学習用データセット２２４Ａから１つの学習用データ「α」を取得し、当該学習用データ「α」に含まれる透過光量データ「Ｄａｙ０」，「Ｄａｙ７」を取得する。そして、特徴抽出部２５２は、透過光量データ「Ｄａｙ０」に対する透過光量データ「Ｄａｙ７」の相対透過率を算出する。すなわち、透過光量データ「Ｄａｙ７」を透過光量データ「Ｄａｙ０」で除算する。このとき、透過光量データ「Ｄａｙ０」，「Ｄａｙ７」が時系列のデータである場合には、特徴抽出部２５２は、透過光量データ「Ｄａｙ０」，「Ｄａｙ７」の数値列のそれぞれについて、平均値算出処理または中央値取得処理を実行し、その上で、透過光量データ「Ｄａｙ７」を透過光量データ「Ｄａｙ０」で除算する。算出された相対透過率は、種卵特徴量「ｍ１」としてユニットｘ１に入力される。
【０１５７】
ユニットｘ２は、たとえば、種卵特徴量「ｍ２」を受けるように構成される。種卵特徴量「ｍ２」は、たとえば、学習用データ「α」に規定される卵重である。
【０１５８】
出力層Ｙは、複数のユニットｙ１，ｙ２で構成される。ユニットｙ１，ｙ２の各々は、中間層Ｈの最終層の各ユニットｈＮ１，ｈＮ２・・・と接続される。ユニットｙ１，ｙ２の各々は、中間層Ｈの最終層の各ユニットからの出力値を受けて、各出力値に重みを乗算し、それらの乗算結果を積算し、その積算結果に対して所定のバイアスを加算（または減算）し、その加算結果（または減算結果）を所定の関数（たとえば、ランプ関数）に入力し、その関数の出力結果を出力値として出力する。
【０１５９】
典型的には、出力層Ｙを構成するユニット数は、種卵分類の種類数に応じて決定される。一例として、「雄種卵」、「雌種卵」の２種類のいずれかに種卵を分類する場合、出力層Ｙを構成するユニット数は、２つとなる。
【０１６０】
ユニットｙ１は、種卵から孵化する雛が雄である確率を示すスコア「ｓ１」を出力する。ユニットｙ２は、種卵から孵化する雛が雌である確率を示すスコア「ｓ２」を出力する。スコア「ｓ１」，「ｓ２」は、たとえば、０以上１以下の数値で表わされる。
【０１６１】
パラメータ更新部２５４は、ある学習用データ「α」に含まれる透過光量データについて学習中モデル２２６Ａから出力された出力結果「ｓ１」，「ｓ２」と、当該学習用データ「α」に含まれるラベルとを比較する。当該ラベルは、たとえば、スコア「ｓＡ」，「ｓＢ」で表わされる。
【０１６２】
一例として、ラベルが「雄種卵」である場合には、（ｓＡ，ｓＢ）＝（１，０）となる。ラベルが「雌種卵」である場合には、（ｓＡ，ｓＢ）＝（０，１）となる。
【０１６３】
パラメータ更新部２５４は、学習中モデル２２６Ａの出力結果「ｓ１」，「ｓ２」と、ラベル「ｓＡ」，「ｓＢ」との間の誤差「Ｚ」を算出する。一例として、誤差「Ｚ」は、下記の式（２）に基づいて算出される。
【０１６４】
Ｚ＝{（ｓ１−ｓＡ）２＋（ｓ２−ｓＢ）２}／２・・・（２）
次に、パラメータ更新部２５４は、誤差「Ｚ」が小さくなるように、学習中モデル２２６Ａに含まれる各種のパラメータ（たとえば、重みやバイアス）を更新する。当該パラメータの更新は、たとえば、誤差逆伝播法により実現される。パラメータ更新部２５４は、学習中モデル２２６Ａに含まれるパラメータの更新処理を、学習用データセット２２４に含まれる各学習用データ２２５について繰り返し行う。学習処理が済んだ学習中モデル２２６Ａは、学習済モデル１２６Ａとして種卵検査装置１００に送信される。
【０１６５】
次に、図１７を参照して、学習済モデル１２６Ａを用いた性別推定工程について説明する。図１７は、第１変形例に従う性別推定工程を実現するための構成の一例を示す図である。
【０１６６】
第１変形例に従う学習済モデル１２６Ａは、入力層Ｘと出力層Ｙとの構成が図１０に示される学習済モデル１２６とは異なる。以下では、当該差異点に係る説明のみを行い、それ以外の説明については繰り返さない。
【０１６７】
特徴抽出部１５２は、孵卵器に入卵する前の種卵「Ｄａｙ０」から透過光量データ「Ｄａｙ０」を受光部１１から取得し、その後、孵卵開始７日後の種卵「Ｄａｙ７」から透過光量データ「Ｄａｙ７」を受光部１１から取得する。そして、特徴抽出部１５２は、上述の学習装置２００の特徴抽出部２５２と同じ方法で、透過光量データ「Ｄａｙ０」に対する透過光量データ「Ｄａｙ７」の相対透過率を算出する。算出された相対透過率は、種卵特徴量「ｍ１」としてユニットｘ１に入力される。
【０１６８】
ユニットｘ２は、たとえば、種卵特徴量「ｍ２」を受けるように構成される。種卵特徴量「ｍ２」は、たとえば、学習用データ「α」に含まれる卵重である。
【０１６９】
学習済モデル１２６Ａは、特徴抽出部１５２によって抽出された複数の種卵特徴量の入力と、卵重の入力とを受けて、検査対象の種卵が「雄種卵」である確率を示すスコア「ｓ１」と、検査対象の種卵が「雌種卵」である確率を示すスコア「ｓ２」とを出力する。スコア「ｓ１」，「ｓ２」は、分類部１５４に出力される。
【０１７０】
分類部１５４は、スコア「ｓ１」，「ｓ２」に基づいて、検査対象の種卵の分類を判別する。一例として、分類部１５４は、スコア「ｓ１」，「ｓ２」の最大スコアに対応する種卵分類を最終的な推定結果として出力する。本実施の形態においては、分類部１５４は、検査対象の種卵を、「雄種卵」および「雌種卵」のいずれかに分類する。好ましくは、分類部１５４は、最大スコアが所定値以下である場合には、種別分類「性別不明」として出力する。特定された種卵分類は、上述の制御部６に出力される。
【０１７１】
以上のようにして、本変形例では、種卵検査装置１００は、学習済モデル１２６Ａを用いて種卵内の胚の性別を分類する。なお、種卵検査装置１００から出力される分類結果は、種卵内の性別や、種卵内の胚の生死などに限定されず、他の種卵分類が出力されてもよい。一例として、学習済モデル１２６Ａは、種卵の現在／将来の活性度を出力するように構成されてもよい。
【０１７２】
［Ｋ．第２変形例］
次に、図１８〜図２０を参照して、第２変形例に従う学習システム５０について説明する。
【０１７３】
上述の実施の形態に従う学習済モデル１２６は、透過光量から抽出された種卵特徴量の入力を受けるように構成されていた。これに対して、本変形例では、学習済モデル１２６は、透過光量から抽出された種卵特徴量の入力だけでなく、種卵分類と相関のあるその他の種卵特徴量の入力を受けるように構成される。以下では、このような変形例について説明する。
【０１７４】
まず、図１８を参照して、第２変形例に従う学習用データセット２２４Ｂについて説明する。図１８は、第２変形例に従う学習用データセット２２４Ｂのデータ構造の一例を示す図である。
【０１７５】
図１８に示される学習用データセット２２４Ｂは、学習用ＩＤ、透過光量データ、および種卵分類だけでなく、孵卵期間、鶏種（卵殻色）、種卵サイズ、およびトレイの色がさらに関連付けられている点で、図５に示される学習用データセット２２４と異なる。その他の点については上述の通りであるので、以下では、それらの説明については繰り返さない。
【０１７６】
学習用データセット２２４Ｂは、複数の学習用データ２２５Ｂを複数含む。本変形例においては、学習用データ２２５Ｂに規定される種卵分類（ラベル）に対して、種卵を孵卵器に入れている期間（孵卵期間）が関連付けられる。上述のように、孵卵場では、種卵を専用のトレイに載置し、孵卵器の中へ入れて孵卵工程を行う。孵卵期間は、孵卵工程の開始日からの経過期間に相当する。種卵内の胚の成長度合いは、孵卵期間に応じて変わるため、光の照射による種卵からの透過光量は、孵卵期間に応じて変化する。そのため、孵卵期間は、種卵分類の推定結果に影響を与える要因となる。したがって、種卵分類を推定する上では、孵卵期間が有効な指標となる。この点に鑑みて、本変形例では、学習用データ２２５Ｂにおいて孵卵期間が種卵分類に関連付けられる。
【０１７７】
孵卵期間は、たとえば、学習用データ２２５Ｂを生成する作業者によって入力デバイス２０８（孵卵期間の取得部）を用いて手動で入力される。あるいは、孵卵期間は、種卵検査装置１００と通信可能に構成される孵卵器（孵卵期間の取得部）から自動的に取得される。
【０１７８】
また、本変形例においては、学習用データ２２５Ｂに規定される種卵分類（ラベル）に対して、鶏種が関連付けられる。鶏種は、生物学上の鶏の種類を示す。種卵内の胚の色や大きさ、卵殻色などは、鶏種に応じて変わるため、光の照射による種卵からの透過光量は、鶏種に応じて変化する。そのため、鶏種は、種卵分類の推定結果に影響を与える要因となる。したがって、種卵分類を推定する上では、鶏種が有効な指標となる。この点に鑑みて、本変形例では、学習用データ２２５Ｂにおいて鶏種が種卵分類に関連付けられる。
【０１７９】
鶏種は、たとえば、学習用データ２２５Ｂを生成する作業者によって入力デバイス２０８（鶏種の取得部）を用いて手動で入力される。あるいは、鶏種は、カメラ１１０（鶏種の取得部）から得られた卵殻色画像に対して所定の画像処理を行うことにより自動的に判別されてもよい。当該画像処理は、種卵検査装置１００で実行されてもよいし、学習装置２００で実行されてもよい。
【０１８０】
また、本変形例においては、学習用データ２２５Ｂに規定される種卵分類（ラベル）に対して、種卵サイズに係る指標値が関連付けられる。当該指標値は、種卵サイズそのものであってもよいし、種卵サイズと相関がある指標であってもよい。当該相関指標は、たとえば、種卵を生んだ親鶏の週齢である。親鶏が生む種卵のサイズは、当該親鶏の週齢が上がるほど大きくなる。このような、種卵のサイズは、親鶏の週齢と相関があるため、種卵サイズに係る指標値として、親鶏の週齢が採用されてもよい。
【０１８１】
図１８の例では、種卵サイズが種卵分類（ラベル）に対して関連付けられている。当該種卵サイズは、たとえば、種卵の長径、種卵の短径、種卵の体積などで表わされる。
【０１８２】
光の照射による種卵からの透過光量は、種卵サイズに応じて変化する。そのため、種卵サイズは、種卵分類の推定結果に影響を与える要因となる。したがって、種卵分類を推定する上では、種卵サイズが有効な指標となる。この点に鑑みて、本変形例では、学習用データ２２５Ｂにおいて種卵サイズが種卵分類に関連付けられる。
【０１８３】
ある局面において、種卵サイズは、たとえば、学習用データ２２５Ｂを生成する作業者によって入力デバイス２０８（種卵サイズの取得部）を用いて手動で入力される。他の局面において、種卵サイズは、カメラ１１０（種卵サイズの取得部）から得られた画像に対して所定の画像処理（たとえば、楕円検知アルゴリズム）を実行することにより自動で検知される。当該画像処理は、種卵検査装置１００で実行されてもよいし、学習装置２００で実行されてもよい。
【０１８４】
また、本変形例においては、学習用データ２２５Ｂに規定される種卵分類（ラベル）に対して、種卵を載せるトレイの色が関連付けられる。
【０１８５】
光の照射による種卵からの透過光量は、種卵を載せるトレイの色に応じて変化する。たとえば、トレイの色が黒色であると、光が吸収されるため、検知される透過光量が少なくなる。このように、トレイの色は、種卵分類の推定結果に影響を与える要因となる。したがって、種卵分類を推定する上では、トレイの色が有効な指標となる。この点に鑑みて、本変形例では、学習用データ２２５Ｂにおいてトレイの色が種卵分類に関連付けられる。
【０１８６】
トレイの色は、たとえば、学習用データ２２５Ｂを生成する作業者によって入力デバイス２０８（トレイ色の取得部）を用いて手動で入力される。あるいは、トレイの色は、カメラ１１０（トレイ色の取得部）から得られた画像に対して所定の画像処理を行うことにより自動的に判別されてもよい。当該画像処理は、種卵検査装置１００で実行されてもよいし、学習装置２００で実行されてもよい。
【０１８７】
なお、図１８では、種卵分類に対して、透過光量データと、孵卵期間と、鶏種と、種卵サイズと、トレイの色との５つの情報が関連付けられている例について説明を行ったが、種卵分類に関連付けられる情報は、これらの５つである必要はなく、これらの内の１つ以上であればよい。
【０１８８】
次に、図１９を参照して、学習用データセット２２４Ｂを用いた学習工程について説明する。図１９は、第２変形例に従う学習工程を実現するための構成の一例を示す図である。
【０１８９】
図１９には、第２変形例に従う学習中モデル２２６Ｂが示されている。学習中モデル２２６Ｂは、入力層Ｘの構成が図７に示される学習中モデル２２６とは異なる。以下では、当該差異点に係る説明のみを行い、それ以外の説明については繰り返さない。
【０１９０】
入力層Ｘは、複数のユニットｘ１〜ｘ７で構成される。以下では、ユニットｘ１〜ｘ７をユニットｘとも称する。ユニットｘの各々は、種卵特徴量の入力を受ける。入力層Ｘのユニット数は、入力される種卵特徴量の種類の数と同数である。ユニットｘ１〜ｘ３は、それぞれ、特徴抽出部２５２によって透過光量データから抽出された種卵特徴量「ｍ１」〜「ｍ３」を受け付ける。ユニットｘ４は、学習用データ２２５に示される孵卵期間を種卵特徴量「ｍ４」として受け付ける。ユニットｘ５は、学習用データ２２５に示される鶏種を種卵特徴量「ｍ５」として受け付ける。ユニットｘ６は、学習用データ２２５に示される種卵サイズを種卵特徴量「ｍ６」として受け付ける。ユニットｘ７は、学習用データ２２５に示されるトレイの色を種卵特徴量「ｍ７」として受け付ける。
【０１９１】
パラメータ更新部２５４は、種卵特徴量「ｍ１」〜「ｍ７」の入力を受けて学習中モデル２２６Ｂから出力される推定結果に基づいて、学習中モデル２２６Ｂの内部パラメータを更新する。内部パラメータの更新処理が学習用データセット２２４Ｂの各々に基づいて行われることで、学習用データセット２２４Ｂの内部パラメータが最適化される。学習処理が済んだ学習中モデル２２６Ｂは、学習済モデル１２６Ｂとして種卵検査装置１００に送信される。
【０１９２】
なお、図１９では、学習中モデル２２６Ｂが、種卵特徴量「ｍ１」〜「ｍ７」を受けるように構成されている例について説明を行ったが、学習中モデル２２６Ｂは、種卵特徴量「ｍ１」〜「ｍ７」の内のいずれか２つ以上を受けるように構成されてもよい。
【０１９３】
次に、図２０を参照して、学習済モデル１２６Ｂを用いた種卵分類の推定工程について説明する。図２０は、第２変形例に従う種卵分類の推定工程を実現するための構成の一例を示す図である。
【０１９４】
第２変形例に従う学習済モデル１２６Ｂは、入力層Ｘの構成が図１０に示される学習済モデル１２６とは異なる。以下では、当該差異点に係る説明のみを行い、それ以外の説明については繰り返さない。
【０１９５】
学習済モデル１２６Ｂは、種卵特徴量「ｍ１」〜「ｍ７」の入力を受けるように構成されている。
【０１９６】
ユニットｘ１〜ｘ３は、それぞれ、特徴抽出部１５２によって透過光量データから抽出された種卵特徴量「ｍ１」〜「ｍ３」を受け付ける。
【０１９７】
ユニットｘ４は、孵卵期間を表わす種卵特徴量「ｍ４」を受け付ける。ある局面において、孵卵期間は、たとえば、入力デバイス１０８を用いてユーザによって入力される。通常、孵卵期間が同じ種卵群を順次検査するので、孵卵期間が同じ種卵群が検査されている間は、一度設定された孵卵期間を変える必要がない。他の局面において、ユニットｘ４に入力される孵卵期間は、種卵検査装置１００と通信可能に構成される孵卵器から自動的に取得される。
【０１９８】
ユニットｘ５は、鶏種を表わす種卵特徴量「ｍ５」を受け付ける。ある局面において、鶏種は、入力デバイス１０８を用いてユーザによって入力される。通常、鶏種が同じ種卵群を順次検査するので、鶏種が同じ種卵群が検査されている間は、一度設定された鶏種を変える必要がない。他の局面において、ユニットｘ５に入力される鶏種は、画像処理などにより自動的に判別されてもよい。
【０１９９】
ユニットｘ６は、種卵サイズを表わす種卵特徴量「ｍ６」を受け付ける。ユニットｘ６に入力される種卵サイズは、画像処理などにより自動的に判別される。種卵サイズは、たとえば、楕円検知処理などの画像処理アルゴリズムにより検知されたり、計量器によって重さが計量されたりすることで判別される。
【０２００】
ユニットｘ７は、たとえば、トレイの色を表わす種卵特徴量「ｍ７」を受け付ける。ある局面において、トレイの色は、入力デバイス１０８を用いてユーザによって入力される。他の局面において、トレイの色は、画像処理などにより自動的に判別される。上述のように、カメラ１１０は、トレイに載せられている検査対象の種卵を撮影視野に含むように配置されている。そのため、カメラ１１０から得られる画像には、トレイが写っている。種卵検査装置１００は、当該画像の画像情報（たとえば、ＲＧＢ情報）からトレイの色を判別し、当該判別した色をユニットｘ７に入力する。
【０２０１】
学習済モデル１２６Ｂは、種卵特徴量「ｍ１」〜「ｍ７」の入力を受けて、検査対象の種卵が複数の種卵分類の各々に属する可能性（確率）を出力する。学習済モデル１２６Ｂの構造や内部処理は、図１９に示される学習中モデル２２６Ｂと同じである。
【０２０２】
学習済モデル１２６Ｂは、たとえば、推定結果として、当該種卵が「生存卵」である確率を示すスコア「ｓ１」と、当該種卵が「未受精卵」に属する確率を示すスコア「ｓ２」と、当該種卵が「腐敗卵」に属する確率を示すスコア「ｓ３」と、当該種卵が「中止卵」に属する確率を示すスコア「ｓ４」とを出力する。分類部１５４は、スコア「ｓ１」〜「ｓ４」に基づいて、検査対象の種卵の分類を判別する。
【０２０３】
［Ｌ．第３変形例］
次に、第３変形例に従う学習システム５０について説明する。
【０２０４】
上述の実施の形態では、学習済モデル１２６を用いた種卵分類の推定処理について説明を行ったが、本変形例では、このような学習済モデル１２６を用いた推定処理に加えて、ルールベースの推定処理が組み合わされても良い。
【０２０５】
一例として、種卵検査装置１００は、学習済モデル１２６から出力される推定結果の信頼度が低い場合に、ルールベースの推定処理を利用する。学習済モデル１２６から出力される推定結果の信頼度が低いか否かは、たとえば、学習済モデル１２６の出力値（たとえば、上述のスコア「ｓ１」〜「ｓ４」）に基づいて判断される。一例として、種卵検査装置１００は、学習済モデル１２６の出力値が全て所定値未満である場合に、ルールベースの推定処理を利用して種卵分類を推定する。ルールベースの推定処理には、たとえば、特開２０１５−０３５９６３号公報に開示される推定処理など公知の技術が応用される。
【０２０６】
＜第２の実施の形態＞
［Ｍ．概要］
次に、第２の実施の形態に従う種卵検査装置１００について説明する。
【０２０７】
上述の図８で説明したように、第１の実施の形態に従う種卵検査装置１００は、スペクトル２２９に基づいて、種卵内の胚の心拍数を特定していた。より具体的には、まず、種卵検査装置１００は、時系列の透過光量をフーリエ変換して周波数別のスペクトル強度（すなわち、スペクトル２２９）を算出する。そして、種卵検査装置１００は、所定の周波数範囲（たとえば、２〜６Ｈｚ）内で最大のスペクトル強度を特定し、当該スペクトル強度に対応する周波数を心拍数としてみなす。このとき、第１の実施の形態においては、当該周波数範囲（以下、「注目周波数範囲」ともいう。）は、固定であった。
【０２０８】
これに関して、発明者らは、種卵内の胚の心拍数が種卵の温度に応じて変化することを発見した。図２１は、種卵温度と、種卵内の胚の心拍数との関係を示す図である。図２１に示されるように、種卵温度が高いほど、種卵内の胚の心拍数が上がっている。
【０２０９】
そのため、注目周波数範囲が固定であると、種卵の温度によっては、胚の心拍数を正確に特定することができない。また、注目周波数範囲を広げすぎると、外部からの振動に伴うスペクトルが注目周波数範囲に含まれてしまい、心拍に伴うスペクトルと、外部からの振動に伴うスペクトルとを区別することが困難となる。
【０２１０】
そこで、本実施の形態に従う種卵検査装置１００は、種卵の表面温度に応じて注目周波数範囲を変える。種卵の表面温度は、たとえば、上述の温度センサ１１１（検知部）によって検知される。
【０２１１】
図２２は、異なる温度下で計測された透過光量データのそれぞれを周波数分解したスペクトル２２９Ａ，２２９Ｂを示す図である。より詳細には、図２２（Ａ）には、種卵の温度が「Ｔ１」である場合のスペクトル２２９Ａが示されている。図２２（Ｂ）には、種卵の温度が「Ｔ２」である場合のスペクトル２２９Ｂが示されている。温度「Ｔ２」は、温度「Ｔ１」よりも高い。
【０２１２】
図２２（Ａ）に示されるように、種卵の温度が「Ｔ１」である場合には、心拍数を表わす周波数「ｆ１」においてスペクトル強度が最大となっている。これに対して、種卵の温度が「Ｔ２」である場合には、心拍数を表わす周波数「ｆ２」（＞「ｆ１」）においてスペクトル強度が最大となっている。このように、種卵の温度が上がると、心拍数を表わす周波数は、より高域側に移動する。そのため、種卵検査装置１００は、温度センサ１１１によって検知される温度が高いほど注目周波数範囲ΔＦを高域側に設定する。
【０２１３】
ここで「高域側に設定する」とは、注目周波数範囲ΔＦを規定する下限値および上限値を現在値よりも所定値増加することを意味する。一例として、種卵の温度が「Ｔ１」から「Ｔ２」に上がった場合、種卵検査装置１００は、注目周波数範囲ΔＦの下限値を「ｆ１Ａ」から「ｆ２Ａ」に上げるとともに、注目周波数範囲ΔＦの上限値を「ｆ１Ｂ」から「ｆ２Ｂ」に上げる。
【０２１４】
注目周波数範囲ΔＦが種卵温度に応じて変えられることで、種卵検査装置１００は、種卵内の胚の心拍数をより正確に特定することができる。このような心拍数の特定方法は、種卵検査において特に有効である。通常、種卵は、孵卵器において一定温度（３７．８度）に保たれているが、検査工程においては孵卵器から取り出される。このとき、検査工程での待機時間が長くなるほど、種卵の温度が下がることとなる。このように、種卵検査時には種卵の温度が変動するので、それに応じて胚の心拍数も変動する。本実施の形態においては、注目周波数範囲ΔＦが種卵の温度に応じて適宜変えられるので、この思想は、周囲温度が変動しやすい種卵検査において特に有効に働く。
【０２１５】
当該特定された心拍数や、当該心拍数に対応するスペクトル強度は、第１の実施の形態で説明した種卵特徴量として用いられる。このような種卵特徴量が用いられることで、種卵検査装置１００は、より正確に種卵分類を判別することができる。
【０２１６】
［Ｎ．機能構成］
図２３を参照して、第２の実施の形態に従う種卵検査装置１００の機能構成について説明する。図２３は、第２の実施の形態に従う種卵検査装置１００の機能構成の一例を示す図である。
【０２１７】
図２３に示されるように、種卵検査装置１００は、ハードウェア構成として、制御装置１０１と、記憶装置１２０とを含む。制御装置１０１は、機能構成として、信号取得部１６２と、フーリエ変換部１６４と、温度の取得部１６６と、算出部１６８とを含む。
【０２１８】
信号取得部１６２は、受光部１１から出力される電気信号をサンプリングし、当該電気信号を数値化した透過光量データを取得する。取得された透過光量データに出力される。
【０２１９】
フーリエ変換部１６４は、信号取得部１６２によって取得された透過光量データを、周波数別のスペクトル強度に変換する。周波数別のスペクトル強度は、算出部１６８に出力される。
【０２２０】
温度の取得部１６６は、検査対象の種卵について検知された温度を温度センサ１１１から取得する。取得された温度は、算出部１６８に出力される。
【０２２１】
算出部１６８は、温度と注目周波数範囲との相関関係１２８を参照して、温度の取得部１６６から取得した温度に対応する注目周波数範囲を特定する。相関関係１２８は、予め規定されており、記憶装置１２０などに格納されている。相関関係１２８において、温度が高くなるほど、注目周波数範囲が高域側に設定されている。換言すれば、相関関係１２８において、温度が低くなるほど、注目周波数範囲が低域側に設定されている。算出部１６８は、フーリエ変換部１６４から取得した周波数別のスペクトル強度に基づいて、特定した注目周波数範囲内でスペクトル強度が最大となるピーク周波数を特定し、当該ピーク周波数を、種卵内の胚の心拍数として算出する。
【０２２２】
今回開示された実施の形態は全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内での全ての変更が含まれることが意図される。
【符号の説明】
【０２２３】
２  セッタートレイ、３  搬入方向、４  搬出方向、５  判定部、６  制御部、１０  計測部、１１  受光部、１２  発光部、１３  キャップ、１４  固定部、１５  計測伸縮部、２０  移載部、２１  ヘッド、２２  吸盤、２３  スライド部、２４  伸縮部、２５  非生存卵排除部、３０  搬送部、３１  ドグ、３２  搬送面、３３  ステンレス部材、３４  ガラス部材、５０  学習システム、１００，１００Ａ〜１００Ｄ  種卵検査装置、１０１，２０１  制御装置、１０２，２０２  ＲＯＭ、１０３，２０３  ＲＡＭ、１０４，２０４  通信インターフェイス、１０５，２０５  表示インターフェイス、１０６，２０６  表示デバイス、１０７，２０７  入力インターフェイス、１０８，２０８  入力デバイス、１０９  カメラインターフェイス、１１０  カメラ、１１１  温度センサ、１１５，２１５  バス、１２０，２２０  記憶装置、１２２  特定プログラム、１２６，１２６Ａ，１２６Ｂ  学習済モデル、１２８  相関関係、１５２，２５２  特徴抽出部、１５４  分類部、１６２  信号取得部、１６４  フーリエ変換部、１６６  温度の取得部、１６８  算出部、２００  学習装置、２２２  学習プログラム、２２４，２２４Ａ，２２４Ｂ  学習用データセット、２２５，２２５Ａ，２２５Ｂ  学習用データ、２２６，２２６Ａ，２２６Ｂ  学習中モデル、２２７  透過光量データ、２２９，２２９Ａ，２２９Ｂ  スペクトル、２５４  パラメータ更新部。
【図１】
2020204570.tif 000003
【図２】
2020204570.tif 000004
【図３】
2020204570.tif 000005
【図４】
2020204570.tif 000006
【図５】
2020204570.tif 000007
【図６】
2020204570.tif 000008
【図７】
2020204570.tif 000009
【図８】
2020204570.tif 000010
【図９】
2020204570.tif 000011
【図１０】
2020204570.tif 000012
【図１１】
2020204570.tif 000013
【図１２】
2020204570.tif 000014
【図１３】
2020204570.tif 000015
【図１４】
2020204570.tif 000016
【図１５】
2020204570.tif 000017
【図１６】
2020204570.tif 000018
【図１７】
2020204570.tif 000019
【図１８】
2020204570.tif 000020
【図１９】
2020204570.tif 000021
【図２０】
2020204570.tif 000022
【図２１】
2020204570.tif 000023
【図２２】
2020204570.tif 000024
【図２３】
2020204570.tif 000025