機械学習は簡単になっていますが、ソフトウェアエンジニアリングはまだ難しいです

機械学習は簡単になっていますが、ソフトウェアエンジニアリングはまだ難しいです

これはレビュー記事です。 それは偏りもあります。 スペシャリストではなく、物事を作ったり問題を解決したりするジェネラリストやメーカーが増えれば、世界はもっと良い場所になると思います。

[[329550]]

過去 5 年間で、機械学習ははるかに簡単になりました。 同時に、ソフトウェア エンジニアリングはかつてないほど複雑になっています。

ソフトウェアエンジニアにとって、これは素晴らしいことです。 しかし、機械学習の専門家にとってはそうではありません。

これは、ML がソフトウェア エンジニアリングへ、データ サイエンスがデータ分析へと進化したものです。

機械学習ツールはより利用しやすくなっている

ML が成長するにつれて、クラウド サービスの市場も拡大し、アルゴリズムを理解することの価値は低下しました。

昔々、私たちはアルゴリズムを手作業でコーディングしていました。 Sklearn では、数行のコードで同じことを実行できます。

オリジナルのTensorFlowは使いにくいです。 Keras を使えばすべてが簡単になります。

Google、Microsoft、Amazon は現在、クラウド内でモデルを選択、トレーニング、調整し、そのモデルを API 経由で即座に利用できるようにするサービスを提供しています。

誰でも AI をトレーニングできますが、時間がかかります。 しかし、複雑さが減るにつれて、経験豊富なソフトウェア エンジニアにとってのもう 1 つのツールになります。

機械学習の開発は少数の言語に集中している

言語は堀です。 期間

COBOL を知っていますか? もし知っていたら、あなたには一生の仕事があります。 世界の金融システムはこれに依存しています。 もう誰も COBOL を学びません。

機械学習のほとんどは Python で実装されていますが、ソフトウェア開発は多くの言語にまたがっています。

> https://www.tiobe.com/tiobe-index/

すべての ML エンジニアが Python の経験を持っている場合、すべての ML エンジニアと競争することになります。 ソフトウェアに関しては、同じテクノロジーを使用する一部のエンジニアとしか競争できません。

高給の Ruby on Rails の仕事がこんなにたくさんあることにいつも驚かされます。 これは何年も前に廃止されましたが、多くの大企業 (Shopify、Instacart、Kickstarter など) はレガシーな理由からこれを使い続けています。

複数の言語を学ぶことは絶対に可能ですし、学ぶべきです。 優れたソフトウェア エンジニアになるには、これが重要です。

ソフトウェアエンジニアリングには幅広いスキルが含まれる

ソフトウェア エンジニアには、あらゆることについて少なくともある程度理解していることが求められます。

> 簡単なスケッチ

バックエンドエンジニアはブラウザがどのように動作するかをまだ知っています。 フロントエンドエンジニアは、データベースの概念をいくつか持っています。 どちらも、SQL インジェクションなどのセキュリティ脆弱性を防ぐことができます。

ソフトウェアを徹底的に理解することで、専攻の変更が容易になります。 また、エンドツーエンドのソリューションを構築することもできます。

幅広いスキルセットを持つソフトウェア エンジニアは、曖昧な環境にもより適しています。 需要が増加するにつれて、ソフトウェア エンジニアはデータ サイエンスに目を向けることが多くなります。 対照的に、データ サイエンティストがソフトウェアを開発する可能性は低くなります。

ハードコードされた条件付きロジックの代替として ML に注目する人が増えるにつれ、ML に取り組むソフトウェア エンジニアが増えるでしょう。

有能なフルスタック開発者になるには何年もかかる

多くの個別のスキルを網羅しています。

データベースの最適化、API マイクロサービスの構築、レスポンシブなフロントエンドの構築には、文字通り共通点がまったくありません。 3 つの異なる言語で実装できます。

これらの分野では自動化はほとんど見られません。

対照的に、フルスタック ML エンジニアはますます強力な AutoML を完成させており、そのための SOP を記述し、分類子のトレーニング作業をインターンに委託することができます。

ソフトウェア エンジニアリング スキルセットのすべてのコンポーネントが存在しなくなるまでには、しばらく時間がかかるでしょう。

機械学習は製品ではなく、製品を補完するものである(通常は)

AI を主力製品とする企業は少数ですが、ほとんどの企業は AI を既存の製品を補完するために使用しています。

Medium は記事の推奨を得るために機械学習を使用するかもしれませんが、コア製品は執筆/出版プラットフォームです。

興味深いことに、ほとんどの企業は単純で類似したユースケースに ML を使用しています。 これにより、単一の企業が上記のユースケースを SaaS 製品として提供することが容易になります。 すると突然、スタートアップ企業は社内で何かを作る必要がなくなったのです。

