Top > ラーニング > 京都大学、Pythonの基本を解説した無料の教科書「素晴らしすぎる」「非常にわかりやすくて良い」
本書はCC-BY-NC-NDライセンスによって許諾されています。ライセンスの内容を知りたい方はhttps://creativecommons.org/licenses/by-nc-nd/4.0/deed.ja でご確認ください。
東京大学がちょっとびっくりするくらいの超良質な教材を無料公開していたので、まとめました Python入門講座 東大のPython入門が無料公開されています。scikit-learnといった機械学習関連についても説明されています。ホントいいです Pythonプログラミング入門 東京大学 数理・情報教育研究センター: utokyo-ipp.github.io 東大のPython本も非常にオススメです Pythonによるプログラミング入門 東京大学教養学部テキスト: アルゴリズムと情報科学の基礎を学ぶ https://amzn.to/2oSw4ws Pythonプログラミング入門 - 東京大学 数理・情報教育研究センター Google Colabで学習出来るようになっています。練習問題も豊富です https://colab.research.google.com/github/utokyo-ip
指針 厳密解法に対しては、解ける問題例の規模の指針を与える。数理最適化ソルバーを使う場合には、Gurobi かmypulpを用い、それぞれの限界を調べる。動的最適化の場合には、メモリの限界について調べる。 近似解法に対しては、近似誤差の指針を与える。 複数の定式化を示し、どの定式化が実務的に良いかの指針を示す。 出来るだけベンチマーク問題例を用いる。OR-Libraryなどから問題例をダウンロードし、ディレクトリごとに保管しておく。 解説ビデオもYoutubeで公開する. 主要な問題に対してはアプリを作ってデモをする. 以下,デモビデオ: 注意 基本的には,コードも公開するが, github自体はプライベート そのうち本にするかもしれない(予約はしているが, 保証はない). プロジェクトに参加したい人は,以下の技量が必要(github, nbdev, poetry, gurobi); ペー
新人: 「本日データサイエンス部に配属になりました森本です!」 先輩: 「お、君が新人の森本さんか。僕が上司の馬庄だ。よろしく!」 新人: 「よろしくお願いします!」 先輩: 「さっそくだけど、練習として簡単なアプリを作ってみようか」 先輩: 「森本くんは Python なら書けるかな?」 新人: 「はい!大学の研究で Python 書いてました!PyTorch でモデル作成もできます!」 先輩: 「ほう、流石だね」 新人: 😊 先輩: 「じゃ、君には今から 3 時間で機械学習 Web アプリを作ってもらうよ」 先輩: 「題材はそうだなぁ、写真に写ってる顔を絵文字で隠すアプリにしよう」 先輩: 「あ、デプロイは不要。ローカルで動けばいいからね。顔認識と画像処理でいけるよね?」 新人: 😐 新人: (えぇぇぇぇぇぇぇ。3 時間?厳しすぎる...) 新人: (まずモデルどうしよう。てかもら
Pythonプログラミング入門¶ ▲で始まる項目は授業では扱いません。興味にしたがって学習してください。 ノートブック全体に▲が付いているものもありますので注意してください。
QDくん⚡️AI関連の無料教材紹介 @developer_quant 金融技術職/ChatGPT等の生成AI,機械学習,データサイエンス,プログラミングの勉強に役立つ情報を発信/良質な無料教材,スライド,動画,サイトを紹介/金融工学x機械学習ブログ運営700記事 quantcollege.net /C++/Python/Julia/Rust/Amazonアソシエイト参加中 note.com/quantdeveloper QDくん⚡️AI関連の無料教材紹介 @developer_quant オライリーの教育的な良書「Think Python」第2版は日本語訳が無料公開されている。 cauldron.sakura.ne.jp/thinkpython/th… ・初心者がつまずきやすい点を先回りして説明 ・各章の終盤にデバッグのヒントが書いてある pic.twitter.com/RPX57PNyn
1. オブジェクト指向の起源 2003年チューリング賞の受賞者アラン・ケイさんはよくオブジェクト指向プログラミングの父と称されます。ご本人も憚ることなく、幾度、公の場で発明権を宣言しています。しかし、ケイさんは「C++」や「Java」などの現代のオブジェクト指向言語を蔑ろにしています。これらの言語は「Simula 67」という言語を受け継いだもので、私が作った「Smalltalk」と関係ないのだとケイさんは考えています。 オブジェクト指向という名称は確かにアラン・ケイさんに由来するものです。しかし、C++とJavaで使われている現代のオブジェクト指向は当初のと結構違います。ケイさん自身もこれらの言語を後継者として認めないです。では、ケイさん曰くC++とJavaの親であるSimula 67という言語はどんな言語でしょうか。ここで、簡単なサンプルコードを見てみましょう。 Class Recta
2020年も多くの素晴らしい技術書がたくさん出ました. その中でも(昨今のトレンド・流行りも手伝ってか)Python本の多さ・充実度合いは目立つものがあります. (このエントリーを執筆した12/19時点で)Amazonの本カテゴリで「Python」と検索すると1,000件以上出てきます*1. これだと目的の本にたどり着くだけで疲れそうです. このエントリーでは, 主にPythonを学びたい・現在使っている方 手元の業務を効率化したり, RPAっぽいことをやりたい方 エンジニア・データサイエンティストとして業務や趣味・個人開発をされている方 を対象に, 今そして来年2021年に読んでおきたいPython関連書籍(と抑えておきたいサービス) をエンジニアでありデータサイエンティストである私独自の視点で紹介します*2. なおこのエントリーはこのブログで例年執筆している「Python本まとめ」の2
※最新版(2021年バージョン)がこちらにありますので合わせてご覧ください! 毎年恒例, Python本と学び方の総まとめです!*1 プログラミング, エンジニアリングに機械学習と今年(2019年)もPythonにとって賑やかな一年となりました. 今年もたくさん出てきたPythonの書籍や事例などを元に, 初心者向けの書籍・学び方 仕事にする方(中級者)へのオススメ書籍 プロを目指す・もうプロな人でキャリアチェンジを考えている方へのオススメ を余す所無くご紹介します. 来年(2020年)に向けての準備の参考になれば幸いです. ※ちなみに過去に2019, 2018, 2017と3回ほどやってます*2. このエントリーの著者&免責事項 Shinichi Nakagawa(@shinyorke) 株式会社JX通信社 シニア・エンジニア, 主にデータ基盤・分析を担当. Python歴はおおよそ9年
はじめに 本書は,筆者が長年書き溜めた様々な実務的な最適化問題についてまとめたものである. 本書は,Jupyter Laboで記述されたものを自動的に変換したものであり,以下のサポートページで公開している. コードも一部公開しているが,ソースコードを保管した Github 自体はプライベートである. 本を購入した人は,サポートページで公開していないプログラムを 圧縮ファイル でダウンロードすることができる. ダウンロードしたファイルの解凍パスワードは<本に記述>である. 作者のページ My HP 本書のサポートページ Support Page 出版社のページ Pythonによる実務で役立つ最適化問題100+ (1) ―グラフ理論と組合せ最適化への招待― Pythonによる実務で役立つ最適化問題100+ (2) ―割当・施設配置・在庫最適化・巡回セールスマン― Pythonによる実務で役立つ
はじめに Pythonはコードが汚くなりがち(個人的にそう思う) そんなPythonくんを快適に書くための設定を紹介します。 拡張機能編 ここでは Pythonを書きやすくするため の拡張機能を紹介していきます。 1. Error Lens before 「コード書いたけど、なんか波線出てるよ💦」 記述に問題があった場合、デフォルトでは波線が表示されるだけ。。。 after Error Lensくんを入れることによって 波線だけでなくエディタに直接表示される。 はい、有能〜 2. indent-rainbow before Pythonくんは インデントでスコープを認識している。 for の f から下に線が伸びてるけど、ちょっと見にくいなぁ after 色が付いてちょっと見やすくなった! 3. Trailing Space before 一見、普通に見えるコード after 末尾にある
ホーム ホーム 1. Python を始める 2. 基本仕様 3. クラス 4. モジュールとパッケージ 5. ファイル操作 6. 例外 7. ジェネレータ 8. テスト このサイトは Python を学ぶ人向けのオンライン学習サイトです。 対象¶ Python を初めて学ぶ人 プログラム言語を 1 つ以上経験したことのある人 関数やクラス・オブジェクト指向に対する知識をある程度前提にします。 Python の特徴¶ 学習コストが低い 標準ライブラリが非常に豊富 インデントをすることが言語仕様になっている Python のバージョンについて¶ 2.x.x: 2020 年 1 月 1 日でサポート終了 3.x.x: 現行バージョン 2.x.x 系は新規開発では使用すべきではありません。このサイトでは 3.x.x をベースに説明を行います。
はじめに 2020/8/12に発売されたImpractical Python Projects: Playful Programming Activities to Make You Smarterの日本語訳書である、「実用的でないPythonプログラミング」をひょんな事から献本していただく事になった。(訳者が同僚である) 実用的でないPythonプログラミング: 楽しくコードを書いて賢くなろう! 作者:ヴォーン,リー発売日: 2020/08/12メディア: 単行本 ありがちなプログラミング初学者向けの本から1段上がった中級者向けの良い本だと感じたので、当ブログでたまにやっている筆者、訳者に媚びを売るシリーズの一貫として、感想を記す。 書籍の概要 「実用的でないPythonプログラミング」は、想定する中級レベルのアルゴリズムの問題を例に取り、Pythonでの美しいコードの書き方や、コンピュ
English version 要約 dockerはデフォルトでセキュリティ機構(Spectre脆弱性の対策)を有効にします。この影響で、RubyやPythonのようなインタプリタは速度が劣化します。特にCPU律速なプログラムで顕著に遅くなります(実行時間が倍くらいになることがあります)。 現象 Rubyで1億回ループするコードを、直接ホスト上で実行する場合と、docker上で実行する場合で実行時間を比較してみます。 直接ホスト上で実行した場合: $ ruby -ve 't = Time.now; i=0;while i<100_000_000;i+=1;end; puts "#{ Time.now - t } sec"' ruby 2.7.1p83 (2020-03-31 revision a0c7c23c9c) [x86_64-linux] 1.321703922 sec docker
Google、ORMが生成するSQLが遅いときの調査を容易にする「sqlcommenter」をオープンソースで公開。Rails、Spring、Djangoなど主要なフレームワークに対応 SQL文を直接書かなくとも、自動的にSQL文を生成、実行してくれるORM(Object-Relational Mapper)は、プログラミングを容易にしてくれる技術としてRailsやHibernate、Springなどさまざまなフレームワークなどで活用されています。 一方で、ORMが生成するSQL文はときに複雑に、あるいは非効率なものとなり、データベース処理の遅さにつながることもあります。 このとき、SQL文の生成と実行を明示的にコードとして記述する必要がないというORMの特徴が、なぜデータベース処理が遅くなったのか、どのようなSQL文が生成され、そのどこに原因があるのか、といった調査を難しくている面があり
自分がよく使用する日本語自然言語処理のテンプレをまとめたものです。 主に自分でコピペして使う用にまとめたものですが、みなさんのお役に立てれば幸いです。 環境はPython3系、Google Colaboratory(Ubuntu)で動作確認しています。 Pythonの標準機能とpipで容易にインストールできるライブラリに限定しています。 機械学習、ディープラーニングは出てきません!テキストデータの前処理が中心です。 前処理系 大文字小文字 日本語のテキストにも英語が出てくることはあるので。 s = "Youmou" print(s.upper()) # YOUMOU print(s.lower()) # youmou 全角半角 日本語だとこちらのほうが大事。 全角半角変換のライブラリはいくつかありますが、自分はjaconv派。 MIT Licenseで利用可能です。 import jaco
【JS/ Python両方OK!】「データ可視化」が歴史から実装まで体系的に学べるStanford講座の独習ノートJavaScriptd3.jsデータ分析データサイエンスcolaboratory CS 448B Visualization (2020 Winter)は、Maneesh Agrawala氏による、Stanford大で行われた、データの可視化に関する体系的な講義です。 スタンフォード大の"CS 448B Visualization (2020 Winter)" がすごい。 データ可視化の体系的講義。どう図表に変換するかの理論、探索的データ分析、ネットワーク分析等の実践と盛り沢山。 スライドに加え、Observable(JavaScript), Colab(Python)どちらでも例を試せる。https://t.co/lGyPElrihg pic.twitter.com/mWZn
Pythonでコードを書くときのGood/Badプラクティス こちらの記事は、DuomlyによりDev.to上で公開された『 Good and Bad Practices of Coding in Python 』の邦訳版です(原著者から許可を得た上での公開です) 元記事:Good and Bad Practices of Coding in Python ※ 記事の内容に注意すべき点と誤りがあるので、詳しくは注釈まで目を通すことをおすすめします。 (以下、翻訳した本文) この記事は元々 https://www.blog.duomly.com/good-and-bad-practices-of-coding-in-python/ に公開されたものです。 Pythonは可読性を重視した高水準のマルチパラダイムプログラミング言語です。Pythonは、「Pythonの禅」、別名ではPEP 20と
PHPとPythonとRubyの連想配列のデータ構造がそれぞれ4〜5年ほど前に見直され、ベンチマークテストによっては倍以上速くなったということがありました。具体的には以下のバージョンで実装の大変更がありました。 PHP 7.0.0 HashTable高速化 (2015/11) Python 3.6.0 dictobject高速化 (2016/12) Ruby 2.4.0 st_table高速化 (2016/12) これらのデータ構造はユーザーの利用する連想配列だけでなく言語のコアでも利用されているので、言語全体の性能改善に貢献しています1。 スクリプト言語3つが同時期に同じデータ構造の改善に取り組んだだけでも面白い現象ですが、さらに面白いことに各実装の方針は非常に似ています。独立に改善に取り組んだのに同じ結論に至ったとすれば興味深い偶然と言えるでしょう2。 本稿では3言語の連想配列の従来実
なぜ令和にもなって動的型付け言語を使うのか シフトレフトという概念が生まれたのは二十年以上も前のはずだ。 それにもかかわらず動かしてみるまで答え合わせもできない言語で開発をするという発想自体がどうかしている。 同じ動的型付けといってもJavaScriptはブラウザという事情があるし、型の表現力に優れたTypeScriptがあるからまだよい。 しかし、Pythonはどうだ。他にいくらでも選択肢があるなかで、サーバーサイドにわざわざ選定する言語ではなかろう。 貧弱な型ヒント、しかも書いたところで大した効用もない。 使っている外部ライブラリにひとつでも型ヒントがクソなものがあれば即座に破綻する。 型というガードレールもシートベルトもなしで糞を撒き散らしながらする開発にはうんざりだ。 シンタックスもキモい 動的型付けもさることながら、シンタックスもキモい。とにかく思考を妨げる語順になっている。 m
ターミナルにトークン付きのURLが表示されますので、ブラウザでアクセスします。 起動しました。 チャットインターフェイス 左パネルにチャットのボタンが追加されています。 Welcomeメッセージが表示されます。 language modelとembedding modelを選択します。 これで準備完了です。 チャットができます。 おお! ノートブックについて質問できる ただチャットができるだけではありません。ノートブックのセルに対して範囲選択をすると、チャットエリアの下部にInclude selectionとReplace selectionが表示されます。 Include selectionだと選択したコードを含んだ形で質問ができます。 すっげー! (DefaultActor pid=473) (DefaultActor pid=473) (DefaultActor pid=473) >
Pythonの勉強をしています 今年の2月29日「PyCon Mini Shizuoka」というイベントでキーノートスピーカーとして登壇予定です(詳細は以下参照下さい)。 キーノートスピーカーを引き受けたものの。よく考えると、私はPythonがあんまり分かっていません。「これは、幾ら何でもまずいのでは?」というお気持ちになりました。そこで、今年の年末年始を中心にPythonの本をいくつか読んで、PyConの議論についていけるように、少しでもPythonへの理解を深めておくことにしました。 学んだことは、折角なので以下のQiita記事にまとめていきます(随時追加中)。 この記事では、学習に使用した本と、簡単な感想を書いてみます。興味ある方は参考にしてみて下さい。 私のブログから買うのが嫌だ!という人は、タイトルをコピーしてAmazonで検索してもらえば大丈夫ですし、もちろん買わなくても大丈夫
PDFは扱いにくい PDFファイルをPythonで扱うのは大変です。 表がPDFの中に埋め込まれているケースも割とあります。 例えば 平成30年 全衛連ストレスチェックサービス実施結果報告書の中にはたくさんの表データが埋め込まれています。 例えばファイルの40ページの【表14 業種別高ストレス者の割合】を抜き出したいと思ったとします。 この表を選択して、Excelにコピペしてみましょう。 コピーして、Excelに貼り付けます。 おや?うまくいかないですね。 1つのセルの中に、全部のデータが羅列されてしまっています。 実はPythonを使ってこのPDF中の表を比較的簡単にcsvやExcelに変換することができます。 PythonでPDFの表をcsvに PythonでPDF内の表(テーブル)をcsvやexcelに変換する手順は2ステップです。 ステップ1. PDFから表をpandasのData
ChatGPT,使っていますか? ChatGPTは文章を要約したり、プログラム作ってくれたり、一緒にブレストしてくれたりして本当に便利なのですが、社内情報などの独自データに関する情報については回答してくれません。 プロンプトに情報を記述して、そこに書かれている情報から回答してもらう方法もありますが、最大トークン4000の壁がありますので、限界があるかと思います。 この課題についてなんとかならないかと考えて色々と調べて見たところ、解決する方法が見つかり、いろいろと検証をして見ましたのでその結果をシェアしたいと思います。 サンプルコード(GoogleColab) 百聞は一見にしかずということで、実際に試したサンプルは以下にありますので、まずは動かしてみることをお勧めします。 このコードを上から順番に動かすと、実際にインターネット上から取得したPDFファイルに関する内容をChatGPTが回答して
2021年も数多くのプログラミングやPythonを扱った素晴らしい書籍とたくさん出会いました. 私はリアルの本屋さんに行くのがとても好きで(ECの本屋さんも好きですが), 技術書のコーナーには必ずと言っていいほど足を運ぶのですが, 年々「Python」というラベルが付いた棚の領域が広がっている気がします. プログラミング初心者でPythonからやりたいけど何から読めばいいのか🤔 実務に役立つような参考書籍ってどうやってみつければいいかわからない😇 よりビジネスに役立つ, 実践的な事例をしりたい💪🏻 という, 割とありそうなニーズにお応えすべく, 2022年いや, 今この瞬間に読んでおきたい・抑えておきたいPython関連書籍をまとめました! 2011年頃からPythonを使って仕事をし始め, 今もエンジニアリングからコンサルティング, マネジメントをやっている私独自の視点で, オス
このPython入門講座では、プログラミング経験の未経験者・初心者を対象に、ブラウザからPythonを実行できるサービスGoogle Colaboratory(Colab)を使って、Pythonの基礎をチュートリアル形式で解説します。 Colab は、Google社が提供する、Webブラウザからプログラミング言語Pythonを実行できるサービスです。Colabは無料で使えますし、めんどうな環境設定なしに、いきなりプログラミングを体験できますから、これからプログラミングをやってみたい、という方にはおすすめの学習環境です。 この講座では、プログラミング未経験者を対象に、Pythonプログラミングに必要な最低限な操作方法と、基礎知識を覚えてもらうことを目標にしています。この講座でかんたんにプログラミングの概要を学び、それから一般的なPythonの入門書に取り組むと、学習がスムーズに進むのではない
はじめに インストールすればすぐに書けて動かせるのが魅力のPythonですが、 実際に業務などでキチンと書こうと思ったら Pythonのバージョン管理ツール パッケージマネージャー エディター(IDE) リンター フォーマッター 型チェッカー くらいは最低限用意する必要があります。 しかしこの界隈、怒涛の勢いで日々新しいものがリリースされていて一概に「これがベストプラクティス」を提示するのが難しいんですよね。そこで今回は上記それぞれのツールについて「こんなものがあるよ」というのをご紹介したいと思います。 TLDR バージョン/パッケージ管理はpyenv + Pipenvがスタンダードだった時代は終わった VS CodeかVimを使うなら型解析にPyrightを導入するとよい テンプレートを用意しました 1. バージョン/パッケージマネージャー プロジェクトごとに異なるPythonのバージョ
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く