Giter VIP home page Giter VIP logo

Comments (3)

YutaroOgawa avatar YutaroOgawa commented on August 25, 2024 18

本書
「つくりながら学ぶ! PyTorchによる発展ディープラーニング」
https://www.amazon.co.jp/dp/4839970254/

は、多くの読者の方々にご愛読いただき、そして多くのIssue投稿によって支えられ、今日まで至ります。

まずは感謝の意を申し上げたいです。読者の皆様、誠にありがとうございます。

以下に、本書の今後について、私が悩んでいる点を列挙いたします。


[1] 本書は2019年7月29日に発売され、もうすぐ発売から3年が経過します。
原稿執筆開始からですと、もうすぐ4年となります。
原稿執筆時点ではPyTorchはversion 0.4で、販売間近にversion 1.0がリリースされ、v1.0を本書のベースにしました

[2] とはいえ、最新のPyTorchのversionに対応していないのは微妙であり、読者の皆様からの温かいIssueで修正を提案いただき、それを増刷のタイミングにて書面にもできる限り反映するという対策をとってきました
(増刷は改訂とは違うため、書面に大きな変更を加えることはできず、できる限りの範囲にて対応)

[3] AI分野の変化はとても早いです。
ライブラリのバージョンもですが、そもそも主流となるアルゴリズムも変化しています。

著者としてはTransformerとそれをベースとしたBERTが出た時点で、これが今後のベースとなり、
書籍としても一冊をまとめ上げる価値があると判断して、4年前の2018年から原稿執筆を開始しました。

BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
https://arxiv.org/abs/1810.04805

ですが、その4年前と現在ではディープラーニングを取り巻く環境もとても変化しています

[4] 今後の選択肢として、以下の3点を考えています

[4-1]
ひとまず当面はこちらの選択肢となります。

書店に並んでいて絶版になっていない書籍とはいえ、
IT書籍という性質上、その書籍で扱っているライブラリの最新版に常に追いついている書籍は実現不可能です。

「本書執筆時点でのライブラリバージョンPyTorch v1.0環境で本書は進めて下さい」
としか案内しようがないところがあります(本意ではないですが)

[4-2]
現在の内容のままPyTorchのversion 1.11に合わせて改訂版を執筆する

ただし、この作戦は大きく2つのリスクを抱えています。

・1つ目は改訂版を書き終えたあと、PyTorchからversion 2がリリースされ、
TensorFlowの1.0と2.0ほどに変化が生じ、後方互換性がないリスクです。

これが発生すると、改訂版を執筆し直したのか意味がなくなります
(現在の流れでは、こうした事態の発生確率は低いとは考えています)

・2つ目は、改訂版を執筆するにあたって、
書籍で取り上げるアルゴリズムは4年前に選定した、今のアルゴリズムのままで本当に良いのだろうか?
と言う懸念です

例えば、物体検出の現在のSoTAなアルゴリズムは

https://paperswithcode.com/sota/object-detection-on-coco

を参考にすると、

DINO(Emerging Properties in Self-Supervised Vision Transformers):self-DIstillation with NO labels
https://arxiv.org/abs/2104.14294

や、
Swin Transformer: Hierarchical Vision Transformer using Shifted Windows
https://arxiv.org/abs/2103.14030

のような、Vision Transformerを活用するものです。

一方で、画像分類系ではViT(Vision Transformer)よりも、

MLP-Mixer: An all-MLP Architecture for Vision
https://arxiv.org/abs/2105.01601

ConvMixer:Patches Are All You Need?
https://arxiv.org/abs/2201.09792

のような、パッチ化を重視し、ViTを使用しないような手法も出てきています。

このように、現時点ではSOTAに近い手法があまり安定していないと、著者は感じています。

一度書籍を改訂執筆してしまうと、再び大きくは動きづらいという制約が生まれるため、
上記のようなリスクにどう対応するのか明確にする必要がありますが、難しいところです。

[4-3]
3つ目、最後の選択肢です。

上記の[4-2]を踏まえてですが、もう少し業界の動向を見てから対応を考えます。

この4年間で、BERTにはじまったTransformer革命が画像系をはじめ、時系列などいろいろな分野に波及しました。
一方でTrasformerって本当に絶対か?という疑問も上がっています。

ConvlutionとReLUからはじまったディープラーニングv1.0??が、

Transformerと自己教師あり学習によるディープラーニングv2.0??
に落ち着くのか、

別の方向に落ち着くのかを見定め、
「SOTAアルゴリズムはどんどん変わるけど、ベースはがらりとは変わらないね」状態に、
ある程度近づいた段階で、
掲載するアルゴリズム自体を選定し直し、
改訂版ではなく、別書籍として出版する作戦です


著者としては、当面、[4-1]の姿勢、そして[4-3]を念頭に置いています。

日本にとって、そしてこれからディープラーニングを学ぶ学生や社会人の方、その他多くの方にとって、
考えうる最善の策と貢献ができるように、今後も精進していく所存です。

以上、長文失礼しました。

from pytorch_advanced.

YutaroOgawa avatar YutaroOgawa commented on August 25, 2024 2

@kawase621 さま

コメントをいただき、誠にありがとうございます。
ここにコメントを重ねるのは勇気が要ったと思いますが、上記コメントを読んで、とても嬉しく感じました。
本当にありがとうございます。

今後の方向性を考えるうえでも、とても重要な示唆もいただけ、非常に助かります。
皆様からこうしたご意見をいただけ、その上で次の形態、方法を考案できれば、とても嬉しいです。
お気持ちに応えられるように、精いっぱい頑張ってまいります!

誠にありがとうございます!

from pytorch_advanced.

kawase621 avatar kawase621 commented on August 25, 2024 1

小川様

誠に僭越ながらコメント差し上げます。

私は1年ほど前にこの本を手に取り、コード含めて隅々まで読み込みましたが、本当に読んで良かったと思える書籍でした。

深層学習の応用という観点から、"仕組みをブラックボックス化して取り敢えず動かしてみる"というスタンスの類書も多い中、仕組みまで詳しく解説頂いている本書は非常に貴重と思います。また、類書で解説されていないアルゴリズムも多く含まれており、視野が広がったように感じています。 

私の拙い質問にも早急にご回答いただける小川様のご対応も、頭が下がる思いでした。

素人故に今後の技術的な動向は正直なところ全く分かりませんので、本書の方向性等に言及するのは私の能力を超えますが、自力で最新論文を読み解くのが厳しい私のような者からすると、新しい技術を含んだ上で、この本が改訂されるのであればそれはとても嬉しいことです。

書籍という形態をとる以上、日進月歩の技術に合わせて改訂するのは難しいというのはその通りと思います。ただ、やはりインターネット上の情報だけでは系統立った整理や学習が難しく、幹になる部分の学習は書籍が向いていると私は考えていますし、そう考える人は少なくないと思います。そういった意味で、本書の需要がなくなることは無いと思います。

偉そうなコメントで申し訳ありません。
今後のご活躍を心からお祈りします。

from pytorch_advanced.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.