自然言語処理を学ぶ推薦書籍を紹介します。2025年3月現在、自然言語処理を取り巻く状況が大きく変わっているため、ここに書かれている情報は極めて古く、記録のために残しておきますが、新しく自然言語処理の勉強をしようという人のための参考にはなりません。 2021年03月時点では、自然言語処理を勉強したい理工系の学生・エンジニアの人は、以下の本を推薦します。 (概要)自然言語処理(放送大学出版) (理論)言語処理のための機械学習入門+深層学習による自然言語処理 (実装)Python 機械学習プログラミング 第3版 自然言語処理を勉強したい、非理工系・非エンジニアの人には、以下の本を推薦します。 (数式なし)自然言語処理の基本と技術 (数式あり)自然言語処理(放送大学出版) オライリーから出ている「入門 自然言語処理」は特殊な本(詳しい人がこれを使ってレクチャーしてくれるならともかく、独習に向いてい
はじめに 11/18、東京秋葉原のアキバプラザで、4年ぶりとなる VimConf、「VimConf 2023 Tiny」が開催されました。 今回、Kaoriya さんから「SoftwareDesign で執筆した内容で基調講演をして欲しい」とお願いされた際に、即答で OK をしましたが実は少し不安がありました。SoftwareDesign を事前に購入した人に同じ話を聞かせてしまうのは残念すぎないかという気持ちです。どうしようかとしばらく検討しましたが、SoftwareDesign の内容からスピンオフした内容にする事にしました。 規模が少し小さいとは言え、せっかく楽しみにきて頂いてる皆さんに、残念に思われないようにしたい、少しでも「来て良かった」と思って貰えるイベントにしたと思い、テーマは変えないまま色々な Bram Moolenaar 氏のエピソードを盛り込んだつもりです。 11/18
iOS用のアプリは通常、開発アカウントを取得し、Macを使って開発します。 開発アカウントを取得するほどではないが、iOSデバイス上で何かやりたい処理がある、という人はいるでしょう。 あるいは、プログラム好きな人なら率先してiOSデバイス上でプログラミングをしたいと思うのではないでしょうか。 そうしたニーズに存分にこたえることができる、iOSデバイス上で動作する統合開発環境がPythonista 3です。 2016年9月21日に開催されたPyCon JP 2016で @equal_001 さんがPythonistaについて発表されていたのでご紹介。 Python支持者のことをPythonistaといいますが、アプリ名はそこから取ったんでしょうね。 正真正銘のPythonが内蔵されていて、ローカルで動きます。 [参考] Kazuhiro AbeさんはTwitterを使っています: 「インタプ
「Raspberry Pi(ラズベリー・パイ)」について知っておくべきこと Raspberry Piは誰でも気軽に楽しむことができるシンプルなコンピューターだ。皆さんにも使い方を紹介しよう。 注文しておいた「Raspberry Pi(ラズベリー・パイ)」は、夕方にメール便で到着した。そしてその日の深夜までには、夫と私はそれをプリント・サーバーとして動かすことに成功していた。実は私達はどちらも、コンピューター・サイエンスの経験などは全く持ち合わせていない。 Raspberry Piは非常にシンプルなカード・サイズのコンピューターで、誰でも簡単にプログラムすることができる。元々は英国の学生が科学、テクノロジー、エンジニアリング、数学などを学ぶ入門用として設計されたものだが、35ドルという手頃な価格も手伝って、ホビー用途としても世界中の人々にとても人気がある。 小型のデバイスであるにも関わら
makeuseof:プログラミングカンファレンスに「学校の先生」が訪れるなんて、ちょっと前までは考えられなかったことでしょう。 ところが先日コベントリー大学のコベントリー・テクノセンターで開催されたカンファレンス「PyCon UK」には、教師の姿が数多く見られました。プログラマと教師が、それぞれの専門知識を共有し合っていたのです。彼らに共通の関心事は、若者向けのコンピューティング教育にありました。 イギリス政府は先ごろ、国内の学校でコンピュータサイエンスを必修にすると同時に、基礎的な(時代遅れの)事務スキルのみを教えていた IT カリキュラムを大きく改めました。その何が素晴らしいって、新カリキュラムがものすごく自由なところ。守るべきマイルストーンは、「シーケンス、条件分岐、反復を使ってプログラムを書く。変数や種々の入出力形態を使用する」などのシンプルなものばかりで、それを実現する手段は完全
24. よくない設計 ! / ̄ ̄\ / _ノ \ | ( ●)(●) | (__人__) | ` ⌒´ノ | } ヽ } ヽ、.,__ __ノ _, 、 -― ''"::l:::::::\ー-..,ノ,、.゙,i 、 /;;;;;;::゙:':、::::::::::::|_:::;、>、_ l|||||゙!:゙、-、_ 丿;;;;;;;;;;;:::::i::::::::::::::/:::::::\゙'' ゙||i l\>::::゙'ー、 . i;;;;;;;;;;;;;;;;;;;;;;|::::::::::::::\::::::::::\ .||||i|::::ヽ::::::|:::! 年齢は? 店員(売る人) ! / ̄ ̄\ / _ノ \ | ( ●)(●) | (__人__) | ` ⌒´ノ |
2016-12-09追記 「Pythonクローリング&スクレイピング」という本を書きました! Pythonクローリング&スクレイピング -データ収集・解析のための実践開発ガイド- 作者: 加藤耕太出版社/メーカー: 技術評論社発売日: 2016/12/16メディア: 大型本この商品を含むブログを見る 2015年6月21日 追記: この記事のクローラーは動かなくなっているので、Scrapy 1.0について書いた新しい記事を参照してください。 2014年1月5日 16:10更新: デメリットを修正しました。 以下の記事が話題になっていたので、乗っかってPythonの話を書いてみたいと思います。 Rubyとか使ってクローリングやスクレイピングするノウハウを公開してみる! - 病みつきエンジニアブログ 複数並行可能なRubyのクローラー、「cosmicrawler」を試してみた - プログラマにな
(この記事は闇 Advent Calendar 2013 - Adventar の8日目です。) コンプレックスの話をする。 僕がプログラミングを始めたのは、2008年の夏、大学1年の夏休みだった。大学のサークルの新歓を巡ったはいいが、どこもかしこも絶望的につまらなくて、当時エンジニアとネットウォッチャーしかいなかったTwitterをみていると、彼らがとても楽しそうに見えていた。 だから僕はTwitter漬けになって、一人でプログラミングの勉強をすることにした。大学では最低限の単位を確保しつつ、とりあえずなんでもいいからアプリを作るぞと、はてブで流れてきたホットそうな技術をひたすら手につけてみた。とにかく、新しそうなものをやるという戦略だった。 最初にやったことは、ゲーム用だったWindowsのデスクトップマシンを潰して、ひたすらUbuntu8.04をインストールしては、Railsのサーバ
これまでデータ・サイエンティストの選ぶプログラミング言語はRだったのだが、急激にPythonに置き換わろうとしている。 このシフトの理由はいくつかあるようだが、第一にはPython自体が汎用的で比較的学びやすい言語であるのに対し、Rが習得するにあたってやや複雑であることがあげられるだろう。 データにますます依存しつつある現代社会とデータに飢えたサイエンティストにとっては「簡単さ」こそが鍵となるのだ。 Rは実際にはプログラミング言語ではないRを覚えることに苦労する人が多い理由として考えられるのは、Rが実際にはプログラミング言語ではないからかもしれない。R専門家のジョン・クックいわく、Rとは「統計のためのインタラクティブな環境」であり、厳密にはプログラミング言語ではないのだ。彼はさらに「Rをプログラミング言語だと考るのではなく、Rがプログラミング言語を内包しているのだと考えた方が良いと分かった
Go を使うとサーバーとアプリケーションの境界が無くなり、アプリケーションサーバーを書けるようになります。 それは良いことなのですが、アプリケーションを書く人が、従来サーバーを書く人が設計していた機能を理解して実現できないと、運用できないサーバーができあがる結果になってしまいます。 例えば Apache は、 master, worker プロセスが分離していて、設定変更を反映させるときなどは新しい worker を作ってから古い worker を殺すことで、サービスを一瞬も止めずに worker を再起動していました。これを graceful restart と呼びます。 Go で 1024 以下のポートを Listen するアプリを作る で触れたとおり、 Go はプロセス管理システムを作るのには少し向いていない面がありますし、せっかくアプリケーションプログラマーが簡単にサーバーを書ける
僕の周りだけかもしれないですが、国内のWeb受託開発案件は「PHPで作るのが暗黙のルール」ってな勢いでPHP案件ばっかりなのですが、Python大好きな僕としては、何としてでもPythonを使って仕事をしたい! なので頑張って布教活動をしているのですが、中々良い手応えが得られないのが現状です。。 という訳で、改めてPythonを使うメリットとか、安心してクライアントにPythonを進められる理由なんかをまとめてみました。 技術者がPythonを使うメリット 「今までPHPでやってきて何の問題もなかったし、これからPython始める意味なんてあんの?」 ぶっちゃけ、そんなにないですw 結果的に出来上がる物に関しては大差ないですからね。 ただし、開発効率やメンテナンス性は飛躍的に上がると僕は思います。 ライブラリがとても豊富 PHPも沢山ライブラリありますけど、Pythonだっていっぱいあるん
Pythonユーザーが集まり、情報交換し、交流するためのカンファレンス「PyCon APAC 2013」が9月13日、14日に都内で開催されました。PyCon APACはこれまでシンガポールで開催されており、今回初めて日本で開催されました。 (本記事は「Dropboxは全部Pythonで信頼性の高いソフトウェアを作った(前編)~PyCon APAC 2013」の続きです) Pythonは遅いのか? でもたぶん、あなたのアプリはCPUによって制約されているわけではないでしょう。ごく限られた分野、例えばゲームとか科学計算ではないのならば、多くの制約はハードディスクやネットワーク、もしくはメモリから来ているのではないでしょうか。 それにもしも本当にCPUによって制約されているのであれば、そういうアプリはだいたいCやC++で書かれているとは思うけれど、Pythonにも選択肢はあって、それはCyth
Pythonユーザーが集まり、情報交換し、交流するためのカンファレンス「PyCon APAC 2013」が9月13日、14日に都内で開催されました。PyCon APACはこれまでシンガポールで開催されており、今回初めて日本で開催されました。 Pythonは日本ではあまり利用事例が多くありませんが、海外ではGoogleやDropboxなどで使われていることが知られ、人気のあるスクリプティング言語の1つです。Pycon APAC 2013の2日目の基調講演には、そのDropboxの3番目の社員であるRian Hunter氏が登壇、Dropboxの社内事例も交えてPythonの大規模開発について紹介しています。 基調講演の内容をダイジェストで紹介しましょう。 One Million Lines of Python このカンファレンスに呼んでいただけて大変光栄です。日本には初めて来ました。 僕が初
もしあなたが美しい(あるいはトリッキーな)コードが飛び交う世界を知りたいと願うならそれはTopCoderに参加することで容易に実現することができる。このTopCoderに参加している数少ない日本人で、生涯プログラマーを宣言する人物にTopCoderの魅力を聞いた。 世にハッカーと呼ばれる人は数多く存在すれど、日常生活においてわたしたちがそうした人たちのコーディングを目の当たりにする機会はまれである。 しかし、美しい(あるいはトリッキーな)コードが飛び交う世界を知りたいと願うならそれは容易に実現することができる。そこには国籍、年齢、過去の栄光……そのいずれもが何の意味も持たない、コードのみが支配する世界が広がっている。 そんな世界の1つとしてTopCoderが挙げられる。世界中からトップレベルのプログラマーが参加するプログラミングコンテストとして知る人ぞ知るTopCoder。日本ではいまひと
私は情報収集にはてなブックマークを多用しており、暇な時は結構な割合ではてなブックマークで記事を探してます。しかし、はてなブックマークは最新の記事を探すのは便利ですが、過去の記事を探すにはいまいち使えません。個人的には多少過去の記事でも自分が興味を持っている分野に関しては、レコメンドして欲しいと感じてます。 ありがたいことにはてなはAPIを公開しており、はてなブックマークの情報を比較的簡単に取得できます。そこでこのAPIを利用して自分に合った記事を見つけるようなレコメンド機能をRとPythonで作成してみたいと思います。 利用するデータは、はてなAPIを使って収集します。具体的には、はてなブックマークフィードを利用して自分のブックマークしているURLを取得し、そのURLをブックマークしているユーザをエントリー情報取得APIを用いて抽出し、そのユーザのブックマークしているURLを収集します。こ
本気でPythonをやりたいならあわせて読みたい「え?君せっかく Python のバージョン管理に pyenv 使ってるのに Vim の補完はシステムライブラリ参照してるの?」 2013-06-23 21:30 おしりに追記しました 2013-06-24 10:00 設定等微修正しました 2013-06-24 15:20 quickrunの設定を修正しました 2013-07-03 14:30 間違い等を修正しました 様々な開発環境を試してきましたが、結局Vimに落ち着いてしまっているAlisueです、どうも。 Vimを最強のPython IDEにするを書いてからかれこれ二年ほどが経ちます。 二年もあると新しいVimプラグインが増えるなどし、先の記事内容では最強ではなくなってしまいました。なのでこの辺でもう一度現在の最強をまとめてみたいと思います。 基本方針 プラグイン関係はすべてNeoBu
世の中のことをもっと知るにはどうしたら良いだろうと思うときがある。世の中の多くの事柄はログやデータに落とされる。Googleなどの検索サイトは良い例だろう。さて、そのログやデータをどうすれば良いのか? 多くの場合、視覚化が有効な手段となる。 まずは身の回りの日常的なデータやログを何とかしたい。ただ、日常のデータを視覚化するのに数十行以上のコードは書きたくない。まるで息をするかのごとく自然に視覚化を行いたいのだ。そのためには1~2行、長くて数行で済ませることが必要だ。そこでPythonとmatplotlibを使う。加えて、IPythonがあればなお良い。IPythonの導入については以前のブログ記事であるIPythonの埋め込みプロットが素晴らしいを参考にして欲しい。 まずは事前にnumpyとmatplotlibをインポートしておく。できればscipyも。 >>> from numpy im
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く