並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 35 件 / 35件

新着順 人気順

計算量の検索結果1 - 35 件 / 35件

タグ検索の該当結果が少ないため、タイトル検索結果を表示しています。

計算量に関するエントリは35件あります。 プログラミングアルゴリズムalgorithm などが関連タグです。 人気エントリには 『できるだけ嘘を書かずに計算量やオーダーの説明をしようとした記事 - えびちゃんの日記』などがあります。
  • できるだけ嘘を書かずに計算量やオーダーの説明をしようとした記事 - えびちゃんの日記

    計算量についてのお話です。対象は、プログラミング経験はあるが計算量のことを知らない初心者から、計算量のことを知っているつもりになっている中級者くらいです。 数式を見たくない人にとっては読むのが大変かもですが、深呼吸しつつ落ちついて読んでくれるとうれしいです。 それから、この記事が自分には合わないな〜と思ったときは、(別の記事を Qiita とかで検索するよりも)この記事の一番下の 参考文献 にある本を読むことをおすすめします。Amazon の試し読みで無料で読めます*1。 TL; DR 関数の増加度合いのことをオーダーと呼ぶよ 計算量は、入力サイズ(など)を受け取ってアルゴリズムの計算回数(など)を返す関数だよ その関数のオーダーについての議論がよく行われるよ オーダーを上から抑えるときは \(O\)、下から抑えるときは \(\Omega\) を使うよ オーダーを上下両方から抑えたいときは

      できるだけ嘘を書かずに計算量やオーダーの説明をしようとした記事 - えびちゃんの日記
    • アメリカさん、遂にアメリカの誇るIT企業総動員でアメリカ版ヤシオリ作戦発動。//日本の京コンピューター33台分の計算量でコロナウイルスを解析に

      polaris💉💉 @Polaris_sky アメリカさん、遂にアメリカの誇るIT企業総動員でアメリカ版ヤシオリ作戦発動。330ペタフロップスの計算量でコロナウイルスを解析してぶん殴りに行く模様。330ペタフロップスとは、日本の京コンピューター33台分。やっぱりアメリカ凄い、もっとやれ。 twitter.com/gigazine/statu… 2020-03-23 12:00:57

        アメリカさん、遂にアメリカの誇るIT企業総動員でアメリカ版ヤシオリ作戦発動。//日本の京コンピューター33台分の計算量でコロナウイルスを解析に
      • 計算量O(n)の画期的なソートアルゴリズムであるスターリンソートをHaskell で実装してみた #Haskell - Qiita

        皆さん、ソートは好きですか? 僕はHaskellerのクセにボゴソートが好きです。 ソートされていない要素を粛清することでO(N)でソートできるスターリンソートとかいうのを見て爆笑してる — やんぎん (@4116You) July 28, 2019 なにやらTLでスターリンソートなるものが流行っていました。 まずO(n)とは何かという事なんですが、これはビッグ・オー記法と言ってアルゴリズムの性能の指標を表すものです。 O(n)の他にO(1)とかO(log(n))とかO(nlog(n))とかO(n^2)とかがありますが、詳しくは割愛します。この辺を参考にするとよく分かると思います。ともかく、O(n)はむっちゃ速い、というかソートアルゴリズムではまず有り得ないです。 にも関わらず、スターリンソートはその壁を打ち破って、O(n)で並べ替えを実現しちゃうんですよね。 というわけでHaskellで

          計算量O(n)の画期的なソートアルゴリズムであるスターリンソートをHaskell で実装してみた #Haskell - Qiita
        • アルゴリズムと計算量 - 「プロになるJava」ボツ原稿 - きしだのHatena

          「プロになるJava」ボツ原稿、今回は「13章 処理の難しさの段階」に入れようと思っていた、「アルゴリズムと計算量」の話です。 こういう話題でよくでる「こんな難しいプログラム組まないのでは?」という疑問についても最後にまとめています。 プロになるJava―仕事で必要なプログラミングの知識がゼロから身につく最高の指南書 作者:きしだ なおき,山本 裕介,杉山 貴章技術評論社Amazon アルゴリズムと計算量 ここまでいろいろな処理の計算手順について紹介しました。こういった計算手順のことを アルゴリズム といいます。 同じ処理をするアルゴリズムはいろいろ考えられます。そのとき気になるのは実行性能の問題です。 ただ、実行性能はコンピュータによってクセがあるので、アルゴリズムそのものについてを考えるときにはそういったクセを取り除いて考えたいものです。 そこで、アルゴリズムの性能について考えるときに

            アルゴリズムと計算量 - 「プロになるJava」ボツ原稿 - きしだのHatena
          • 【競技プログラミング】ダイクストラ法の計算量はなぜO(E)なのか

            Posted on February 13, 2020 |  4 minutes |  Akira Hayakawa この記事の目的ダイクストラ法の計算量は、O(ElogV)である。 仮に、エッジの長さが0か1ならばO(E)、つまりエッジの数に比例することになる。 「どうしてそうなるのか全く理解出来ない」と誰でも思うだろう。 優先度キューを使ってBFSで探索していけば、毎回エッジの分だけ分岐があるんだから なんらかの計算量はその分岐がどんどん積み重なっていき、 指数オーダーになってしかるべきだろう。 ふつうの人はそう考える。 どういうメカニズムで探索が省略されているのかなんとなく木を書き出して考えてみても、 なんとなくわかった気になったあとでやっぱりわからんとなる。 それが、ダイクストラ法を題材にしたちょっとした応用問題が出た時に手も足も出なくなる原因である。 グラフがぽいっと渡されて、は

              【競技プログラミング】ダイクストラ法の計算量はなぜO(E)なのか
            • 計算量について、償却/期待/平均など - noshi91のメモ

              本記事は皆様からのご指摘を募集しております 誤った記述があるかもしれません 概要 競技プログラミングをやっていると などの表記を見掛けることも多いでしょう *1。 それぞれについて、大雑把な意味をまとめました。 アルゴリズムの挙動の正確な把握は競技においても重要です。 以降、全て時間計算量に付いて議論します。 注: 本稿内で用いられる はほとんどが に置き換えられますが、 Big O notation と同時に説明すると混乱を招くと判断し、競技プログラミングにおいて常用されている を使用しています。 最良計算量 多くのアルゴリズムは、入力によって計算量が変化します *2。 例えば、ソートアルゴリズムには大まかに 通りの入力が存在します。 あり得る全ての入力のうちの計算量の最小値を最良計算量と呼び、 を付けて表記します。 線形探索は (最初に求める値が存在した場合) マージソートは 挿入ソー

              • End-to-End音声認識の計算量を削減した話

                ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは、音声処理黒帯(黒帯はヤフー内のスキル任命制度)の藤田です。今日のブログでは、音声認識技術の研究開発におけるヤフーの最新の取り組みを紹介します。 特に、近年注目されているTransformerという手法に基づく、End-to-End音声認識の計算量を削減した研究を紹介します。この研究は、難関国際会議IEEE ICASSP2020に投稿し、採択されました。また、arXivでプレプリントを公開しています。そして、ESPnetというEnd-to-Endモデルのツールキット上でソースコードも公開しています。興味のある方はぜひ、こちらもご参照ください。 音声認識で用いられるEnd-to-Endモデルとは? 音声認識技術は音声をテキ

                  End-to-End音声認識の計算量を削減した話
                • 数列と近似と計算量|Ryota Yokote @ミラティブ

                  結論を述べる。ソフトウェアエンジニア、特に高負荷環境のゲームエンジニアやバックエンドエンジニアにとって有用な教養となる。 数列数の列数が並んでいるものを数列(numerical sequence)という。 $$ 1,5,5,6,3,4,2, \cdots $$ 適当に並べたが数は自然数でも実数でも複素数でもなんでも良い。適当に並べるとあまり意味がないので、この数列に何らかの法則性がある場合を考える。 等差数列「1年目の預金が5万円、2年目から毎年3万円預金し続けた場合、7年目の預金額は?」。書き出してみよう。 $$ 5,8,11,14,17,20,23\cdots $$ 答えは$${23}$$。では、書き出さないで求める方法は?おそらく脳内でこういう計算をしたと思う。 $$ 5 + 3 * (7 - 1) = 23 $$ これを抽象化する。$${n}$$番目の値を$${a_n}$$と定義す

                    数列と近似と計算量|Ryota Yokote @ミラティブ
                  • Google Colaboratory Pro/Pro+が2022年9月29日からクレジット制に移行、計算量上限が透明化&追加購入が可能に

                    Google Colaboratory(Google Colab)は、Googleが機械学習の教育や研究用に提供しているサービスで、ローカルにインストールすることなくPythonや機械学習の環境を構築できます。このGoogle Colabの有料版であるGoogle Colab Pro/Pro+におけるGPUの使用量がクレジット制に移行するというメールが運営から送られてきたと、ソーシャルニュースサイトのHacker Newsに投稿されて話題となっています。 Google Colab Pro is switching to compute credits | Hacker News https://news.ycombinator.com/item?id=32656200 機械学習や深層学習の演算にはGPUが使われますが、Google Colabでは基本無料でGPUを使った計算が可能です。ただ

                      Google Colaboratory Pro/Pro+が2022年9月29日からクレジット制に移行、計算量上限が透明化&追加購入が可能に
                    • アニメーションでみるアルゴリズムの計算量 - Qiita

                      はじめに この記事では基本的なアルゴリズムの一つである、ソートアルゴリズムを例にとってアニメーションを使って、アルゴリズムの計算量をみることを目的としています! アルゴリズムを勉強していく中で、計算量という言葉を目にすることが多いと思います。 しかしながら、計算量について実際に、アルゴリズムごとでどの程度違うのか、ということは直感的に分かりにくいと思います。 そこで! 直感的に分かりやすいように、ソートアルゴリズムをこのようにアニメーションを使って可視化させてみたので、勉強の参考であったり、通勤中の暇つぶしなどに活用してみてください! アニメーション例(クイックソート)↓ 最初に計算量について解説するので、アニメーションだけ見てみたいという方は 実際に比較してみる 全体比較 をご覧ください! 弊社Nucoでは、他にも様々なお役立ち記事を公開しています。よかったら、Organizationの

                        アニメーションでみるアルゴリズムの計算量 - Qiita
                      • 競技プログラミングをしなくても知っておきたい計算量のはなし

                        これは ミライトデザイン Advent Calendar 2021 の 14 日の記事です 最近ふぐひれ酒が飲みたくて仕方ない ほげさん ( zenn ) です 今日は計算量について超ゆるふわに紹介してみようと思います 「競技プログラミングとかやらんし」「Web サービス作るのにいらんし」などと思った方! 大量リクエストの対応やバッチ処理など、案外役に立つかもしれないですよ! どういうときに計算量を考えるか 計算量とは、処理の効率などを示す尺度のことです この記事では処理時間についてのみ紹介します まずはサンプルコードと実行結果を見ながら、代表的なケースとインパクトを見てみましょう データ構造をちょっとだけ気にする ロジックをちょっとだけ気にする アルゴリズムをちょっとだけ気にする の三本立てでサクサクいきますよ ケース 1: データ構造をちょっとだけ気にする 最後の要素を取得するのは、配

                          競技プログラミングをしなくても知っておきたい計算量のはなし
                        • プログラムの計算量、オーダー表記 O( ) の求め方のまとめ

                          記事修正 2019/05/25 一部極限式やオーダーの \( n \) が \( x \) になっていたのを修正 こんにちは、ももやまです。 今日は久しぶりに情報系のまとめです。 皆さん、効率のよいアルゴリズムってどんなアルゴリズムだと思いますか? 時間がかからない、メモリを食わない、などなど様々な評価の仕方があると思います。 今回は「どうやってアルゴリズムの良し悪しを評価するか」、そして「アルゴリズムの評価でよく使われるオーダー表記 O( )」についてまとめてみようと思います。 1.計算量ってなに…? 何人かが作ったアルゴリズムの良し悪しを評価したいとします。 評価の方法には様々な方法があるのですが今回は、かかった時間で評価してみるとします。 例えば、Aさんの作ったアルゴリズムは実行に30秒かかりました。 しかしBさんの作ったアルゴリズムはたったの10秒で計算できちゃいました。 あ、Bさ

                            プログラムの計算量、オーダー表記 O( ) の求め方のまとめ
                          • エラトステネスの篩の計算量を実験で確認する - Qiita

                            はじめに エラトステネスの篩とは、$n$ 以下の自然数について素数判定表を生成するアルゴリズムです。 計算量 $O(n\log\log n)$ で1予め表を生成してしまえば $1<k\le n$ の範囲の整数は定数時間で判定が行えるので、一定の範囲の整数について大量に素数判定を行う場合(素数の個数を数える、素因数分解を行うなど)は個々の数を素数判定するのに比べ非常に高速になります。 しかし、この $O(n\log\log n)$ という計算量は素数の逆数の総和が $O(\log\log n)$ に漸近していくという定理を用いているなど、かなり非直感的です。 本記事では計算量の実験的な確認を行うとともに他のアルゴリズムとの比較を行いました。2 手法 エラトステネスの篩のPythonによる実装 エラトステネスの篩の基本的なアルゴリズムは擬似コードで以下のように書けます。 2 から n までの数

                              エラトステネスの篩の計算量を実験で確認する - Qiita
                            • ソースコードを見て計算量を下から抑えるのは怪しいという話 - えびちゃんの日記

                              競プロ er はよく計算量の見積もりをします。「これこれの計算量は $O(\dots)$ なので十分高速である」といった具合で上から抑えることが多いです。 また、「これこれの計算量は $\Omega(\dots)$ なので TLE しそう」といった具合で下から抑えることもしばしばあります。 note:「これこれの計算量は $O(2^{2^n})$ なので TLE しそう」といった記号の使い方($O$ で下から抑えようとする)は、不正確な用法なので気をつけましょう。知らずに使っていた人はちゃんと勉強しましょう。 「下から抑える」について 下から抑えるというのは、見積もりたい値はこれ以上であるという値(下界かかい と呼ばれます)を求めるという意味の言い回しです。 ある $a$ を使って $a\le x$ と書けたら「$x$ は $a$ で下から抑えられる」と言います。 逆に、$x\le b$

                                ソースコードを見て計算量を下から抑えるのは怪しいという話 - えびちゃんの日記
                              • Webパフォーマンスの時間計算量を左右するHTMLのDOMツリー | PerfData

                                DOMツリー最適化でブースト! 高速・効率的なWebページへの鍵を握ろう 2023年4月24日 著者: 竹洞 陽一郎 はじめに 今回は、Webパフォーマンスの基礎となる、HTMLの解析において特に重要なDOMツリーについて解説します。 HTMLのDOMツリーは、多くの人が用語として知っているでしょう。 しかし、木構造の複雑度がCSSやJavaScriptなどの後続処理の時間計算量に大きな影響を与えることについて、十分理解している人は意外と少ないかもしれません。 この記事では、DOMツリーがどのように構築され、その複雑度がWebパフォーマンスにどのような影響を及ぼすかを説明します。 また、効果的なDOMツリー最適化の方法や、それによって得られる恩恵についても触れていきます。 Web開発者は、これらの知識を活用して、より高速で効率的なWebページを提供することができるでしょう。 今回の記事で扱

                                  Webパフォーマンスの時間計算量を左右するHTMLのDOMツリー | PerfData
                                • Amazon.co.jp: Pythonではじめるアルゴリズム入門 伝統的なアルゴリズムで学ぶ定石と計算量: 増井敏克: 本

                                    Amazon.co.jp: Pythonではじめるアルゴリズム入門 伝統的なアルゴリズムで学ぶ定石と計算量: 増井敏克: 本
                                  • Pythonではじめるアルゴリズム入門 伝統的なアルゴリズムで学ぶ定石と計算量 | SEshop.com

                                    増井 敏克(著) 商品番号 163230 販売状態 発売中 納品形態 宅配便にてお届け 発売日 2020年01月24日 出荷開始日 2020年01月23日 ISBN 9784798163239 判型 A5 ページ数 288 キーワード プログラミング  アルゴリズム  Python 時代が変わっても 変わらないアルゴリズムから考え方を学ぼう 本書は、初心者にも扱いやすいプログラミング言語「Python」を使用して、 アルゴリズムの基礎・考え方を学ぶ入門書です。特にPythonがはじめてという方の ために、第1章ではPythonの基本とデータ構造について解説しています。 本書では、プログラミング入門者が最低限知っておきたいアルゴリズムの 基礎と考え方に加えて、アルゴリズムの定石とその計算量について、具体的 なサンプルコードと動作イメージを交えて丁寧に解説していきます。 【こんな方におすすめ】

                                      Pythonではじめるアルゴリズム入門 伝統的なアルゴリズムで学ぶ定石と計算量 | SEshop.com
                                    • 読書: 計算量とマスター定理 • masu-mi's blog(dirty pages)

                                      読書: 計算量とマスター定理 マスター定理の意味を押さえたい。周辺を整理して押さえた上で漸近計算量の見積もりをやれるようになりたい。 マスター定理は分割統治法による時間計算量を求める定理です。分割統治法では下のような漸化式が出てくることがしばしばある。 \[ \begin{aligned} T(n) = & \begin{cases} aT(n/b) + f(n) &\text{if } n > n_0 \\ c &\text{if otherwise} \end{cases} \\ & \text{for } \exists c,n_0,a \ge 1, b \gt 1 \end{aligned} \] ここでは \( f(n)\) は正則関数が想定されています。 この式に対して時間計算量\( T(n)\)の陽関数を求めるために使われる定理がマスター定理です。 マスター定理では適用に分岐

                                      • Sparse Transformers:入力シーケンスの長さによる計算量増加問題への革新的なアプローチ

                                        3つの要点 ✔️ Attentionのレイヤー毎の特徴を再現することで,計算量の削減を達成 ✔️ Sliding Window Attenion、Dilated Sliding Window Attention、Global Attentionという3つのAttentionを使ってTransformernの計算量を削減した ✔️ 計算量を削減しただけではなくて,当時のSOTAを達成している. Generating Long Sequences with Sparse Transformers written by Rewon Child, Scott Gray, Alec Radford, Ilya Sutskever (Submitted on 23 Apr 2019) Comments: Published on arxiv. Subjects: Machine Learning (c

                                          Sparse Transformers:入力シーケンスの長さによる計算量増加問題への革新的なアプローチ
                                        • 【AtCoder初心者向け】超ざっくり知りたい計算量の話 - Qiita

                                          はじめに このページはAtCoderを始めてAtCoder Beginner Contest(以下ABC)のA問題、B問題は解けるけど、C問題が難しい…と感じている主にPythonユーザー向けに作成しました。制約と計算量の考え方や、制約と計算量を踏まえて知っておくべき考え方を簡単にまとめました。 そもそも計算量って何? 何回かABCに参加したことがある方なら、$O(N^2)$や$O(NlogN)$といった計算量オーダーが書かれた解説を見たことがあるかもしれません。正直これが書かれてあっても、何が言いたいのかよく分からない、logがどこから来ているのかが分からない、という方が多いと思います。 この計算量オーダーという考え方は、競技プログラミング界で有名なけんちょんさんのページである計算量オーダーの求め方を総整理! 〜 どこから log が出て来るか 〜から言葉を引用すると 計算実行にどのくら

                                            【AtCoder初心者向け】超ざっくり知りたい計算量の話 - Qiita
                                          • 機械学習や競プロの初心者向け・プログラムの「計算量」について解説 - paiza times

                                            Gerd AltmannによるPixabayからの画像 秋山です。Python好きのエンジニアです。 プログラミング学習をしていて「アルゴリズムを学びたい」という方は多いと思いますが、アルゴリズムの良し悪しを決める計算量についても合わせて理解しておく必要があります。 たとえば、競技プログラミングで問題を解く際に、計算量が少ないアルゴリズムを使って処理を高速化することは欠かせませんし、実務でも大規模なデータを扱う場合、計算量を考慮しないと要件を満たせないこともあります。 また複雑な計算処理を実行する機械学習の分野でも、高速化による計算効率の向上は欠かせません。 そこで今回は、計算量の基本について、初めて学ぶ方にも分かりやすく解説していきます。 そもそも「計算量」って? 計算量とは、簡単に言うと計算にかかるコストの指標です。計算量には空間計算量と時間計算量があります。 空間計算量は、プログラム

                                              機械学習や競プロの初心者向け・プログラムの「計算量」について解説 - paiza times
                                            • ビル・ゲイツ氏も注目のInflection、GPT-4に匹敵する新モデル「Inflection-2.5」をリリース STEMで高い性能、計算量は40%に抑制 | AMP[アンプ] - ビジネスインスピレーションメディア

                                              ディープマインドの共同創業者であるムスタファ・スレイマン氏とリンクトインの共同創業者であるリード・ホフマン氏が設立したInflection AIが、新たな基盤モデル「Inflection-2.5」を発表した。 このモデルは、同社のチャットボット「Pi」に搭載され、OpenAIのGPT-4に匹敵する性能を発揮するとして注目を集めている。特にSTEM分野において大幅な性能向上を実現し、GPT-4の94%の性能をわずか40%の計算量で達成。また、GPT-4と同様にリアルタイムのウェブ検索機能を組み込むことで、最新の出来事に関する情報提供が可能となっている。 昨年13億ドルの資金調達に成功し、ビル・ゲイツ氏も注目するInflection AIは、パーソナルで口語的な「共感力のある、有用で安全なAI」の構築を目指す。以下では、Inflection-2.5の性能と特徴をみていきたい。 Inflecti

                                                ビル・ゲイツ氏も注目のInflection、GPT-4に匹敵する新モデル「Inflection-2.5」をリリース STEMで高い性能、計算量は40%に抑制 | AMP[アンプ] - ビジネスインスピレーションメディア
                                              • 計算量オーダーの求め方を総整理! 〜 どこから log が出て来るか 〜 - Qiita

                                                NTT データ数理システムでリサーチャーをしている大槻 (通称、けんちょん) です。今回は計算量オーダーの求め方について書きます。 0. はじめに 世の中の様々なシステムやソフトウェアはアルゴリズムによって支えられています。Qiita Contribution ランキング作成のために用いるソートアルゴリズムのような単純なものから、カーナビに使われている Dijkstra 法、流行中のディープラーニングに用いられている確率的勾配降下法など、様々な場面でアルゴリズムが活躍しています。アルゴリズムとはどんなものかについて具体的に知りたい方には以下の記事が参考になると思います: アルゴリズムとは何か ~ 文系理系問わず楽しめる精選 6 問 ~ アルゴリズムを学ぶと $O(n^2)$ や $O(n\log{n})$ や $O(2^n)$ といった計算量オーダーの概念が登場します。こうした記法を見ると

                                                  計算量オーダーの求め方を総整理! 〜 どこから log が出て来るか 〜 - Qiita
                                                • AIは進化するごとに必要な計算量が増え、処理能力の限界で進化は頭打ちになる | スラド

                                                  AIや機械学習を使った技術の発展は著しいが、あまりにも必要な処理能力が多すぎて、発展は頭打ちになるのではないかという予測があるようだ(WIRED)。 欧州のある大規模スーパーマーケットチェーンは、AIと顧客の購入する商品の傾向、天候や交通情報などのデータを使用して入荷する商品を選択し、在庫管理を行う手法をとっていた。結果、製品の廃棄率などを大幅に削減することに成功したという。 しかし、導入したアルゴリズムは計算量があまりに多く、システムの維持コストが増えすぎた結果、導入を中断したという。クラウドコンピューティングのコストが下がるか、アルゴリズムの効率が大幅に改善するかしない限りは導入はできないという決断になったようだ。同様の問題は、あちこちで指摘されるようになっており、AI研究者は計算リソース不足の影響を感じ始めているとしている。

                                                  • reallocによる配列拡張の償却時間計算量 - 豪鬼メモ

                                                    reallocを使ってメモリアロケーションのサイズを少しずつ伸ばしていく際に、償却時間計算量はO(N)になるだろうか、それともO(N^2)だろうか。結論としては、普通にやるとO(N^2)になる。ただし、セオリー通りにアプリケーション側で工夫するとO(N)にできる。性能テストをしてきちんと確認しておこう。 長さが事前にわからない文字列や配列を扱うには、動的に領域を確保する必要がある。標準C言語にはreallocという関数があり、それは既存の確保領域を拡張することが可能である。これを使うと、既に確保してある領域の直後にまだ確保されていない領域があってそこを合わせて確保できる場合、領域の再確保をせずに、利用可能なサイズだけを増やしてくれる。それが不可能な場合、別の領域を確保してから既存の領域のデータをコピーして、古い領域は削除してくれる。C++のnew/deleteにはこの機能はない。 同じ領域

                                                      reallocによる配列拡張の償却時間計算量 - 豪鬼メモ
                                                    • W - 2.06.計算量

                                                      前のページ | 次のページ キーポイント プログラムを実行するときには処理内容に応じた実行時間がかかる コンピュータの記憶領域(メモリ)は有限であり、プログラムで変数を使用した分だけメモリを消費する プログラムの実行時間・メモリ使用量が入力に応じてどのように変化するかを見積もったものを、それぞれ時間計算量・空間計算量という 計算量の表記にはオーダー記法を用いることが多い アルゴリズム ある処理を行うプログラムを作成するときに、どのような計算を行っていくかという計算手順のことをアルゴリズムといいます。 例えば、1から100までの総和を計算するプログラムを考えます。 1+2+3+...+99+100と順番に足していくというのは1つのアルゴリズムです。これをアルゴリズムAとします。 一方、\frac{100 \cdot (1 + 100)}{2}という式を用いて計算するというのもアルゴリズムです

                                                        W - 2.06.計算量
                                                      • Amazon.co.jp: Pythonではじめるアルゴリズム入門 伝統的なアルゴリズムで学ぶ定石と計算量: 増井敏克: Digital Ebook Purchas

                                                          Amazon.co.jp: Pythonではじめるアルゴリズム入門 伝統的なアルゴリズムで学ぶ定石と計算量: 増井敏克: Digital Ebook Purchas
                                                        • pythonの高速化のために、用途別にcollection型(list/tuple/dictionary/set)の計算量をまとめる - Qiita

                                                          pythonの高速化のために、用途別にcollection型(list/tuple/dictionary/set)の計算量をまとめるPython高速化データ構造計算量 Pythonその2 Advent Calendar 2019の6日目です。昨日はbluepost59さんの内包表記を極めるでした。高速化のために有用な内包表記のパターンを網羅的に紹介されていました。 本記事も高速化を目的としています。より基本的な処理のパフォーマンスを整理するために、pythonのcollection型 (list/tuple/dictionary/set) の計算量を用途別にまとめたいと思います。 各collection型ごとに計算量をまとめてある記事は以下が詳しいです。 The Python Wiki >>TimeComplexity Python Like You Mean It Pythonistaな

                                                            pythonの高速化のために、用途別にcollection型(list/tuple/dictionary/set)の計算量をまとめる - Qiita
                                                          • AIの進歩は頭打ちに? このままでは「膨大な計算量」が壁になるという研究結果が意味すること(WIRED.jp) - Yahoo!ニュース

                                                            AIは囲碁の世界チャンピオンに勝利するなど、輝かしい実績を打ち立てている。しかし必要な計算量が非常に多いために、その進歩が妨げられようとしている。 欧州のある大規模スーパーマーケットチェーンが、2019年の初めに人工知能(AI)を導入した。この企業はAIを使って顧客が毎日さまざまな店舗で購入する製品を予測し、コストのかかる製品廃棄の削減と在庫の維持とを両立させていた。 大量の電力を消費するAIは、どこまで「地球に優しく」なれるのか 売上を予測するためにこの企業は、すでに購入データとシンプルな統計的手法を使用していた。さらに、局地的な天気や交通状況、競合他社の動向といった追加情報に加えて、近年のAIの目覚しい進歩を加速させてきたディープラーニングを新たに導入したことで、エラーの数を75パーセントも削減したのである。 これはまさに、わたしたちがAIに期待するインパクトのあるコスト削減効果だった

                                                              AIの進歩は頭打ちに? このままでは「膨大な計算量」が壁になるという研究結果が意味すること(WIRED.jp) - Yahoo!ニュース
                                                            • .NET 5におけるOrderBy(keySelector).First(predicate)の計算量が増える破壊的変更と、それから考える.NET 5の立ち位置 - Qiita

                                                              .NET 5におけるOrderBy(keySelector).First(predicate)の計算量が増える破壊的変更と、それから考える.NET 5の立ち位置C#.NETLINQ.NETFramework.NETCore 『.NET 5は、.NET Core 3.1の次期バージョンであると同時に、.NET Framework 4.8の移行先でもある。』 そんなことを.NET 5の破壊的変更リスト一覧にある「Complexity of LINQ OrderBy.First{OrDefault} increased」から感じました。 この投稿では、その破壊的内容と背景を紹介します。 破壊的変更の概要 .NET 5の破壊的変更である「Complexity of LINQ OrderBy.First{OrDefault} increased」の概要説明文は以下の通りです。 The impleme

                                                                .NET 5におけるOrderBy(keySelector).First(predicate)の計算量が増える破壊的変更と、それから考える.NET 5の立ち位置 - Qiita
                                                              • pythonの文字列操作の計算量 - Qiita

                                                                ただし、元の文字列の長さを$N$、連結する文字列の長さを$M$としています。 上の問題では、長さ$O(N)$の文字列への連結が$N$回起こり、全体で計算量が$O(N^2)$となることで制限時間オーバーとなった模様です。 連結や先頭・最後の要素へのアクセスが頻繁に起きる場合は、双方向キューやリストなどのデータ構造を使うことを検討すべきでしょう。 リストを使う場合は文字列のjoinメソッドで連結できます。 joinの計算量はリストの長さに比例するはずですが、リスト末尾への要素の追加は$O(1)$のはずです。 検証してみる ここで終わってもいいのですが、「推測するな、計測せよ」という格言にしたがって、せっかくなので計測してみます。 matplotlibを使って、文字列の連結、先頭要素の削除、最後の要素の削除にかかる時間を可視化してみました。 それぞれの文字列長において、かかった時間は100回の平

                                                                  pythonの文字列操作の計算量 - Qiita
                                                                • DFSとBFSの計算量は違う - Qiita

                                                                  はじめに この記事は Qiita Engineer Festa 2022「アルゴリズム強化月間 - 楽しいアルゴリズムの世界を紹介しよう -」に向けて書いた記事です。 DFSとBFSの計算量は違うという話をしますが、この内容の日本語の記事は多分どこにもないと思うので、企画の賞選出基準の「記事のオリジナリティ」はあるかなと思います。 メインの部分は以下の2つの論文の結果となります。 A model classifying algorithms as inherently sequential with applications to graph searching Depth-first search is inherently sequential また、次の本も参考にしました。 Limits to Parallel Computation: P-Completeness Theory t

                                                                    DFSとBFSの計算量は違う - Qiita
                                                                  • ソートアルゴリズム 計算量・特徴一覧

                                                                    挿入ソート、バブルソート、選択ソート この3つのソートは、「ソート済みの部分と未ソート部分に分ける」という共通方針がある。 部分的に分けた後、どのように未ソート部分をソートしていくのかがそれぞれ異なる。 >>【図解】挿入ソート:アルゴリズム【C言語のサンプルコート付き】 >>【図解】選択ソート:アルゴリズム【C言語のサンプルコード付き】 >>【図解】バブルソート:アルゴリズム【C言語のサンプルコード付き】 シェルソート シェルソートは、一定の間隔\(n\)だけ離れた要素からなる集合に対して、挿入ソートを繰り返し行うアルゴリズムである。 \(n\)は、最初は大きい値から始め、挿入ソートを繰り返すごとに小さくしていく。 シェルソートの最悪計算時間は\(O(n^2)\) であるが、最初からある程度整列されたデータに対して高速に動作するという特徴がある。 マージソート マージソートは、配列を\(n

                                                                      ソートアルゴリズム 計算量・特徴一覧
                                                                    • えるエル on Twitter: "プログラミング言語研究者による,東大の教養課程の講義を書籍化した本 Pythonの機能だけでなく,Pythonを使いながら情報科学の基礎を学べる構成で,プログラミング,計算量等のアルゴリズムの考え方,大学で学ぶコンピュータ科学,物… https://t.co/I8OwIbdMth"

                                                                      プログラミング言語研究者による,東大の教養課程の講義を書籍化した本 Pythonの機能だけでなく,Pythonを使いながら情報科学の基礎を学べる構成で,プログラミング,計算量等のアルゴリズムの考え方,大学で学ぶコンピュータ科学,物… https://t.co/I8OwIbdMth

                                                                        えるエル on Twitter: "プログラミング言語研究者による,東大の教養課程の講義を書籍化した本 Pythonの機能だけでなく,Pythonを使いながら情報科学の基礎を学べる構成で,プログラミング,計算量等のアルゴリズムの考え方,大学で学ぶコンピュータ科学,物… https://t.co/I8OwIbdMth"
                                                                      • 計算量を抑えながら長時間の録音にも対応できる音声認識手法の提案

                                                                        ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは、ヤフーの音声認識エンジン「YJVOICE」の研究開発を担当している藤田です。 今回のブログでは、ヤフーにおける音声認識技術の研究開発の最新の取り組みを紹介します。具体的には、前回のブログでご紹介した新しい音声認識処理を、長時間の録音にも対応可能にした研究をご紹介いたします。長時間録音に対応するためには音声区間検出という処理が必要になるのですが、1つのモデルで音声区間検出と音声認識を処理可能な手法を提案し、従来法に比べて高い精度を短い処理時間で実現しました。なお、この研究は難関国際会議INTERSPEECH 2021に投稿し、採択されました。論文はこちらで公開されていますので、詳細が気になる方はぜひご覧ください。 Non

                                                                          計算量を抑えながら長時間の録音にも対応できる音声認識手法の提案
                                                                        1

                                                                        新着記事