インフラは極めて複雑化している

AWS は 200 を超えるさまざまなクラウド サービスに拡大しました。

クラウドでアプリケーションを実行する Heroku の PaaS アプローチは素晴らしいです。 しかし、規模を問わず、非常に高価になります。

そのため、今ではまったく新しいクラウド スタック (ネットワーク、データベース、サーバー) を管理する必要があり、小さな追加によって大きなセキュリティ ホールが生じる可能性があります。

「クラウド エンジニアリング」と呼ばれる開発のサブセット全体があり、その仕事は AWS、GCP、または Azure 上でソフトウェアを実行することです。

中小企業では、インフラストラクチャの管理は上級開発者の手に委ねられることが多いです。

これは複雑な問題です。 しかし、それはまた、再現するのが難しい仕事やスキルを意味します。

フロントエンド開発は進化している

フロントエンド開発を独力で習得するのはスキルです。

開発を始めた頃は、jQuery を使用してレスポンシブなフロントエンドを構築できました。 その後、同社は Angular または React に移行しました。 Angular は Angular 2 になります (重大な変更あり)。 React はクラスから関数コンポーネントに移行し、フックを追加しました。

上記のフレームワーク/ライブラリはすべて、根本的に異なる方法で動作します。

いくつかの企業が、モデルに基づいてフロントエンドを自動的に生成することに取り組んでいます。 しかし、同僚の間では、製品の品質にはまだ程遠いという意見で一致しています。

フロントエンド開発の技術力とピクセルの完璧さに対する感覚が組み合わさって、一時的に驚異的になります。

結論は

ソフトウェア開発は複雑であり、さまざまな問題が伴います。 この複雑さは雇用にとって良いことです。

しかし、さらに重要なのは、幅広いスキルセットにより、エンドツーエンドの問題解決能力が強化されることです。

一般の人々が自分たちのコミュニティの問題を解決できる社会を構築するには、ソフトウェア エンジニアリングが最適な出発点です。

機械学習の余地はあるでしょうか? もちろんあります。 しかし、モデルをトレーニングすることよりも、問題を解決することの方が重要です。

ソフトウェアエンジニアリングを学びます。 物を作る。 問題を解決してください。

<<:  IBMは顔認識技術の開発を中止し、議会に書簡を送った。

>>:  機械学習を予知保全に適用するにはどうすればよいでしょうか?

ブログ    
ブログ    

推薦する

人工知能とビッグデータを開発する際に注意すべき12のポイント

人工知能は近年の科学技術発展の重要な方向です。ビッグデータの時代において、データの収集、マイニング、...

...

人工知能 (AI) は、研究室から実際のアプリケーションまでどのように異なるのでしょうか?

人工知能が実際の応用に入ると、遭遇する問題のほとんどは複雑になります。 しかし、現段階では、人工知能...

ネイチャー誌の表紙:量子コンピューターの実用化はまだ2年先

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

大規模モデルのスコアリングのためのベンチマークは信頼できるでしょうか? Anthropicは大きなレビューを出した

現段階では、人工知能 (AI) が社会に与える影響に関する議論のほとんどは、信頼性、公平性、悪用され...

AIと機械学習が克服すべき3つのハードル

[[343495]] [51CTO.com クイック翻訳] 人工知能革命はまだ初期段階ですが、人工知...

自動運転車向けエッジAIコンピューティングの可能性

自動運転はエッジコンピューティングの重要な応用分野です。自動運転には100~1000TOPSのエッジ...

レポート | ジェネレーティブ AI はリアルタイムの可能性を秘めているが、まだ初期段階にある

最近の調査によると、企業は生成 AI がリアルタイムのデータ分析を実現する大きな可能性を秘めていると...

...

博士号を取得したいですか?機械学習の博士課程5年生と強化学習の博士課程の学生が対決した

博士号取得のために勉強するべきか、しないべきか、それが問題だ。 [[354586]]博士号を取得すべ...

ディープラーニングとツリー探索によるゼロからの高速学習と低速学習

[[211446]]この記事では、ロンドン大学ユニバーシティ・カレッジ (UCL) の Thomas...

テンセントクラウドが7つの新製品をリリース、AIアプリケーションは洗練へ向かう

12月11日、テンセントクラウドは北京で新しいビッグデータAI製品発表会を開催した。テンセントクラウ...

Googleを超えろ!世界最大の時間結晶が記録を破り、量子コンピューターが新たな奇跡を起こす

今日、タイムクリスタルは再び新しいスターを迎え、Sceinceサブマガジンに登場しました。 タイムク...

...