並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 609件

新着順 人気順

数値計算の検索結果1 - 40 件 / 609件

  • Python言語による実務で使える100+の最適化問題 | opt100

    指針 厳密解法に対しては、解ける問題例の規模の指針を与える。数理最適化ソルバーを使う場合には、Gurobi かmypulpを用い、それぞれの限界を調べる。動的最適化の場合には、メモリの限界について調べる。 近似解法に対しては、近似誤差の指針を与える。 複数の定式化を示し、どの定式化が実務的に良いかの指針を示す。 出来るだけベンチマーク問題例を用いる。OR-Libraryなどから問題例をダウンロードし、ディレクトリごとに保管しておく。 解説ビデオもYoutubeで公開する. 主要な問題に対してはアプリを作ってデモをする. 以下,デモビデオ: 注意 基本的には,コードも公開するが, github自体はプライベート そのうち本にするかもしれない(予約はしているが, 保証はない). プロジェクトに参加したい人は,以下の技量が必要(github, nbdev, poetry, gurobi); ペー

    • Hiroshi Takahashi

      Skip to the content. 機械学習の研究者を目指す人へ 機械学習の研究を行うためには、プログラミングや数学などの前提知識から、サーベイの方法や資料・論文の作成方法まで、幅広い知識が必要になります。本レポジトリは、学生や新社会人を対象に、機械学習の研究を行うにあたって必要になる知識や、それらを学ぶための書籍やWebサイトをまとめたものです。 目次 プログラミングの準備 Pythonを勉強しよう 分かりやすいコードを書けるようになろう 数学の準備 最適化数学を学ぼう 基本的なアルゴリズムとその実践 機械学習の全体像を学ぼう 基本的なアルゴリズムを学ぼう 深層学習の基礎を学ぼう scikit-learnやPyTorchのチュートリアルをやってみよう サーベイの方法 国際会議論文を読もう Google Scholarを活用しよう arXivをチェックしよう スライドの作り方 論文の

      • Python言語による実務で使える100+の最適化問題 | opt100

        はじめに 本書は,筆者が長年書き溜めた様々な実務的な最適化問題についてまとめたものである. 本書は,Jupyter Laboで記述されたものを自動的に変換したものであり,以下のサポートページで公開している. コードも一部公開しているが,ソースコードを保管した Github 自体はプライベートである. 本を購入した人は,サポートページで公開していないプログラムを 圧縮ファイル でダウンロードすることができる. ダウンロードしたファイルの解凍パスワードは<本に記述>である. 作者のページ My HP 本書のサポートページ Support Page 出版社のページ Pythonによる実務で役立つ最適化問題100+ (1) ―グラフ理論と組合せ最適化への招待― Pythonによる実務で役立つ最適化問題100+ (2) ―割当・施設配置・在庫最適化・巡回セールスマン― Pythonによる実務で役立つ

        • 「2乗してはじめて0になる数」とかあったら面白くないですか?ですよね - アジマティクス

          「その数自体は0でないのに、2乗するとはじめて0になる数」ってなんですか? そんな数あるはずがないと思いますか? でももしそんな数を考えることができるなら、ちょっとワクワクすると思いませんか? 今回はそんな謎の数のお話。 実数の中には、「2乗して0になる数」というのは0しかありません。 (2乗して0になる実数は0しかない図) ということは、「2乗してはじめて0になる数」というのがあるとしたら、それは実数ではありえません。 「1年A組にはメガネの人はいないので、メガネの人がいたとしたらその人は1年A組ではありえない」くらいの当たり前のことを言っています。 この辺の議論は、複素数で「」を導入したときと同じですね。 「実数の中には、2乗して-1になる数というのは存在しないので、それがあるとしたら実数ではありえない」ということで「虚数」であるが導入されるわけです。 それならばということで、ここでは

            「2乗してはじめて0になる数」とかあったら面白くないですか?ですよね - アジマティクス
          • 大学で読んだ情報科学関連の教科書 - ジョイジョイジョイ

            先日、博士(情報学)になりました。学部と大学院をあわせた 9 年間で読んだ情報科学関連の教科書・専門書を思い出を振り返りつつここにまとめます。私は授業はあまり聞かずに独学するタイプだったので、ここに挙げた書籍を通読すれば、大学に通わなくてもおおよそ情報学博士ほどの知識は身につくものと思われます。ただし、特に大学院で重要となる論文を読み書きすることについては本稿には含めておりません。それらについては論文読みの日課についてや論文の書き方などを参考にしてください。 joisino.hatenablog.com 凡例:(半端)とは、数章だけ読んだ場合か、最後まで読んだものの理解が浅く、今となっては薄ぼんやりとしか覚えていないことを指します。☆は特におすすめなことを表します。 学部一年 寺田 文行『線形代数 増訂版』 黒田 成俊『微分積分』 河野 敬雄『確率概論』 東京大学教養学部統計学教室『統計学

              大学で読んだ情報科学関連の教科書 - ジョイジョイジョイ
            • Learning Machine Learning  |  Cloud AI  |  Google Cloud

              Accelerate your digital transformation Whether your business is early in its journey or well on its way to digital transformation, Google Cloud can help solve your toughest challenges.

                Learning Machine Learning  |  Cloud AI  |  Google Cloud
              • 中学受験は、そろそろ根本的に変わったほうがいい - 天国と地獄の間の、少し地獄寄りにて

                役に立ってない中学受験勉強 中学受験はおよそ害悪だ。私がそう思う理由は単純だ。それが子どもたちの役に立っていないからだ。中学受験制度そのものは、それは何らかの役に立っているのかもしれない。少なくともそれを実施する私立中学校にとっては、メリットがあるはずだ。そうでなければやらないだろう(そのメリットも、後述するように怪しいものではあるけれど)。けれど、当事者のもう一方である子どもたちにとって、得られるものは「合格」以外のものはなにもない。そういうものだと言ってしまえばそれまでなのだが、じゃあ、合格競争のためだけに貴重な時間を無駄にすることはどうなのか、ということになる。私はそれを害悪だと思う。 なぜ、「子どもたちの役に立たない」というのか。それは、家庭教師としての経験からだ。私は中高一貫の私立中学・高校の生徒の指導にあたった経験が過去に何件もある。いずれも中学受験を無事に突破した生徒たちだ。

                  中学受験は、そろそろ根本的に変わったほうがいい - 天国と地獄の間の、少し地獄寄りにて
                • 徐々に高度になるリングバッファの話 - Software Transactional Memo

                  リングバッファのイメージ図 1. リングバッファとは何か 機能的にはFirst In First Out (FIFO)とも呼ばれるキューの一種であるが、リング状にバッファを置いてそれの中でReadとWriteのインデックスがグルグルと回る構造をとる事によって容量に上限ができることと引き換えに高速な読み書き速度を得たものである。キューを単に実装するだけなら山ほど方法があって線形リストを使ってもいいしスタックを2つ使っても原理的には可能だ。その中でもリングバッファを用いた方法の利点はひとえに性能の高さでありメモリ確保などを行わないお陰でシステム系の様々な場所で使われている。 これの実装自体は情報系の大学生の演習レベルの難度であるが少し奥が深い。まずリングバッファのスタンダードなインタフェースと実装は以下のようなものである。 class RingBuffer { public: explicit

                    徐々に高度になるリングバッファの話 - Software Transactional Memo
                  • JavaScript で parseInt / parseFloat を使わない方が良い理由

                    となるのが原因です。parseInt というのは、文字列を解析して整数値(int)を返すグローバル関数であり、引数をまず文字列に変換する仕様となっております。その段階で 0.0000005 が "5e-7" という文字列に変換されてしまい、その文字列の先頭の 5 だけが数字として解析されてしまったため、結果として parseInt(0.0000005) === 5 となりました。 なぜ String(0.000005) === "0.000005" に、String(0.0000005) === "5e-7" になるのかについては、この記事の最後で余談として説明します。 整数化には Math.trunc を使おう このように、parseInt は文字列を引数にすることを前提にしているため、速度の面でも可読性の面でも「小数値を整数値に変換したい」という場合に使うのは望ましくありません。最も望

                    • 放送大学マイルストーン('23)|lumpsucker

                      はじめにこの記事は、放送大学の(主に情報コースを中心とする)学生さん向けに、私の履修済み科目の感想と主観的評価を共有して、履修計画の参考にしていただくことを目的に作成しました。下記の記事の通り、2019年-2020年の2年間で情報コースの科目を8割方履修したのでそれなりの網羅性があるかと思います。 (2023年2月追記)その後、選科履修生として履修した他コースの科目や大学院科目などを追加して112科目掲載しています。試験難易度については履修時期によって会場試験・在宅ペーパー試験・在宅Web試験が混在しているので参考程度でお願いします。 タイトルは私が現役生の時に通っていた大学の似たような評価システムから拝借しました。 以下の科目は基本的にナンバリングが低い順に並べています。閉講済みの科目も混じっていますが、記録と後継科目の参考のために残しておきます。あくまで全て(上記の記事にある通り、文系

                        放送大学マイルストーン('23)|lumpsucker
                      • 新入社員のみんな、「ChatGPT×Python」で鬼にならないか?|ピーナッツ

                        ChatGPTが本当にヤバい。 断言する。新卒がこれを使いこなせば、今職場で「優秀」とされている5-6年目くらいの先輩なら余裕で出し抜ける。鬼になれる。 筆者はメーカー社員なので、メーカーの新入社員がChatGPTを使って鬼になる方法を1つ提案したい。 「ChatGPT×Python」である。 Pythonとは、ご存知のとおり物理シュミレーションからデータサイエンス、機械学習までカバーする汎用性をそなえたプログラミング言語だ。何でもできるわりには書ける人がなぜか少なく、いまだにスキルとして重宝されている。 そんなPythonにChatGPTを使おう。 ChatGPTを使えば、上司から求められるアウトプットを一瞬で出すことができる。それに対してフィードバックをもらい、それも一瞬で打ち返すことができる。 「あいつ"Python書ける"だけじゃないんだよな。こっちが言ったこと正確に理解するし、そ

                          新入社員のみんな、「ChatGPT×Python」で鬼にならないか?|ピーナッツ
                        • 【図解】Python基礎64選 - Qiita

                          前回の記事が思いのほか好評だったので、今回はPythonの基礎を図解にまとめてみました。 これからPythonに入門する方、初学者の方への参考になれれば幸いです。 前回の記事↓ 押さえたい基礎 押さえたい基礎の分野は9つになります。 以下で詳しく見ていきます。 数値計算 数値計算は演算子を確認します。 数値の型(int・float)

                            【図解】Python基礎64選 - Qiita
                          • 統計検定準1級 合格体験記 - Qiita

                            はじめに 統計検定準1級は(一財)統計質保証推進協会が実施、(一社)日本統計学会が公式認定する「2級までの基礎知識をもとに、実社会の様々な問題に対して適切な統計学の諸手法を応用できる能力を問う」試験です。現在はCBTでの実施となっています。 主観を込めて言いますと、2級と準1級では難易度に雲泥の差があります。 強調して言っておきます。まったく違います! 準1級では統計的推定や検定に加えて、多変量解析(重回帰、PCA、主成分分析、数量化)、時系列解析、マルコフ連鎖、確率過程、分散分析、ベイズ統計、MCMC...と範囲が広いのが特徴です。 以下、かなりの長文になりましたが、受験して得た知見をかなり具体的に記述しました。読者の皆様の合格への一助となれば幸いです。 目的 私はとある私立中高で物理と情報を教えています。統計の勉強を始めたのは、教科「情報」を教えるにあたってのスキルアップが目的です。も

                              統計検定準1級 合格体験記 - Qiita
                            • 2のべき乗サイズの配列は危ないという話 via 行列積 - elkurin’s blog

                              こんにちは。労働者です。とあるプログラムで学生さんの課題を添削していたら面白い話に出会いました。 僕は今、主に学部生向けのインターン研修的なプログラムでメンターなるものをやっています。メンターとしての仕事は、学生さんの課題へフィードバックを返し、Office Hourというセッションを毎週設けて質問受けやCSに関するトークを行うといった内容になっています。今回話題に取り上げるのはその中の課題の1つ、「行列積のプログラムを書いて時間を計測せよ」という何気ない話で、続く課題たちのいわば前座のようなものです。こういったところに沼は隠されているものですね。 担当している学生さんたちが細かい実験を行ってくれて以下のような疑問が提示されました。 「行列積の計算が N = 1024のときだけ N = 1023, 1025のときに比べて3倍遅いのはなぜ?」 配列のサイズが2のべき乗になるのは避けるべきとい

                                2のべき乗サイズの配列は危ないという話 via 行列積 - elkurin’s blog
                              • プログラミング言語の簡単な歴史を初心者にもわかるように解説 #さくマガ #さくらインターネット - さくマガ

                                ≫ 【2週間無料!】初心者でもホームページが作れる!高速・安定・快適なレンタルサーバー みなさんこんにちは、文系出身のエンジニアのちょまど(@chomado)です。大手外資系IT企業でDevRel (Developer Relations) のお仕事をしています。 今回の記事では、プログラミング言語の歴史について書きたいと思います。私はもともとプログラミング言語が大好きで、歴史には大変興味があったので、今回、たくさん色々調べたり、ベテランの先輩エンジニアの方々に当時の様子をお聞きしたりして(ありがとうございます!)、記事にまとめました。 (*゚▽゚* っ)З「ちょまぎょです! 一緒にお勉強していこうね」 また、今回、Google Developers Expert の田中洋一郎さん (@yoichiro) に記事のレビュー(査読)や助言をしていただきました。誠にありがとうございました! そ

                                  プログラミング言語の簡単な歴史を初心者にもわかるように解説 #さくマガ #さくらインターネット - さくマガ
                                • 2で割ることと3で割ること - Qiita

                                  この記事でお題にするのはCPUレジスタ上の整数除算です。以下、単に除算とも書きます。 除算は非常に高コストな演算なため、コンパイラは最適化によって、できるだけ整数除算を別の計算に置き換えようとします。 最適化ができる場合の一つとして、割る数が定数である場合があります。頭のいいコンパイラは、除算を乗算とビットシフト等を駆使した演算に置き換えます。この記事では、そういった最適化の背景にある理屈を部分的に解説します。 計算機環境としてはモダンなx86 CPUを仮定します。したがってレジスタは32/64ビットであり、負数は2の補数表現になっています。ある程度は他の命令セットでも通用する話になっているかもしれません。 そもそも整数の除算とは プログラミングにおける整数の除算の定義について確認します。整数$n$を整数$d$で割るとき $$ n = q \times d + r $$ が成り立つように除

                                    2で割ることと3で割ること - Qiita
                                  • 「Python」と「Google Colaboratory」で株価データ分析に挑戦

                                    「Python」と「Google Colaboratory」で株価データ分析に挑戦:「Python」×「株価データ」で学ぶデータ分析のいろは(1) 日々変動する株価データを題材にPythonにおけるデータ分析のいろはを学んでいく本連載。第1回はPythonを実行する環境とデータの前準備について。 はじめに 連載第1回は「Google Colaboratory」でサンプルプログラムを実行するための環境を用意する方法や利用するPythonのライブラリを説明します。「Google Chrome」と「Googleアカウント」を用意して読み進めてください。 なお、連載の趣旨がデータ分析であるため、Pythonの言語仕様や文法の詳細を割愛する場合があることをご了承ください。 Google Colaboratoryの準備 Google Colaboratoryとは、Googleが提供するブラウザ上でPy

                                      「Python」と「Google Colaboratory」で株価データ分析に挑戦
                                    • 高速逆平方根(fast inverse square root)のアルゴリズム解説 - 滴了庵日録

                                      高速逆平方根とは? C言語のコード 検証 アルゴリズムの要点 [1] 逆平方根の計算を対数・指数の計算に置き換える [2] 浮動小数点型の内部表現を利用した対数・指数の近似計算 [2.1] 対数の近似 [2.2] σの最適値 [2.3] 整数型での解釈 [2.4] 逆平方根の計算とマジックナンバー0x5F3759DF [3] ニュートン法による収束で精度アップ 感想 高速逆平方根とは? 高速逆平方根(fast inverse square root)とは、平方根の逆数 を高速に計算するアルゴリズムです。平方根の逆数は逆平方根とも呼ばれます。逆平方根はベクトルの正規化などに用いられるので、これを高速に計算できるアルゴリズムには大きなご利益があります。 参照: Fast inverse square root - Wikipedia C言語のコード 高速逆平方根の関数を示します。0x5F375

                                        高速逆平方根(fast inverse square root)のアルゴリズム解説 - 滴了庵日録
                                      • レベルアップしたい人必見 Qiita記事43選 - Qiita

                                        はじめに 本記事ではレベルアップしたいエンジニアが読んでおくべきQiita記事を紹介します。厳選に厳選を重ねた43記事です。全ての記事を読んでおく必要はありませんが、ちょっとでも「分からないな」「興味あるな」など思ったタイトルがあれば読んでみてください。 次の4種類に分類して紹介しています。参考にしてください。 フロントエンド バックエンド インフラ・Linux周りの知識 その他 それでは、早速紹介していきます! 弊社Nucoでは、他にも様々なお役立ち記事を公開しています。よかったら、Organizationのページも覗いてみてください。 また、Nucoでは一緒に働く仲間も募集しています!興味をお持ちいただける方は、こちらまで。 フロントエンド まず最初はフロントエンドエンジニアに読んでおくべきとおすすめできるQiita記事を11個選びました!フロントエンドエンジニアとしての基礎が身に付く

                                          レベルアップしたい人必見 Qiita記事43選 - Qiita
                                        • NASAでは円周率を何桁まで使っているのか?

                                          円周率は2020年時点で小数点以下50兆桁まで計算されるほど途方もない桁数を持つ数です。一般的には「3」や「3.14」のような数で計算が行われますが、桁が切り捨てられるほど結果の正確さは損なわれてしまうもの。正確さが必要そうな宇宙開発の現場では「円周率を何桁まで使っているのか?」という質問に対して、アメリカ航空宇宙局(NASA)が実際に使用している値とその理由について回答しています。 How Many Decimals of Pi Do We Really Need? - Edu News | NASA/JPL Edu https://www.jpl.nasa.gov/edu/news/2016/3/16/how-many-decimals-of-pi-do-we-really-need/ 「NASAのジェット推進研究所(JPL)は円周率を計算に使うとき、『3.14』を使用していますか?

                                            NASAでは円周率を何桁まで使っているのか?
                                          • Pythonを会得する考え方やポイント5選! 『パーフェクトPython』著者が魅力を語る! - FLEXY(フレキシー)

                                            ※本記事は2020年4月に公開した内容です。 株式会社ディー・エヌ・エーのシステム本部CTO室の露木誠です。PythonやDjangoについて執筆した『パーフェクトPython』や『Django×Python』などの著書が技術系出版社から数冊出版されています。DjangoのAUTHORSファイルにも実は名前が掲載されています。 本記事では、Pythonを始めたいと思っている方向けに、Pythonの魅力をお伝えできればと思います。知っておきたいPythonの言語仕様や特徴的な考え方をご紹介しますので、参考にしてください。 Python関連のエンジニア案件を見てみる 自己紹介とPython、Djangoに関わる活動について ディー・エヌ・エーのCTO室に所属、元々は異業種からIT業界に参入 現在は、株式会社ディー・エヌ・エーのシステム本部CTO室で、エンジニア組織の課題解決を主な活動として、日

                                              Pythonを会得する考え方やポイント5選! 『パーフェクトPython』著者が魅力を語る! - FLEXY(フレキシー)
                                            • GPT-4登場以降に出てきたChatGPT/LLMに関する論文や技術の振り返り - Platinum Data Blog by BrainPad

                                              本記事は、当社オウンドメディア「Doors」に移転しました。 約5秒後に自動的にリダイレクトします。 このたびブレインパッドは、LLM/Generative AIに関する研究プロジェクトを立ち上げ、この「Platinum Data Blog」を通じてLLM/Generative AIに関するさまざまな情報を発信をしています。 この記事では、GPT-4の登場から執筆日(2023年5月31日時点)までの2ヶ月間で登場した論文を振り返りながら、まとめて紹介していきます。 LLM/ChatGPTの動向 オープンソースLLM モデル オープンソースLLMの調整 Adapter、LoRA Instruction Tuning Human Feedback プロンプトエンジニアリング プロンプトエンジニアリングの課題①:プロンプトに大量の情報を入れられない プロンプトエンジニアリングの課題②:複雑なタス

                                                GPT-4登場以降に出てきたChatGPT/LLMに関する論文や技術の振り返り - Platinum Data Blog by BrainPad
                                              • ARMはx86より効率がいいというのは過去の神話

                                                従来から、「ARMはx86より(電力的に)効率的だ」という言説があります。これは単純に「ARMは省電力なスマホ向けで、x86は電力を食うPC向け」程度のアバウトなイメージのこともありますし、前世紀のRISC vs CISC論争のころからある「ARMはx86 (x64を含む)に比べ命令セットがシンプルなので、命令デコードにかかる電力が少なくて済んで効率的」という議論の形をとることもあります。 この議論については、半導体エンジニアの多くは「ARMがx86 より効率が良いというのは、もはや過去の神話」(in today’s age it is a very dead argument)という認識を共有していると言っていいでしょう。有名なところではApple CPU (ARM)とZen (x86)の両方を開発したジム・ケラー氏のインタビューでも言われていますし、Chips and Cheeseとい

                                                  ARMはx86より効率がいいというのは過去の神話
                                                • 【2023年版】機械学習の日本語無料学習教材まとめ - Qiita

                                                  言語&開発基礎編 PythonやSQLなどの言語と開発環境に関連することをまとめました。 機械学習に関する教材はこの次のセクションにまとめてあります。 学習環境 インストール及び使い方チュートリアルのサイトと、ある程度使い慣れた後に役立つtips集を各エディタでまとめました。 Google Colaboratory Python初学者にとって最もわかりやすいPython実行環境です。プログラミングは初めて!という方はまずこのGoogle Colaboratory(通称: Colab)から始めてみて、使い方がある程度わかったら、そのまま次のセクションのPython編に移りましょう。 Pythonプログラミング入門 難易度: ★☆☆ 東京大学の公開しているPython講座ですが、冒頭でColabの使い方を解説しています。使ったことのない方はこちらから! Google Colabの知っておくべき

                                                    【2023年版】機械学習の日本語無料学習教材まとめ - Qiita
                                                  • 数値計算の研究をしている学生が"数値計算に潜むとんでもないリスク"について話してみる - Qiita

                                                    筆者は「精度保証付き数値計算」という分野で研究をしている大学院生です. 「数値計算は分かるけど」「精度保証付き数値計算?ナニソレ?」という方がほとんどだと思います. 「精度保証付き数値計算」の研究自体は30年ほど前から盛んに行われていますが,世間に浸透しているとは言えない状況です. 自分の研究分野が世間に知られていないのは何か少し寂しい感じがするので「精度保証付き数値計算」を少しでも広めるべく記事を投稿することにしました.(シリーズ化するかも知れません) 本日は「精度保証付き数値計算」というワードだけでも覚えていただければ幸いです. 今回は"数値計算に潜むとんでもないリスク"に関してカジュアルにお話します. そして筆者の研究分野である「精度保証付き数値計算」の必要性を知ってもらえればなと思います. この記事を読み終える頃には計算機を信頼できなくなっているかも知れません(笑) ※不安を煽るこ

                                                      数値計算の研究をしている学生が"数値計算に潜むとんでもないリスク"について話してみる - Qiita
                                                    • Pythonコードを35000倍に高速化したい

                                                      はじめに Pythonは世界的にも人気のあるプログラミング言語ですが、実行速度については課題があります。Pythonの実行速度を高速化したい、という要求は根強く、これまでにも様々な処理系が開発されています。 この記事はPythonで書かれたコードを35000倍に高速化するにはどのような方法があるかについてまとめたものです。 この記事は: Pythonで書かれたアルゴリズムを35000倍に高速化する 事前コンパイル、並列化、SIMD演算を駆使する 最終的に44000倍まで高速化できた なぜ35000倍? 2023年5月2日にModular社よりPythonの使いやすさとC言語の性能を兼ね備える新しいプログラミング言語、Mojoの開発について発表がありました。低レベルのハードウェア向けにコンパイル可能なこと、文法的にはPythonを踏襲しており、既存のPythonライブラリを利用可能であること

                                                        Pythonコードを35000倍に高速化したい
                                                      • 会社員辞めて入学した大学院修士課程がそろそろ終わろうとしているのでまとめておく - seri::diary

                                                        これは何か 筆者について なぜ大学院に入ったのか 日本の大学院という場所について 大学院での研究内容について 自分の発表実績 大学院生活について おわりに これは何か 2018年3月に仕事を辞めて,2018年4月に筑波大学大学院システム情報工学研究科コンピュータサイエンス専攻博士前期課程(修士課程)に入学した.それから早くも2年弱が経ち,もうすぐ修了なので大学院生活を忘れないうちにまとめておくだけのエントリである. 修了自体は2020年3月だが,あとは修論を仕上げて提出すれば終了なので研究自体はもう実質終わっている状態である*1. 筆者について 2009年3月に岩手大学農学部を卒業.新卒で上流系SIerに就職して2年半ぐらい勤務した後に,コード書きたくてwebアプリエンジニアに転向.その後,6年半ぐらいweb受託,webサービス運営企業などでソフトウェアエンジニアとして勤務.2018年3月

                                                          会社員辞めて入学した大学院修士課程がそろそろ終わろうとしているのでまとめておく - seri::diary
                                                        • 浮動小数点型の算術とお近づきになりたい人向けの記事 - えびちゃんの日記

                                                          お近づきになりたい人向けシリーズです。 いろいろなトピックを詰め込みましたが、「これら全部を知らないといけない」のようなつもりではなく、いろいろなことを知るきっかけになったらいいなという気持ちなので、あまり身構えずにちょっとずつ読んでもらえたらうれしい気がします。 まえがき 予備知識 規格 用語 精度という語について 記法 表現について 有限値の表現について エンコードについて 丸めについて よくある誤差や勘違いの例 0.1 = 1 / 10? 0.1 + 0.2 = 0.3? 整数の誤差 Rump’s Example 基本的な誤差評価 用語に関して 実数の丸め 有理数の丸め 基本演算の丸め 差について 複数回の演算 補題たち 桁落ちについて Re: Rump’s example 融合積和 数学関数に関する式の計算 誤差の削減に関して 総和計算 数学関数の精度について 比較演算について 雑

                                                            浮動小数点型の算術とお近づきになりたい人向けの記事 - えびちゃんの日記
                                                          • 企業系ゲーム攻略「アルテマ」、ポケモンだけで1900ページの文章盗用を謝罪 被害を受けたサイトは「攻略を続けられなくなる」

                                                            大手ゲーム攻略サイト「アルテマ」を運営するエヌリンクスが、個人のファンサイトから文章を許諾なく転載したとして謝罪文を掲載しました。 盗用が行われたコンテンツは「ポケットモンスター ウルトラサン・ウルトラムーン」に関する合計1905ページと、それをベースに作成された「ポケットモンスター ソード・シールド」に関するページです。 「アルテマ」上に掲載された謝罪文 ねとらぼでは、被害を受けたポケモンファンサイトの管理人(以下、管理人)に取材しました。 ※取材協力者の意向により、アルテマ以外の企業名などは匿名で記載しています。 「著作権法上の引用の範囲に当たるとは思えない」 管理人の話によれば、事の発端は「ポケモン ウルトラサン・ウルトラムーン」が発売した2017年までさかのぼります。 アルテマを含む大手4サイトに文章を丸写しされていると気付いた管理人は、該当ページの修正を依頼。これに対し大手4サイ

                                                              企業系ゲーム攻略「アルテマ」、ポケモンだけで1900ページの文章盗用を謝罪 被害を受けたサイトは「攻略を続けられなくなる」
                                                            • 乱数について本気出して考えてみる|TechRacho by BPS株式会社

                                                              プログラミングをやっていると、様々な乱数に出会います。乱数に関しては大勢の研究者が色々な研究結果を出しているため、種類も増え、いったいどれを使えばいいのかと悩む原因にもなります。 大勢が研究し利用している分野ですから、私以外でも大勢が乱数に関する記事を書いているため、あえて新しい記事を書く価値は高くないかもしれません。まあ、既に理解している人はここで記事を閉じるか、暇つぶし程度の感覚で読んでいただくと良いかと思います。 真乱数と疑似乱数 プログラミングの世界の中でいわゆる “乱数” として扱われることが多いのは擬似乱数です。疑似、と付くからには、これは実のところ乱数ではないと言えます。とは言え、擬似乱数を乱数でないと言ってしまうと話が終わってしまうので、疑似乱数を含む乱数を広義の乱数とします。この記事で扱うのは広義の乱数です。逆に、狭義の乱数、本物の乱数は真乱数と言います。 本物と言いまし

                                                                乱数について本気出して考えてみる|TechRacho by BPS株式会社
                                                              • 3千CPUで数カ月かかる計算が0.1秒で完了。汎用原子レベルシミュレータ「Matlantis」 ~PFNとENEOSがクラウドサービスで提供開始

                                                                  3千CPUで数カ月かかる計算が0.1秒で完了。汎用原子レベルシミュレータ「Matlantis」 ~PFNとENEOSがクラウドサービスで提供開始
                                                                • 0.1は浮動小数点数で正確に表せないのに、printしたときに0.1と表示されるのはなぜか - Qiita

                                                                  当たり前のことに感じますが、0.1は浮動小数点数(IEEE 754)では正確に表現できません。 なのにprintをしたときに0.1と表示されるのは不思議です。 このことについて分かったことを書いておきます。 環境 この記事ではPython 3.7を使用しています。 【前提】浮動小数点数 この記事で、以降"浮動小数点数"という場合は、"IEEE 754 倍精度"のことを指します。 浮動小数点数のフォーマットは、数を以下の形式に変換し、sign、exp、fracを順に並べたものです。

                                                                    0.1は浮動小数点数で正確に表せないのに、printしたときに0.1と表示されるのはなぜか - Qiita
                                                                  • パイプライン指向JSON処理プログラミング言語 jq - 檜山正幸のキマイラ飼育記 (はてなBlog)

                                                                    jq(https://stedolan.github.io/jq/)の紹介では、「JSON処理のワンライナー〈一行野郎〉としてめちゃくちゃ便利!」とアピールするのが定番です。もちろんそれは本当で、「めちゃくちゃ便利!」です。が、実は jq は、ワンライナー記述にとどまらない、かなり本格的なプログラミング言語です。 JSON処理のためのDSL〈Domain Specific Language | 領域特化言語〉なので、汎用言語ではありません。しかし、汎用言語が備えている言語機能の一部(関数定義、モジュールシステムなど)を jq も持っています。また jq は、独特で楽しいプログラミング・パラダイム -- “パイプライン指向”に基づいて設計されています。 この記事では、ワンライナーを超えた jq の使い方と、プログラミング言語としての jq の特徴を紹介します。長い記事になってしまったので、一

                                                                      パイプライン指向JSON処理プログラミング言語 jq - 檜山正幸のキマイラ飼育記 (はてなBlog)
                                                                    • 輸送問題を近似的に行列計算で解く(機械学習への応用つき) - 私と理論

                                                                      輸送問題と呼ばれる問題があります. この問題は,普通は線形計画法やフローのアルゴリズムを使って解かれます. この記事では,この輸送問題を近似的に行列計算で解くアルゴリズム(エントロピー正則化 + Sinkhorn-Knopp アルゴリズム)を紹介します. 輸送問題とは アルゴリズム 得られる解の例 なぜこれで解けるのか? 競プロの問題を解いてみる 機械学習界隈における流行 まとめ 輸送問題とは 輸送問題とは以下のような問題です. 件の工場と 件の店舗からなる,ある商品の流通圏があるとする. 各工場には 個の在庫がある.. 各店舗では 個の需要がある. 在庫の総和と需要の総和は等しいとする (すなわち ). 工場 から店舗 に商品を一つ運ぶためには の輸送コストがかかる. 各工場 から各店舗 への輸送量 を適切に決めて,各店舗の需要を満たしつつ輸送コストの総和を最小化せよ. 輸送問題は最適化

                                                                      • これから先もPHPで戦うために、なにを使い、なにを学ぶべきか - 廣川類に聞くPHP学習に大事なこと|ハイクラス転職・求人情報サイト AMBI(アンビ)

                                                                        これから先もPHPで戦うために、なにを使い、なにを学ぶべきか - 廣川類に聞くPHP学習に大事なこと Webアプリケーション開発言語として広く使われるPHP。黎明期から浸透していくまでの過程、そして、これから先もPHPを活用していくために必要なこと、をエキスパートの廣川類さんに聞きました。 本記事は2020年3月に実施した遠隔取材をもとに構成しています。 1995年の公開以降、PHPは多くの企業、サービスで採用され、エコシステムが拡大してきました。言語の歴史に比例するように、さまざまなサービスのなかで積み重なってきたPHPのシステムを、いかにして持続/発展可能なものとするか。おそらく、多くのPHPユーザが感じる疑問をエキスパートにぶつけます。 今回お話を伺った廣川類( ひろかわ・るい )さんは、本業は制御関連のエンジニアであり、PHPへの関わりは、「あくまで個人の活動」と表現します。しかし

                                                                          これから先もPHPで戦うために、なにを使い、なにを学ぶべきか - 廣川類に聞くPHP学習に大事なこと|ハイクラス転職・求人情報サイト AMBI(アンビ)
                                                                        • データ分析の基礎 - Qiita

                                                                          1. データ分析の概要と目的 データ分析とは、大量のデータから有用な情報や知識を抽出するプロセスです。 このプロセスには、データの収集、前処理、探索、モデリング、評価、そして最終的な知識の抽出が含まれます。 データ分析の主な目的は以下の通りです ビジネスの意思決定をサポートする 新しい市場の機会を発見する 顧客の行動や傾向を理解する 製品やサービスの改善 予測や予測モデリングを行う 2. Pythonにおけるデータ分析のライブラリの紹介 Pythonはデータ分析のための多くのライブラリを持っています。 以下はその中でも特に人気のあるライブラリです Pandas: データの前処理や探索的データ分析に使用されるライブラリ NumPy: 数値計算を効率的に行うためのライブラリ Matplotlib & Seaborn: データの可視化に使用されるライブラリ Scikit-learn: 機械学習の

                                                                            データ分析の基礎 - Qiita
                                                                          • ChatGPTに共通テスト(旧センター試験)を解かせてみた|usutaku@AI情報解説

                                                                            最近流行りのChatGPT。 「色々な作業を自動化した」 「国家試験に合格した」 ニュースで目にする機会も最近は多いと思います。 では、ChatGPTは現段階でどのくらい賢いのでしょうか? 「海外の司法試験で人間を超えた」などの情報をよく耳にしますが、実感が湧きませんよね。 今回は日本人に馴染みの深い大学入学共通テスト(旧センター試験)を題材に、その実力を検証してみました。 実験方法今回は、令和4年度の国語・英語(リーディング)・公民(倫理 / 政治・経済)の3科目について実験を行いました。 ※ 数学・理科等の科目については図表を読み取る問題が多く、正確に試験できないため今回は除外しました。 ポイント①: テキストになおす大学入試センターで公表されている試験問題がPDFのため、ChatGPTに読めるテキスト形式にする必要があります。 今回はGoogle Docsの機能を活用して文字起こしし

                                                                              ChatGPTに共通テスト(旧センター試験)を解かせてみた|usutaku@AI情報解説
                                                                            • 今どきのシェルスクリプトは数値計算にexprを使わない(POSIX準拠) - Qiita

                                                                              はじめに 1992 年に POSIX でシェルが標準化されて以来、シェルスクリプトの数値計算に expr コマンドは使いません。expr コマンドを使って計算していたのは Bourne シェル(古い UNIX の sh)時代の話で、現在の POSIX sh (dash、bash、ksh 等)時代では数値計算に expr コマンドは不要です。今どきはシェルの機能だけで整数の計算を行うことができます。「今どき」って一体いつからだって話なわけですが……。 注意 シェルスクリプトでパフォーマンスの話をするとすぐに「他の言語で〜」という方がいますが、私はどんなことにでもシェルスクリプトを使えなんて一言も言っていません。パフォーマンスを気にしている理由は、そこが実際にシェルスクリプトのボトルネックになるポイントだからです。そもそもシェルスクリプトと一般的な言語は言語設計レベルで得意なことが違います。ユ

                                                                                今どきのシェルスクリプトは数値計算にexprを使わない(POSIX準拠) - Qiita
                                                                              • RustではじめるWebAssembly入門~JavaScriptを超える高速なWebアプリ開発を実践しよう

                                                                                本連載では、Webブラウザー上でJavaScriptとともに動作できるバイナリ形式のプログラムファイル「WebAssembly」を、Rustプログラミング言語で実装する方法について、順を追って説明していきます。初回となる今回は、WebAssemblyの概要を説明するとともに、Rustを利用した簡単なサンプルで、実装方法のイメージを紹介します。 はじめに 現在、Webフロントエンド開発においては、ページ構造を表すHTML、スタイルを表すCSSとともに、挙動を実装するためにJavaScriptが利用されます。JavaScriptの登場当初はWebページに動きをつける程度の扱いでしたが、その後の言語仕様の拡張や、WebブラウザーでのJavaScript実行速度の向上、Node.jsなどWebブラウザー以外でJavaScriptを動作させる環境の登場などにより、本格的なプログラミング言語としてその

                                                                                  RustではじめるWebAssembly入門~JavaScriptを超える高速なWebアプリ開発を実践しよう
                                                                                • WebGPUがついに利用可能に - WebGL以上の高速な描画と、計算処理への可能性 - ICS MEDIA

                                                                                  2023年5月にリリースされたGoogle Chrome 113で、次世代WebグラフィックスのJavaScript APIであるWebGPU(ウェブジーピーユー)がデフォルトで利用できるようになりました。ICS MEDIAでは2018年にWebGPUについて紹介していましたが、当時はSafariで開発者向けのフラグを有効にした場合にのみお試しできる実験的機能でした。 デスクトップChrome限定ではありますが、WebGPUが一般ユーザーの環境でも動作できるようになったいま、オリジナルのデモを交えてあらためてWebGPUを紹介します。 この記事で紹介すること WebGPUがChrome 113で標準で利用可能になった WebGPUはモダンな3D APIに直接アクセスすることで、WebGLより高い性能が得られる WebGPUだとドローコールの最適化をしなくても十分に高速 WebGPUはコンピ

                                                                                    WebGPUがついに利用可能に - WebGL以上の高速な描画と、計算処理への可能性 - ICS MEDIA