転移学習

転移学習（てんいがくしゅう、英: transfer learning）は、ある問題を解決する際に得た知識を蓄積し、関連する別の問題にそれを適用することに焦点を当てた機械学習の研究領域である。たとえば、乗用車を認識するために得た知識は、トラックを認識するためにも応用できるかもしれない。この研究領域は、学習転移（英語版）に関する長い歴史を持つ心理学の文献と何かの関係をもつが、2つの分野の実用的な結びつきは限定的である。実用的な面では、過去に学習した仕事の情報を新たな仕事の学習のために再利用または転送することで、強化学習手段のサンプル効率を大幅に改善することができる可能性がある。 1976年、Stevo BozinovskiとAnte Fulgosiは、ニューラルネットワークの学習における転移学習に明示的に取り組んだ論文を発表した。この論文では、転移学習の数学的および幾何学的モデルを示している。1981年には、コンピュータ端末の文字を表す画像のデータセットに対して、転移学習を適用してニューラルネットワークを学習させた研究が報告された。ポジティブとネガティブな両方の転移学習が実験的に実証された。 1993年、Lorien Prattは、機械学習における転移についての論文を発表し、識別性に基づく転移アルゴリズムを定式化した。 アンドリュー・ンは、NIPS 2016のチュートリアルで、転移学習は教師あり学習の次に機械学習の商業的成功の原動力になると述べ、その重要性を強調した。 転移学習の定義は、ドメインとタスクの観点から与えられる。ドメイン D {\displaystyle {\mathcal {D}}} は、特徴空間 X {\displaystyle {\mathcal {X}}} と周辺確率分布 P ( X ) {\displaystyle P(X)} からなり、ここに X = { x 1 , . . . , x n } ∈ X {\displaystyle X=\{x_{1},...,x_{n}\}\in {\mathcal {X}}} とする。特定のドメイン D = { X , P ( X ) } {\displaystyle {\mathcal {D}}=\{{\mathcal {X}},P(X)\}} が与えられた場合、タスクは、ラベル空間 Y {\displaystyle {\mathcal {Y}}} と、目標の予測関数 f : X → Y {\displaystyle f:{\mathcal {X}}\rightarrow {\mathcal {Y}}} の2つの要素から構成される。この関数 f {\displaystyle f} は、新しいインスタンス x {\displaystyle x} の対応するラベル f ( x ) {\displaystyle f(x)} を予測するために用いられる。このタスクは、 T = { Y , f ( x ) } {\displaystyle {\mathcal {T}}=\{{\mathcal {Y}},f(x)\}} で示され、 x i ∈ X {\displaystyle x_{i}\in X} 、 y i ∈ Y {\displaystyle y_{i}\in {\mathcal {Y}}} のペア { x i , y i } {\displaystyle \{x_{i},y_{i}\}} からなる学習データから学習される。 ソースドメイン D S {\displaystyle {\mathcal {D}}_{S}} と学習タスク T S {\displaystyle {\mathcal {T}}_{S}} 、ターゲットドメイン D T {\displaystyle {\mathcal {D}}_{T}} と学習タスク T T {\displaystyle {\mathcal {T}}_{T}} が与えられ、ここで D S ≠ D T {\displaystyle {\mathcal {D}}_{S}\neq {\mathcal {D}}_{T}} 、 T S ≠ T T {\displaystyle {\mathcal {T}}_{S}\neq {\mathcal {T}}_{T}} の場合、転移学習の目的は、 D S {\displaystyle {\mathcal {D}}_{S}} と T S {\displaystyle {\mathcal {T}}_{S}} の知識を用いて、 D T {\displaystyle {\mathcal {D}}_{T}} の対象の予測関数 f T ( ⋅ ) {\displaystyle f_{T}(\cdot )} の学習を改善することである。 マルコフ論理ネットワーク（英語版）やベイジアンネットワークにおける転移学習のアルゴリズムが利用可能である。また、転移学習は、癌（がん）の亜類型の発見、建物運用、一般的なゲームプレイ（英語版）、文書分類、文字認識、医療画像、スパムフィルタリングにも応用されている。 2020年に、脳波記録（EEG）波形の動きをジェスチャー認識領域から精神状態認識領域へ分類するときに、その物理的性質が似ていることから、筋肉からの電気筋運動記録（EMG）信号間で転移学習が可能であることが発見された。また、この関係は逆にも作用し、脳波記録が筋運動記録をさらに分類できることも示された。この実験では、ニューラルネットワークおよび畳み込みニューラルネットワークの精度が、最初のエポック（学習前、つまり標準的なランダムな重み分布との比較）と漸近（学習プロセスの終了）の両方で、転移学習によって向上することが分かった。すなわちアルゴリズムは別のドメインに触れさせることで改善された。さらに、事前学習されたモデルの最終使用者は、完全結合層の構造を変更することで、より優れた性能を得ることができる。 コードに関する機械学習の領域では、転移学習がセキュリティ上の脆弱性を自動的に修復するのに役立つことが示されている。 組換え (遺伝的アルゴリズム)（英語版） - 2つの親の遺伝情報を組み合わせて新しい子孫を生成するために用いられる遺伝的演算子 ドメイン適応 (機械学習)（英語版） - 機械学習や転移学習に関連する学問分野の一つ 一般的ゲームプレイ（英語版） - 1つ以上のゲームをうまくプレイできるように人工知能プログラムを設計すること マルチタスク学習（英語版） - タスク間の共通性と差異を利用しながら複数の学習タスクを同時に解決する機械学習の一分野 マルチタスク最適化（英語版） - 複数の自己完結型タスクを同時に解決することに焦点を当てた最適化に関する概念 ゼロショット学習（英語版） - 機械学習における問題設定の一つ ^ “Spring Research Presentation: A Theoretical Foundation for Inductive Transfer”. Brigham Young University, College of Physical and Mathematical Sciences (2007年). 2007年8月1日時点のオリジナルよりアーカイブ。2007年8月5日閲覧。 ^ George Karimpanal, Thommen; Bouffanais, Roland (2019). “Self-organizing maps for storage and transfer of knowledge in reinforcement learning”. Adaptive Behavior 27 (2): 111–126. arXiv:1811.08318. doi:10.1177/1059712318818568. ISSN 1059-7123.  ^ Stevo. Bozinovski and Ante Fulgosi (1976). "The influence of pattern similarity and transfer learning upon the training of a base perceptron B2." (original in Croatian) Proceedings of Symposium Informatica 3-121-5, Bled. ^ Stevo Bozinovski (2020) "Reminder of the first paper on transfer learning in neural networks, 1976". Informatica 44: 291–302. ^ S. Bozinovski (1981). "Teaching space: A representation concept for adaptive pattern classification." COINS Technical Report, the University of Massachusetts at Amherst, No 81-28 [available online: UM-CS-1981-028.pdf] ^ Pratt, L. Y. (1993). “Discriminability-based transfer between neural networks”. NIPS Conference: Advances in Neural Information Processing Systems 5. Morgan Kaufmann Publishers. http://papers.nips.cc/paper/641-discriminability-based-transfer-between-neural-networks.pdf  ^ (英語) NIPS 2016 tutorial: "Nuts and bolts of building AI applications using Deep Learning" by Andrew Ng, https://www.youtube.com/watch?v=wjqaz6m42wU 2019年12月28日閲覧。  ^ “NIPS 2016 Schedule”. nips.cc. 2019年12月28日閲覧。 ^ Nuts and bolts of building AI applications using Deep Learning, slides ^ a b Lin, Yuan-Pin; Jung, Tzyy-Ping (27 June 2017). “Improving EEG-Based Emotion Classification Using Conditional Transfer Learning”. Frontiers in Human Neuroscience 11: 334. doi:10.3389/fnhum.2017.00334. PMC 5486154. PMID 28701938. https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5486154/.  Material was copied from this source, which is available under a Creative Commons Attribution 4.0 International License. ^ Mihalkova, Lilyana; Huynh, Tuyen; Mooney, Raymond J. (July 2007), “Mapping and Revising Markov Logic Networks for Transfer”, Learning Proceedings of the 22nd AAAI Conference on Artificial Intelligence (AAAI-2007), Vancouver, BC, http://www.cs.utexas.edu/users/ml/papers/mihalkova-aaai07.pdf 2007年8月5日閲覧。  ^ Niculescu-Mizil, Alexandru; Caruana, Rich (March 21–24, 2007), “Inductive Transfer for Bayesian Network Structure Learning”, Proceedings of the Eleventh International Conference on Artificial Intelligence and Statistics (AISTATS 2007), http://www.stat.umn.edu/~aistat/proceedings/data/papers/043.pdf 2007年8月5日閲覧。  ^ Hajiramezanali, E. & Dadaneh, S. Z. & Karbalayghareh, A. & Zhou, Z. & Qian, X. Bayesian multi-domain learning for cancer subtype discovery from next-generation sequencing count data. 32nd Conference on Neural Information Processing Systems (NeurIPS 2018), Montréal, Canada. arXiv:1810.09433 ^ Arief-Ang, I.B.; Salim, F.D.; Hamilton, M. (8 November 2017). DA-HOC: semi-supervised domain adaptation for room occupancy prediction using CO2 sensor data. 4th ACM International Conference on Systems for Energy-Efficient Built Environments (BuildSys). Delft, Netherlands. pp. 1–10. doi:10.1145/3137133.3137146. ISBN 978-1-4503-5544-5。 ^ Arief-Ang, I.B.; Hamilton, M.; Salim, F.D. (2018-12-01). “A Scalable Room Occupancy Prediction with Transferable Time Series Decomposition of CO2 Sensor Data”. ACM Transactions on Sensor Networks 14 (3–4): 21:1–21:28. doi:10.1145/3217214.  ^ Banerjee, Bikramjit, and Peter Stone. "General Game Learning Using Knowledge Transfer." IJCAI. 2007. ^ Do, Chuong B.; Ng, Andrew Y. (2005). "Transfer learning for text classification". Neural Information Processing Systems Foundation, NIPS*2005 (PDF). 2007年8月5日閲覧。 ^ Rajat, Raina; Ng, Andrew Y.; Koller, Daphne (2006). "Constructing Informative Priors using Transfer Learning". Twenty-third International Conference on Machine Learning (PDF). 2007年8月5日閲覧。 ^ Maitra, D. S.; Bhattacharya, U.; Parui, S. K. (August 2015). “CNN based common approach to handwritten character recognition of multiple scripts”. 2015 13th International Conference on Document Analysis and Recognition (ICDAR): 1021–1025. doi:10.1109/ICDAR.2015.7333916. ISBN 978-1-4799-1805-8.  ^ Bickel, Steffen (2006). "ECML-PKDD Discovery Challenge 2006 Overview". ECML-PKDD Discovery Challenge Workshop (PDF). 2007年8月5日閲覧。 ^ Bird, Jordan J.; Kobylarz, Jhonatan; Faria, Diego R.; Ekart, Aniko; Ribeiro, Eduardo P. (2020). “Cross-Domain MLP and CNN Transfer Learning for Biological Signal Processing: EEG and EMG”. IEEE Access (Institute of Electrical and Electronics Engineers (IEEE)) 8: 54789–54801. doi:10.1109/access.2020.2979074. ISSN 2169-3536.  ^ Maitra, Durjoy Sen; Bhattacharya, Ujjwal; Parui, Swapan K. (August 2015). “CNN based common approach to handwritten character recognition of multiple scripts”. 2015 13th International Conference on Document Analysis and Recognition (ICDAR): 1021–1025. doi:10.1109/ICDAR.2015.7333916. https://ieeexplore.ieee.org/document/7333916/.  ^ Kabir, H. M., Abdar, M., Jalali, S. M. J., Khosravi, A., Atiya, A. F., Nahavandi, S., & Srinivasan, D. (2020). Spinalnet: Deep neural network with gradual input. arXiv preprint arXiv:2007.03347. ^ Allamanis, Miltiadis; Barr, Earl T.; Devanbu, Premkumar; Sutton, Charles (2019-07-31). “A Survey of Machine Learning for Big Code and Naturalness” (英語). ACM Computing Surveys 51 (4): 1–37. doi:10.1145/3212695. ISSN 0360-0300. https://dl.acm.org/doi/10.1145/3212695.  ^ Chen, Zimin; Kommrusch, Steve James; Monperrus, Martin (2022). “Neural Transfer Learning for Repairing Security Vulnerabilities in C Code”. IEEE Transactions on Software Engineering: 1–1. doi:10.1109/TSE.2022.3147265. ISSN 1939-3520. https://ieeexplore.ieee.org/document/9699412/.  Thrun, Sebastian; Pratt, Lorien (6 December 2012). Learning to Learn. Springer Science & Business Media. ISBN 978-1-4615-5529-2. https://books.google.co.jp/books?id=X_jpBwAAQBAJ