タグ

pythonとalgorithmに関するlepton9のブックマーク (23)

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

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

  • Hiroshi Takahashi

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

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

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

  • 「実用的でないPythonプログラミング」がよかった - Stimulator

    はじめに 2020/8/12に発売されたImpractical Python Projects: Playful Programming Activities to Make You Smarterの日語訳書である、「実用的でないPythonプログラミング」をひょんな事から献していただく事になった。(訳者が同僚である) 実用的でないPythonプログラミング: 楽しくコードを書いて賢くなろう! 作者:ヴォーン,リー発売日: 2020/08/12メディア: 単行 ありがちなプログラミング初学者向けのから1段上がった中級者向けの良いだと感じたので、当ブログでたまにやっている筆者、訳者に媚びを売るシリーズの一貫として、感想を記す。 書籍の概要 「実用的でないPythonプログラミング」は、想定する中級レベルのアルゴリズムの問題を例に取り、Pythonでの美しいコードの書き方や、コンピュ

    「実用的でないPythonプログラミング」がよかった - Stimulator
  • 競技プログラミングで使う有名グラフアルゴリズムまとめ

    0. はじめに AtCoderなどでは、グラフを扱った問題が多く出るが、その度に一から実装していると時間が掛かりすぎてしまうため、有名なものをあらかじめ持っておく必要がありそう。そこで、Pythonを用いて、ダイクストラ法、ベルマンフォード法、プリム法、クラスカル法、ワーシャルフロイド法を実装した。 コメント、意見等ある方は是非! お待ちしてます! 1. ダイクストラ法 1.1. ダイクストラ法(defaultdictで実装) defaultdictで実装すると、リストで実装するよりも、ノード数$N$が大きい際には高速に動作する。ただし、経路復元の関数は、うまく書けなかった......。 (2019/7/6 追記)結局できました。1.1.1. を参照してください。 import collections import heapq class Dijkstra: def __init__(se

    競技プログラミングで使う有名グラフアルゴリズムまとめ
  • 初心者向け・難しそう?なプログラミング問題を簡単に解く方法【Python】 -

    Photo by Phil Whitehouse こんにちは。倉内です。 paizaでは、プログラミング問題を解いてS・A・B・C・D・Eの6段階のランクでコーディングスキルを測るスキルチェックを提供しています。初めてプログラミングに触れた方には、まずDランクの問題から挑戦することをオススメしています。 恐らくpaizaラーニングなどで言語の入門レベルの知識を身につけた方は、Dランク問題はクリアできると思います。しかし、そのあとCランクを取得し、さらにBランク問題に挑戦!となると少しハードルが高いと感じるかもしれません。 そこで今回は先日こちらの記事で解答コードを公開した、ゲームイベントのBランク相当の問題を例に、解答にたどり着くためのプロセスを詳しく解説したいと思います。 はじめに Bランク取得が難しいと感じている方の中にも「要求されていることは理解でき、プログラムも書けるがあと一歩ラン

    初心者向け・難しそう?なプログラミング問題を簡単に解く方法【Python】 -
  • 決定木の可視化ライブラリ「dtreeviz」が凄かったのでまとめる - St_Hakky’s blog

    こんにちは。 決定木の可視化といえば、正直scikit-learnとgraphvizを使うやつしかやったことがなかったのですが、先日以下の記事をみて衝撃を受けました。そこで今回は、以下の解説記事中で紹介されていたライブラリ「dtreeviz」についてまとめます。 explained.ai dtreevizの概要 dtreevizとは より良い決定木の可視化を目指して作られたライブラリです。 解説記事 : How to visualize decision trees Github : GitHub - parrt/dtreeviz: A python machine learning library for structured data. Sample Imagesdtreeviz/testing/samples at master · parrt/dtreeviz · GitHub

    決定木の可視化ライブラリ「dtreeviz」が凄かったのでまとめる - St_Hakky’s blog
  • 作って動かすALife

    生命性をコンピュータ上でシミュレートすることにより、生命の質に迫る「ALife(人工生命)」は、「AI人工知能)」の発展系として、近年改めて注目されつつある分野です。書は、セルラーオートマトンやボイドモデルなど、さまざまなALifeの理論モデルを、Pythonで書かれたサンプルコードで実装することで体感的に学ぶことができるユニークな書籍です。雑多な情報を整理して「最適化」する力に優れたAIと比較して、「新たな自然を作り出す」という特徴を持つALifeは、人間の多種多様な創造的行為を支援すると考えられ、その応用先は、デザイン、ゲーム、アート、建築など、創造性が必要となる領域全般に及びます。機械学習技術も活用するALifeを学ぶことは、AIをすでに活用している読者にとっても、発想を拡げるきっかけになることでしょう。 関連ファイル サポートサイト 正誤表 書籍発行後に気づいた誤植や更新さ

    作って動かすALife
  • Make: Japan | 新刊『作って動かすALife ―実装を通した人工生命モデル理論入門』は7/28発売!

    「Make:」書籍編集チームが企画・制作を行った書籍を紹介します。 ●書籍紹介 生命性をコンピュータ上でシミュレートすることにより、生命の質に迫る「ALife(人工生命)」は、「AI人工知能)」の発展系として、近年改めて注目されつつある分野です。書は、セルラーオートマトンやボイドモデルなど、さまざまなALifeの理論モデルを、Pythonで書かれたサンプルコードで実装することで体感的に学ぶことができるユニークな書籍です。雑多な情報を整理して「最適化」する力に優れたAIと比較して、「新たな自然を作り出す」という特徴を持つALifeは、人間の多種多様な創造的行為を支援すると考えられ、その応用先は、デザイン、ゲーム、アート、建築など、創造性が必要となる領域全般に及びます。機械学習技術も活用するALifeを学ぶことは、AIをすでに活用している読者にとっても、発想を拡げるきっかけになることで

    Make: Japan | 新刊『作って動かすALife ―実装を通した人工生命モデル理論入門』は7/28発売!
    lepton9
    lepton9 2018/07/18
    絶対面白いやつ
  • ブロックチェ-ンを構築しながら学ぶ | POSTD

    ブロックチェ-ンの仕組みを知るには構築するのが最短の方法 この記事を読んでいるということは、仮想通貨の拡大に興奮しているということですね。ブロックチェ-ンの仕組み、背後にある基的なテクノロジーについて知りたいのでしょう。 しかしブロックチェ-ンを理解するのは簡単ではありません。少なくとも私にはそうでした。大量の動画の中をさまよい、抜けだらけのチュートリアルに従い、結局、実例が少なすぎてフラストレーションが大きくなりました。 私は手を動かして学ぶのが好きです。コードのレベルで内容を扱わざるを得なくなり、そうすることで身に付くからです。同じようにやってもらえば、この解説が終わる頃には、機能するブロックチェーンが出来上がり、どのように動くかがしっかりと把握できるようになるでしょう。 準備 ブロックチェ-ンとはブロックという名の 不変でシーケンシャルな 一連のレコードだということを覚えてください

    ブロックチェ-ンを構築しながら学ぶ | POSTD
  • Problem Solving with Algorithms and Data Structures using Python — Problem Solving with Algorithms and Data Structures

    Problem Solving with Algorithms and Data Structures using Python¶ By Brad Miller and David Ranum, Luther College Assignments There is a wonderful collection of YouTube videos recorded by Gerry Jenkins to support all of the chapters in this text. Acknowledgements¶ We are very grateful to Franklin Beedle Publishers for allowing us to make this interactive textbook freely available. This online versi

  • マルコフ連鎖を使ってブログの記事を自動生成してみた - karaage. [からあげ]

    マルコフ連鎖による文章自動生成 ちょっと文章の自動生成に興味が湧いたので、試してみることにしました。まずは事前調査したところ、既にやっている例がたくさんみつかりました。記事末の参考リンクにまとめましたので興味ある方は参照ください。Deep Learningやマルコフ連鎖を使うのがトレンド(?)のようです。当はDeep Learningでやってみたかったのですが、何度か環境変えてチャレンジしたのですが、悉くエラーが出て失敗したため(chainerのバージョンアップの影響?)、諦めてマルコフ連鎖で実現することにしました。マルコフ連鎖に関してはここでは詳細は説明しませんので、興味ある方は自分で調べてみて下さい。自分もちゃんと理解できませんでした。イメージ的には、元となる文章の文章の流れのようなものを解析して、その解析した流れを元に、ある単語から順番に連想ゲームのように単語を並べていって文章を生

    マルコフ連鎖を使ってブログの記事を自動生成してみた - karaage. [からあげ]
  • Python でレコメンデーションを実装する - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    Python でレコメンデーションを実装する - Qiita
  • RubyとPythonにおけるガベージコレクションの視覚化 | POSTD

    稿は、ブダペストで開かれたイベント「 RuPy 」で、Pat Shaughnessyが披露したプレゼンの内容をまとめたものです。 プレゼンの映像はここ から視聴できます。 稿は当初、 同氏の個人ブログ に投稿されましたが、同氏の了承を得て、Codeshipに再掲載します。 このイベントは「RubyPython」に関するカンファレンスなので、RubyPythonでは、ガベージコレクション(以下「GC」)の動作がどう違うのかを比較すると面白いだろうと私は思いました。 ただしその題に入る前に、そもそもなぜ、GCを取り上げるのかについてお話しします。正直言って、すごく魅力的な、わくわくするテーマではないですよね? 皆さんの中でGCと聞いて、心がときめいた方はいらっしゃいますか? [実はこのカンファレンス出席者の中で、ここで手を挙げた人は数名いました!] Rubyコミュニティで最近、Rub

    RubyとPythonにおけるガベージコレクションの視覚化 | POSTD
  • 言語処理100本ノックを(第5章まで)やってみた - フツーって言うなぁ!

    久しぶりに技術関係のネタ書きます. 「言語処理100ノック」という,自然言語処理関係の問題集があることを知ったので取り組んでみました. これは,東北大学の乾・岡崎研究室でのプログラミング勉強会にて使われている教材だそうです. 「100ノック」の言葉通り,100問の問題からなる問題集をこなすことで,自然言語処理に関する基礎力と,プログラミング言語運用能力が同時に培えるようになっています. こういうものが公開されるとは,「いい時代になったなー」と純粋に思います. www.cl.ecei.tohoku.ac.jp 内容は,自然言語処理だけでなく,データベース,機械学習など,今の言語処理関係の研究に必要なスキルがこれ1つで身につくように設計されています. 対象プログラミング言語はPythonのようですが,基的に他の言語でも問題なく進められるようにはなっていると思います(言語処理に強いプログラ

    言語処理100本ノックを(第5章まで)やってみた - フツーって言うなぁ!
  • 協調フィルタリングを利用した推薦システム構築

    Ventures Salon vol.6 で発表した資料です。 https://www.facebook.com/events/736789056438293 発表用&学習用の資料になっています。

    協調フィルタリングを利用した推薦システム構築
  • 機械学習はじめの一歩に役立つ記事のまとめ - その後のその後

    機械学習」というワードになんとなく惹かれつつも、具体的にやりたいことがあるわけでもないので、手を動かすことなくただひたすら「いつかやる」ために解説記事やチュートリアル記事を集める日々を過ごしていたのですが、このままじゃイカン!と Machine Learning Advent Calendar 2014 - Qiita に参加登録してみました。 が、やはり何もしないまま当日を迎えてしまったので、お茶濁しではありますが、せめて「機械学習ってどんな手法やライブラリがあって、どんな応用先があるのか?」というあたりをざっくり把握して最初に何をやるのか方向付けをするためにも、たまりにたまった機械学習系の記事をいったん整理してみようと思います。 機械学習の概要 特定のライブラリや手法の話ではなく、機械学習全般に関する解説。 機械学習チュートリアル@Jubatus Casual Talks 機械学習

    機械学習はじめの一歩に役立つ記事のまとめ - その後のその後
  • 実践 機械学習システム

    書は、実際に手を動かしながらシステムを作成し、そのエッセンスを身につけることを目的とした機械学習システムの実践的な解説書です。「データといかに向き合うか」という視点から、生のデータからパターンを見つける方法を解説します。Python機械学習の基、ライブラリの使い方をはじめ、具体的な例に基づいたデータセット、モデル化、レコメンドと、その改良、音声や画像の処理など、より重要な問題についても解説します。さらに、テキストや画像、音声に対して機械学習の手法を適用する方法を学び、機械学習関連技術の評価方法や、最適な選択を行うための比較方法について学びます。書で学んだツールと知識があれば、実際の問題を解決できる独自のシステムを作成できるようになるでしょう。 謝辞 原書の監修者について はじめに 1章  Pythonではじめる機械学習 1.1 機械学習Pythonはドリームチーム 1.2 

    実践 機械学習システム
  • appgiga.jp

    Click here to enter

    appgiga.jp
  • ノイズの話 - Pentanium Blog?

    これはレイトレ合宿2!!アドベントカレンダーの4週目の記事です。 梅雨真っ盛りでぱっとしない天気が続きますがレイの追跡の具合はいかがでしょうか。 7月に入ったとはいえアドベントカレンダーはまだまだ序盤。 後のほうにガチな人がいらっしゃるのでレイトレと関係あるのか微妙なネタでもまだ許されると信じていきます。 さて、レンダリングしているとテクスチャが欲しくなって、とりあえずチェッカーをつくってみたりします。 それに飽きてきたらノイズです。ノイズですよねッ!? もうノイズがあるだけでそれはそれはCGらしくなります。 しかも模様だけにとどまらず、バンプやディスプレイス、プロシージャルなオブジェクトと使い道もたくさんある素敵なやつです。 そんなわけでちょっとノイズでも作ってみようかと思います。 とりあえず2Dの画像をつくることにして、深いことを考えずに乱数で埋め尽くすとこんな感じになります。 flo

    ノイズの話 - Pentanium Blog?