機械学習はほとんどは単純計算処理だから、pythonよりnode.jsとかgoとかの方が本当は良い?
よろしくお願いいたします。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答3件
0
機械学習はほとんどは単純計算処理だから
「単純計算処理」の部分は機械語やGPUなども使って徹底的にチューニングされたライブラリとして提供されていますので、「Pythonで書く」といっても、実際にPython上で動作するのはメインの計算を繋ぐ部分だけです。Pythonの速度は、全体性能にはほぼ影響しません。
投稿2019/05/01 01:52
総合スコア145183
0
- 言語機能またはデファクトスタンダードで提供される効率の良いデータ表現手段がある(pythonではnumpy)
- Cとシームレスに結合できる(pythonではcython)
少なくともこの2点を満たさないと厳しいものがあるかと。
C++で機械学習アプリケーションを書くことは十分可能ですし(面倒だからライブラリ以外は他の言語で書きたいだけで)、Javaも実はそこそこのエコシステムがあります。逆に、抽象度の高い高級言語で成功していると言えるのはPython, R程度でしょうか。
基本的には、低レイヤとの接合部分を管理する手段がどこまであるかによると思います。
投稿2019/05/01 07:41
編集2019/05/01 07:47総合スコア30933
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
自分が思うPythonのいいところは
コードを書きやすく読みやすいことです
この理由でPythonが機械学習に広く使われているのではないかと思います
機械学習は実行速度も重要ですが
トライアンドエラーが多いので
コードを書くことや直すために要する時間が短くなるほど
うれしいと感じます。
そこに共感する人がだんだんとPython本体やライブラリを作っていき
今の環境になったんじゃないかと思います。
また、maisumakunさんがおっしゃったように
ライブラリによってはPythonを実行中に
CやCUDAを使ったプログラムが走っているため
学習、推論時はそちらの速度に依存します
なので、Pyhtonよりも書きやすく読みやすい言語が出ない限りPythonの立場は変わらないと思います。
ただ、
node.js はWebで使われることが多い
go は並列処理が得意
という長所があり、もしかすると今後そちらが主流になるかもしれません。
投稿2019/05/01 04:08
総合スコア178
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。