1. JavaScript における重要な概念 久しぶりに JavaScrip を書こうと思ったら、ほとんど頭の中から抜けている。 (+_+) this とか prototype って何だっけ?というレベル。てゆうか考えてみたら、その辺読んだけど何かごちゃごちゃしていて頭に入らなったので面倒くさくなって言語仕様読むのやめたんだった。 ^^; シンプルなもの以外理解も記憶もできない。 ところで、以前に JavaScript のコードを書くときに参考にした本は、 JavaScript に関する本は、これしかまともに読んだことがない。 特に以下の部分が、JavaScript を使う上で参考になった。 3.9 グローバル領域の利用を減らす, p28 4.10 クロージャ, p43 5.2 オブジェクト指定子, p57 5.4 関数型, p59 上記の内容を思い出すために、例を考えながら、
最終更新日: 2000-11-14 (公開日: 2000-11-14) Suffix Arrayは巨大なテキストを高速に検索するためのデータ構造 です。テキストのサフィックスを辞書順 (ABC順) に並べ、それに 対するポインタを配列として格納したものが Suffix Array です。 サフィックスとはテキスト中のある位置からテキスト末尾までの文 字列のことをいいます。テキストへの検索は Suffix Array を用い て 2分探索の要領で行います。 では、 Suffix Arrayの構築に移りましょう。ここでは ``abracadabra''というテキストに対して Suffix Array を作成す ることにします。 まず最初に、テキストに対してインデックスポイントを割り当てる 必要があります。インデックスポイントは、検索が行える位置を指 定したものです。この例では、どの位置からでも
FreeBSD - The Power To Serve why GNU grep is fast (なぜGNU grepは高速なのか)といったタイトルの興味深いメールがFreeBSD開発者メーリングリストに投函された。メールを出したのはGNU grepのオリジナル開発者であるMike Haertel氏。Mike Haertel氏はFreeBSDユーザでもあり、FreeBSD開発者メーリングリストで興味深いやりとりがあったため、このメールを流したとしている。Mike Haertel氏の紹介する内容はgrep(1)の実装のみならず、高速な文字列処理を実現するひとつの方法として参考になる。紹介されているGNU grep高速さの秘訣は次のとおり。 GNU grepは入力バイトのすべてをチェックするようなことは避けている。 GNU grepはバイトごとに適用する操作を極力最小限に減らしている。 G
追加ライブラリのインストール手順[編集] 「Carbon Emacs パッケージ」の Emacs は 全ファイルがアプリケーションアイコンの中に入っていて、主なディレクトリは (Emacs.app)/Contents/Resources の下に展開されています。小さなライブラリを使う場合は ファイルを site-lisp ディレクトリに置くだけで大丈夫でしょう。 メニューバーの 「Help > Carbon Emacs Package > Open Site-Lisp Directory」を 選ぶと Finder で site-lisp ディレクトリを開くことができます。 $ ls (Emacs.app)/Contents/Resources CVS English.lproj leim man var Emacs.icns etc lib share Emacs.rsrc info li
2008年1月24日 MigemoをLeopardにインストール 日本語を使うEmacsユーザにとってMigemoは欠かせない。一度使ったら手放せないツールである。Migemoとは、オフィシャルページをそのまま引用するとMigemo はローマ字のまま日本語をインクリメンタル検索するためのツールです。かな漢字変換をすることなく日本語のインクリメンタル検索を快適に行うことができます。wgetのインストールMigemoをインストールするときにはwgetがあったほうが便利である。Leopardにはwgetコマンドがついてこないので、MacPortsから入れた。% sudo port install wget ---> Fetching wget ---> Attempting to fetch wget-1.10.2.tar.gz from http://ftp.gnu.org/gnu/wget
3月28日 農業は地球の環境悪化の緩和に重要な役割を果たす フランス農学・獣医学・林学研究院 アグリニウム会長 マリオン・ギュー 氏 3月8日 近未来SF漫画で描かれるテクノロジーの未来 漫画家 山田胡瓜さん 12月28日 「世界中の望遠鏡が協力して中性子星合体を観測 ―重力波と光の同時観測『マルチメッセンジャー天文学』の幕開けは、何を意味するのか?」 理化学研究所仁科加速器研究センター 玉川 徹 氏 5月1日 「次のアインシュタインはアフリカから」―フォーラム「NEF」第2回会合開催 国際部 4月20日 《JST主催》『女性研究者と共に創る未来』公開シンポジウムを開催 「科学と社会」推進部 4月13日 《JST共催》『ひかり×ひと』-『情報ひろばサイエンスカフェ』で大学院生と中高生らが語り合う 「科学と社会」推進部 4月11日 信頼できるがんの最新情報を届ける ―国立がん研究センターとヤ
『坊っちゃん』自筆原稿 読みやすい文章とは、流れるように読める文章だ。難しい言葉はいらない。気のきいた言葉もいらない。文頭から文末まで振り返ることなく読める文章が、最も美しい。 読みやすさの基準は客観的なものだ。読み手には様々な人がいる。老若男女すべての人に対して読みやすい文章を書くのは難しい。ただ、綺麗な文章を書こうとする意識は持ちたい。 文章を書く上で意識すべき技法を紹介する。 常体と敬体 常体とは「だ・である」調の文章であり、敬体とは「です・ます」調の文章を指す。それぞれにメリットとデメリットがある。 常体は、自分の意思を力強く伝える事ができるが、我の強い文章になる。敬体は、優しい印象で共感を得やすいが、まわりくどい文章になる。 常体と敬体を織り交ぜて書く手法もある。まずは自分で試してみて、書きやすい文体を見つければいい。 文章の始まりは短く 最初の一文は短いほうがいい。インパクトが
「だまされた」と思わせずに大衆を騙すテクニックがわんさと紹介されている。 広告・政治宣伝のからくりを見抜くスゴ本。コマーシャルで衝動買いしたり、連呼されるワンフレーズ・ポリティクスに洗脳されることはなくなるだろう。マスメディアの欺瞞を意識している方なら自明のことばかりかもしれないが、それでも、ここまで網羅され研究し尽くされているものはない。 もちろん、チャルディーニの「影響力の武器」と激しくカブってる。その研究成果が幾度も引用されており、暗黙のお返しを求める返報性の罠や、小さなものから大きなコミットメントを求める一貫性の自縄自縛のテクニックなんて、そのまんまだ。 しかし、破壊力が違う。「影響力の武器」を一言であらわすならば、「相手にYesといわせる」ことを目的としているが、本書はそれに加えて「相手を説得し、積極的に賛同させる」ことがテーマなのだ。さらに、一人ふたりではなく、大衆レベルで実現
CAREERzine:身も蓋もないが本当に有効な「企画書の書き方」のフォーマットパクリです。 前例を重視する 論文には内容と結果、主張の独自性は求められますが、形式については独自性を求められません。むしろ、独自性が高く前例にしたがっていない論文はダメな構成の論文であるとみなされる傾向にあります。 企画書を書くとき、とくに、異動したてであるとか、新しい仕事であるとか、そういう場合は必ず、その部門での企画書に目を通しておくべきです。どういう順番で書いてあるか、どこを手厚くしているか、などに着目していきましょう。あるいは、前例となる企画書をフォーマットだと思って文章を上書きしていくのも有効です。 (CAREERzine:身も蓋もないが本当に有効な「企画書の書き方」より) 研究テーマや投稿先の学術雑誌、国際会議によって論文が通りやすいフォーマットというのが決まっていることが多いです。必ず投稿先の学
プレジデント | PRESIDENT STORE (プレジデントストア) 0 items ログイン 新規会員登録 雑誌の予約購読 書籍 雑誌 ムック・別冊 電子書籍 DVD 古典CD ギフトカタログ 料理道具 お買い物ガイド 買い物かご お問い合せ 閉じる 雑誌の予約購読 書籍 雑誌 ムック・別冊 電子書籍 DVD 古典CD ギフトカタログ 料理道具 お買い物ガイド 買い物かご お問い合せ カテゴリ 書籍(1005) DVD(31) ムック・別冊(705) ギフトカタログ(10) 料理道具(13) 古典CD(11) その他(0) プレジデント(280) dancyu(147) ファミリー(54) 七緒(62) WOMAN(64) ALBA(362) ヨガジャーナル日本版(22) トップ > 雑誌 > プレジデント プレジデント Books 1 | 2 | 3 | 4 | 5 | 6 | 7
プロジェクトマネージャは、説得術を磨くべし:やる気を引き出すプロジェクト管理(5)(1/2 ページ) プロジェクトを円滑に運営していくためには、各関係者をうまく説得して、各々の利害を調整する必要がある。こうした仕事を苦手とするプロジェクトマネージャも多いようだが、いくつかの重要なポイントさえ押さえておけば、さほど難しいことではない。 プロジェクトマネジメントで最も重要な課題 本連載の第2回「プロジェクトは、計画通りに進まなくて当然」で、プロジェクトマネジメントにおいて最も重要な課題は、 「成果の設定(仕様の確定)と仕事の設計(作業の洗い出しとスケジュール化)は不確実である」というリスクへの対応 プロジェクトが「うまくいっている」「うまくいっていない」の判断 の2点であると説明しました。 さらに、1つ目の課題については、その対応策として大別して5通りの方法が存在することをお伝えしました。 顧
説得が仕事を成功に導く・・・私が人を指導する際に伝える言葉です。 私はITエンジニア,プロジェクトマネジャー,システムプランナーとして15年以上,システム開発,問題システムの改善,システム統合などに関する業務を行い,多くの人間を説得してきました。この経験から「他人を説得できると仕事が楽に進む」ことと「説得にはノウハウやコツがある」という2つのことを学びました。つまり,説得のノウハウやコツを知っていれば,仕事を成功させる可能性が高くなるのです。そんな説得のノウハウをこの連載で紹介していきます。コンセプトは「超具体的」であること。私が現場で行ってきた実例をできるだけ使い,実際の会話を再現しながら,日常業務ですぐ役に立つ「超具体的な説得術」を説明しましょう。 ●今回のテーマ:「他部門から協力をお願いされたが,うまく断りたい」 会社などで仕事をしていれば,他部門に「協力してほしい」との話を受けるこ
不完全性定理のLisp, Mathematicaによる記述 Lisp code / Mathematica notebook プログラミング言語なんてどれも同じと思っている人は下の3つをJavaやC++で書いてみてほしい 不完全性定理についてのゲーデルの証明の一部 停止問題の解決不可能性についてのチューリングの証明 LISP式がエレガントであることを証明できないというチャイティンの証明 ライプニッツ「役に立たないパラドックスは無い」(チャイティン「知の限界」) ミンスキー「ゲーデルはLispを思いついておくべきだった。もし彼がLispを思いついていたならば彼の不完全性定理の証明はもっと簡単なものになっただろう」(ホフスタッター「メタマジック・ゲーム」) 次の2冊の本はLispといってもSchemeのようなオリジナル言語が使われている。ここではCommon LispとEmacs Lisp、M
The MacPorts Project Official Homepage The MacPorts Project is an open-source community initiative to design an easy-to-use system for compiling, installing, and upgrading either command-line, X11 or Aqua based open-source software on the Mac operating system. To that end we provide the command-line driven MacPorts software package under a 3-Clause BSD License, and through it easy access to thousa
MacPorts とは?[編集] MacPorts は MacOSX 上で利用可能なパッケージシステムの一つで、 主に UNIX 向けに開発されたオープンソース・ソフトウェアを手軽にインストールすることができます。 OpenDarwin プロジェクトの一部として 2002 年より始められ、 Landon Fuller, Kevin Van Vechten, Jordan Hubbard といった Apple inc. の従業員も多数参加しています。 以前は DarwinPorts と呼ばれていましたが、OpenDarwin プロジェクトの休止に伴い、MacPorts と改称(2006 年 8 月~)されました。 そのため、一部の配布物にはまだ DarwinPorts という表記が残っていますが、これらは全く同じものを指します。 2005 年 4 月 28 日にバージョン 1.0 がリリース
おもむくがままに Mac、iPad、iPhone、Linux、Windowsや日頃の生活で感じたことなどをおもむくがままに記すブログ 先日失敗したMacPorts 1.8.0でのPython2.6のインストール、いろいろ試行し、インストールできました。 念のためインストールしていたMacPorts 1.8.0をhttp://guide.macports.org/#installing.macports.uninstallingを参考にアンインストール。 Snow Leopard対応のMacPorts 1.8.0のパッケージをダウンロードし、インストール。 zlibをインストール $ sudo port install zlib +universal Python 2.6をインストール、ここでは失敗する。 $ sudo port install python26 +universal 失敗し
エディタの設定はいつも悩みが付きまとうものですよね。私自身もいろいろなエディタを使ってきました。 その中で、最終的に落ち着いたエディタはemacsです。そんな私がemacsを使う際、絶対に手放せないツールのうちのひとつにspeedbarがあります。 speedbarがすごく便利 speedbarを使うとこのように左側にファイルやディレクトリを操作するメニューをだしてくれます。また、関数リストなどもだしてくれるためファイル内の移動がすごく楽になります。 -nw 環境でも使いたい しかし、そもそもemacsをつかようになった最終的な理由はサーバサイドで開発をしたいからでした。どこでも同じ環境で開発ができることや、携帯の実機テストが多くなったのが原因です。 しかし、サーバサイドでspeedbarを使うとメニューを使う際画面が切り替わります。これが結構不便でした。 el-speedbar.elを入
今日はちょっと真面目に書きます。 「機械翻訳と翻訳支援ツールは何が違うか?」から始まり、「CAT ツールの構成と概要説明」、「ドキュメント用とソフトウェア用の違い」、「ソフトウェアを翻訳するときの長所と短所」、それから LYE の個人的な意見と続きます。LYE の意見では、「こいつを導入すれば御社大勝利! ではない」けれど「導入の必要性は時代がグイグイ高めてきているのでは?」ということなんかを書いています。 記述に間違いがありましたらメールまたは Twitter でご指摘いただけるとありがたいです。 それでは。 CAT ツールと機械翻訳ソフトの違い 機械翻訳ソフトとは、「原文を文法的に解析して機械的に訳出するソフトウェア」。翻訳に際して人間が一切干渉しなくてもよい。 要するに、エキサイト翻訳。 CAT ツールとは、主に翻訳メモリテクノロジを中心に据えた「翻訳者向け作業環境」のこと。主な機能
ようやく風邪が治りました。nagata(@handlename)です。 みなさん、矩形選択モードというものをご存知でしょうか? 矩形というのは長方形のことです。 矩形選択というのはつまり、領域を四角形に選択することを指します。 通常選択 矩形選択 通常テキストエディタは行毎に処理を行いますが、 矩形選択を活用すると行をまたいだ操作を行うことができます。 今回はemacsの矩形選択モードを3種類ほど紹介してみたいと思います。 標準の矩形選択 emacsに最初から用意されている関数です。 それぞれの関数にはそれぞれキーバインドが設定されています。 コマンド呼ばれる関数動作 C-x r cclear-rectangle矩形領域を空白文字に置き換える C-x r ddelete-rectangle矩形領域を削除する C-x r oopen-rectangle空白文字で埋まった矩形領域を挿入する C
This page is intended to be a reference for using JDBC with Clojure. We'll create a simple blog database to see the basic functions in clojure.java.jdbc. For the latest, most up-to-date community-managed documentation for the clojure.java.jdbc library, consult Using java.jdbc on Clojure Documentation. This WikiBooks page is written around a very old version of the library and most of the examples
やったー!VBAとおさらばだー。 user=> (import '(org.apache.poi.hssf.usermodel HSSFSheet HSSFWorkbook HSSFRow HSSFCell)) org.apache.poi.hssf.usermodel.HSSFCell user=> (def wb (new HSSFWorkbook)) #'user/wb user=> (import '(java.io FileOutputStream)) java.io.FileOutputStream user=> (def fileOut (new FileOutputStream "c:\\PoiSampleBook.xls")) #'user/fileOut user=> (def sheet1 (.createSheet wb)) #'user/sheet1 user=>
POIプロジェクトは、Microsoft OLE 2複合ドキュメント形式に基づいた様々なファイル形式を100%Javaで取り扱うためのAPI群から成り立つプロジェクトです。 Microsoft OLE 2複合ドキュメント形式には、 XLS や DOC といった殆どのMicrosoft Office ファイルが含まれます。 原則として、出来る限り他の(Jakartaなどの)プロジェクトと連携し、この機能を提供していきたいと考えています。例えば:Cocoonにて、我々のプロジェクト由来の generator や serializer がすぐに見つかるかと思います - OpenOffice.org(訳注:Microsoft Office製品と互換性をある程度有するOfficeスイートで、オープンソースとして公開され開発されている、無料のオフィスソフトウェア - Javaを基調としている)と
文:Michael Krigsman(Special to ZDNet.com) 翻訳校正:村上雅章・野崎裕子 2010-09-02 08:00 プロジェクトの納期が守れそうにない、あるいは予算を超過しそうだと知って慌てふためくマネージャーをよく見かける。とは言うものの、プロジェクトが問題に直面していることを示す兆候を見逃してしまっている場合もよくあるものだ。 この件に関して『Early Warning Signs of IT Project Failure:The Dominant Dozen』(失敗するITプロジェクトの兆候:主な12のサイン)という学術論文を執筆するために、2人の研究者が19人の専門家と55人のITプロジェクトマネージャーの協力を得てデータを収集した。そして彼らは、「重要な兆候や問題に対する「初期の警戒信号」はしばしば、プロジェクトが実際に失敗に終わる時点よりもずっと
The latest reviewed version was checked on 16 April 2020. There is 1 pending change awaiting review. Official Clojure reference & API : link "Clojure - Functional Programming for the JVM" by R. Mark Volkmann: link Moxley Stratton - "Clojure Tutorial For the Non-Lisp Programmer" : link Satish Talim - "Clojure Notes": link Eric Rochester - "Clojure Series" (deals with tokenization and stemming) : li
今日は、clojureからSQLServerに接続する機会があったので、メモとしてそのコードを残しておく。 まず、起動用のスクリプトを準備: #! /bin/sh # # ファイル名: clojure # clojure起動スクリプト # 引数には、クラスパスに追加するファイルリストを与える CLASSPATH=$CLOJURE_HOME/clojure.jar:$CLOJURE_LIB/clojure-contrib.jar for cp in $@ do CLASSPATH=$CLASSPATH:$cp done java -cp $LIB clojure.lang.Repl 次に起動: $ clojure sqljdbc.jar 残りはclojureコード: (require 'clojure.contrib.sql) (use 'clojure.contrib.sql) ;; DB
自分のプログラミング脳をプログラムにして、いつかプログラミングから脱出してやるぞっ!とか夢見ながら、日々プログラム作っていく 百野 貴博 の日記です!今は、屋号『百蔵。』として、Silverlight・WPFを追跡中です! (2007/09/30) Leiningenのチュートリアルを訳してみました。 Leiningenを使って開発を始めるのに、いい感じの足がかりに、、、なったらいいな! 無いよりはマシだと思います!たぶん! (`・ω・´)9m ビシ しかし、、、予想以上のボリュームだったので、めっちゃ時間かかってしまいました。 さらに、相変わらず直訳です。すみません。(´・ω・`) 改めて読み返したら、死ぬほど読みづらい・・・。 いつもは訳しながら自分でも実行してみるんですが、今回は訳すので精一杯だったので コマンドやサンプルコードは、原文のものをそのままコピペしています。 前回まで、
Google Waveが。。ということでWaveにためていたClojure関連のリンクを退避。 チュートリアル系 Official Clojure reference & API http://clojure.org/Reference "Clojure - Functional Programming for the JVM" by R. Mark Volkmann http://java.ociweb.com/mark/clojure/ Moxley Stratton - "Clojure Tutorial For the Non-Lisp Programmer" http://www.moxleystratton.com/article/clojure/for-non-lisp-programmers Eric Rochester - "Clojure Series" (deals
Clojure is a new programming language that uses the Java Virtual Runtime as its platform. Clojure is a dialect of Lisp. The language home page is at http://clojure.org/. Table of Contents A Quick Comparison Installing Clojure Atoms Lists Vectors, Maps and Sets Defining Variables and Functions Special Forms Java Integration Looping and Iterating Sequences A Quick Comparison In C-like lang
Clojure is a concise, powerful, and performant general-purpose programming language that runs on the JVM, CLR, Node.js, and modern mobile and desktop web browsers. New to Clojure and not sure where to start? Here are a few good resources to get you off on the right foot: Rich Hickey's Greatest Hits (videos)Clojure for the Brave and TrueClojure from the Ground Up4Clojure (learn Clojure interactivel
FREITAG is everywhere – find us here. Whether you prefer to stay on your home turf or you’re looking for something specific, our search will deliver: filter geographically, for specific offers or services such as bags, accessories, clothes or repairs, or by FREITAG-only stores vs. mixed stores. Most of our FREITAG stores have now reopened, and our store crews are looking forward to your visit. We’
2012/12/13 追記 zsh 4.3.11 以降の新しい機能を使って改良しました。 -> 「zsh の vcs_info に独自の処理を追加して stash 数とか push していない件数とか何でも表示する - Qiita」 Git を使ってファイルを編集した場合、それをいったんインデックスに追加(add)してその後コミットってのが基本的な流れになる。なんかいろいろやってると、ちゃんと add したのかどうかわかんなくなることがある。 そういうときは status コマンド使えばいいんだけど、以前エントリ書いた zsh の vcs_info の機能を使うといい感じにプロンプトに表示できるようになるので紹介する。 zshrc の書き方 こんな風に zshrc に書いておけば OK。 autoload -Uz add-zsh-hook autoload -Uz colors color
社内に設計者がいないスタートアップや部品メーカーなどがオリジナル製品の製品化を目指す際、ODM(設計製造委託)を行うケースがみられる。だが、製造業の仕組みを理解していないと、ODMを活用した製品化はうまくいかない。連載「ODMを活用した製品化で失敗しないためには」では、ODMによる製品化のポイントを詳しく解説する。第6回のテーマは「製品仕様書の書き方」についてだ。
大規模データを処理する必要が出て来たので、Hadoopを導入してみることになりました。 以下、導入メモです。 セットアップ 以下のような構成で試してみます。環境はCentOSです。 マスター(host001) ━┳ スレーブ(host002) ┣ スレーブ(host003) ┣ スレーブ(host004) ┗ スレーブ(host005) まずは各マシンにJavaをインストール。JDK1.6を落として来てrpmでインストールするか、yum install java-1.6.0*などとたたけばOKです。(rpmでインストールする場合は http://java.sun.com/javase/ja/6/download.html から jdk-6u18-linux-i586-rpm.binをダウンロードして、実行権限を与えてルートで実行すればインストールできます。) 続いてマスターノードにHado
JavaでRijndael(AES)で暗号化されたデータをPerlで復号化しようと思います。 「暗号方式と秘密鍵だけ聞いておけば簡単にデコードできるっしょ、余裕っしょ」とタカをくくっていたら、思いっきり天罰がくだりました。久しぶりにハマったのであります。 ちゃんと確認しておくべきだった情報 まずは暗号方式と秘密鍵だけでなく、以下の情報をしっかりと確認しておく必要アリでした。 暗号アルゴリズム 秘密鍵 秘密鍵の長さ ブロック暗号化モード IV(Initialization Vector:初期化ベクトル) padding方式 暗号のことちゃんと勉強した事がないので、なんだかよくわからんけど、必要らしい。 せめて事前にここらへんを読んで勉強しておけばよかった。 ぱせらんメモ http://d.hatena.ne.jp/pasela/20100612/crypto DESに代わる次世代暗号「AES
import org.apache.poi.hssf.usermodel._ import java.io._ object PoiTest { def main(args: Array[String]) { val wb = new HSSFWorkbook val sheet = wb.createSheet("日本語OK") for (i <- 0 to 9) { val row = sheet.createRow(i) for(j <- 0 to 9 ) row.createCell(j).setCellValue(10*i+j) } val filename = "workbook.xls" val out = new FileOutputStream(filename) wb.write(out) out.close() } }
Leiningen は Clojure プロジェクトのビルドツール。 なんかいろいろ便利らしい。単体で動作する jar も簡単に生成できる。 Leiningen のインストール Leiningen (README.md at master from technomancy’s leiningen – GitHub) の Installation の 1. Download the script. から lein (bash script) をダウンロードする。 ダウンロードした lein ファイルをパスの通った場所に配置して実行権限を付加し、以下のコマンドを実行する。 コマンド実行後、~/.m2/ 以下に Leiningen がインストールされる。 $ lein self-install Leiningen (Leiningen 1.1.0 on Java 1.6.0_17 Java Ho
サイトの構築。作品の販売。ブログの投稿。この他にもさまざまな機能があります。 ログイン サイトをはじめよう 非公開サイト このサイトは現在プライベート設定になっています。
Clojureでプログラムを組んでいるうちに、forマクロが強力だということにやっと気づいたので、リファレンスを書いてみる。 forマクロとは 普通の(というか、CやJava系列の)言語では、forはループ文を表すが、Clojureではforマクロはループではなく、シーケンスを作るオペレータだ。 下記のコードでは、0〜9までの数をそれぞれ2倍した数のシーケンス(0, 2, 4, ..., 18)を返す。 (for [x (range 10)] (* x 2)) しかも、返されるシーケンスは遅延シーケンスなので、この式が評価されたときに中身が評価されるのではなく、シーケンスの中身が評価された時に評価される。 => (let [x (for [x (range 3)] (do (println "x=" x) (* x 2)))] (prn "hoge") (prn x)) "hoge" (x
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
Emacs から 日本語の校正支援をする Emacs lisp を作ってみました。 インストール github からダウンロードしてきた yspel.el を ~/emacs.d/ などの load-path の通った場所に置いてください。 git コマンドからなら、 git clone git://github.com/yama-natuki/yspelで落とせます。 落としてきたら ~/.emacs に (require 'yspel)と書いておきます。 使い方校正したいテキストファイルを開きます。 開いたら M-x yspel としてyspel を起動します。 ウィンドウが分割され、校正箇所がリストアップされます。 pキーとnキーでリストを上下に移動します。 リターンキーで該当箇所にジャンプします。 ウィンドウを閉じるときは q キーです。 Yahoo API を利用して校正支援をお
このNeil DavidsonによるDon't Just Roll The Dice, A usefully short guide to software pricingという小冊子(本文73ページ)は、Redgate Softwareの創設者兼CEOであるNeil Davidsonが書いたソフトウェアの価格付けに関する本である。有り難いことにPDFで無料で配布されている。私が、彼の主催するBusiness of Softwareカンファレンスに参加したので、印刷された本をもらった。 ソフトウェアの価格付けに関する実践的なハンドブックである。他に類書があるとは思えないので、ソフトウェアビジネスに携わる人にとって極めて重要な本であると言える。 平易な英語で書かれているし、分量も少ないので、読むのは比較的に容易である。 もし、この本が気に入った人は、「ネットワーク経済の法則」などを読んでみて
SQL 基礎実地編 (その六) 問い合わせ、集計、重複レコード、集合、複合 基本的に Oracle、SQL-Server、MDB で共通です。 ■集計問い合わせ(合計値) ・集計問い合わせを行うには、group by 句を使用する。 この例では、品番の先頭が「a」で始まる明細を品番単位に集計(サマリー)し、 受注数の合計が 1000 以上のものを問い合わせる。 having 句は、集計後の結果に対して抽出条件が指定できる。 select 品番, sum(受注数) from sak.受注m where 品番 like 'a%' group by 品番 having sum(受注数) >= 1000 order by 品番 ; ・count() を使用すると、合計件数が問い合わせられる。 (問い合わせ件数表示、照会件数表示、抽出件数) この例では、品番の先頭が「a」で始まる明細を品番単位に集計
たまたまcljureのMLを見ていた時に、nickiktさんという人が 「"scheme-remove-first"という関数を 書いたのだけれど、自分の実装ではstack overflowしてしまうので気に入らない。 誰かだれかもっと良いバージョンを書いてみてくれ https://groups.google.com/group/clojure/browse_thread/thread/9e400d1381b11665?pli=1 というようなことを書いていたメールを発見しました。 scheme-remove-firstでやりたいことはこんな感じです。 (remove-first 2 '(1 2 3 1 2 3 1 2 3)) ; => (1 3 1 2 3 1 2 3) 名前の通りですね。 実際にnickiktさんが書いた関数はこんな感じでした。 remove-first (defn r
※ここで解説しているお天気推移モデルはオリジナルなものですので、数値・計算等にミスがある可能性が否めませんので、もし間違いを見かけた方は優しく教えていただけると助かります。 お天気推移モデルで理解するマルコフ連鎖モンテカルロ法。2状態離散モデルの解説を中心に、メトロポリス法の解説まで行った。 次は連続モデルや熱浴法・メトロポリスヘイスティング法の解説資料も作成したい⇒完成。以下のLINKを参照下さい。http://www.slideshare.net/teramonagi/ss-5344006 誤字を修正(2010/11/01)Read less
掲題の件、そういう時あると思います。 結論 まあ、ちょっと考えれば自明なんだが、以下です。 ドルコスト平均法は平均的なリターンを押し下げる(儲かる投資なら!)効果があるので嬉しくはない ドルコスト平均法は最終的な儲けのバラツキ(標準偏差)を押し下げる効果があるので、これは不確実性を削減出来ているという意味で嬉しい 状況と結果 投資期間: 250日間 平均リターン(年率): 7% ボラティリティ(年率): 20% 投資戦略① ①全期間(250日間)において毎日一定金額(1円)を投資した場合の最終的な儲けとそのバラツキ > performance(s1) [1] 258.46619 30.96698 投資戦略② ②初日に全額(250円)を投資した場合の最終的な儲けとそのバラツキ > performance(s2) [1] 266.92645 53.44526 それぞれのシミュレーションを複数回
売り上げが右肩上がりで、いけいけどんどんの時は、むしろうっとおしい「法律」とか「ルール」ですが、こういう売り上げが下がっているときには、これまでなぁなぁでやってきた部分を見直すことが、一つの職場の改善、収益の改善につながるかもしれません。 今回は、働くルールについて書きます。 仕事に関するルールは、主に4つ。 法令……労働基準法などの法律や法令 労働協約……労働組合(または職場の代表者)と雇用主が書面で結ぶ職場のルール 就業規則……雇用主が書面で通知する職場のルール。10人以上の職場では必置。 労働契約……個々の従業員が雇用主と書面で結ぶ契約 上が下の上位規定になります。 なので、労働契約で最低賃金を下回る契約とか、労働時間を週80時間にする契約とか結んでも無効になります。 正社員だと、労働契約が書面で結ばれていなくても、常識的な賃金は支払われていましたし、簡単には辞めさせられないという「
はじめに アメリカに行ったときに、16年前ロサンゼルスで人材会社を興し今でも精力的に活動していらっしゃる女性起業家の方と知り合い、インタビューさせて頂くことができました。 照子・ワインバーグさんという方で、とてもパワフルな方でした。 起業や女性の就職、アメリカと日本の就活の違いについてまで幅広く語っていただきました。 5回に分けてお届けするのでお楽しみに! では、第1回のインタビューを以下に掲載します。 ―インタビューをお受けいただいてありがとうございます。まずは照子さんの略歴をお教えください。 私はアメリカ人と結婚して、32年前に渡米して来ました。ところが、結婚4年後に夫と死別してしまい、未亡人になりました。その後再婚しましたが、独立心旺盛なので自分でも仕事をしたいと考えて職探しをしたんですね。 もともと私は日本にいる頃からプログラマに憧れていました。アメリカでも学校に通って勉強もしたの
Linuxでテキストデータを扱うときに、コマンドをパイプで繋げるだけでいろいろな処理ができて面白いのですが、綺麗に整理されていない気がするのでまとめてみます。ここでは、cat, paste, join, grep, head, tail, cut, awk, sed, tr, sort, uniq, wc を取り上げます。 ファイルを縦に結合 ファイルを縦に結合します。 コマンド 説明 cat file1 file2 ... file1, file2, ... を縦に結合 cat file | ... としてファイルの中身をパイプに流すのにもよく使います。 ファイルを横に結合 ファイルを横に結合します。あまり使わない?*1 コマンド 説明 paste file1 file2 .. file1, file2, ... を横に結合 join file1 file2 file1 と file2
どの世代でも、当時のマシンに搭載されていた標準的な物理メモリを越えた場所を指している。 これは割り込みベクタの影響でアドレス0を使えない為と、最初の命令フェッチから始まる初期化プログラムをなるべくアドレスの高位に配置することで、一般的なプログラムの使えるアドレス空間を邪魔しないようにとの意図らしい。 BIOSが格納されたROMは、電子回路のレベルでこれら高位アドレスにマッピングされるよう調整されている。 IBM PC 5150 ではROM BIOSがFE000以降にロードされるようになっており、丁度 FFFF0H に、BIOSコードの先頭へJMPする機械語コードが配置されている。(後述) ※1 : 80286は24bitのアドレスバスを持つが、リアルモードでは20bitしか使われない。A20-A23はリセット後は1になっている。そのため、CSこそ"F000H"になっているが、もう4bit分
2017年08月11日10:00 カテゴリコミックマーケット 同人誌「日銀ネットについて調べてみた本(仮)」を公開しました 木村屋です。 コミックマーケット92に参加し、同人誌の展示を行います。8月11日(金)、場所は「東そ39a」です。 前回の記事の予告通り、この記事にて同人誌のPDFファイルの配布を実施致します。 下記URLにアクセスし、ファイルをダウンロードして下さい。 以上、よろしくお願い致します。 http://blog.livedoor.jp/south_kanto_dm/pdf/%E6%97%A5%E9%8A%80%E3%83%8D%E3%83%83%E3%83%88%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6%E8%AA%BF%E3%81%B9%E3%81%A6%E3%81%BF%E3%81%9F%E6%9C%AC%EF%BC%88%E4%BB%
むかーしむかしにWindowsでESSを使う方法についてメモったことがあるのですが(認証がかかっています)、今から見ると古いだけじゃなくて割といい加減なこと書いてるのにうっかり放置してたら某所でふわっと紹介されてしまったのでさすがにアレだなと思ってちょっと急いで書き直しました。 はじめに Rを便利に使うためのツールとして、Emacsというテキストエディタ上で動くESSというプログラムがあります。 ESS (Emacs Speaks Statistics) は Emacs や XEmacs から R などの統計解析アプリケーションを便利に使ってしまおう,という Lisp プログラムです.(http://www.okada.jp.org/RWiki/index.php?ESS) 特にWindowsではRに付属してくるRguiの機能がやや貧弱で、Rを快適に使えるとは言い難い部分があります。ESS
Named parameters You are encouraged to solve this task according to the task description, using any language you may know. Create a function which takes in a number of arguments which are specified by name rather than (necessarily) position, and show how to call the function. If the language supports reordering the arguments or optionally omitting some of them, note this. Note: Named parameters re
Clojureは組み込みではキーワード引数がサポートされてませんが、分配束縛(destructuring)を使うことで同様のことができるようになります。例はにあります。 リンク先にも書いてあるとおり、このパターンをマクロにしたものが、clojure.contrib.defに入っているdefnkです。でも、defnkでは少し物足りないことがあります。 例えば[a :b 1 :c 2 & rest]というように、デフォルト値付きキーワード引数に加えて、さらにオプショナルな引数を取りたい場合はdefnkではうまくいきません。defnkを参考に、オプショナル引数もサポートするdefnk*を書いてみました。 (defn take-while-nth [n pred coll] (lazy-seq (when-let [s (seq coll)] (when (pred (first s)) (con
前回は、Perlで書いたのだけど、 Rubyでも書いてみたので載せます。 動的型付け言語と静的型付け言語における多態性 オブジェクト指向では、多態性(ポリモーフィズム)という発想がでてくる。 この多態性を実現する方法を今回は2つ紹介する。 Rubyは動的型付け言語であり、ダックタイピングという手法で、多態性を実現できる。 対して、静的型付け言語であるJavaでは上位の型を作ることで多態性を実現できる(今回はインタフェースを用いてみた)。 ダックタイピング Rubyでのタックタイピングを見てみよう。 human = Human.new dog = Dog.new duck = Duck.new human.touch(dog) human.touch(duck)いま、このようにhumanがtouchすると、おのおのの動物が鳴くソースを書いてみる。 duck(アヒル)はhuman(人間)に触ら
Macユーザーが増加している最近はiPhoneの人気もあってWindowsユーザーからMacユーザーになる人が僕の周りでも増えた。基本的にMac OSは安定していてスピードも申し分ない。 Macを新しく検討しようと思っている方は↓ そんなMacでも長年使っていれば調子の悪い時もでてくるだろう。今まさに自分のMacBook Airが買ったときに比べスピードが落ちているので色々チューニングをしたら大分スピードに向上がみられた。Macが僕のように以前より遅くなってしまった方は以下のTipsを参考して頂けたら幸いである。 もし下記のすべての方法を試してもスピードアップしない場合はOSの再インストールも視野に入れた方が良い。 再インストールすれば大抵の問題は解決される。再インストールする時にはTime Machines等からバックアップ復元すれば簡単にできる。 1.容量の大きいファイルは外付けデバイ
「Kyoto Tycoonの設計 その四」改め、50行でWebサーバを書く方法を解説する。前回実装した「多重I/Oマルチスレッド汎用TCPサーバ」の上にHTTPの処理を行う層をつけて、「多重I/Oマルチスレッド汎用HTTPサーバ」を司るクラスを実装してみたので、それを使ってちょちょいとやる。 URLクラス HTTPと言えばURLが使えないと意味がない。URLは単なる文字列として扱ってもよいのだが、様々なシーンで分解や加工が必要になり、その処理はなにげに複雑で面倒なので、予めクラスとして導出しておいた方がよいだろう。 class URL { public: // 文字列のURLを解析して内部構造を作る void set_expression(const std::string& expr); // スキーム要素を設定する void set_scheme(const std::string&
プログラミング言語Scheme 富山大学理学部数学科 木村 巌<iwao@sci.toyama-u.ac.jp> 最終更新日:2003年8月26日(更新箇所) Schemeとは Schemeは、Guy Lewis Steele Jr.とGerald Jay Sussmanによって創始された、静的なスコープを持ち、真に末尾再帰的なプログラミング言語であり、Lispの一方言でもあります.他に例を見ないほど明快かつ簡潔な意味論を持ち、また、表現の仕方がほぼ一意に定まります.広い範囲のプログラミング・パラダイム、例えば命令型、関数型そしてメッセージ交換型、は、Schemeにおいて簡便に表現できます.("Rivesed5 Report on the Algorithmic Language Scheme"序文より). このページの目的 このページの目的は、Schemeに関する情報を収拾し、それらを広
ESP8266のチップで書き込めなかった問題が起こり、それについての対処を参考になる可方がいるかもということでブログにもメモとして残しておきます。 書き込みで失敗したケースとしては、 スイッチサイエンスさんのESP-WROOM-02ピッチ変換済みモジュール《シンプル版》 へのシリアル通信での書き込みができなかった問題 Over The Air(OTA)の機能を使うコードを、同じくESP-WROOM-02に対して転送するも、更新の途中でクラッシュし、書き込みが失敗するという問題 の二つです。 OTAまで使って書き込もうとしている背景は、ニャンパスとして Robip というプログラミング学習環境を作っていて、そのツールの中でWi-Fi経由での書き込み機能を対応することでスマートフォン、タブレットなどでのビジュアルプログラミングしたものが、OTA経由で電子工作のプログラミングができるようという機
なぜ Lisp なのか Quote...Unquote ダグラス・R. ホフスタッター著, 竹内郁雄ほか訳『メタマジック・ゲーム』 ミンスキー「ゲーデルは Lisp を思いついておくべきだった。もし彼が Lisp を思いついていたならば彼の不完全性定理の証明はもっと簡単なものになっていただろう」 ゲーデルの証明の一番難しいところは、数学的体系に自分自身を語らせるところにある。天才のひらめきが何段階か必要になる。しかし、Lisp は、少なくともゲーデルが必要としていた意味で、まさに自分自身を直接語ることができる。 ゲーデルは Lisp を発明した! ダイクストラ「謙虚なるプログラマ」 LISPは冗談まじりに「コンピュータを誤用するための、もっとも知的な方法」と言われることがありますが、私はこれはすばらしい褒め言葉だと思います。なぜならこれはあらゆる種類の自由を可能にしているからです。LISP
先日CodeIQで、巡回セールスパースン問題を出題しました。 Mathematicaには、指定した点をすべて通る最短の巡回路を求める関数 FindShortestTour があるので、これを使えば簡単なはずでしたが、実はそこにはトラップがあったかもしれません。 追記:問題は3つありますが、Mathematica 10.4.1, 11.2で未解決なのは3番目のみです。 問題1(10.0.2 for Windowsで解決) Mathematica 10.0.1 for Windowsでは、{{6, 2}, {4, 6}, {3, 4}, {6, 7}}という4点を通る最短巡回路を求められませんでした。 @yabuki (More info: http://t.co/HBUub0ForI) #wolframlang pic.twitter.com/mxTwMsc0Nk — Tweet-a-Pro
テーブルのJOINが苦手でしたが、この例を思いついてからは、すっきりくっきり理解できるようになりました。むしろ頭から離れません……。 ※ INNER、OUTERは飾り。省略できる。 INNER JOIN → JOIN LEFT OUTER JOIN → LEFT JOIN RIGHT OUTER JOIN → RIGHT JOIN ※ ON ...=... をまとめて USING(属性) と書ける。 ※ 何で結合するか言うまでもない時は、NATURALを指定すると勝手にJOINしてくれる。NATURALにJOINして……。 ※ WHEREは結合した結果に作用する。 ※ 現実には上図のように1対1で結合しません。 ※ おまけ。CROSS JOIN。 こんなの使いません。 ブクマ用画像。
ソースの中で定数として扱うのではなく、設定ファイル的に扱いたい Rubyはそれなりに長い間使っていますが、Railsはメジャーバージョン毎にちょっと触るくらいで、まったくベストプラクティスとか知らないんですね。 で、いまは作る際のお手本として 日本Ruby会議 2010, 8月27日〜29日 のソースである ruby-no-kai/rubykaigi · GitHub を見てパクれそうなのはパクるというスタンスでやってます。 で、本題の設定ファイルの扱いについて 上記 rubykaigi の Gemfile を見ると 'configatron' っていうのがある。 なので、これが cool な設定ファイルを扱うライブラリなのかしら、と思ってたのですが、ちょうど id:ursm さんから @sugamasao 最近は Settingslogic を使っています 2010-09-02 21:3
PDF Rendererとは PDF Rendererは、PDFファイルを読み込んでJavaプログラムで描画するための機能を提供するライブラリである。iTextやApache FOPは任意のPDF文書を生成したり、PDFファイルを編集をするための機能は持っていたが、PDF RendererにはそのようなPDF編集機能は用意されていない。 PDF Rendererの利点は、PDF文書の内容をjava.awt.ImageオブジェクトやGraphics2Dオブジェクトに読み込ませて描画できる点にある。これらのオブジェクトはSwingをはじめとするグラフィックライブラリで汎用的に扱うことができる。すなわち、PDF Rendererを利用すればPDFコンテンツをさまざまなGUIアプリケーションに簡単に取り込むことができるということだ。たとえばPDFをSwingアプリケーションの中に描画したり、Jav
\閉鎖予定のサイトも売れるかも?/ アクセスがないサイトもコンテンツ価値で売れる場合も… ドメインの有効期限を更新してサイト売却にトライしてみましょう
メインページ 提供: MacPorts-JP 移動: 案内, 検索 「http://macports-jp.sourceforge.jp/wiki/index.php?title=%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8&oldid=447」から取得 個人用ツール ログインまたはアカウント作成 名前空間 ページ 議論 変種 表示 閲覧 編集 履歴表示 操作 検索 案内 プロジェクトページ 談話室 最近の更新 ヘルプ 関連リンク 文書 HowTo Man Pages ファイル Private Ports SVN ツールボックス リンク元 関連ページの更新状況 特別ページ 印刷用バージョン この版への固定リンク このページの最終更新日時は 2010年4月2日 (金) 05:34 です。 プライバシー・ポリシー MacPorts
要件定義のヒアリングシートはいくつか見たことはあるが、web 開発に 特化したまともなヒアリングシートを見たことがないので作ってみた。 「サイトの目的は」などの上流部分はあえて省いて、機能・実装にフォーカスしている。 思いつくままに記述してみたが、結果としてはインターネット上の コマース向けサイトに特化した形になった。 請負時のヒアリングシートと、発注時の要件伝達漏れチェックシートと、 開発時のレビュー観点の元ネタとして使えるといいなぁ。今後気づいた ところがあれば追記していきます。 ●2010/02/24 追加分。 - サイトメンテナンス時のアナウンス要否 - メンテナンスページは「503 Service Temporarily Unavailable」を返すようにし、 検索エンジンにキャッシュされないよう注意する。 ●2007/08/23 追加分。 404/403/500 などのエラー
アメリカの人口の12%が「貧困層」であり、そう言った人たちは日々の食事も満足に食べることの出来ない生活をしている、などの報道は、米国に住んでいると新聞やニュースでは良く見かける。しかし、中流以上の生活をしている我々にとってみれば、生活圏がほとんど重ならない彼らの生活の実態は、なかなか実感として捉えられず、単なる「統計データ」としてしか頭に入って来ない、というのが正直な所である。 しかし、今回のハリケーンで、彼らの生活の基盤がいかにもろいものか、そして、その数がものすごいものであることを、映像を通して目の当たりに見させられることになったことにショックを受けている人はとても多いはずだ。 今回のハリケーンの被害は、政府からの非難命令にも関わらず、逃げるための交通手段も持たず、逃げたところで避難先のホテル代も払うことが出来ない人達が「予想に反して」10万人も市内に残ってしまったために大きくなってし
Headsetoptions: Activism, Webdesign for Non-Profits & a Socio-political Blog2008年08月21日 Casualty+Dead Reckoning Recently I came upon a paper called Influences of Network Latency and Packet Loss on Consistency in Networked Racing Game which analyzed a combination of both dead reckoning DR and something called delta casualty. 続きを見る Posted by brian on 12:14 filed in English Comment now » 2008年0
MacPortsというのは、BSDのportsを参考に作られたMacOSX用のパッケージングシステムです。同様のパッケージングシステムとしてはFinkもありますけど、好きな方を使えばいいと思います。ちなみに、ディノ社内のMacユーザーの中ではMacPortsの独占状態になっています。私は最初Finkを使っていたんですが、話が合わないのが寂しくてMacPortsを使うようになりました。 さて、そのMacPortsですが、私が長年rpm&yumに慣れきっていたせいか、「こうしたい時どうするんだろ?rpmコマンドなら出来るの知ってるんだけど」みたいなことが良くあります。これは結構ストレスです。そこで、逆引き形式の一覧表を作ってみました。リファレンスマニュアルを見れば全部書いてあることなんですけど、意外と便利なんじゃないかと思います。少なくとも私は自分で便利でした。(さすがにもう覚えましたけどね)
Peter Norvig / 青木靖 訳 このページには2つの目的がある。コンピュータ言語の実装について一般的な記述をすることと、Lispの方言であるSchemeのサブセットをPythonで実装する具体的な方法を示すことである。私はこのインタプリタをLispy (lis.py)と呼ぶ。何年か前に私はJavaとCommon LispでSchemeインタプリタを書く方法を示した。今回の目標は、アラン・ケイが「ソフトウェアのマクスウェル方程式」と呼んだところの簡潔さと取っつきやすさを可能な限り実現するということだ。 SchemeのサブセットLispy の構文と意味論 コンピュータ言語の多くは様々な構文的な決まり(キーワード、中置演算子、カッコ、演算子優先順、ドット記法、セミコロンなど)を持っているが、Lisp族言語の1つとして、Schemeの構文はすべてカッコ付きの前置記法であるリストを基本とし
先週に引き続き,今週もコンポーネントのレイアウトに関する話題です。Java SE 6で新たに導入されたレイアウト・マネージャjavax.siwng.GroupLayoutクラスを紹介します。 GroupLayoutクラスは,もともとNetBeans 5.0で導入されたMatesseというGUIビルダーで使用されていたものです。NetBeansではGUIのデザインを直感的に行うことができ,複雑な配置でも容易に作成できます。 Matisseで導入されたGroupLayoutクラスは次のような特徴を持っています。 レイアウトの自由度が高い コードの自動生成が容易 Java SE 6にGroupLayoutクラスが取り入れられたので,今後は他のGUIビルダーでもGroupLayoutクラスが採用されることが予想されます。 GroupLayoutクラスはツールで使われることが前提かもしれませんが,そ
はじめに 多くのGUIを使ったプログラムでは、ユーザーの操作などに関する処理を「イベント」と呼ばれるものを利用して処理します。イベントというのは、さまざまなプログラムへのアクションに応じて発信される「信号」のようなものだと考えてください。例えば、ユーザーがマウスでボタンをクリックすると、それに対応するイベントが発生する。このイベントに応じて何らかの処理が実行される。そういう仕組みになっているわけです。 GUIのプログラミングでは、このイベント処理が非常に重要となります。Javaに用意されているイベント処理の仕組みについて、ここでしっかりと理解しておきましょう。 対象読者 Javaに興味はある、けれどプログラミング経験がない、という人。 Javaに興味はある、けれど何から手をつければいいかわからない、という人。 Javaに興味はない、でも何でもいいからプログラミングをしたい、という人。 これ
はじめに プログラミングというのは、ある程度の技量がつくまでは、計算したりテキストの処理をしたりといった地味~な作業ばかりするもの、というイメージがあります。が、コマンドラインから数字や文字が出てくるようなプログラムばかり作って、楽しいですか?(筆者は、全然楽しくない!) やっぱり、プログラミングは「作って楽しい」ものでなければやってられません。クロウトならば、どんなものであれ楽しみを見出せるでしょうが、ビギナーのうちは、やっぱり「目に見える」形で動くものでないと楽しさを実感できないでしょう。そう、やっぱりプログラムと言えば「ウインドウ」がないと始まらないのです。そこで、Javaの最も基礎的なところを覚えたところで、「ウインドウ」を使ったプログラムの作り方へと進むことにしましょう。 これまでの記事 Java入門 (1) - まずはここから始めよう Java入門 (2) - 値と制御構文 J
ウデに覚えのある人であれば、今の仕事を続けながらふと「会社を辞めて起業したい」と思うことがあるかもしれませんが、これまで積み上げてきたいろいろなものを一気に捨て去るにはかなりの勇気が必要です。ネット上の起業に関してのいろいろなページを見てはお気に入りに入れたりブックマークしたりして「オレもいつかは……」と夢をふくらませるものの、最初の一歩がいつまで経っても踏み出せないまま時間だけが過ぎていく……という人も多いはず。 そういう人に最適なのがこの「EC studio バーチャルオフィス」です。今の仕事を続けながら、まずはこっそり副業としてビジネスを始めるために必要なものを一発で揃えることが可能となっており、バーチャルオフィスを利用している人のみ会社の設立代行を特別価格1980円で行ってくれるパートナー会社も紹介しているそうです。起業だけでなく、既に個人事業主になっている人や支社や出張所が欲しい
今日はtokyoclj#3なので、前回に引き続きclojureでの平行性実装についてみています。 前回もjavaの実装はチラ見していたのですが、clojure側の実装をみていなかったので、機能の復習もかねて整理しておきます。 clojureはjavaでSTMを実装しています。java.util.concurrent.*が大活躍です。なので、clojure側の実装はあまりみても重要ではないのですが、機能を整理しておきたいのでちゃんと読んでみました。 refというのはSTMで扱うことができるオブジェクトです。STMというのはsoftware transactional memoryのことです。ロックフリーなセマンティクスで、複数の処理をatomicにできる、便利なものです。平行処理がロックフリーであるということは、複数のロックを使用して平行性を高めるとか、難しいアルゴリズムをつかうとかしなくて
半年の勉強でTOEIC800点取ったので書いてみる 動機勤務先でようやく評価対象になってきたので。(勤務先は技術系・おいらは40歳中間管理職) それとはてはのホットエントリに英語の記事がやたらと入ってきてるんで、気になった その中では "英語学習、はじめの200時間(TOEIC700点レベルまで)" http://www.aoharu-b.com/cgi/sk/2010/02/200toeic700.html が特に参考になった。 勉強前の実力最後にちゃんと勉強したのは大受験以来だから20年以上のブランク。 ただ仕事上英文の規格書(ASME)とか仕様書とか読んでるんで、完全に忘れたりはしてない。 それと3年に1回くらい突発的にNHKのラジオ講座を半年ぐらい聴いたりしてた。 今思うと高校卒業レベル(TOEIC500点ぐらい?)はキープしていたと思われる。 勉強の方針知り合いがNOVAで大変な
未来のプログラマのためのチュートリアル 目次 00. はじめに 01. 数(number) 02. 文字列(string) 03. 変数と代入 04. 数と文字列の変換 05. メソッド(method) 06. 制御構造 07. 配列とイテレータ 08. メソッドの作り方 09. クラス 10. ブロックと手続きオブジェクト 11. このチュートリアルを超えて このチュートリアルについて...
Debian Project/Google ソフトウェアエンジニア鵜飼文敏さんの講演動画を見たのでまとめ。 内容は、フリーソフトウェア、オープンソフトウェアのハッカー、Google内のハッカーがどのようにソフトウェアを作っているか。 少し前の講演だけど、ハッカーを目指す上で非常に参考になった。 ハッカーの特徴 ハッカーとは Hacker ethic ハッカーのソフトウェアの作り方 ハッカーの開発スタイル 手順 要求仕様 設計 実装 テスト デバッグ チューニング ハッカーに近づくには 必要な知識 知識の習得の仕方 ハッカーと仕事をするときの問題点 その他に紹介されていた書籍 感想 参考 ハッカーの特徴 普通の人をはるかに上回る高い生産性 高品質のソフトウェアを作りだす ハッカーとは ハッカーズ大辞典によると、 プログラム可能なシステムの細かい部分を探ったり、その機能を拡張する方法を探求した
この文章は、 Dmitry A. Soshnikov さんの、 ECMAScript に関する優れた記事 "JavaScript. The Core." を許可を得て翻訳したものです。世の中に、 JavaScript のブラウザ API や、実装系に関する記事は多々あれど、 ECMAScript の仕様に則って、ここまで詳しく説明してくれている記事は殆ど無いと思います。今回は翻訳できておりませんが、文中で参照されている Dmitry さんの ES3 シリーズも、読み応えのある( ECMAScript3 の仕様の副読本としても読める)素晴らしい内容ですので、是非チャレンジしてみてください!(ご要望があれば訳します翻訳許可を頂いたので、この記事内で参照されている章から逐次翻訳を進めます!)。 ちなみに Dmitry さんは、計算機科学や数学にも明るい方でらっしゃいます。が、私は違います。極力
mschrag@github SpeedLimit は Mac のネットワーク通信速度に制限をかけることができる Preference Pane です。 上限のプリセット値として 1572k (T1), 768k (DSL), 384k (3G), 64k (Edge), and 48k (Dialup) の5種類が用意されています。 上限値を選択して "Slow Down" ボタンを押すと、通信速度が制限値まで遅くなります。 ネットワークを使用した iPhone アプリケーションのテストをシミュレータ上で実行するときに便利です。 対象となるホストを指定することができるので、iPhone アプリケーションの接続先のみ制限して、他の Mac の通信速度はそのまま、ということもできるようになっています。
管理者に問い合わせしろっていう例のあれ。 VPN接続失敗。ネットワーク、事前共有鍵など設定を確認し、再度お試しください。問題が解決しない場合は、ネットワーク管理者にご連絡ください。 VPN connection faileVPN Connection failed. Please check your configuration, network, connection and pre-shared key then retry your connection. If the problem persists, contact your network administrator for help. ログメッセージ "No response from the peer, phase1 retransmit reaches maximum count" 今回はWindows11を22H2にア
ちょっと試してみました。JavaScript の処理系は Rhino(Rhino 1.7 release 2 2009 03 22) です。 Continuation を使って sum を定義してみました。 function callcc (f){ return f(new Continuation()); } function identity (x){ return x; } function sum (n){ var i = 0; var total = 0; var hop = new Continuation(); var next = callcc(identity); if (n < i){ hop(total); } else { total += i; ++i; next(next); } } sum(10); // -> 55 loop 関数にしてみました。loop 関
((Pythonで) 書く ((さらに良い) Lisp) インタプリタ) Peter Norvig / 青木靖 訳 前のエッセイでは、90行のPythonコードでシンプルなLispインタプリタを書く方法を示した(lis.py)。このエッセイでは、3倍込み入っているが、より完全なlispy.pyを実装しよう。それぞれの節で1つの機能追加を扱っている。 (1) 新しいデータ型 - 文字列、論理型、複素数、ポート Lispyへの新しいデータ型の追加は3つの部分からなる。データの内部表現、それを扱う手続き、読み書きのためのシンタックスだ。ここでは4つの型を追加する(入力ポート以外はPythonのネイティブ表現をそのまま使う)。 文字列 文字列リテラルはダブルクォーテーションで囲まれる。文字列の中で \n は改行を、\" はダブルクォーテーションを意味する。論理型 構文 #t と #f はTrue
Shibuya.js Technical Talk #2 で、 発表をさせていただきました。ありがとうございました。 5 分の中にいろいろ詰め込もうとしたら、 訳の分からない発表になってしまいました。 発表者やスタッフのみなさんお疲れさまでしたー。 今回の発表では、 まず ActionScript(JavaScript)でのクロージャと継続渡しスタイルの実装方法の説明をし、 その後、 A* アルゴリズムというグラフの最短経路探索アルゴリズムを例にとって、 クロージャや継続渡しスタイルの便利さをアピールしようとしました。 発表資料 当日使った発表資料をおいておきます。 スライドの PDF デモの Flash(SWF) デモの ActionScript ソース Flash 8 を持っていれば、次の Fla ファイルを使ってデモを試すことが出来ます。 (Flash 8 の体験版 でも OK です
ほびーましんは CNCの組み立てキットを販売する会社です 標準販売のものから 仕様変更 お好みに合わせたオーダー対応まで行っております。
「実行ファイルの解析ってどーやるのっ!」 「解析やってみたいよー」 「どこの学科に行けば勉強できるの?!」 などのような質問をよく受けるので、ひとつの個人的な道筋を書いてみます。 とりあえず今回は実行ファイル解析編。アセンブリ楽しいよアセンブリ。 (最後の方には実行ファイルに限らず、いろいろな解析系のリンクをまとめています。) 最初の入門 なんだかんだで一番分かりやすくて「解析してる!」っていう実感が沸きやすそうなのは、crackmeかなあと思うのです。 解析魔法少女美咲ちゃん マジカル・オープン! この本は実にいやらしいすばらしい・・・入門の入門と言えようぞ・・・((( 実際問題とても分かりやすく、「16進数って何?」というレベルの人でも頑張れば問題ない構成だと思います。途中までは。 とりあえず半分ぐらいまで熟読してみると、第一歩を踏み出す準備ができるのではないでしょうか。 むしろ、2歩
過去、「勉強会には興味があるんだけど、海(瀬戸内海)をこえてまでは出席しづらいなぁ~」っていう声をいくらか耳にしていました。
Apache POI(以前はJakarta POIと呼ばれていました)はJavaアプリケーションからExcelやWordなどのMicrosoft製品のフォーマットファイルを読み書きするためのAPIです。 今回は特にExcelのファイルを対象として試していきますが、Excelのファイルの読み書きではApache POIの中のHSSFとXSSFを使用します。HSSFはExcel2003までのファイルフォーマットに対応したもので、XSSFはExcel2007のOOXML(.xlsx)ファイルフォーマットに対応したものです。 Apache POI 3.6のダウンロード Apache POI 3.6のインストール クラスパスの設定
11 November 2024 - Avoid log4j-api 2.24.1 When testing a potential Apache POI 5.4.0 release, we discovered a serious bug in log4j-api 2.24.1. This leads to NullPointerExceptions when you use log4j-core that is not of the exact same version (2.24.1). We recommend that users avoid log4j 2.24.x. Please direct any queries to the Log4j Team. The main issue is Issue 3143. An XMLBeans 5.2.2 release was r
いろんな基本的なことはすっ飛ばして、書式について書くことにします。バージョンは3.6で。 書式というと、表計算ソフトとしては数値のフォーマットが最重要のはずなのですが、現在日本でExcelが使われる中では、フォーマットより、フォント(サイズや色も含む)や背景色、罫線なんかの比重が非常に高くなっています。と言う事で、今回のポイントもそこになります。 さて、POIではExcelの「セルの書式設定」で扱える項目は、殆どがCellStyleで表現されます。そしてこのCellStyleは、Cellの持ち物ではなくWorkbookの持ち物です。これはPOIだからこそという話ではなく、作成されるファイルを見る限り、MicrosoftExcelも内部ではそんな感じで扱っているようです。Cellに持つほうが自然な気はしますし、実際の操作上でもあたかもCellが持っている情報のように扱われます。Workboo
先日の関西Emacsでは、Emacs Lisp の入門記事がうけるとか、「書ける」ようになる情報がないらしいという話を聞きました。確かに、Emacsの初歩的な操作入門と、良く書ける人がアプリやブログなどでelispをばしっと書いてるのはよく見ます。入門から書けるようになるまでの間の過程は見たこと無かったかもしれないと思いました。 ということで、Emacsの先人たちにはまだまだ及びませんが、いくつかのアプリを書いてみた自分がたどった方法を書いてみます。先にまとめると以下の2つになると思います。 elispでどうしても書きたい物があること たくさん書いて動かして(こっちが先)、そしてInfoや他人のコードを見て勉強する 書ける以前のまとめ Emacs歴10年以上。すでに生活の一部。 でも設定を書くのに使っていたぐらい。 既存のアプリの分かりやすいバグを手元でちょっと直すとか。 LISP系の言語
Paypalが、ついに自社の少額決済サービスであるPaypal Micropaymentsを提供開始しました。 残念ながらまだ日本語コンテンツはありませんが、既に円決済には対応しているようです。 通常、Paypalの円決済では手数料が3.6% + 40円ですが、このMicropaymentsを使用するとその手数料が5.0% + 7円となります。 それだけではわかりにくいので、通常手数料とMicropaymentsの手数料をグラフで比べてみることにします。 Paypal通常手数料と少額決済手数料の比較 手数料の分岐点を計算すると、 X * 3.6% + 40 = X * 5.0% + 7 X = 2357.1 すなわち、単価2,357円までの決済であれば、このMicropaymentサービスを使うと手数料が下がると言う事です。 たとえば、単価(ticket price)が1,000円の場合、
承前 ちょっと甘く見ていた。いや、甘すぎた。 裁断機PK-513Lは、文具や事務用品で有名なPLUSが発売している商品。だから、文具のように簡単に取り扱えると軽く考えていた節がある。しかし、当然のことながら、裁断機は文具じゃない、機械だ。 そんなことは、あの巨大な本体を入手した時点でわかっていた筈なのに、何を僕は油断していたのだろう。馬鹿すぎる。替刃が届いた時、僕は自分の愚かさを思い知った。 純正の替刃。プラス ステーショナリーという文字があるし、この部分だけ見ると、一見、文具のようにも思えるけれど…。 実際は、こんなに長い。重量もずっしり。裁断機用の替刃なのだから、当然と言えば当然とはいえ、受け取った時は驚いた。 箱を開けたら、いきなり「Toyo Knife」の文字。刃物という文字も書かれており、もはや文具のイメージはかけらもない。 封を開いてみたところ。まさにこれは「刃物」だ。強烈なイ
[NOTE: Make sure to use Leiningen version 1.1.0 or greater. The version can be determined with ‘lein version’] This is a quick guide to using Leiningen to build applications that use Incanter, based on the very useful post by Zef Hemel, “Building Clojure Projects with Leiningen“. (Note: the following tutorial uses Unix shell commands (i.e. Mac OS X or Linux), but Roland Sadowski has created a Lein
Incanter is a Clojure-based, R-like platform for statistical computing and graphics. Incanter can be used as a standalone, interactive data analysis environment or embedded within other analytics systems as a modular suite of libraries. Features Charting & visualization functions Mathematical functions Statistical functions Matrix & linear algebra functions Data manipulation functions Interactive,
Javaプログラム実行時にプロキシ経由接続が必要だと、java.net.ConnectExceptionが発生する場合があるようです。 今日Saxon+XSLTを使ったXML変換処理を行う際に発生する環境がありました(Saxonが接続しに行くのは、指定されたDTDを取りに行く為です)。 後述するSunのドキュメントで調べたところ、OSのバージョンによって自動でシステムのプロキシ設定を検出できないものがあり、 "最近のWindowsでは対応している"とのこと (なんて抽象的な!)。そしてどうやらVistaがこれに当たり、XPは該当しないようです。 自動検出されないOSの場合は、手動設定します。実行時に以下のいずれかのVMオプションを追加します。 ・プロキシを直接指定する場合: -Dhttp.proxyHost=[ホスト名] -Dhttp.proxyPort=[ポート番号] ・システムのプロキ
callcc と shift/reset についてわかるとこだけ書いてみます。 継続 callcc という操作は、現在から実行終了まで、継続をまるごと取り出します。例題。 p [1] + callcc {|k| [2] + k.call([3]) } #=> [1, 3] callcc では callcc がリターンしてから実行終了するまでの継続 k が取り出せます。k.call([3]) で継続が呼ばれると、いきなり「callcc が [3] を返した瞬間」に実行が飛びます。つまりこんな感じ。 p [1] + [3] あとは自明ですね。"[2] +" のあたりは無視されます。 部分継続 shift という操作は、現在から reset まで、継続の一部だけを取り出します。この継続の一部を部分継続といいます。例題。 p [1] + reset { [2] + shift {|k| [3] +
pokapoka.info 2019 Copyright. All Rights Reserved. The Sponsored Listings displayed above are served automatically by a third party. Neither the service provider nor the domain owner maintain any relationship with the advertisers. In case of trademark issues please contact the domain owner directly (contact information can be found in whois). Privacy Policy
この記事では、BBIQ光の基本情報や通信速度の実測値、実際にBBIQを利用している方の評判などを詳しく解説していきます。 「BBIQ光の通信速度は速いの?」「料金はいくら?」「実際の利用者の評判は?」など気になる方は多いですよね。 BBIQ光は九州電力のグループ会社である「株式会社QTnet」が提供している九州地方限定で利用できる光回線サービスです。現在利用している方の口コミでは、通信速度が速くて快適・割引サービスが豊富との嬉しい声が多く挙がっていますよ。 BBIQ光の申し込み窓口は少ないものの、公式の他に代理店からも申し込みが可能です。特におすすめの申し込み窓口が『NEXT』です。最短1ヶ月で最大30,000円のキャッシュバックが受け取れるので、よりお得にBBIQ光に契約したい方はぜひNEXTからの申し込みを検討してみてくださいね。 その他にもお得なキャンペーン情報も詳しく解説します。B
Twitter4Jとは? Twitter4J は Twitter API の Java ラッパです。 Twitter4J を使うと JSON や HTTP に詳しくなくても容易に Twitter とインタラクトするアプリケーションを書くことが出来ます。Twitter4J は Twitter 非公式のライブラリです。 ✔ 100% Pure Java - works on any Java Platform version 5 or later ✔ Android やGoogle App Engine上でも動作します ✔ 依存なし : 追加の jar ファイルなどは必要ありません ✔ OAuth に対応 ✔ デフォルトで gzip をサポートするため高速 ✔ Twitter API 1.1に完全対応 システム要件 OS: Java をサポートする Windows または Unix 系 OS
Not your computer? Use a private browsing window to sign in. Learn more about using Guest mode
This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.
これもつぶやきネタであるが、表題のデモが流れてきたので早速試すことにした。 元ネタはここ、「openframework中のOpenCL100万パーティクルの実装例」 ほんまかいなということで、早速ダウンロード。 1)OpenFrameworks 実に簡単だった。OSのポータビリティも維持しながらいろいろな資源をまとめ上げるのは大変と思うが、Processingの影響を相当受けているプロジェクトということもあって、シンプルこの上ない。学校方面では結構使われている雰囲気がするフレームワークだが、小さな実験には最適な感じ。IDE向けC++版Processingちゅーとこか。 ここから落とせる。 OSX版を選んで、ダウンロード。展開してお好きなディレクトリに。10.6用の注意書きは読んでください。 2)OpenFrameworks用 OpenCLのaddon(ofxOpenCL)のダウンロード O
小学生向けのマイコンボードはどれがいいだろう? 有名なマイコンボードは、 Arduino Raspberry Pi 辺り。でも小学生にはちょっと難しいか。。 IchigoJam CyberPi Strawbees micro:bit 辺りもよさそう。いろいろあってわからん。 サーバーで作成した Rails アプリケーションを動かす。 Passenger をインストールします gem install passenger passenger-install-apache2-module 2つ目の実行で以下のものが不足していると表示するされたのでインストールします。 sudo yum install curl-devel httpd-devel apr-devel apr-util-devel *apr-devel, apr-util-devel はhttpd-devel と一緒に入りました。
Sorry! This site is experiencing technical difficulties.Try waiting a few minutes and reloading. (Can't contact the database server: Unknown MySQL server host 'mysql5.sourceforge.jp' (111) (mysql5.sourceforge.jp)) You can try searching via Google in the meantime. Note that their indexes of our content may be out of date.
何週間か前から mac osx 10.6.4 の macports 1.9.1 で sbcl 1.0.43 への upgrade やら install やらがうまくいかない、 という現象が発生していました。 https://trac.macports.org/search?q=sbcl とかで見ると いろいろ情報が出ているのですが、 自分の場合は以下のようにしてインストールできるようになりました。 port install teTex する。 https://trac.macports.org/ticket/26762 とかに報告があるとおり、 apt-get install tetex-bin しようとして失敗するので、 あらかじめいれておきます。 ですが、失敗します。 あわてずさわがずもういっかい port install teTex すると入ります。 sb-posixのテストが通るよ
VBAを使えば可能だと思います。 [Alt+F11]でVisual Basei Editorを起動し、 [ThisWorkbook]の中にでも以下のコードをコピペして [標準]ツールバーの中にある、右向き△ボタン([Sub/ユーザーフォームの実行])を押します。 Sub 名前定義一括削除() Dim objName As Name For Each objName In ActiveWorkbook.Names objName.Delete Next objName End Sub なお、VBAを実行して変更した分は「元に戻す」機能がききませんので あらかじめファイルのバックアップをとっておくとよいでしょう。 成功したら、上のコードはDeleteで消去してください。
あるいはガラパゴスという名の緩やかな死 MacBookのバックライトが死んだので研究室で余ってたMacBookProを借りてきた。 17インチは殺人的な重さなのでMBAほしい。で、どうせ買い換えるので作業ログを残す。 かなり自己満足な設定なので汎用性はない。参考までに。 環境設定 ExposeとSpaces Spacesを有効化 3x3 Exposeの画面左下にSpacesを配置(右下は画面サイズ変更時にグラブすると誤ヒットする) 画面遷移のメタキーはCtrl Dock 画面上の位置 左 アイコンサイズは小さめ Dockを自動的に隠す、にチェック いらない子を右クリック → オプション → メニューから取り除く Finder, iTunes, 環境設定以外は消す ターミナルとアクティビティモニタを登録 アクティビティモニタのみ「ログイン時に起動」に設定。 キーボード周り 環境設定 - キー
Macショートカット 出典: まとめうぃき 移動: ナビゲーション, 検索 "http://matome.replore.com/index.php?title=Mac%E3%82%B7%E3%83%A7%E3%83%BC%E3%83%88%E3%82%AB%E3%83%83%E3%83%88" より作成 表示 本文 ノート ソースを表示 履歴 個人用ツール ログイン ナビゲーション メインページ コミュニティ・ポータル 最近の出来事 最近更新したページ ヘルプ 検索 ショートカット Macショートカット Winショートカット エディター Emacsまとめ Emacs Lispまとめ Vimまとめ TextMateまとめ ブラウザ Firefoxまとめ vimperatorまとめ Unix関連 Unixコマンドまとめ screenまとめ zshまとめ プログラミング関連 C++まとめ C#
Twitter4JをいじっているのだがJavaで ConfigurationBuilder confbuilder = new ConfigurationBuilder(); confbuilder.setOAuthConsumerKey(CONSUMERKEY); confbuilder.setOAuthConsumerSecret(CONSMERSECRET); TwitterFactory twitterfactory = new TwitterFactory(confbuilder.build()); twitter = twitterfactory.getOAuthAuthorizedInstance( new AccessToken(ACCESSTOKEN,ACCESSSECRET)); となっているところをClojureでどう書けばいいのか分からず数日停止。 (def con
Twitter4J Twitter4Jは、Twitterへアクセスする為のJavaのライブラリー。 Twitterへアクセスする為の公式なTwitter APIはHTTPで呼び出すので、それを理解していればHTTPクライアントを作るだけでアクセスできるようだが、その部分をTwitter4Jがライブラリー化してくれている。 したがって、Twitter4Jのクラス・メソッドを使用してTwitterにアクセスできる。 インストール Twitter4Jのページの「ダウンロード」からzipファイル名をクリックして、ダウンロードする。(2010-09-08時点でtwitter4j-2.1.3.zip) 適当な場所に展開する。(1つのディレクトリーにまとまっていないので、デスクトップ上に展開すると10個くらいのファイル・ディレクトリーが出来るので注意) EclipseでTwitter用のプロジェクトを新
2020-03-31 09:37:20 Eric LippertのBlog “Fabulous Adventures In Coding” に、非同期構文に関する連載記事が投稿されていたので、少しずつ訳してみる。 継続渡しスタイル(Continuation Passing Style)再訪 パート1 パート2: 制御フローは大雑把に パート3: コルーチンは慎重に パート4: 自身をひっくり返す パート5: CPSと非同期 C# 5の非同期 パート1 パート2: awaitはどこから? パート3: 複合 パート4: 魔法じゃない パート5: タスク大杉 パート6: asyncはいずこへ? パート7: 例外 パート8: もっと例外
ジェネリクスでは、「型」を変数にした「型変数」というものを取り扱う。型変数で何が嬉しいかというと、メジャーな例ではコレクションAPIが挙げられる。java.util.Listとかjava.util.Mapとかのデータを格納するタイプのユーティリティクラスのことだ。 2004年にJavaのバージョンが5.0となるまでは、Javaにはジェネリクスの機能はなかった。なので、Listにデータを格納し、取得する場合は List list = new ArrayList(); list.add("hello!"); String str = (String) list.get(0); といったソースコードになる。 add()の引数はObject型で宣言されており、どんな参照型でもadd()することができた。 get()の戻り値もObject型で宣言されておりキャストが必要だった。このキャストはプログラ
Macbook Pro 15inchを買いました。 当日にインストールしたアプリケーション/ツールのメモ。 エディタ類 MacVIm(KaoriYa) Espresso(主にHTML用) CSSEdit(リアルタイムにプレビューで確認しながらCSSをかける) Sencha Animator(CSS3のアニメーションをFlashのタイムラインみたいな感じで作れる - 試用中) Eclipse Adobe PhotoshopCS3 illustratorCS3 AfterEffectsCS3 AdobeAIR Kuler(Air製カラーサンプル) ブラウザ Chrome Chromium Firefox その他 Quicksilver Evernote Dropbox TotalFinder(Finderにタブを追加する) Visor(ターミナル) Onyx(Macメンテ、隠し設定有効化) D
教科書: Clojure in Action 作者: Amit Rathore出版社/メーカー: Manning Pubns Co発売日: 2011/11/28メディア: ペーパーバック クリック: 24回この商品を含むブログ (2件) を見る マクロ ? Clojureランタイムの動き ソースコード ------> [Read] -------> [Evaluate]まず、リーダーがソースコードをClojureのデータ構造に変換してから、評価されてプログラムが実行される。 マクロは評価される前のデータ構造上で振る舞いを定義することができる関数で、評価される前にプログラムからコードを操作することができる。 ソースコード ------> [Read] --- <macro> ---> [Evaluate] これができると、Clojureに新しい機能を追加することができたりするということ。 u
People come to Clojure from a variety of backgrounds. The purpose of this book is to help everyone get the most out of the Clojure language. It is not meant as a replacement for the documentation, found at the Clojure site. Please do not copy material from there to here! Feel free to post your own code, written in the Clojure language, here. However, please do not post excerpts, patches or other m
PCL -> Clojure Tags: clojure and tutorial My current leisure-time project is porting the examples from Peter Seibel's excellent Practical Common Lisp (PCL) to Clojure. I think Clojure is interesting for three reasons: Clojure is Lisp, but minus historical baggage. Clojure gives full access to the JVM and Java libraries. Clojure groks concurrency and state. My ground rules are simple: I am not goin
Compojure is an open source web framework for the Clojure programming language. It emphasizes a thin I/O layer and a functional approach to web development.
Clojure Web Development with Ring March 27 2010 This post provides an introduction Clojure web development with Ring, a Clojure web application library. If you are just getting started with Clojure web development or if you are interested in the new Ring 0.2 release, this is a great place to start. Before getting started, ensure that you have Leiningen 1.1.0 installed. We will be using Leiningen v
CompojureとLeiningenを使って、Webアプリを作るためのメモ。 Compojure Clojure用のWebフレームワーク。バージョン0.4.0からサーバ-Compojure間のインターフェイス/ミドルウェアの部分はRingというライブラリに分けられています。 Compojure Leiningen 使用するライブラリの依存関係を管理したり、プロジェクトのビルドをしてくれるツール。 Leiningen プロジェクトを作る Leiningenでプロジェクトを作ります。 % lein new helloweb Created new project in: helloweb % cd helloweb % tree . |-- README |-- project.clj |-- src | `-- helloweb | `-- core.clj `-- test `-- he
URLの扱い ルートの定義 ;; (http-method route-path bindings & body) (GET "/" [] "index page") これは、ローカルで起動した時にはhttp://locahost:8080/にアクセスした際に"index page"をステータス200で返します。 で、ルートのパターンにはパラメータを含むことができます。 (GET "/page/:name" [name] (str "You reached page/" name)) リクエストされたURIが"/page/**"にマッチすると、"**"の値が引数としてnameに格納されます。この場合、http://localhost:8080/page/testにアクセスすれば"You reached page/test"と表示されるようになります。 ルートパスの部分にはワイルドカード、正
<noscript> <div>JavaScript is disabled on your browser.</div> </noscript> <h2>Frame Alert</h2> <p>This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. Link to <a href="overview-summary.html">Non-frame version</a>.</p>
はじめに この文書は、 Steven Bird, Ewan Klein, Edward Loper 著 萩原 正人、中山 敬広、水野 貴明 訳 『入門 自然言語処理』 O'Reilly Japan, 2010. の第12章「Python による日本語自然言語処理」を、原書 Natural Language Processing with Python と同じ Creative Commons Attribution Noncommercial No Derivative Works 3.0 US License の下で公開するものです。 原書では主に英語を対象とした自然言語処理を取り扱っています。内容や考え方の多くは言語に依存しないものではありますが、単語の分かち書きをしない点や統語構造等の違いから、日本語を対象とする場合、いくつか気をつけなければいけない点があります。日本語を扱う場合にも
テレビを見ていてこれほど感動したことがあっただろうか。 11月5日のカンブリア宮殿の大里総合管理の野老(ところ)社長。 母親の跡をついで40歳で社長になった。 母親に言われて、耕作できなくなった土地を年15000円で草刈や土地の見回りなどして管理する仕事をベースに、不動産業や建築業を手掛ける。 あるとき、切り倒した木をトラックにロープを付けて引っ張っていたところ、通りがかったバイクの高校生がロープに気付かず転倒し死んでしまった。 自分は何をやっているのだろう、なぜ見張りを付けなかったのだろう、経営ばかりに気を取られて大事なことを見失っているのではないかと深く考え込んだ。 それから始めたのが掃除。 トイレ掃除から周辺の掃除まで。 すると気付くことが山ほど出てきたという。 気付いてやらないのは気付かなかったことと同じ、気付いたらすぐやるということに心がけた。 それが仕事であろうとそうでなかろう
javacv http://code.google.com/p/javacv/ JNA (Java Native Access) を使った Java 用 OpenCV パッケージ . ARToolKitPlus, libdc1394 2.x, PGR FlyCapture, FFmpeg への wrapper も含 んでいる.もとの OpenCV の C 用の API だけでなく, C++ 向けのクラス設計 に対応することを目指しているようである. Machine Learning Library (ml.h) については現時点 (2010-01-20) では未対応. バイナリ (javacv.jar) も頒布されているが,自前でソースファイルからコン パイルすることもできる.ソースは src/name/audet/samuel/javacv/*.java src/name/audet/s
このファイルで、我々は、再帰手続き理論の重要な成果の一つであるYコンビ ネータを導出する。手続きに名前を与える必要がない場合があることが知られ ている。たとえば、 ((lambda (x) (+ x 1)) 6) は、それを行なう手続きを名付けることなく1を6に加える。しかし、再帰手続 きはどうだろうか? たとえば、 (define fact (lambda (n) (if (zero? n) 1 (* n (fact (- n 1)))))) は数nの階乗を計算するが、手続きの最終行で自身に再帰できるようにするた めに名前"fact"が必要であるように思える。しかし、我々はそれは必要でない ことを理解し、そのプロセスにおいて、Schemeを使うことに関する多くの勘を やしなうだろう。我々は一ステップずつ進み、各ステップで"fact"をわずかに 変更する。 Step 1. 最初のアイディア
前回のはてな技術勉強会 #1の資料と録画を(ようやく)公開します。 「iPhoneアプリ開発入門編」id:ninjinkun (はてなココアプリ開発者) iPhoneアプリ開発に必要となる知識の入門編です。主な内容は以下のとおりです。 iPhoneアプリ開発の流れ XCode、Interface Builder入門 UIViewの構造説明 簡単なサンプルプロジェクトの作成 iPhoneアプリ開発講座入門編View more presentations from ninjinkun. 位置情報の取説 by id:chris4403 位置情報の取り扱い方について、Geohash、mysqlのgeometry型など、はてなココでの実例をおりまぜつつ解説します。 アジェンダ 自己紹介 はてなココ紹介 位置情報の基本 位置情報を取得する 位置情報を記録する Geohash 位置情報を表示する 自己紹
本稿では,sasanqua_neufのチューリング完全性を証明します.具体的には,チューリングマシンのエミュレータを構成することでチューリング完全性を示します. 概要 sasanqua_neufのテープTをチューリングマシンのテープと「概ね」同一視し,チューリングマシンの状態をCの値によって「概ね」表現します.C言語風にエミュレータの概要を記すと,全体の構造としては int Cq=1; while(Cq != n+1){ switch(Cq){ case 1: //qの添え字が1 switch(T[H]){ //T[H]にσが格納されている case 1: //σの添え字が1 T[H] = [δ_2(q_1,σ_1)]; //T[H]をテープと同一視 H += [δ_3(q_1,σ_1)]; //ただしLeft=-1,Right=+1と見て while(T[H] == 0){getchar
Send More Paramedics λ λ λ Fogus' Thoughts on life, programming, and thinking ❤ c clj erl pl frink fth cl org pure icl qi ❤ Follow me on Twitter... or RSS... Run this blog in mobile 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 2004 2003 2002 On Lisp -> Clojure: ProloG (pt. 1) Jan 15, 2009 some comments ; As always, I will post when the code is “com
I am porting the examples from the macro chapters of Paul Graham's On Lisp (OL) to Clojure. My ground rules are simple: I am not going to port everything, just the code samples that interest me as I re-read On Lisp. Where Paul introduced macro features in a planned progression, I plan to use whatever Clojure feature come to mind. So I may jump straight into more "advanced" topics. Please do not as
topology Algebraic Topology Some information about algebraic topology. Shinshu Topology Seminar Lecture Note on Fiber Bundles (in Japanese) Lecture Note on Fibrations (in Japanese) Lecture Note on Calculus of Functors (in Japanese) Algebraic Topology: A guide to literature (in Japanese) Last updated on Mon Sep 12 11:21:01 +0900 2016
昨日の記事は少し長くなってしまったので別エントリで。 なんでも、YouTubeにiPhoneアプリ開発のチュートリアルに関するお宝情報が満載だとか。 C言語すら知らなかった私が2ヶ月でiPhoneアプリをリリースするまでにやった事。 | Last Day. jp 私も見てみましたが、確かにたくさんあるような気がしますね。 てことで、これからiPhoneアプリを開発してみたい、という人向けにおすすめ出来そうなチュートリアルを紹介してみようと思います。 Hello World関連(約23分)まずは定番の「Hello World」です。 Hello World Beginner Version(5:56)一番簡単なIBの使い方ですね。 Hello World Intermediate(8:04)「Hello world」をUILabelを使って表示させます。 iPhone SDK Tutoria
2022-03-08 ChromebookでのOS更新 kadota Chromebook システム管理 (こんにちは|こんばんは)。情シス(PCおじさん)の kadota です。 弊社では、社員が利用するPCの種類が Windows、Mac、Chromebook の3種類あります。 Chromebook は管理が楽だったり、意外とできることも多かったりで、気に入っています。 そんなPCおじさん想… 2022-02-25 投稿100 本目! これまでの振り返り morishita morishitaです。 このエントリで私の 100 本目の投稿となります。 桁が増えてひと区切りということでこれまでの自分の投稿を振り返りたいと思います。 最初の投稿が 2017/08/14 の「いこレポ はじめました。」でした。 そこから今月まで 55 ヶ月、ということ… #ブログ #ポエム 2022-02-
ウェブデザインでも非常に重要なタイポグラフィを基本から学べるオススメの本を紹介します。 きれいな欧文書体とデザイン 文字の組み方 欧文組版 デザインの教室 市川崑のタイポグラフィ 欧文書体百花事典 きれいな欧文書体とデザイン -名作書体の特色とロゴづくり ポピュラーな書体の基本情報から、それぞれの特徴をふまえた文字組・ロゴ作成を分かりやすく解説しています。装丁がとても美しい本なので、ぜひ手にとって見てください。 『メイキング「きれいな欧文書体とデザイン」』では、そのコンセプトを垣間見ることができます。 目次 欧文書体の基礎 欧文書体を使ったロゴづくり 欧文書体の特色とアレンジ 響き合う書体たち [ad#ad-2] 文字の組み方 -組版/見てわかる新常識
ふと、ビット並列アルゴリズムを使った編集距離を計算するアルゴリズムを書きたくなったので書いてみた。 まず、通常の編集距離であるLevenshtein Distanceを求めるアルゴリズムは以下のように書ける int levenshteinDistance(String A, String B) { int m = A.length(); int n = B.length(); int dp[] = new int[n + 1]; int next[] = new int[n + 1]; for (int i = 0; i <= n; i++) dp[i] = i; for (int i = 1; i <= m; i++) { next[0] = i; for (int j = 1; j <= n; j++) { if (A.charAt(i - 1) == B.charAt(j - 1))
[pukiwiki] Pythonで名寄せするプログラムを書いてみました。 (まだ年賀状のリスト作りには早いですけれども。) 参考文献 -[[【PDF】 圧縮を用いた類似度判定のための計算実験:http://www.tani.cs.chs.nihon-u.ac.jp/g-2008/shu/tyukan_shu.pdf]] 文字列類似度の判定には、こちらの式を、ほぼ そのまま使用しています。 [/pukiwiki] [pukiwiki] zlib(gzip)による圧縮を利用しているので、たぶん [[Nグラム>ググる:Nグラム]]による比較に近い結果が得られるんじゃないかという期待から、上記のアルゴリズムを使用しました。 —- 具体的には、表記にブレのある住所録ファイルsample.csvについて、似た文字列同士が隣り合わせになるように並べなおします。 (むしろ、クラスタリングに近いかも) 動
紙の書類をもりもりデータ化する環境について、自分の中で何度目かのブームがやってきた。いろいろ調べた結果をご報告。 裁断機で本をばらしてドキュメントスキャナでデータ化しよう 書類や本をスキャンして整理しよう、そう考えたことがある人は多いと思う。とはいえ、本を1ページずつめくりながらスキャナにかける手間を考えるとちょっと、とも思うかもしれない。でも今は、そのへんはかなり省力化できるようになっている。 裁断機で本をバラバラにした上で、複数枚の両面スキャンとOCR(画像として取り込んだ文字のテキストデータ化)を自動でできる機器を紹介する記事、を紹介するまとめ記事がこれ。 もう紙の本にはサヨナラ? 溜まった本はバラバラにしてPDF化 - はてなブックマークニュース http://b.hatena.ne.jp/articles/201001/683 実際の手順や作業はこちらが詳しい。 橋本商会 » s
こんにちは、id:stanakaです。昨日開催された、はてな技術勉強会 #2の資料&動画を公開します。今回は、翌日に公開できました。今後もこのスピード感を維持したいものです。 「TitaniumによるiPhone/Androidアプリ開発」 id:r_kurain いま最も注目をあつめる、スマートフォンアプリ開発環境であるTitaniumについて解説します。 インストールなどの導入から、簡単な Twitter クライアントの作成までの一通りの開発について実際に動く様子を確認しながら説明していく予定です。 TitaniumによるiPhone/Androidアプリ開発View more presentations from kurain. サンプルコード: https://github.com/kurain/TitaniumMobileSample 「iPhoneアプリ開発講座Web連携アプリ
統計的自然言語処理エンジンStaKK を開発しました。nokuno’s stakk at master - GitHub 以下、READMEからの引用です。 現在の機能 かな漢字変換 予測変換 または サジェスト スペル訂正 形態素解析 HTTPによるAPIサーバ Trieの直接操作現在は、StaKK は辞書として Mozc (Google日本語入力のOSS版)のデータを使っています。 リバースモードについてStaKK はノーマルモードとリバースモードの2つのモードを持っています。 ノーマルモードでは、かなを入力し、単語(主に漢字)を出力します。 リバースモードでは、単語を入力し、読みや品詞を出力します。これらの2つのモードの応用例をまとめると、次の表のようになります。 機能 ノーマルモード リバースモード Convert かな漢字変換 形態素解析 Predict 予測変換 検索ワードのサ
Make Tokyo Meeting 06 東京工業大学@大岡山。 パンフには190以上のブースが載っていたと思います。 全てのブースを取る時間は無くて、特に体育館は撮れないブースが多かった。 次回作るならもっとましなビデオにできると思います。 映像のデータ容量は40〜50MBくらいあります。 CloudFrontなのでデータの配信はそんなに遅くは無いと思います。 22 Nov 2010 前のビデオで、ロータリーエンコーダーの回転をArduinoで読み取ってPCにシリアルで送りました。 このビデオではその値を使ってPCの中のビデオをコントロールします。 PC側はProcessingを使います。 ビデオは先に連番画像ファイルとして書き出しておき、Processingでその画像ファイル表示します。 回転方向が時計回りなら、画像ファイルの番号をカウントアップし、半時計周りならカウ
This library is deprecated. You’re free to fork it as per the CPL, but don’t use it for production. For general-purpose parsing in Clojure, use an alternative, living library such as: clojure.spec by Rich Hickey et al. Instaparse by Mark Engelberg pex by Ghadi Shayban sequex by Jonathan Claggett squarepeg by Eric Normand Long ago, while Clojure was still young, I wrote FnParse as an exercise in mo
The latest reviewed version was checked on 14 November 2024. There are template/file changes awaiting review. Write Yourself a Scheme in 48 Hours is a featured book on Wikibooks because it contains substantial content, it is well-formatted, and the Wikibooks community has decided to feature it on the main page or in other places. Please continue to improve it and thanks for the great work so far!
Haskell HASKELL Wiki の Write Yourself a Scheme in 48 Hours 1.Overview 2.First Steps: Compiling and running 3.Parsing [言語を作るぞ その1] 48時間でSchemeを作っちゃおうって ・・・sigh かつて、10分でやろうってのを、とてもじゃない、10分じゃできなかった例がある。さてこいつはどのくらいかかるんだろう。 そもそも、Schemeはやったことがない。 無謀といえば無謀なんだけど、「parser」の一言につられ、かじり始める。 さて、どうなることやら 1.Overview ウェブ上のHaskellの記事は、ほとんどが言語マニュアル的なアプローチをしている。 それらは、会話環境で、シンタックス、言語構造や、ちょっとした関数を説明するだけで、関数やプログラ
法面(のりめん)の、「のり」になぜ「法」の字を当てたかはよく分からないのです。本来は「矩(のり)(かね)」の字が適当なんではないかと思うのですが・・・。 「直線的に a 進んだ位置から a に対して直角に b 進む」、このbのことをaに対する「矩」(かね)(のり)といいます。 吾十有余而志乎学(われじゅうゆうごにしてがくをこころざし) に続く有名な論語でも ・・・・・ 七十而従心所欲、不踰矩(七十にして心の欲するところに従い矩(のり)を超えず) ---でも「のり」と読んでいます。 悟りを得て、心の欲するままに行動してしまっても基本路線から大きく外れることは無くなった・・・と、いうことのようです。 大工さんが直角を測る時に使う差矩(さしがね)にも「矩」の字が使われます。 ま、決まっているものに異論を唱えても仕方が無いので「法(のり)」について考えましょう。
サイトトップ ノート マイニング ├マイニング ├バスケット解析 ├バスケット解析をRで ├図書貸出をRで └ テキストマイニング ├テキストマイニングTM ├TMとシソーラス ├PubMedをTM ├TMとMeSH ├TMとNLTK ├テキストマイニングとtagger ├医薬品添付文書DB ├論文の処理1 └ 分子進化学 ├分子進化学 └ Pythonと論文アクセス ├Pythonを使ってみる ├PythonでPubMed ├Pythonで...続き └ CUDA ├GPU ├ProgrammingGuide ├Selandメモ ├数値積分 └ ACS、PHPからLDAP ├ACS導入 ├新規ホスト移行 ├再度やり直し ├OpenLDAP導入 └ Linuxでビデオ ├Linuxでビデオデータを作る ├AVIフ
Clojure | 18:34 | Clojureのマルチメソッドを使っていると、自分で定義した型でディスパッチしたいと思うことがある。しかしdefstructを使ってもうまくいかない。 user> (defstruct Foo :a :b) #'user/Foo user> (struct Foo 1 2) {:a 1, :b 2} user> (class *1) clojure.lang.PersistentStructMap user> (defmulti my-println class) #'user/my-println user> (defmethod my-println Foo [foo] (println "foo")) # user> (my-println (struct Foo 1 2)) ;=> error ; Evaluation aborted. defs
ラムダ計算は, 多くのプログラミング言語, とくに関数型言語の原形になっています. ラムダ計算について理解しておくことは, 多くのプログラミング言語の習得に役立つでしょう. ラムダ計算はチューリング完全で, 計算能力としてはふつうのプログラミング言語と同じです. ラムダ計算で計算を書く訓練をしておくことは, 任意の計算を関数のみを使って(他の制御構文を用いずに)書くときに役立ちます. ふつうに書いたら煩雑な処理を, 関数型言語のやり方で書くとすっきりすることが多々あり, コードを自由自在に書くためには必須の考え方と言えるでしょう. 項 ラムダ計算の式を項(term)と言います. 項は変数, 抽象, 適用のいずれかです. 変数 変数(variable)はふつう1文字で書きます. 変数には関数内の束縛変数(bound variable)か自由変数(free variable)かという区別があり
2010年10月02日05:00 カテゴリMathLightweight Languages javascript - λ表記をDSLに 計算論 計算可能性とラムダ計算 高橋正子 クロージャーがある言語には、λ演算がすでに含まれています。 が、たいていの場合、その言語の流儀で書かねばなりません。たとえばこんな風に。 var Z = function(f) { return (function(g) { return function(m) { return f(g(g))(m); }; })(function(g) { return function(m) { return f(g(g))(m); }; }) }; ふつーに Z := λf. (λx. f (λy. x x y)) (λx. f (λy. x x y)) と書けたらよいと思いませんか? λscript(笑) できるようにし
<BODY text="#996600" bgcolor="#ffcc66" link="#0000FF" vlink="#CC00CC" alink="#CC0000"> <DIV style="top : 69px;left : 416px; position : absolute; z-index : 4; width : 224px; height : 53px; " id="Layer9"><IMG src="logo17.gif" width="259" height="49" border="0" alt="北和夫作品集"></DIV> <DIV style="top : 134px;left : 465px; position : absolute; z-index : 3; " id="Layer5"> <P>ようこそ鉛筆絵画の部屋へ</P> </DIV> <DIV s
情報環境技術研究室の永井です。 今日はDNSのCNAMEの間違った使い方のお話です。 その間違った使い方がうちのサービスで使用されているかもっ!? DNSって? Domain Name System(ドメイン ネーム システム、DNS)はインターネットを使った階層的な分散型データベースシステムである。 1983年に情報科学研究所 (ISI) のポール・モカペトリスとジョン・ポステルにより開発された。 Wikipediaより一部抜粋 http://ja.wikipedia.org/wiki/Domain_Name_System 例えば、ライブドアのポータルサイトといえば「http://www.livedoor.com/」ですが、実際には「http://125.6.172.15/」というIPアドレスがインターネット上の住所になります。でも、こんな数字の羅列を一々覚えていられないので、DNSとい
NEWS: (2010/11/15) 東京大学・中央大学の共同研究により、世界で初めて情報をエネルギーへ変換することに成功したそうです。 これによって、このサイトに書かれていたことが単なるSFではなくなりました。 >> 世界初「情報をエネルギーへ変換することに成功」 -- リンク先、中央大学ニュースからの引用: 19世紀から150年もの間議論されてきた、「マックスウェルの悪魔」と呼ばれる科学史上の重要な概念があります。今回、サブミクロンスケールでの極めて精密な加工技術と、リアルタイムでの正確な制御システムを組み合わせ、これまで理論上の存在であった「マックスウェルの悪魔」を、世界で初めて実験により実現しました。これにより、観察から得た「情報」を用いて「エネルギー」を取り出すこと、すなわち「情報をエネルギーへ変換できること」を実証しました。 >> 情報をエネルギーに変換することに成功!(PDF
前エントリ clojure.lib コーディング規約・訳 から1週間以上がすぎました。 Google Groupsでのディスカッションで合意されたコーディング規約をStuがまとめてアップしてくれました。 Clojure Library Coding Standards | Clojure | Assembla さっそく和訳してみました。 間違いがあればご指摘ねがいます。 ⇒ @manjilab 【和訳ここから】 免責事項: 規則は破られるためにあります。この規約に倣うも絶対のものとして扱わないこと。 規約: 名前と使用法はよく考えて書くこと。RichはJavaにおける既存のコードとの互換性の維持を尊重しています。練習用のコードであればいつまでもいじってられますが、ひとたび名前と使用法が公開されればそうはいきません。(具体的な実装に興味がなく名前と用法だけを見ている利用者が多いですから) コ
オフィスアワー (2023年秋学期) 場所:多元数理科学研究棟 405号室 日時:水曜日 12時〜13時 セミナー 少人数クラス 卒業研究 2023年度 2023年度秋・数学展望II Perspectives in Mathematical Sciences IV/II (Fall 2023) 2023年度春・数理解析・計算機数学III 2022年度 2022年度秋・Affeldt氏集中講 義 2021年度 2021年度秋・数理解析・計算機数学IV 2021年度前期・九州大学集中講義 2020年度 2020年度後期・数理解析・計算機数学II 2020年度後期・数学展望II 2019年度 2019年度前期・数理解析・計算機数学II 2019年度前期・微分積分学I 2018年度 2018年度後期・数理解析・計算機数学II Perspectives in Mathematical Science
最近ローソンでお菓子をたくさん買った田中です。 近頃読んで面白かった論文を紹介したいと思います。 A Play on Regular Expression 今年のICFPでFunctional Pearlとして発表されたものです。ICFP(International Conference on Functional Programming)というのは、関数プログラミングに関する国際学会で、Functional Pearlというのは、エレガントでためになる、関数プログラミングのテクニック集です。 この論文ではまず、正規表現マッチャを関数型言語(Haskell)でいかにエレガントに記述できるかが示されます。それから、エレガントさを保ったままの線形時間実装へ改良し、その実装がC++によるプロフェッショナルな実装(具体的にはGoogle re2)に匹敵するパフォーマンスを示すことが示されます。さら
Emacs環境をUTF-8化してからしばらく経ちますが、Migemoの辞書は未だにEUC-JPであるのでこの際UTF-8化しておこうと思ったのでメモしておきます。 C/Migemoのインストール 今回はUTF-8にも標準で対応しているC/Migemoの1.3開発版を使用します。http://www.kaoriya.net/dist/var/cmigemo-1.3c.tar.bz2 1.2まではUTF-8に対応していません。上記のファイルをダウンロードしてきて、解凍。 $ tar xvf cmigemo-1.3c.tar.bz2 マニュアルはきちんと読みましょう。基本です。日本語ならdoc/README_j.txtにあります。 今回はosxにインストールするので、マニュアルに従って作業します。 $ ./configure && make osx && make osx-dict 最後のosx
kaoriya 対応版 vim を導入するためのステップとして導入した。 尚、以下の手順はローカルの ~/local にインストールすることを目的にしている。 フォルダが事前に用意されてない場合は以下のコマンドが必要 $ mkdir -p ~/local/src 前提環境 Mac OSX 10.6.1 MacPorts 導入済み SHELL=bash 導入手順 まず、MacPorts で subversion と nkf、wget | curl を導入する。 " 導入されているか確認する $ port installed subversion nkf curl " 入ってないアプリはインストール(下は nkf と curl をインストールする場合) $ sudo port install nkf curl C/Migemo をインストールする $ cd ~/local/src " C/Mi
前に設定したはずなのに、またはまってしまったのでメモを残しておくことにしました><C/MigemoをインストールC/Migemoからソースをダウンロードして解凍 $ bzip2 -dc cmigemo-1.3c.tar.bz2 | tar xf - コンパイル $ ./configure $ make gcc (因に私の環境(ubuntu8)のデフォルトの状態だとgccのライブラリが不足していて、コンパイル時にエラーがでてたので注意)辞書 $ make gcc-dict (./dict/euc-jp.dにeuc-jpの辞書ファイルが作成されます) $ dict/make utf-8 (utf-8.dにeuc-jpからutf-8にエンコードされた辞書ファイルが作成されます) # make gcc-install (管理者権限で) /usr/local/share/migemo/utf-8に辞
2010/05/0212:46 其の3.SE社内業務支援というミッション(1.新人研修支援) こんにちは。KITKATです。 掲載が遅れました。 今年のゴールデンウィークはとうとう仕事になってしまいました。 落ち着いたところで代休をしっかりとらなければ・・と思っています。 本日は新LMP・BPRプロジェクトのお話は中断させていただいて、本年度もまた社内業務支援としてフルではありませんが、新人研修の一部を支援してほしい旨上司からお話があり、行うことにしました。 本日はこの社内業務支援のミッションのお話をつぶやきます。 (Photo:S-hoshino.comさんのフリー素材を掲載させていただきました) 1.新人教育研修支援について 前年度新人研修を急に任せられて、本年度後輩に引き継ぐことになり、やれやれと思っていた矢先に研修資料が研修開始時期に間に合わないということで、序盤戦私が全体概要のと
今回はJ2SE (Java 2 Platform Standard Edition) 1.4の新機能Java Web Startを取り上げます。Java Web Startは、JavaアプリケーションをWebブラウザから起動する技術であり、開発者とユーザの両方に利益をもたらす可能性を持っています。 さまざまなWebサイトを見ていると、マルチメディアデータを提供するのに2つの方法があることに気付きます(図1参照)。一つはプラグイン方式で、Webページに埋め込んで表示するものです。この場合、HTML文書中でOBJECTタグやEMBEDタグを使用してデータを指定する方法が採られます。もう一つの方法はヘルパーアプリケーションを利用する方式で、Aタグのリンク先にマルチメディアデータそのものを指定します。この方法を使うとヘルパーアプリケーションとして登録されているプログラム、QuickTime Pla
\閉鎖予定のサイトも売れるかも?/ アクセスがないサイトもコンテンツ価値で売れる場合も… ドメインの有効期限を更新してサイト売却にトライしてみましょう
ローカルファイルに触れるアプレットは、署名が無いとダメ。権限が無いって怒られる。でも開発中に本物の署名ができるケースもなかなか無い。 そこで、オレオレ証明書による署名をした。今回、Windowsのコマンドプロンプトからやってみた。他のOSでも大差ないと思う。 鍵ペアの生成 C:\>c:\jdk1.5.0_12\bin\keytool -genkey -keyalg rsa -alias testこれで「test」っていう名前(エイリアス)の鍵ペアの生成が始まる。あとは画面に従って、パスワードやら姓名などの情報を入れる。テスト用のオレオレ証明書なので、パスワード以外の情報は適当でいい。パスワードはあとで署名するときに使うので覚えておくこと。 署名する C:\>c:\jdk1.5.0_12\bin\jarsigner c:\dev\applet.jar testjarsignerに、署名したい
自動ダウンロード・実行システム さて、今まで見たように、ブラウザと対戦ウィンドウを統合し、それがちゃんと Struts で書かれたサーバ・プログラムと協調するまでは出来た。しかし、「リッチクライアント」が「リッチクライアント」であるメリットとには、もう一つ重要な要素があるのである。それは、 自動ダウンロード機能 なのである。つまり、クライアント・プログラムに修正があっても、「ftp で取っていってね!」とかページに書いて、ユーザにアーカイブを取得させてインストールさせて...なんてことをしなくても、ごく簡単に「最新バージョン」を取得し、実行しちゃうというのが、「リッチクライアント」の導入のキモなのである。 そのための技術として、JDK1.4 から追加された JWS(Java Web Start) があるし、Eclipse RCP(Rich Client Platform) でもこれが可能に
Emacs Advent Calendar jp: 2010の8日目の記事です. 7日目はid:moozさん(そうだ Info 読もう - mooz deceives you)でした.明日はid:rubikitchさんです. この記事では,anythingをより身近に使えるようになるanything-with-everything.elというのを書いたので,その紹介をします. yaotti/anything-with-everything.el · GitHub インターフェースを少し変更 @yaotti anything-with-everything.elおもろい。一点だけ。defun-anything-function-with-scriptの第1引数は関数名なのに文字列を取っているのが気持ち悪いです。ふつうにシンボルでよいかと。 2010-12-09 00:09:52 via tw
เว็บไซต์สล็อต betflix6789 คาสิโนออนไลน์ เราคือผู้ให้บริการคาสิโนออนไลน์รายใหญ่ที่สุด UFABET รวบรวมเว็บไซต์ทั้งไทยและต่างประเทศไว้ในที่เดียว BETFLIK.BET แต่ละเว็บไซต์ได้รับการตรวจสอบโดยระบบการจัดอันดับมาตรฐาน ระบบที่เข้าใจง่าย ใช้ได้กับผู้ชายทุกคน และทุกวัย รองรับทุกเกมคอมพิวเตอร์ ด้วยระบบมือถือทั้งหมด มีเกมที่มีเอกลักษณ์มากมาย เช่น SAgame, SAgaming, Sexy Baccarat, Pretty Gaming, AG Gaming, PGSLOT
今の会社に移って半年経ちました。めでたく試用期間終了です。といっても別に試用期間中に密かに首を切られるような事をしたとか、逆に試用期間が終わったからと言ってこれで定年までのうのうと働ける、という訳ではありません。未来は全く判りません。まあとにかく、一つ区切りがやってきました。 金融を知らないQuantsの仕事 私の職業の肩書きには Quantitatitatitatitative という単語がくっついて超カッコよさそう。普通は Quant というと、金融工学や統計数理に詳しい夜もブイブイいわしている超イケメン20代を想像しますが、私は金融とか全然知らないアラフォーお父さんです。それでも Quant です。お願いですから、私に何を買ったらいいかとか、聞かないでください。金融商品とか買った事ないし。というか、逆に教えて欲しいです。 私のチームは、本当の Quant さん達が開発した、金融派生商
ここです Code Aquarium (>>=) :: Monad m => m a -> (a -> m b) -> m b flip (>>=) :: Monad m => (a -> m b) -> m a -> m b (=<<) :: Monad m => (a -> m b) -> m a -> m b ap :: Monad m => m (a -> b) -> m a -> m b (<*>) :: Applicative f => f (a -> b) -> f a -> f b flip (<**>):: Applicative f => f (a -> b) -> f a -> f b (<**>) :: Applicative f => f a -> f (a -> b) -> f b (<$>) :: Functor f => (a -> b) -> f a ->
Compojureは、Clojure用の小規模なWebアプリ・フレームワークです。 Compojureを使うには、project.cljを次のように変更します。 (defproject helloweb "1.0.0-SNAPSHOT" :description "FIXME: write" :dependencies [[org.clojure/clojure "1.2.0"] [org.clojure/clojure-contrib "1.2.0"] [compojure "0.5.3"] ;Webアプリ・フレームワーク [ring/ring "0.3.1"]] ;RingはWebサーバを抽象化した層です。 ;CompojureはRingをベースにしています。 :main helloweb.core; 実行可能JARを作る場合に指定します。 ; helloweb.core/-main
OracleのSQLコマンド 2006.08.01 Oracle よく使うOracle8iのコマンドをメモ。Oracle10iでもほぼ同じ。 Oracle SQL*Plus編 Oracle 管理編 Oracle SQL編 Oracle エラー編 【SQL*Plus編】 ■シェルからSQL/PLUSを使う $ sqlplus /nolog ■ログインする いくつかの方法がある。 conn sys as sysdba conn / as sysdba conn sys/change_on_install conn system/manager conn scott/tiger conn scott データベース管理者ユーザー SYSユーザー:管理に重要なデータ・ディクショナリを所有している。 SYSTEMユーザー:管理情報が含まれる表やビューを所有している。 セキュリティの理由からSYSユーザ
When you're creating a paper prototype, it saves time to have controls and buttons that you can cut out and re-use, without needing to draw your own. Here's a set that you can download and use for free. — David Travis, Dec 6, 2010. We use this collection of controls, buttons and icons when we’re creating paper prototypes. The widgets can either serve as design inspiration or you can literally cut
第7回(2002.07.31) PERT(Program Evaluation and Review Technique)分析 ◆PERTとCPM プロジェクトにおいては,各作業(アクティビティ)の所要期間がぴったりと一つに決まることは珍しい.例えば,Webの設計をするのに過去の経験から考えると5日かかる可能性が最も大きいが,うまく行けば4日で終わるだろう.でも,下手をすると7日かかるかもしれないといった感じで考える方が現実的である.ところが,悩ましいことにCPM(Critical Path Method)でスケジュールを作る際にはそのような曖昧さがあるとスケジュールができない.そこで「エイヤー」で決めるという話になる. このようなときに使える見積もり手法がPERT(Program Evaluation and Review Technique)分析である. ◆PERTとは よくPERT/
当サイトへのリンクはご自由に。ただ、強制は出来ませんが、一番頭のページ(index.html)にもリンクをお願いしたく思ったり思わなかったり。
コンビネータ ラムダ計算の親戚みたいな理論として、コンビネータ理論がありますが このページの趣旨は、理論的なことはさておき コンビネータを使って遊んでみようというものです。 例えばコンビネータを使うと 「引数の順序を入れ替えたり、入れ替えて適用する」 といったことができます。 なお、ここではλ式について少し知識があることを仮定しています。 最初にコンビネータとは何かというと 「自由変数を含まないλ式」、と定義されています。 自由変数とはλ式において束縛されていない変数のことで letによる関数定義をλ式の定義とみなすと 引数が束縛変数、 既に定義されてる識別子が自由変数 になります。 コンビネータに関する本として スマリヤンの本「To mock a mocking bird」 (邦題:数学パズル ものまね鳥をまねる―愉快なパズルと結合子論理の夢の鳥物語) は有名です。 この本の楽しいところ
Church Numerals と Lambda Calculus アルゴリズムとデータ構造入門 補足 後半は佐藤雅彦先生に教えてもらいました. SICP Exercise 2.4 〜 Exercise 2.6 誤解を恐れずに大雑把にいうと, λ計算では名前つきのシンボル (名前付きの手続き) による再帰呼出しや special form が使えないところが Scheme と違うところです. そのため, λ計算を Scheme で行うためにはいろいろな工夫が必要となります. そのポイントは closure (閉包) と呼ばれる構造です. 自然数 n の Church numeral を c(n) とすると, c(n) f x = (f ... (f x)), ただし, f は n 回出現. となることを利用します. まず, c0 と successor を定義します. (SICP Ex.
編集中。 尚、内容の正しさは全く保証できません。 「○○は△△です」と言い切りの形で書いてあっても、鵜呑みにしない方が安全です。 概要目的ルール予習復習基礎コンビネータの準備ユーティリティマクロの用意他のコンビネータ条件分岐自然数その一(失敗)演算その一(失敗)自然数その二(チャーチ数)演算その二ToDo参考リンク 概要 http://hw001.gate01.com/eggplant/tcf/unlambda/ 「全てのオブジェクトは関数である」という理念の極北とも言うべきunlambda。 そのunlambdaの基本となるS, Kコンビネータだけを用いて、論理的に正しく動作するVMを実装します。 尚、速度や実行コスト等は度外視します。 unlambdaには「難読化」というポリシーも含まれている為、VMの実装にはunlambdaそのものではなく、S式を利用します。具体的にはscheme。
人気文具ランキング 【CARAN D'ACHE/カランダッシュ】カランダッシュ+ネスプレッソボールペン・エディション6 11,000円(税1,000円) 【Le Bonheur/ル・ボナー】 デブペンケース/クードゥー (ガウチョ) 16,500円(税1,500円) 【Le Bonheur/ル・ボナー】 デブペンケース/クードゥー (ストーン) 16,500円(税1,500円) 【物外】ystudio クラシックリボルブボールペン (シャイニーシルバー) 15,400円(税1,400円) 【TWSBI/ツイスビー】ECO / エコ クリームローズゴールド (F/細字) 12,100円(税1,100円) 【Fluid Writing/フルーイドライティング】フェルトペン 999 メティス (マットブラック) 6,600円(税600円) 【RETRO1951/レトロ1951】トルネードヴィンテ
Return to Blog Thinking in Clojure for Java Programmers (Part 1 — A Gentle Intro) We do a lot of Java work at Factual. Most of our back-end data store is written in Java, and we use a ton of Java libraries and frameworks. We recently began experimenting with Clojure in certain parts of our data store. Clojure is a Lisp implementation that runs on the JVM and offers excellent Java interoperability.
二年間にわたってブログに掲載した自作スタイラスの記事一覧 私自身のなかで iPad、iPhone 用自作スタイラスは「KOH-I-NOOR & 電磁波シールドシート」に出会ってすでにアガリ状態ですが、番外編ということで昨日つぶやきながら作った KOH-I-NOOR スタイラスの製作手順をブログ上に整理しておきます。 作業内容は KOH-I-NOOR マーブル柄5.6mm芯ホルダーの塗膜を(わざわざw)剥がし、導電性のある塗膜に(わざわざw)塗り替えて iPad もしくは iPhone 用のスタイラスにするというものです。なお、ペン先には鉄板の組み合わせ 「電磁波シールドシート」を使っています。 KOH-I-NOOR マーブル柄の塗膜を剥いで導電性のある塗料で再塗装 ポップアップした写真上にマウスカーソルを移動するとスライドショーでご覧いただけます。 写真は作業中 つぶやきながら iPhon
全てのプログラマが読むべき本 まとめ は、2010 年 11 月 23 日に投稿された 全てのプログラマが読むべき本ベスト10冊 - とみー を発端とする、多くの技術者(ソフトウェアエンジニア) が「全てのプログラマが読むべき本」や「プログラマにおすすめする良書」と言うテーマで執筆した記事の中から、 プログラミングやソフトウェア開発に役立つ推薦書籍を集計してランキング形式でまとめた Web サイトです。 独学でプログラミングを勉強しようと考えている初心者、初学者等が、書籍を選ぶ際の参考としてご利用下さい。 尚、上記期の間以外に公開された記事でも、同様の趣旨で執筆されたものについては集計の対象としています。
How To Use AI To Build Optimized Models In Fusion 360: Generative Design Doom might be the most famous shareware ever, but you gotta love Autodesk for making its Fusion 3D CAD software free for hobbyists, students, and educators. Try out Fusion’s futuristic AI generative design tools in this tutorial from Lydia Sloan Cline’s book Fusion 360 for Makers. #shareware
こんな表のことを確率分布といいます。サイコロをふったときに起こるイベントの確率、たとえば「偶数の目が出る」確率を調べることは、この確率分布からこんな別の確率分布への変換だと考えられます。 この変換は、具体的にはこんな対応です。P(偶数) = P(2) + P(4) + P(6) P(奇数) = P(1) + P(3) + P(5)P(X)がイベントXに対する確率を表しているわけですが、Pを「イベントの集合から[0,1]区間の実数への関数」だとみなすこともできます。確率分布から確率分布への変換は、関数に対する演算でもあるわけです。確率分布を連想リストで表せば、高階関数や代数型を使って、この変換をモデル化できそうです。 以前、このアイデアをSchemeで試してみたことがありました。当時は、そもそも確率についての理解が今よりもいっそうあやしかったし、実装もちゃちでしたが、このアイデアが特別なもの
最近は業務の関係上、Oracle データベースの復旧手順書を作成していました。 Oracle のエンタープライズ分野の主流は RAC 構成になりますが、小規模システムではまだまだシングルインスタンス構成も多いことかと思います。実際システム構成的にはシングルインスタンスの方が遙かにシンプルで運用も楽です。 業務では RAC 構成のシステムを見ていますが、教育という側面からはシングルインスタンスをまずは教えるのが吉です。また部下に DBA の立場を担って貰うことを考えると、最低限知っておいて欲しいのはバックアップ&リカバリ。システムダウン時に活躍するスキルを身につけて欲しいと願います。せっかくいろいろ資料を作ってきたので汎用化できる部分のみ公開しようと思います。 バックアップ方式について言えば最近の主流はもちろん Oracle が提供している Recovery Manager を使ったバックア
Clojure | 22:17 | Clojureにはclojure.contrib.monadsというライブラリがあって、これを使うとモナドが使える。練習のためにモナドのすべてのサンプルコードのいくつかをClojureに移植してみた。 Identityモナド例:モナド変換子からモナドを導出する。 (use 'clojure.contrib.monads) (def my-state-m (state-t identity-m)) Maybeモナド例:辞書の検索。 (defrecord MailSystem [fullname-db nickname-db prefs-db]) (defrecord UserInfo [name nick email prefs]) (defn make-mail-system [users] (let [full-lis (map (fn [u] [(:
Naming : - only lower case letters separated by hyphens except types and protocols should be named in camelcase - predicates ends with ? - destructive functions ends with ! - variables that are meant for be re-binding should have earmuffs - use “_” for names that will be ignored by the code Code Structure : - when there is only “then” clause in a conditional statement use “when” instead of “if
現実の課題は「リアル店舗での売上が減っている」こと、また固定費の高い店舗での売上が減ったことによる「利益率の減少」です。そのため問題を解決した理想的な状態は「固定費の低い手段(=つまりネット通販)によって売上を伸ばし、利益率の改善を図る」こととします。 そして、提案は「ネット通販の構築」ということになります。 現実をドリルダウンし、考え得る原因に分解する そもそも実店舗での売上が減少しているということですが、具体的にどの程度でしょうか? 調べた結果、前年比で5割ダウンでした。う~ん、深刻ですね。 問屋や店舗の販売担当などにヒアリングした結果、特に地元では高価格帯の商品を買う顧客が激減したとか。首都圏ではそれほど変化はないようですが、この会社の製品は地元の店舗が主に販売しているため、影響が顕著だとか。 粗利益率も調べました。この会社では商品を問屋にすべて卸しており、卸し値は定価の45%。一方
無料で資料をダウンロード SEOサービスのご案内 専門のコンサルタントが貴社サイトのご要望・課題整理から施策の立案を行い、検索エンジンからの流入数向上を支援いたします。 無料ダウンロードする >> シリアルアントレプレナーとして一定の成功を収めている筆者が語る起業家として成功できない理由。成功するために必要な能力の話は良くありますが、成功できない理由はちょっと気になるかも?成功してる人も成功を目指してる人も起業家に関わらず読みたい。 — SEO Japan お金のやりくりの仕方を知らない。 豪華なオフィスや高い給料はお金の浪費にうってつけの方法だ。あなたは、いつお金を使い、いつ使うべきではないのかを学ぶ必要がある。例えば、従業員がしゃれたデスクやパーティションを欲しがった時、それが彼らの仕事の能率を上げる助けにならないのなら、ダメだと言うのだ。同時に、もしもプログラマーが生産性を上げるため
〜職業能力評価基準について〜 キャリア形成の目標に! 人材採用時の新しいスタンダードに! ◆事業のあらまし 職業能力開発局では、職業能力が適正に評価される社会基盤づくりを進めており、労働者の能力を客観的に評価する仕組みとして、能力評価基準の策定に取り組んでいます。 ◆能力評価基準とは 仕事をこなすために必要な職業能力や知識に関し、担当者に必要とされる能力水準から組織・部門の責任者に必要とされる能力水準までの4つのレベルを設定し、整理・体系化したものです。 ◆能力評価基準の特長 能力評価基準は業界内のニーズが高い職種について策定されており、単に職務遂行に必要とされる知識や技術が記述されているだけでなく、ビジネスシーンにおける行動が思い浮かべやすい表現がなされています。 例えば営業職では、「ルートセールスでは、継続的な信頼関係の構築による顧客資産づくりを計画的に実施して
_ 地獄のRubyでOpenCV顔認識:Ruby Advent Calendar jp: 2010 これは Ruby Advent Calendar jp: 2010 のエントリです。12/25分(今年のトリ)を担当します。 前日の担当は @ktou さんで 地獄のジェネレータでした。 えっ?もう12月26日だって?イタリアはまだ25日だけど。 さて、RubyからOpenCVを利用して顔画像認識をやってみます。 環境 Mac OSX 10.6.5 Xcode 3.2.4 一応、Xcodeの場所を正しく指定しておきます。 $sudo xcode-select -switch /Volumes/Macintosh\ HD/Xcode3.2.4 次にOpenCVのインストール。最新版はOpenCV2.2.0ですが、 2.2.0だとライブラリの構成などがだいぶ異なるようで、 ruby-opencv
7/27に開かれたLisp Meetup #30で「Clojureシンタックスハイライター開発から考えるこれからのLispに必要なもの」というタイトルで話してきました。 Clojureシンタックスハイライター開発から考えるこれからのLispに必要なもの from sohta 内容としては、去年のShibuya.lispのテクニカルトークで話した内容を重点をズラして焼き直したものです。終わった後にいくつか意見をいただきましたが、絶対数は多くないのでどう受け止められているのかはちょっと気になるところです。 「これからのLispに必要なもの」とタイトルにはあるものの、具体的に「これが必要だ」と言えてないのが残念な感じですが。。。この発表でいいたかったのは、「LispコードをCASEツールで解析できる対象にしていきませんか」という提案です。 ICSE勉強会なんかの話を聞いていると、他の言語(特にJ
An explorer's log24 Jun 2017Ferret Lisp FFI Notes15 Feb 2017Bare Metal Lisp - RC Control using Ferret10 Jun 2016Ferret - A Hard Real-Time Clojure for Lisp Machines07 Oct 2014Static Galleria Script26 Jan 2014Pentadactyl Configuration05 Jan 2014tmux Configuration05 Jan 2014SSH as a Hidden Service with Tor20 Nov 2013Parse S3 Logs with Goaccess23 Oct 2013Notes on Synchronization and Backup of $HOME us
A Simple Forth Interpreter in Clojure Just for fun I sat down and started writing a Forth interpreter in Clojure. This implementation only does some simple arithmetic, it has dup and "." (print), but lacks things like control structures. Our Forth environment has two key components, Dictionary Stack Dictionary holds both primitive words, those that are implemented in Clojure and user defined words
WindowsでMeCab Pythonを使う(2010/11/21)のつづきです。形態素解析を使ってると単語が変なところで切れていたり、未知語が多かったりと不満点が出てきます。また、応用によっては、形態素ではなく、複合語単位で抽出したいということもしばしばあります。たとえば、 人工知能は、コンピュータに人間と同様の知能を実現させようという試み、あるいはそのための一連の基礎技術をさす。 人工知能という名前は1956年にダートマス会議でジョン・マッカーシーにより命名された。 現在では、機械学習、自然言語処理、パターン認識などの研究分野がある。(Wikipedia『人工知能』を改変)という文章をMeCabで形態素解析して名詞のみ取り出すと、 人工 知能 コンピュータ 人間 同様 知能 実現 試み ため 一連 基礎 技術 人工 知能 名前 1956 年 ダート マス 会議 ジョン マッカーシー
二階堂愛 (Itoshi NIKAIDO) が綴る Hacking is beliveing な日常_ 最もタメになる「初心者用言語」はRです 最もタメになる「初心者用言語」まとめ (リンクされた,THX) うっかりTwitterで乗りおくれた! 最もタメになる「初心者用言語」は R。ってもう誰か書いた?とかつぶやいたら, @dritoshi 書いて!って言われたので,ムリがあるけど俺,がんばった. R Lispを父にSを母に持つ統計解析言語 筋は悪くないよ.CLOSから取り入れた総称的関数が大活躍だし.なのにカッコカッコしてない! もちろんオブジェクト指向プログラミングもできるしユニットテストもあるよ.統計言語だからデータ構造も豊富! ガベコレもあるよ.無名関数もあるよ.例外処理,遅延評価,関数クロージャ,再帰もできるし,自在にベクトル計算ができるから複雑なループを作らなくてもいいよ.
最新の5件2010-08-16plugin=newpage 2010-05-14cmd=search 2005-07-18Link 2005-03-16修論/timeline 2005-03-14修論関連 Counter: 37, today: 1, yesterday: 1 カーネルを読もう第01回 カーネルを読もう第02回 階層型プロトコルの実装の概要 カーネルを読もう第03回 ネットワーク・インターフェイス層 カーネルを読もう第04回 ARP:Address Resolution Protocol カーネルを読もう第05回 IP層 カーネルを読もう第06回 IP層(その2) カーネルを読もう第07回 IP層における経路制御機構 カーネルを読もう第08回 IP層における経路制御機構(2) カーネルを読もう第09回 トランスポート層サービス カーネルを読もう第10回 TCPの実装 その1
こんにちは、ponpoko1968です。 最近、「自炊」と言う言葉がはやっているのをご存じでしょうか?高性能で使いやすいドキュメントスキャナーが登場したことで、紙の本を断裁して、スキャンすることで電子化しPCやiPad,kindleのようなタブレットで読むことが流行しています。 私も、日々会社と家を往復する日々をすごすため、たくさんの重い技術書を持ち歩けず、何か疑問があって、調べたい、勉強したいというときに、すぐ手元に技術書があって、どこでも参照できたらなぁ。。。と常々思っていました。 そんな中、「自炊」とiPadの登場です。筆者も早速重い技術書をスキャンして、iPadで持ち歩くようになりました。おかげで過去の雑誌の記事や、解説書など、紙媒体の状態では重くて両手で持つことすら出来ない量の資料を1kgにも満たないiPadの中に入れて持ち運び出来るようになりました。 これら資料は、iPad向け
目次 概要/特徴 リリースノート インストール/使い方 jarファイル 解析用辞書作成 形態素解析 コマンド BuildDic Igo Java API Tagger Morpheme サンプルコード MeCabとの相違点 解析結果 機能 辞書ファイル 単語エントリフォーマット 制限/注意点 禁則文字 バイナリ辞書エンディアン ライセンス バグ報告など 概要/特徴 Javaで実装された形態素解析器。→ Common Lisp版 辞書フォーマット及び解析結果は、ほぼMeCab互換。 単機能。 Javaの形態素解析器としては比較的高速。 スレッドセーフ。 リリースノート version 0.4.3: 2011年06月17日 形態素解析部の微細なパフォーマンスチューニング インストール/使い方 1) jarファイルの取得/作成 jarファイルは以下のいずれかの方法で取得/作成する。 ダウンロード
解析結果がほぼMeCab互換のJavaおよびCommon Lispで実装された形態素解析器IgoのRuby版を作りました。 正確にはIgoのエンジン部分をRubyに移植しましたですけれども。 ソース ソースはGitHubに公開。 また、RubyGems.orgにgemを公開してあるので、インターネットに接続している環境ならRubyGemsでインストールできます。 インストール コマンドラインで下記を入力。$ gem install igo-rubyigo-rubyは、別途Igoと同じ解析用辞書ファイルが必要です。(igo-pythonと同じ方式。ただし、igo-pythonの方は辞書ファイルの生成機能も実装予定とのことです。) 解析用辞書ファイルの生成方法については、Igoのページを参照してください。 使い方 Igo::Taggerクラスのコンストラクタに辞書ファイルが入ったディレクトリを
ルアー・ロッド・リールの釣り具レビューやクチコミ掲示板、釣り物・対象魚ごとの釣果報告や魚料理のレシピが楽しめます。釣り船情報や潮見表・潮汐表で釣行計画もカンペキです! [ 利用登録 ]または[ ログイン ] Twitterでログイン Facebookでログイン mixiでログイン タイドグラフ Anglrのタイドグラフは、「日本沿岸潮汐調和定数表(平成4年2月発刊)」に基づき算出しています。公式の潮汐推定値は、海上保安庁が毎年刊行している「潮汐表」を使用してください。 北海道 97 青森 22 岩手 7 宮城 13 秋田 6 山形 4 福島 6 東京 16 神奈川 20 埼玉 0 千葉 19 茨城 5 栃木 0 群馬 0 山梨 0 新潟 13 長野 0 富山 5 石川 9 福井 7 愛知 17 岐阜 0 静岡 19 三重 16 大阪 6 兵庫 24 京都 6 滋賀 0 奈良 0 和歌山 1
S-JIS[2002-02-26/2024-08-21] 変更履歴ひしだま's ホームページ ひしだまのホームページへようこそ! 簡単な注意と説明 [/2009-02-01] 趣味の読書 気に入った本・漫画 [/2023-10-01] リプレイ集(ソードワールド等)の元ネタを記録 [/2008-11-19] 趣味の音楽 [/2008-08-02] 趣味っぽくもない映画 [/2008-07-17]、断じて趣味でないアニメ [/2015-12-30], OVA [/2008-03-02]、滅多に見ないTV [/2008-05-05] 趣味の自転車 [/2004-02-05] ちょっと言いたい 格言・慣用句・お約束の備忘録 [/2008-11-16] 試験必勝法(?) [2006-10-15] 他人の面白い一コマ [/2007-06-27] コンピューター関連 持っていたハードウェア [/201
「ノンパラメトリック」って言うくらいだからパラメータ無いんかと思ってたら、パラメータめっちゃあるし。 機械学習のネーミングのひどさはこれに始まった話じゃあないけど、それにしたって。 ノンパラの一番素朴なやつ( K-means とか)は本当にパラメータ無くてデータだけだから納得なんだけど、だんだん欲が出てパラメータ足しちゃったり派生させちゃったりしてるうちに、よくわかんなくなってきちゃったんだろうかねえ。まったく。 どれどれ、と英語版 Wikipedia の "Non-parametric statistics" を見たら、なんか意味が4種類くらい書いてあるし。じゃあ名前分けろよ。 en.wikipedia.org とりあえずここで言う「ノンパラ」とは、変数の個数決めなくていい「分布の分布」なメタっぽいやつのこと。つまりディリクレ過程とか、ディリクレ過程とか、そこらへん。 「あー、ノンパラベ
SPICED ORANGE FRUIT CAKE Feed this cake with brandy for a deep, rich flavour, or with Cointreau for an extra zing of citrus. Preparation 15 minutes, plus overnight soaking Cooking 1 hour 40 minutes Makes about 16 slices 300G EACH RAISINS AND SULTANAS100G EACH DRIED APRICOTS AND DRIED FIGS, FINELY CHOPPEDJUICE AND FINELY GRATED ZEST 2 ORANGES100ML COINTREAU1 TBSP VANILLA EXTRACT175G UNSALTED BUTTER
このブログ、Webデザインレシピのデザインをリニューアルしました。 この機会にデザインを勉強したことがない人でも、楽しくデザインをすることができるかもしれない、基本原則 4つをご紹介します。 この原則は「ノンデザイナーズ・デザインブック」著者 Robin Williams で詳しく解説されています。 古い本ですが、とっても素晴らしい本で今では新装増補版となって発行されているようです。 今回、このブログ – Webデザインレシピのデザインを、ガラッと変えてみました。これを機会にちょっとデザインの基本というか、デザインをするときにガイドとなる、4つの原則をおさらいしておきます。Webデザインに限らず、会社で提出する報告書や学生さんのレポート、レストランのメニューなど、ページと呼べるものには全部当てはまると思うので、Webサイトを作るとかじゃなくても、知っておいて損はないかもしれませんね。 せっ
(2011/07/25 追記: 設定方法などについては最新の記事を参照してください→[emacs][ui] Emacs用カレンダー calfw v1.2 リリース - 技術日記@kiwanami) Emacsで使えるカレンダーが必要だったので作りました。 (追記 2011/01/08 ical連携の設定に足りないところがありましたので修正いたしました。また、Emacs22ではpeccuさんの所の追加設定を参照してみてください。 → CarbonEmacsでかるふわ使っちゃうよ!(ぺっくブログミラー@peccul)) こんな感じ 完成までには近所の人たちから、「カレンダーなら壁に掛かってるだろう」とか、「Google Calendarという無料のカレンダーがありまして」とか、「カレンダーならiPadにもあります」とか、幾多の助言を頂きました。ありがとう。分かってます。自分だって、2年前にPy
ClojureのAPIリストを眺めていたら面白いマクロがありました。 -> と ->> です。 Rubyのメソッドチェインのようなことができます。 例えば次のようなRubyでの処理は 123456789.to_s.length => 9 ClojureでもJavaのメソッドを直接使う場合は .. でチェインできます。 user> (.. 123456789 toString length) => 9 -> を使えばこれをClojure上の関数で実現できます。 user> (-> 123456789 str count) => 9 123を文字化して逆順にする場合 user> (-> 123 str reverse) => (\3 \2 \1) reverseは文字のシーケンスを返すので user> (->> 123 str reverse (apply str)) => "321" のよ
cgrand's enlive at master - GitHub Enlive は html と Clojure のコードを完全に分離できるのが特徴のテンプレートシステムです。つまり、テンプレート元の html はピュアな html であり、コードはピュアなClojureのコードなのです。デザイナーとプログラマーがどちらもHomeで本領を発揮できます(HTMLの変更が容易。HTML中にダミーのテキストを入れられる。マクロも自由自在)。 動的にWebページを生成する方法にはプログラムとHTMLのどちらを中心にするかという違いがあり、それぞれの解説は Rubyist Magazine テンプレートシステム入門 (1) 歴史編 が参考になります。 既にEnliveのナイスなチュートリアル、ドキュメントがあります。 enlive-tutorial (tutorial中にある selector
最近、Wordpress絡みでPHPを書くことが多くて、かつバージョンも5.2だったりするので、高階関数とか無名関数とかが無性に使いたくなります。 ということで、JavaScriptでIteratorでも書いて心の平静を保つことにします。 クロージャ版Iterator これが書けるJavaScriptは素敵だ。 使用例 var iter = iterator(document.getElementsByTagName('a')); console.log(iter.next()); console.log(iter.prev()); クラスメソッド版Iterator メソッドチェーンのこと好きです。付き合ってください。 使用例 Iterator([1,2,3]).next().get(console.log).prev().get(console.log).next().get(); ge
縦分割が目的で使い始めた開発版の GNU Screen。CVS、Subversion、Gitとリポジトリを追いかけていると、他にも便利な機能があることが分かってきました。ここ半年ほど主だった変更はありませんが、4.1.0 のリリースに向けてドキュメントも整備されてきたようですので、2年ほど使用してきて分かってきた変更点をまとめようと思います。 4.1.0における変更点 ここで取り上げる変更点は次の通り。詳細は ChangeLog などを確認してください。 新しい機能 縦分割 レイアウト ウィンドウグループ マウス操作のサポート コマンドメッセージの抑止 外部からのコマンド問合せ 拡張されたコマンド/機能 最大ウィンドウ数の増加 ウィンドウ番号の相対指定 イベント発生ウィンドウの装飾設定 設定で使用可能な変数/書式の追加 ウィンドウリスト/画面リストの拡張 その他 256色サポート コマンド
カテゴリ 新製品(6) おすすめ商品(7) 特別セール(3) 限定商品(2) RT NEWS(3) アールティオリジナル->(82) メーカー・ブランド別->(1165) プラットフォームロボット(14) ホビー用ロボット&キット->(680) 研究用ロボット->(17) 教材用ロボット&キット->(6) マイクロマウス->(42) 人型ロボット (半身タイプ含む)(5) 車輪型ロボット(8) アームロボット(2) メカニックパーツ->(270) コントロールボード・マイコンボード->(24) センサパーツ->(28) 通信機器・コントローラ->(47) 電源&バッテリ->(23) 電子工作パーツ->(7) 3Dプリンタ->(27) 書籍・雑誌(10) 販売終了->(224) 特価商品 ... おすすめ商品... 全商品...
Apache/ Maven/ Guide to installing 3rd party JARs | Last Published: 2024-11-06 | Get Sources Download Occasionally, you will have 3rd party JARs that you need to put in your local repository for use in your builds, since they don't exist in any public repository like Maven Central. The JARs must be placed in the local repository in the correct place in order for it to be correctly picked up by Apa
本サイトはマリオカートWiiの攻略Wikiサイトです *1。攻略データ等を編集して情報を共有することができます(ただし、他サイトの情報などをそのまま転載しないようご注意ください)。PCやスマホからのアクセスに対応し、全ページリンクフリーとなっています。 ページを編集する際は、以下のユーザー名とパスワードを入力してください。会員登録なしに、誰でも編集できます。 ユーザー名:wiki パスワード:wiki 情報がどこに載っているかわからないときは、下記検索フォームから当サイト内の情報を検索してみてください。 お知らせ † お知らせ:2020年5月21日にWikiを全面リニューアルしました! デザインを修正し、スマホからアクセスしても見やすいようになりました! また、URLはhttpからhttpsに変更しています。httpでアクセスした場合は、自動的にhttpsに転送されます(ブックマークしてい
以前より気になっていた書籍「The Burrows-Wheeler Transform Data Compression, Suffix Arrays, and Pattern matching」を読む機会を得ることができた。それなりに高額な本だったので購入が躊躇っていたのだけど、これは自分用に購入してもいいかも。というくらいの良書だったので紹介しておく。 本書はタイトルのとおりBWT(Burrows-Wheeler変換)に関する書籍。サブタイトルにあるようにデータ圧縮やSuffixArrayによる全文検索についても充実した内容になっている。最後のPattern matchingはテキストから検索キーとexactにマッチした、もしくは類似した箇所を取り出すよ、という話。2008年の本なので比較的新しい話題も扱っていて満足度が高い。 また本書の特色は圧縮ありきで始まり、そこから全文検索可能な
本日 1/16(日) にニフティさんにて開催された 第9回 データマイニング+WEB 勉強会@東京 にのこのこ参加してきました。主催の @hamadakoichi さん、運営の @doryokujin さん、講演者、参加者、そして会場を提供して下さったニフティさん、各位ありがとうございました。 前回参加したときに、はまださんに「機械学習の全体像を話して」という無茶振りされて、うーん直球でそれにぶつかるのはさすがに難しすぎる。いろいろ考えてみて、そっちの専門じゃあないエンジニアが機械学習を学ぶには、という話にさせていただいた。 資料はこちら。 機械の代わりに人間が学習入門 from Shuyo Nakatani 前半はパワポの画面切り替えを駆使したちょいとした仕掛けがあったんだけど、slideshare にすると全く意味が無くなってしまうので、バッサリ削除。内容はあんまり変わってないので大丈
ビタビ・アルゴリズム Viterbi algorithm ホーム 情報通信のハイパーテキストは下記へ移動しました。 http://www.mnc.toho-u.ac.jp/v-lab/ お探しの内容は、下記の目次にあります。 http://www.mnc.toho-u.ac.jp/v-lab/yobology/index.htm
前回は単語数最小法によるViterbiアルゴリズムを使って、「猫はうろうろ」を形態素解析しました。 www.yasuhisay.info 単語数最小法では、単語の品詞などは見ておらず、ただただ単語数を最小にするように動的計画法であるViterbiを動かしていきます。品詞を見ていないため、「家におくりました」は「家」、「におくり」、「ました」と間違って形態素解析されていました。 コスト最小法による形態素解析そこで ある単語がある品詞で登場するコスト ある品詞とある品詞の接続するコスト というコストの概念を導入します。 「ある単語がある品詞で登場するコスト」というのは、例えば 「まし」が助動詞で登場するコスト 「まし(増し)」が動詞で登場するコスト というような感じで、単一の言葉でも、品詞が違う場合にはそのコストを区別するような考え方です。 一方、「ある品詞とある品詞の接続するコスト」というの
One of the things I find myself yearning for in a lot of programming languages is a powerful pattern matching system. I wrote one for ruby, but ruby’s syntax just wasn’t flexible enough to make something as elegant as I’d like. When I started using clojure, it seemed like a great little project for getting to know clojure’s macro facilities as well as clojure itself. I set out to build a kickass p
Not your computer? Use a private browsing window to sign in. Learn more about using Guest mode
C Library The elements of the C language library are also included as a subset of the C++ Standard library. These cover many aspects, from general utility functions and macros to input/output functions and dynamic memory management functions: <cassert> (assert.h)C Diagnostics Library (header)<cctype> (ctype.h)Character handling functions (header)<cerrno> (errno.h)C Errors (header)<cfenv> (fenv.h)F
HTML Cleaner を使って HTMLをWell-Formed XMLに変換する clojure.xml/parse でパース clojure.zip/xml-zip でzipping clojure.contrib.zip-filter と clojure.contrib.zip-filter.xml でscrape xml-> に渡すpredはrootから出発なので、xpathの "//" がしたい場合は descendants を使う。 ただし、ちゃんとtext とか attr とかで止めないと無限リストになる(?) 参考サイト: - HTML Parsing in Clojure using HtmlCleaner - @ infinity, plus 1 - Simple XML Parsing with Clojure at So much to do, so littl
This document provides instructions for installing and configuring several Clojure packages and tools using Emacs package-install. It first installs Slime, then configures it for use with Slime REPL. It then installs Clojure mode and associates .clj files with it. Next, it shows how to set up a sample Clojure project using Leiningen with dependencies and dev dependencies. It provides commands for
先日、以下の記事で初めて作ったAndroidアプリを紹介しました。 一週間で初めてのAndroidアプリを作ってみました その後、そのアプリをAndroidマーケットで公開してみました。 はてブ閲覧用Androidアプリ「HTBPocket」を公開しました この一連の作業で参考にした記事やサイトについて、「Androidアプリ開発関連情報まとめ」としてまとめてみました。 開発環境構築まず必要になるのが開発環境です。以下はMacの環境構築です。MacにAndroid SDKをインストール (Update 2010.05.25) そして以下がWindowsでの環境構築です。私はやったことないのでよく分かりませんが(^^;;世界を目指せ!Androidアプリ開発入門:第2回 Androidアプリ開発のための環境構築 公式の開発情報公式の開発者向けサイトです。Android Developers
See related links to what you are looking for.
HttpClientを使って、マルチスレッドでWebページを取得するサンプル。 leiningenを使う場合は、project.cljの:dependenciesに[commons-httpclient"3.1"]を記述し、lein depsを実行すればライブラリを取得してくれる。 (ns web-get (:import [org.apache.commons.httpclient HttpClient MultiThreadedHttpConnectionManager]) (:import [org.apache.commons.httpclient.methods GetMethod])) (defn fetch [client url] (let [get (GetMethod. url)] (println (str "Fetching: " url)) (try (let [
Google App EngineのWebアプリをClojureで簡単に作成できるか試してみた。 appengine-magic appengine-magicを使うと簡単そうだな。 https://github.com/gcv/appengine-magic/tree/ Getting Startedに従って、作ってみよう。 Google AppEngine SDKのインストール Python版とJava版があるが、Java版をダウンロードする。 ~/optにappengne-java-sdk-1.4.0を解凍する。 ~/opt/appengine-java-sdk-1.4.0/binにPATHを通す。 Hello,world!を作る まずはHello,world!を作ってみるよ。 プロジェクトの作成 helloプロジェクトを作成する。 $ lein new hello カレントディレク
Blocks というのは Apple が C/C++/Objective-C 向けに独自実装したクロージャ的な機能.Snow Leopard リリース時に GCD すげぇ!という記事で見かけて『Apple やりやがった,あの変態やりやがった』くらいにしか思っていなかったのだけど,iPhone OS4.0 で使うことになりそうなので,ザックリと調べてみた ザクザクっとドキュメントを読みつつテストしつつという状態で書いたメモなので,嘘を書いている可能性が大いにある! 以下,Blocks をクロージャと呼ぶ シンプルに // 無名でダイレクトに呼ぶ ^(void) {puts("closure");}(); //=> closure ^() {puts("closure");}(); //=> closure ^{puts("closure");}(); //=> closure // 名前を付
統計数理研究所にて行われた第2回統計的機械学習セミナーにのこのこ参加してきました。 http://groups.google.com/group/ibisml/browse_thread/thread/092f5fb3d45a91ea/8cae858cb8bfc00c 今回はノンパラメトリックベイズ特集ということでか、Yee Whye Teh さんが sequence memoizer を、持橋さんが教師無し&半教師分かち書きを話されたので、まずは sequence memoizer について自分のわかる範囲で書いてみよう。 まず、Pitman-Yor 過程については既知とする。ご存じない方は、「独断と偏見によるノンパラ入門」を読めばだいたいわか……んないか(苦笑)。 ええと、とりあえず今回必要な範囲で説明すると、G という単語の分布(ただし台は無限。つまり「独断と偏見〜」でいう「その他」
EmacsWiki: Zen Codingより。 ZenCoding-modeというHTMLを簡単に入力できるモードがある。 これを活用する事で、Emacs上でタグを簡単な記法で書いた後、C-とする事でHTMLに展開する事が可能になる。 このメリットとして、文字入力が少なくなる上に、タグの閉じ忘れもなくなるので早くて正確にHTMLが生成できる。 このHTML化できるというのが重要。Hamlのような独自記法だと、プログラマーに取っては楽に記述、編集ができるという便利なフォーマットなのだが、デザイナーにとっては、使いなれたデザインソフトが使えないという、非常に不便なフォーマット、という事になる。 しかし、ZenCodingだと最終的にはHTMLに変換されるので、プログラマは簡単に記述できる。デザイナーはあとで楽に編集できるという、何方にもメリットとなる。 サンプル どのような入力で、どのように
柠檬直播吧免费提供NBA直播,足球直播,CBA直播,在线观看NBA直播,NBA录像,CBA录像等体育赛事高清视频直播,柠檬直播以最全最高清信号,打造最好的柠檬体育直播吧。
wikipediaのタイトルを追加しようとしたらいくつかハマったので。 環境はFedora10。 まずはmecabのインストール。 # yum install mecab* とりあえずこれだけでおもむろに形態素解析してみる。 # echo けいおん!のせいでtwitter界隈にギター買うとか宣言してる奴が増えた | mecab けい 名詞,一般,*,*,*,*,けい,ケイ,ケイ おん 名詞,一般,*,*,*,*,おん,オン,オン ! 記号,一般,*,*,*,*,!,!,! の 助詞,連体化,*,*,*,*,の,ノ,ノ せい 名詞,非自立,一般,*,*,*,せい,セイ,セイ で 助動詞,*,*,*,特殊・ダ,連用形,だ,デ,デ t * w * i * t * t * e
LUNA(武藤研究会ソフトウェア研究グループ)の共同更新ブログ作業環境:Lunalice(CentOS 5.5) システムエンコーディング:UTF-8 MeCabのエンコーディング:UTF-8 ◆Wikipedia編 SorAmberが作ってくれたwikipedia.csvを使う。 コスト付をして文脈IDを整形しただけで使用完了した。 この方法については後述。 (maintain.rb) ◆はてなキーワード編 各種ページを参照するも、上手く行くものなし。恐らく原因はテキストファイルが汚い(フォーマットに則っていない、記号等が読み込めない)ことだと思う。 最終的に、 http://d.hatena.ne.jp/hirokan55/20100215/p1 のページをベースに使うことにした。 ページの通りに進めることで辞書登録を確認。 しかし、折角はてなキーワードにはふりがな
(インストールの仕方などはほかの人がいっぱい説明してくれているので割愛) どうやら標準の辞書だけだと限界があるようので、以下の記事などを参考に 「wikipediaとhatenaキーワードをユーザ辞書として利用する」 ということをやってみました。 http://d.hatena.ne.jp/code46/20090531/p1 http://www.mwsoft.jp/programming/munou/mecab_hatena.html http://deepneko.dyndns.org/kokotech/2009/06/mecabwikipedia.html 作ったのは以下の2つのスクリプト。 webからデータを取ってきて、csv作成コマンド、辞書作成コマンドを呼び出すshell (convWebWordsToDic.sh) #!/bin/sh CSV=../data/words.c
覚え書きみたいな感じ。 Twitterから取得したTLデータをMeCabの形態素解析にかけると、大抵の固有名詞は単語がバラバラになってしまいます。 バラバラになってしまった「嵐にしやがれ」 これを、固有名詞と判断させるためにどうしたらいいのか。 はてなキーワードとwikipediaのタイトルをMeCabの辞書にぶっこんであげればよし。 ということでがんばってみた。 【主な参考ページ様】 MeCabの辞書をはてなキーワードとWikipediaで鍛える mecab辞書にwikipediaのタイトル名を追加 【はてなキーワード編】 ここからはてなダイアリーキーワードふりがなリストをダウンロード。(keywordlist_furigana.csv) キーワードIDをついてない方を選んだ。 で、このcsvファイルをMeCabの辞書用のcsvに変換しなければならない。 例えばこんな感じ。 嵐にしやがれ
Linux | 23:10 | UbuntuのMecab環境を整備します。まず、Mecabをパッケージからインストールします。 $ sudo apt-get install mecab IPA辞書のインストールデフォルトではJUMAN辞書を使って形態素解析をしますが、IPA辞書の方が精度が良いようです。http://d.hatena.ne.jp/mir/20070209/p3IPA辞書は以下のコマンドでインストールします。 $ sudo apt-get install mecab-ipadic IPA辞書をUTF-8に変換パッケージからインストールされるIPA辞書はEUC-JPで構築されているため、Ubuntuの文字コードをUTF-8に設定している場合はいろいろと不便です。以下のコマンドでIPA辞書をUTF-8に変換できます。 $ sudo /usr/lib/mecab/mecab-dic
ソフトウェア設計とは何か? (原文: What Is Software Design?) by Jack W. Reeves (c)C++ Journal - 1992 訳者まえがき この文書は,Jack W. Reeves 氏が1992年に C++ Journal に寄稿した記事の邦訳です。 本記事では,オブジェクト指向プログラミング言語の代表として C++ を挙げていますが,これは本記事が執筆された当時,一般的に利用可能なオブジェクト指向言語は C++ だけであったという事情があるためです。 今では C++ に加えて Java,Delphi,C# といったオブジェクト指向言語が利用可能となっていますが,そんな今でさえこの記事は古さを感じないものとなっており,ソフトウェア開発の本質,現状を鋭くえぐるものとなっています。 邦訳の公開を許諾していただいた Jack W. Reeves 氏に,
在来HTMLの次世代版とされている、HTML5について、私見を交えて解説します。 HTML5とは。 HTML5とは、WHATWGとW3Cが共同で策定している次世代のHTML規格です。 もともと、W3CはXHTMLの普及に力を入れ、XHTML 2.0の策定を進めてきました。 しかし、後方互換性を無視した仕様の策定にはウェブブラウザヴェンダから反発があり、その結果大手ヴェンダであるもじら財団, アップル社, オペラ・ソフトウェアの三社でWHATWGが立ち上げられ、より現実的且つ互換性と拡張性を兼ね備えた仕様としてHTML5の規格化に着手しました。 一方、XHTMLが殆ど現場では支持されていないと言う事実(CMSなどの普及でXHTML 1.0文書は確かに増えたのですが、そのどれもが在来のHTMLの代用としての使い方に留まっていて、XMLの利点を生かしたものとなっていない)を突きつけられ、W3Cは
anything便利ですよね。でもマッチさせるパターンが正規表現って使いにくくないですか?僕は使ってたたまにイラっとします。".java"っていれたら"/java"がひっかかるとか。 この手のツールでマッチさせるときはやっぱり正規表現じゃなくてglobの方が便利だと思うんですよ。というわけでglobに対応させるamp-glob.elを書いてみました。要 anytyhing-match-plugin です。 導入は簡単。まずは「M-x auto-install-from-gist 792217」で amp-glob.el をインストールします。そしたら以下を .emacs.el に書いておきます。 (require 'amp-glob) (amp-glob-mode 1) あとは普通に anything を使うだけです。特に何も考えなくても、大体思ったとおりにマッチさせられるんじゃないかと思
「地質調査入門(第2版)」と「粒度表」、「ゴムデール」 をつくりました 駿河湾団研では、初心者向けに地質調査の方法を解説した「地質調査入門」と「粒度表」を10年前に発行しましたが、すでに数年前に在庫がなくなっていました。 この2つのアイテムは、学生やコンサルタント関係者にたいへん好評で、多方面からの再発行の要望もあり、このほどそれに答えて再発行しました。「粒度表」については以前と同じですが、「地質調査入門」については第2版として新たな内容を加えさらに使いやすい本としました。 「地質調査入門(第2版)」の内容の一部はこのページで公開してありますが、冊子としてあるとフィールドに携帯できます。 「地質調査入門(第2版)」は送料込みで1冊680円 2〜4冊まで1冊600円、5冊以上は550円 「粒度表」は送料込みで1枚1000円(10枚以上の方はご連絡ください) また砂のついてない
IgoはJavaで作られた形態素解析エンジンです。 JavaはJVMという閉じた空間で動作する分、Cなどのネイティブアプリと連携する際の安定性や性能がイマイチ。 そのため形態素解析をしたい場合もMeCabを使わずにJava製のものを利用するケースが目立ちます。IgoはJavaで形態素解析をする場合に選択肢の1つとして挙げられます。 @Date 2010/12/18 @Env Igo0.4.2/Fedora14 IgoはMeCabの辞書を利用することができ、ほぼMeCabと同じ解析結果を返すことを意識して作られているそうです(詳細は公式サイト参照)。 Igo - Java形態素解析器 http://igo.sourceforge.jp/ 下記ページによると、実行速度もMeCabと比べてそれほど大きく劣ることはないようです。 Igo : MeCabと形態素解析速度比較 http://d.hat
あいかわらずIgoをいじって遊ばせていただいています。 Igoを使っていて感じたことをかるくまとめておきます。 Igoの辞書変換時の注意点 IgoではMecab形式のファイルをいったんIgoを使って変換する必要がある。 ドキュメントには書いてないけど以下の場合には辞書の変換に失敗する。 はまったのでメモ的にまとめておきます。 辞書に"(ダブルクォート)を含む場合、変換parserのエラーになる。(今回は取り除くことで可能) Mecabの辞書内で出現頻度をスコアで指定するんだけど、Igo側はここをIntegerで解釈しているので,Integerの範囲を超えた値にすると変換エラーになる。 辞書の変換には思った以上にメモリを食います。具体的にはスタックオーバーフローエラーがおこります。辞書のファイルサイズが大きい場合にはスタック領域をなるべく増やして実行しましょう。例えば、NAIST Japan
#1 Gettysburg Powerpoint Presentation and its making (slides) #2 AI: A Modern Approach (book) and AI on the Web (links) #3 World's Longest Palindrome (for 20:02 02/20 2002) #4 Teach Yourself Programming in 10 Years (essay) #5 Paradigms of AI Programming (book) with code #6 Java IAQ and Python IAQ (FAQs) #7 Design Patterns in Dynamic Languages (slides) #8 Lisp compared to Python, Java, and itself i
Updated: Note that this is available as a clojars module. Clojure code density seems to be pretty good. There are a fair number of convenient shortforms in the language; for example, associative datatypes all act as a function — so given a hash map you can reference it with (my-hashmap :key). The base language itself is probably about as expressive as Python (or a bit better), but you have the add
偏微分の基礎 | 連鎖律・ヘッセの行列 | 線形計画法 | ラグランジュの未定乗数法 | Kuhn-Tuckerの条件 | ご注文方法 | お申し込み | profile | LS結合の基礎 | ナビエ・ストークスの方程式 | ベクトルポテンシャル |よくあるお問い合わせ | トップページに戻る | 2004-2021 Isigas.inc. All rights reserved.
ラグランジュの未定乗数法 戻る SVMについての記事を読んでいて絶対に避けて通れないのが,ラグランジュの未定乗数法だ.なんたって,これを使うことで「サポートベクトル」の決定が可能になるんだから,これがわからなくっちゃ始まらない. ラグランジュの未定乗数法がどうやって導出されたか,っていうことはここでは説明しない.どのようなものか,だけを述べる. ラグランジュの未定乗数法の定義 個の変数を要素として持つ変数列に関して個の制約条件 が与えられていたとする. この制約条件の下で関数が極値をとるようなを求めたいとき,もうひとつの変数列を使って次のような関数を考える. この関数の極値条件 を満たす解の中にある.ここでをラグランジュの未定乗数という. 「難しくってわかんねーよ」という人,ちょっと待っておくれ.小難しい書き方に惑わされてはいけない.これはそんなに難しいものではないんだ
となることが取敢えずの極値の条件である。 残念ながらこの条件から導かれる点 が極小か極大か、 ただの停留点か、あるいは鞍点であるかということは分からない。 鞍点というのは、例えば 2 変数関数をグラフにしたときの図形が 馬の鞍のようになる場合の話で、ある方向には極小であるがある方向には極大である、 という状況になる点である。 山の尾根沿いの道に例えてもいいかも知れない。 道の左右はどちらを向いても下り坂だが、前後は両方とも上り坂ということがある。 そういう点だ。 その他にも、現在点は水平だが、前には上り坂、後ろには下り坂という状況だってある。 上に書いた条件だけではそこまでの判定はできないが、 とりあえず、極値になりそうな候補をすべて導き出すことならば出来る。 条件付極値判定 ではこれに対して、二つほどの束縛条件が加わったらどうなるだろう。 これでは 、 、 はそれぞれ独立に、 自由には動
ラグランジェの未定乗数法というのは,「拘束条件がある関数」の極値を求める数学的テクニックです. とても重要な計算テクニックなので,ここで紹介します. この節では,最初にいきなり計算の仕方を紹介します. 計算だけを読んでも覚えにくいと思いますので,最後に例題も載せます. 例題をやりながらまた最初の説明に戻る,ということを何度か繰り返してみてください. 幾つか問題を解いてみれば,便利さを体感して頂けると思います. 一回なんとなく理解しておけば,忘れてしまっても, また使うときに「物理のかぎしっぽ」のページで復習すれば良いだけです. (※変数に付加的な条件式のことを,ここでは拘束条件と呼んでいます.) ここで , , が互いに独立ならば話は簡単で, 偏導関数 , , を連立して解けば良いだけですね. ( の右下に小さく とか とか書いてあるのは, を や で偏微分したという略記号です.慣れておく
stomachman さんが一般論を書かれていますので, めちゃくちゃ易しい例題を蛇足につけましょう. 例題 x + y = a (1) の条件の下で f(x,y) = (x^2 + y^2)/2 (2) の極値を求めよ. (1)から y = a - x として(2)に代入すれば, x の2次関数ですから x = a/2 で極値をとるのはただちにわかります. ラグランジュ未定係数法でやるなら,stomachman さんの式にしたがって, f の代わりに g(x,y,λ) = (x^2 + y^2)/2 + λ(x+y-a) を考えます.λと掛け算になっている x + y - a が(1)の変形です. (1)から,λ(x+y-a) = 0 ですから,f の極値も g の極値も同じことです. 2変数関数の極値だと言うんだから, 偏微分して ∂g/∂x = x + λ =
今までPRMLを読んで実装を続けてきましたが、10章からは難しくて歯が立たなくなってきたのでここらで少し具体的な応用に目を向けてみようと思います。機械学習の応用先としては画像の方が結果を見ていて面白いんですが、当面は自然言語処理を取り上げます。そんなわけで一番始めの応用は機械学習と自然言語処理の接点として非常に重要なテキスト分類(Text Classification, Text Categorization)の技法たちを試していきたいと思います。テキスト分類は文書分類(Document Classification)という呼び方もあります。テキストと文書は同じ意味です。最初なので自分の知識の整理と入門者への紹介のためにちょっと丁寧にまとめてみました。 テキスト分類とは テキスト分類とは、与えられた文書(Webページとか)をあらかじめ与えられたいくつかのカテゴリ(クラス)に自動分類するタス
JAVAでデータマイング! 『情報工学の難しいそうなアルゴリズムをJAVAで実装して、ひたすらその結果を公開する』ブログになる予定。 PR Calendar <<March>> S M T W T F S 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Theme NaiveBayes ( 2 ) スムージング ( 0 ) はじめに ( 1 ) 計算テクニック ( 0 ) 外れ値除去 ( 0 ) LSH ( 4 ) 協調フィルタリング ( 0 ) ブースティング ( 0 ) Kmeans ( 0 ) 階層的クラスタリング ( 2 ) EMアルゴリズム ( 0 ) BM ( 0 ) SVD ( 0 ) PLSI ( 0 ) LDA ( 0 ) パーセプトロン ( 0 ) A
なずきは、概念辞書や連想知識、感性情報といった文章の意味についての 高度な分析を行う辞書データベースを持つ言語処理エンジンで、例えば 「私の彼って、最近車買ったんだよぉ? 明日は軽井沢へ連れて行ってく れるんだぁ」という文章から、旅行、宿泊、自動車に関連した広告を表示 させることができる。 この記事で言及していることは、意味を解析しなくても実現できます。 大人気無いですが、実際に一緒にやってみましょう。 @ITの記事と同じような処理を実際にやってみよう プログラムするまでもないので、手を動かして遊んでみます。 入出力 入力 : 私の彼って、最近車買ったんだよぉ? 明日は軽井沢へ連れて行ってくれるんだぁ 出力 : 旅行、宿泊、自動車 つかうもの - Chasen(WindowsのGUI版でOK) ChaSen's Wiki - 茶筌の配布 - Yahoo!検索 1、Chasenで名詞を抽出
最近、Q&AコミュニティのQuoraが流行っていますね。Quoraそこで、個人的に興味のある分野のQAについてまとめておきます。 自然言語処理・機械学習系 What is the best way to analyze a corpus of text to determine the most popular phrases? - QuoraWhat is the best open source C++ implementation of a trie? - QuoraMachine Learning: What papers have shown that for machine learning, data set size is more important than the model being trained? - QuoraNatural Language Process
目次 概要/特徴 リリースノート インストール/使い方 jarファイル 解析用辞書作成 形態素解析 コマンド BuildDic Igo Java API Tagger Morpheme サンプルコード MeCabとの相違点 解析結果 機能 辞書ファイル 単語エントリフォーマット 制限/注意点 禁則文字 バイナリ辞書エンディアン ライセンス バグ報告など 概要/特徴 Javaで実装された形態素解析器。→ Common Lisp版 辞書フォーマット及び解析結果は、ほぼMeCab互換。 単機能。 Javaの形態素解析器としては比較的高速。 スレッドセーフ。 リリースノート version 0.4.3: 2011年06月17日 形態素解析部の微細なパフォーマンスチューニング インストール/使い方 1) jarファイルの取得/作成 jarファイルは以下のいずれかの方法で取得/作成する。 ダウンロード
グリッドシステムとは、スイスのグラフィックデザイナー:josef muller blockmann(ヨゼフ・ミューラー・ブロックマン)が考案したデザインの手法です。 1981年に刊行した「Grid Systems in Graphic Design/Raster Systeme Fur Die Visuele Gestaltung」は、さまざまなレイアウトにグリッドシステムを用いて、繊細にデザインが行われています。 このグリッドシステムは、エディトリアル デザインで広く利用され、今日ウェブデザインにも多くの影響を与えています。 グリッドシステムの概要 グリッドシステムの機能 グリッドシステムをサイトに導入するメリット グリッドシステムに関する書籍 グリッドシステムの概要 グリッドシステムとは、縦横線の格子(グリッド)を下地として、そこに出来たブロックごとに図版や文字を配置し、デザインを行う
2010年は、パターン認識と機械学習(PRML)を読破して、機械学習の基礎理論とさまざまなアルゴリズムを身につけるという目標(2010/1/1)をたてています。もうすでに2010年も半分以上過ぎてしまいましたが、ここらでまとめたページを作っておこうと思います。ただ漫然と読んでると理解できてるかいまいち不安なので、Python(2006/12/10)というプログラミング言語で例を実装しながら読み進めています。Pythonの数値計算ライブラリScipy、Numpyとグラフ描画ライブラリのmatplotlibを主に使ってコーディングしています。実用的なコードでないかもしれませんが、ご参考まで。 PRMLのPython実装 PRML読書中(2010/3/26) 多項式曲線フィッティング(2010/3/27) 最尤推定、MAP推定、ベイズ推定(2010/4/4) 分類における最小二乗(2010/4/
パターン認識と機械学習 (PRML) の第1章、「多項式曲線フィッティング」「確率論」に関しまとめ話した講師資料です。 -PRML復習レーン(第1回) (10/05/01) #PRMLrevenge hamadakoichiRead less
藤吉弘亘. "Gradientベースの特徴抽出 - SIFTとHOG - ", 情報処理学会 研究報告 CVIM 160, pp. 211-224, 2007. Scale-Invariant Feature Transform(SIFT) は,特徴点の検出と特徴量の記述を行うアルゴリズムである. 検出した特徴点に対して,画像の回転・スケール変化・照明変化等に頑健な特徴量を記述するため,イメージモザイク等の画像のマチングや物体認識・検出に用いられている. 本稿では,SIFT のアルゴリズムについて概説し,具体例としてSIFT を用いたアプリケーションや応用手法への展開について紹介する.また,SIFT と同様にgradient ベースの特徴抽出法であるHistograms of Oriented Gradients(HOG)のアルゴリズムとその応用例として人検出についても紹介する. Scal
3日で作る高速特定物体認識システム 黄瀬浩一,岩村雅一 (大阪府立大学) 1.システム構成 2.システムの作成 2.1 特徴抽出モジュール 利用するプログラム A C implementation of SIFT by Rob Hess 環境設定 OpenCV 全体のページ インストールの方法: 例えばこのページ. Visual Studio(2005, or 2008) 設定の方法: 例えばこのページ. 参考文献 藤吉先生による日本語の解説: 分かりやすい. Wikipedia: リンクが豊富. Lowe教授のページ: 本家.手軽に試せるプログラムもある.Matlabバージョンは非常に簡単. 2.2 物体モデル 物体モデルといっても特別な仕掛けがあるわけではなく, <物体ID> <特徴ベクトル(128個の数字)> が特徴ベクトルの個数だけ並んだ1つのファイルです. x行目は,特徴ベクトル
情報処理学会の学会誌『情報処理』の2008年9月号(Vol.49, No.9)に「3日で作る高速特定物体認識システム」という特集記事があります。OpenCVを用いた面白そうなプロジェクトなのでレポートにまとめてみようと思います。3日でできるかはわからないけど。 残念ながらこの記事はPDFを無料でダウンロードすることができません(CiNiiでオープンアクセス可能になったみたいです)。なので会員以外で元記事が読みたい人は図書館でコピーする必要があるかも・・・また、2009年9月号の人工知能学会誌にも物体認識の解説「セマンティックギャップを超えて―画像・映像の内容理解に向けてー」があります。こちらも非常に参考になりますが同様にPDFが手に入りません・・・。他にもいくつかわかりやすい総説論文へのリンクを参考文献にあげておきます。 物体認識とは 物体認識(object recognition)は、画
制約なし最適化問題に対する準ニュートン法 (非線形計画法) 製作者:向 譲治 制約なし最適化問題は次のように表す。 この問題の解法としてニュートン法、準ニュートン法などがある。 ニュートン法 ニュートン法は反復法の一種である。反復法とは、適当な初期点 から出発して、 によって次の点列を生成し、最終的に最適解に収束するものである。ここでを探索方向という。 ニュートン法では、各反復において、関数 f を でテイラー展開して得られる2次関数
最近、機械学習とか、そのアルゴリズムのひとつであるサポートベクターマシンとかやってるわけですが、そもそも機械学習ってなんなんでしょか? 機械学習ってのは、なんとなく与えられた点の分類から、新たに与えられた点の分類を推測するのですが、ようするに、点が与えられたときにそこから分類の領域を推測しておいて、新たな点がきたときにはどの領域に入るかを判別するのです。 ニューラルネットワークは、名前にニューロンとかついてて、とてもステキな響きがするのですが、あれは関数のあてはめを行っているのです。そうやって関数をあてはめることで、領域の境界面を求めます。 NN法は、学習とかせず、一番近いデータが同じ分類になるはずという戦略でやってます。 サポートベクターマシンも考え方としてはNN法と同じで、新しい点がやってくると、学習したそれぞれの点までの近さを計算して、一番ちかい分類を求めます。そのため、学習データが
There’s a certain type of person who, upon seeing a new language, feels compelled to write a game with it. Functional languages represent a unique challenge in this respect, as has been written about at some length elsewhere. Clojure adds an interesting wrinkle to this problem, in the form of its Java interop. If a game consists of a thin layer of Clojure wrapped around a full-featured Java game e
Perceptron の実装とか見ると、ものすごく簡単なので、本当にこれで学習できちゃうの? と不安になってしまいました(苦笑)。 こういうときは、実際にパーセプトロンが計算しているとおりに、紙と鉛筆で計算してみて、期待する結果が出てくることを確認してみたくなります。 参照する教科書は「パターン認識と機械学習・上」(PRML) の「 4.1.7 パーセプトロンアルゴリズム」。 短い節です。必要最低限のことを一通り書いてある感じかな。 計算に用いるサンプルですが、手で計算できる規模でないといけないので、論理演算の AND を試してみることにします。 簡単に勉強 ちゃんとした説明は PRML などを見て欲しいですが、とても簡単にまとめます。 2値の線形識別モデルは、N 次元空間内を (N-1) 次元の超平面(決定面)で分割することで、入力ベクトル x から得られる特徴ベクトル φ(x) が2つ
コラム、もしくは文学的な何か 文学系 ヨハネ8・1-11 あなたたちの中で脆弱性のないシステムを作ったことがある者が、まず、この男に石を投げなさい 枕草子 春は設計 まったく白紙のままの、要求は少しも決まらないで 雪国 営業に連れられてゲートを抜けると修羅場であった その他 ネタ系 プログラミング言語人気TOP10に対する個人的簡易解説 Java, C, C++, PHP, Python, Perl, Ruby, JavaScriptなどに対する簡易説明一覧(2011/1/25) オリジナル(捏造)コーディング用語集 うちのサイトやブログで捏造したプログラミング関連の用語を集めたもの(2011/02/09) ラブプラスに見る時間軸方向の擬似同期 擬似同期と今後のサービスに関する妄想(2009/9/27) Apple、Adobe、Google、MSの立場比較表(妄想版) 2010年2月頃に妄
Not your computer? Use a private browsing window to sign in. Learn more about using Guest mode
単語の重み付けの古典的な方法に tf-idf があります。文書中の各単語の tf-idf 値計算し、値でソートすると、その文書に特徴的な単語リストを得ることができます。 http://nais.to/~yto/clog/2005-10-12-1.html tf-idf は、単なるヒューリスティックスだと考えられていましたが、最近言語モデルに基づく情報検索手法がさかんに研究されるようになり、tf*idf の解釈が明らかになってきました。言語モデルに基づく手法は、ヒューリスティックスばりばりの手法と同性能にもかかわらず、文書のランキングに理論的で合理的な説明を与えることができます。 情報検索は、クエリ q に対し、もっとも適合する文書 d_opt を求めるタスクです。つまり、q が与えられたとき、文書 d が出現する確率 p(d|q) の最大化問題と解釈できます。 d_opt = argmax
By Christopher D. Manning, Prabhakar Raghavan & Hinrich Schütze Website: http://informationretrieval.org/ Cambridge University Press © 2008 Cambridge University Press Comments, corrections, and other feedback most welcome at: informationretrieval (at) yahoogroups.com Brief Contents Boolean retrievalThe term vocabulary and postings listsDictionaries and tolerant retrievalIndex constructionIndex com
2017/10/28 "第60回 データマイニング+WEB @東京( #TokyoWebmining 60th ) ー 機械学習 活用 祭り ー" を開催しました。 第60回 データマイニング+WEB @東京( #TokyoWebmining 60th ) ー 機械学習 活用 祭り ーEventbrite Google グループ 会場提供して下さった FreakOut さん、どうもありがとうございました。素敵なトークを提供してくれた講師メンバーに感謝します。多くの方々の参加を嬉しく思っています。 参加者ID・バックグラウンド一覧: 参加者セキココ:第60回 データマイニング+WEB @東京 セキココ (作成してくれた [Twitter:@komiya_atsushi] さんに感謝) 以下、全講師資料、関連資料、ツイートまとめです。 AGENDA: ■Opening Talk: O1.「デー
Ruby for Scientific Computing Rubyで科学計算する例の紹介です。事例追加をお待ちしています。 カテゴリは後で調整するかもしれません。-masa *1 *2 *3 *4 *5 Ruby科学計算関連総合 SciRuby - Since June 2005, by Ara T. Howard. るびま0006 Ruby Library Report [第5回] 数値計算と可視化 - 著者: 堀之内 武 各分野での利用 Mathmatics - 数学 Algebra - 計算代数 Polynominal - by 児玉さん Algebra - by 原さん - 多変数多項式環のグレブナ−基底の実装。 Ruby Mathematica - MathematicaへのRubyインタフェース。 「プログラミングのための線形代数」 - 平岡和幸著 Earth Science
ウエーブレット変換について学ぶ。フーリエ変換の復習も含む。 フーリエ変換の基礎 1 http://d.hatena.ne.jp/monja/20040330#p1 2 http://d.hatena.ne.jp/monja/20040412#p1 「ウェーブレット」とは何か? 1 http://d.hatena.ne.jp/monja/20041215#p2 2 http://d.hatena.ne.jp/monja/20041221#p1 3 http://d.hatena.ne.jp/monja/20050106#p1 4 http://d.hatena.ne.jp/monja/20050116#p1
近年,機械学習の研究分野において,ブースティングと呼ばれるアルゴリズムが注目を集めています.アルゴリズムと書きましたが,正確には教師あり学習を実行するための機械学習のメタアルゴリズムであります.すなわち,一般の(任意の)機械学習アルゴリズムをもっと賢く実行するためのフレームワークと言えます.弱い学習機をまとめて,重みを付けてその結果を足し合わせることで,強い学習機を生成することを目指します. 核となる機械学習アルゴリズムに何を用いるかは,制限されておりません.弱い分類器は,学習の正確さ(あるいは汎用性?)に基づいて,重み付けされます.「分類器をいくつも作成する」と言っても,どう作成するのかが分からないと思いますが,実際には,元のデータに重み付けをし直して(何度も重みづけを行い),それにより共通の機械学習アルゴリズムで学習し,複数の分類器を作ります.一般には,誤分類される例(サンプル)は重み
Multivariate, Sequential, Time-Series, Domain-Theory
カイ二乗値を用いた特徴選択(2010/6/25)の続きです。今まで使ってきた20 Newsgroupsというデータは英語文書でかつ元ネタがよく分からずあまり面白くなかったので、今回はこのブログ(人工知能に関する断想録)の記事を分類してみます。このブログの各記事には私の判断でカテゴリをつけています。たとえば、この記事は[機械学習][自然言語処理]です。カテゴリのリストはこのブログの左メニューにあります。この前、少し整理したので全部で18のカテゴリがあります。新しい記事を書いたとき自動でカテゴリを割り振ることはできるのでしょうか? (注)プログラミング言語はPythonを使っています。シリーズもので以前作ったコードを再利用してるので検索で飛んできた人はナイーブベイズを用いたテキスト分類(2010/6/13)から順に読んでください。 はてなダイアリーデータのダウンロードと整形 まず、はてなダイア
Kami tahu bahwa slot online menarik, menyenangkan, dan dapat meningkatkan peluang Anda untuk memenangkan banyak uang. Tetapi dengan begitu banyak pilihan di luar sana, bagaimana Anda tahu mana yang harus dipilih? Jika Anda ingin mencapai kesuksesan di industri judi slot, Situs Judi Slot Terbaik dan Terpercaya Nomor 1 di Indonesia adalah pilihan terbaik Anda. Situs ini telah memperoleh reputasi yan
次回のCVIM勉強会でmean-shiftについて話すことになってしまったので、理解のためにmean-shiftアルゴリズムを実装してみた。 カーネルは一番簡単なフラットカーネルを利用し、また画像もグレイスケール画像のみを扱うためピクセルの値は[0,256]の一次元データとみなす。 またナイーブな実装だと512*512ぐらいの画像でもすごい時間がかかるので二分探索とFenwickTree(動的に更新する必要はないので別に使う必要なかった、累積和を保存した配列に変更)を使ってグレイスケール画像かつフラットカーネルであることを利用して高速化した関数meanShiftLoopFastを用意した。 元画像は下のようになっている。 bandWidth=10のときは下のようになり、肌の部分が同じ値に収束していることがわかる。 bandWidth=20のときは以下のようになり、やや平滑化されすぎているこ
前々からアニメ顔類似検索のbag of featuresで使っている特徴点の決め方がイラストにあまり合っていない気がしていたけど、実装がすごく面倒くさそうだったのでやらなかった。しかし、最近SURFに特許があることが発覚して、SURFを使っている意味は特にないなーと思ったので、満足のいくものをつくろう思ったのであった。(ただ特許は気にせずにやる) ということで、こんなのができた(クリックで拡大)。 結構速いし、スケールの変化、回転、ある程度のゆがみには大体対応できている。対応点の決定は、点の特徴ベクトルが一番近い点と二番目に近い点を取って、ふたつの特徴ベクトルの距離の差を確信度として、確信度が高いもののみマッチングしたことにして表示している。 SIFTやSURFに比べると点多すぎだろ(なぜ渦巻きに…)と思うかもしれないけど、これは僕なりにイラストの特性とかbag of featuresで使
6. 画像特徴量の変遷 第一世代 第二世代 第三世代 対象物全体 局所情報 局所情報のつな 輝度分布 SIFT がり wavelet SURF Haar-like Joint Haar-like HOG Joint HOG Shapelet 1990年代 2000 - 2005 2006 - 現在 7. 局所特徴量 SIFT 1999 •Google の論文で言及http://www.esprockets. com/papers/www2008-jing-baluja.pdf。ただし、アルゴリズムが著作 権で守られている。C#ライブラリ libsift, OpenCV SURF 2006 SIFT の処理速度改良版。OpenCV haar-like特徴 2001 近接する2 つの矩形領域の明度差 Haar- 顔認識に用いられ(OpenCVの顔検出) like HOG(Histogram o
画像検索についていろいろとちょっとした実装や調査をしていました。 そろそろ資料等をまとめておかないと忘れそうなので書いておきます。 まずさっそくですが「画像を検索する」と一言でいっても、 それには以下のような種類があり、対象や方法は様々です。 類似画像検索 …… 対象画像から特徴を抽出し類似した画像を検索する 特定物体認識 …… 単一の対象画像から特徴を抽出しその物体と同じモノを認識 一般物体認識 …… 複数の対象画像から特徴を学習しその物体と同じ種類を認識 「類似画像検索」は Google Goggle などが有名で、「一般物体認識」は笑い男ツールなどの顔認識でよく知られていますね。「特定物体認識」はまだそこまでポピュラーに使われてませんが、東のエデンシステムなどはまさにこれです(笑)。 さてではどのような方法で検索を行うかということですが、ここで画像の特徴といっている、これを使います。
http://www.vision.ee.ethz.ch/~surf/papers.html - 本家 http://opensurf1.googlecode.com/files/OpenSURF.pdf - Implementation note 下のPDFを理解するのに十分な量を書けたらという感じで。 SIFTやSURFの仕事 http://www.vision.cs.chubu.ac.jp/SIFT/ SIFTやSURFの最終的な仕事は、"スケール(大きさ)と回転に対して不変な特徴量を求めること"。 コンピュータにデータを比較するためには、データを(複数の)数値 = 特徴量に変換してやる必要が有る。 人間にとっては、ある画像を拡大縮小したり回転させたりした画像も"同じ"画像なので、特徴量も回転や拡大縮小の後も同じである(あまり変化しない)ことが望ましい。 構造 一般的にSIFTとかS
◆画像フィルタ処理 二値化、Pタイル法、判別分析法(大津の二値化)、平滑化フィルタ、ガウシアンフィルタの特徴、メディアンフィルタ 、エッジ抽出、アンシャープマスキング(鮮鋭化フィルタ)、膨張・収縮・オープニング・クロージング、細線化、画素の補間(Nearest neighbor、Bilinear、Bicubic)、外周画素の処理 ◆画像処理プログラム 二値化、ビットマップファイルフォーマット、多ビット(10Bit、12Bit)画像データの表示、フォーマット、VB6.0でビットマップファイルを開く、拡大鏡+プロファイル機能(開発中!)、残効錯視、.NET(C++/CLI)による画像拡大縮小表示、画像処理サンプルプログラム、ルックアップテーブル(ガンマ補正の例) クラス/ハンドルの作成、解放、ファイルを開くダイアログボックスの表示、ビットマップファイルをピクチャボックスに表示、ラベル背景色の透
アルゴリズム編 「構造編」も終りTEOプログラミングにも慣れてきましたか? 「アルゴリズム編」では,画像処理で頻繁に用いられるフィル タリングや画像の拡大・縮小の方法について扱います.この節の最後の 課題では今まで学習したことを応用してモザイク画像の生成を行います. なお本節ではソースは掲載しません.アルゴリズムとプログラミングの 際の注意事項を示しますので各自で挑戦してみて下さい. この節の扱う課題の次のようになっています. ラプラシアンフィルタ ガウシアンフィルタ 画像の拡大・縮小 画素値の内挿 モザイク画像の生成 ラプラシアンフィルタ [アルゴリズム] ラプラシンフィルタは画像の鮮鋭化やエッジ検出に使用されるフィルタ です.ラプラシアンとは2次微分の意味です.画像の2次微分は次のよう に行います.Bを注目画素とする.両隣の画素A, Cとの差分をとすると,これらは次式で表 せる.ただし
2. SIFTの拡張 • 2.3.1 PCA-SIFT – SIFTで検出したキーポイントの勾配情報をPCAを用い低次 元に射影する – 高速なマッチング、高いマッチング精度 • 2.3.2 GLOH – Gradient Location and Orientation Histogram – SIFTの特徴量記述を拡張 – よりロバストな特徴量が得られる • 2.3.3 SURF – Speeded Up Robust Features – キーポイント検出、スケール検出の部分を近似 – 高速に特徴量を記述することができる 3. PCA-SIFT • キーポイントの検出はSIFTと同じ 1. キーポイントのスケールに対応した領域を 41×41の画像にリサンプリングする 2. リサンプリングした画像の水平・垂直方向の勾 配を算出し、39×39×2=3042次元の特徴量を 得る 3. 30
Linux で signal + マルチスレッド、というとハンドラであれこれしようとすると、これはもう悪夢のように大変でひとつ signal 処理用スレッドを用意するのが定石のようです。 さてはて、そんなことで FreeBSD もそういうコードを書いて fork した子供を回収してやろうとしたところ、全く動いていません… orz これはどうしたんだろう??と調べた結果 空の signal handler を signal でしこんでやると動きだすことがわかりました。 はてさて、これはカーネルにどんな実装の差があるのでしょうか? そして、他のBSDではどうなっているのでしょうか? これが今回の疑問です。 実験 ひとまずこんなコードを使って引数に 0-3 を渡して実験します。中身はこんな感じのプログラムです。 #include <stdio.h> #include <signal.h> #in
パネルを作成して画像を表示し、ボタンで画像を切り替える。 パネルに画像を表示するには、proxy を使って paint メソッドをオーバーライドする。 画像の再描画の際は、ref を使って保存しておいた BufferedImage から取り出して描く。 (import (javax.swing JFrame JPanel JButton BoxLayout) (javax.imageio ImageIO) (java.awt Graphics2D Color Dimension) (java.awt.image BufferedImage) (java.awt.event ActionListener) (java.io File)) (def *sample-image-path1* "/Users/hoge/sample1.jpg") (def *sample-image-path2*
クラスタリングツールbayonとOpenCVを使って、画像からbag-of-keypointsを特徴量として抽出する手順について書きたいと思います。bag-of-keypointsは自然言語処理でよく使用されるbag-of-words(文章を単語の集合で表現したもの)と同じようなもので、画像中の局所的な特徴量(keypoint)の集合で画像の特徴を表します。bag-of-wordsと同じ形式ですので言語処理と同じように、bag-of-keypointsデータを使ってクラスタリングツールに適用したり、転置インデックスに載せたりといったことが可能になります。 今回は画像からbag-of-keypointsを取り出し、そのデータを使ってbayonで画像集合をクラスタリングするところまでやってみます。ちなみに画像処理は完全に素人で、この記事もニワカ知識で書いているので、間違っている箇所やもっと効率
とにかく早く動かす欲で半分くらい想像でやってしまったので、誤りがあれば指摘などなど。 SURFとは! SURFは回転とスケールに不変な特徴点検出アルゴリズムで、keypoints(点の位置とスケール)とdescriptor(正規化された勾配のヒストグラム)を得ることができる。 このdescriptorsを画像の局所的な(画像パッチの)特徴ベクトルと考えると、画像に含まれるSURF Descriptorの集合を(十分大きければ)画像のidentificationとすることができる。 大まかな内容 MNISTの学習データからSURF Descriptorを抽出する ベクトル量子化のためのコードブックを作成する 抽出したSURF Descriptorをk個にクラスタリングする 各クラスの重心をコードベクトルとし、クラスをvisual-wordという単語の単位にする 画像をグローバルな単語の集合と
Normalized Cuts Segmentation Code, for MATLAB Code written by: Timothee Cour (INRIA), Stella Yu (Boston College), Jianbo Shi (UPENN) (c) 2004 University of Pennsylvania, Computer and Information Science Department. This is a Matlab/C++ implementation of Normalized Cuts for image segmentation and Data Clustering. Download download Ncuts code (ncut_9.zip) new (January 22, 2010): release of all
2. ï ï É»¾ Ù±±¹´» ²»© ¿¹®·¹¿¬·±²ÅïÃ î ¹±± ² î í Ñø² ÷ ì ïòï ÔÍØøÔ±½¿´·¬§ Í»²·¬·ª» Ø¿¸·²¹÷ ÔÍØ ÔÍØ ïòïæ ï æ î ¸¬¬°æññ©©©ò¿¬³¿®µ·¬ò½±ò¶°ñ²»©ñîððèïîñðïñ®¿µ«¬»²ò¸¬³´ í ì ÐÔÍ× ÔÜß ï 3. ÔÍØ ×²¼§µ Þ·¬ Í¿³°´·²¹ Ø¿³³·²¹ ÔÍØ Åîà ޮ±¼»® Ó·²ó©·» ײ¼»°»²¼»²¬ л®³«¬¿ó ¬·±²øÖ¿½½¿®¼ ÔÍØ÷Åíà ݸ¿®·µ¿® ο²¼±³ Ю±¶»½¬·±²ø½±·²» ÔÍØ÷Åìà ײ¼§µ °ó¬¿¾´»øÔ° ÔÍØ÷Åëà ë ÉÛÞ ÔÍØ °ó¬¿¾´» ÔÍØ °ó¬¿¾´»øÛ«½´·¼ ÷ ο¼±³ Ю±¶
JavaDMのブログ、JAVAでデータマイング!です。『情報工学の難しいそうなアルゴリズムをJAVAで実装して、ひたすらその結果を公開する』ブログになる予定。JAVAでデータマイング!『情報工学の難しいそうなアルゴリズムをJAVAで実装して、ひたすらその結果を公開する』ブログになる予定。エンジニア/学び・教育 NaiveBayes 最近仕事で spam 判別器なんての作成していたんですが、この spam の分類器を作成していて思ったことがあります。 自分も割とそうなのですが、いわゆる精度を上げるために、アルゴリズムに傾倒してしまうようなことが普通にあって、 ベイズがベイジアンネットになり、SVMになり、SVM+カーネルロジスティックのBoostingになり・・・って具合でどんどん難しいアカデミックなところを攻めてしまうわけですが、 しかしながら実際の所、純粋に精度を上げるためには、
次に、点NにおけるpN, qNの値を求めます。 その際に、 AL λL (pN-pL)/(xN-xL) + C L(qN-qL)/(xN-xL)= 0 AM λM (pN-pM)/(xN-xM) + CM(qN-qM)/(xN-xM)= 0 を連立して解く必要があります。ただし、これらの式は、 AL λL (pN-pL)+ C L(qN-qL)= 0 AM λM (pN-pM)+ CM(qN-qM)= 0 のように簡略化できます。 AL=AM=1 CL= - uL2 = -0.42 = -0.16, CM= - uM2 = -(-0.65)2=0.4225 pL=10*0.2=2, pM=10*0.3=3, qL=3*0.2=0.6, qM=3*0.3=0.9 ですので、結局、 0.4(pN - 2.0)- 0.16(qN - 0.6)= 0 -0.65(pN - 3.0) - 0.422
このページでは、あらゆる物理量の基本となる正規分布:ガウス関数について説明します。このページの知識を用いると、電子の状態密度図を書いたり、p-DOSを書いたり、吸収スペクトルの位置の分布に幅をつけたりすることが出来ます。 ●例 を に変換する。 (グラフの縦横比のずれは、本質的ではありません)。 ●ガウス関数の基礎 例えば、ある学校(生徒数約750人)のテストの成績が、次のような グラフで表されるとします(満点が100点で平均点が50点)。 このとき、x = 0からx = 100の範囲でこのグラフで囲まれた部分の面積が 750となります。 一般に、自然界で起こるあらゆる現象は、このような曲線で表されると 言われています。この曲線を正規分布、またはガウス関数と呼んでいます。 ガウス関数の一般式は、次のようになっています。 このグラフで囲まれた面
n i xi w y x y w a y w a x f x y h x y g x y f x x h x h x g x f x h x g x x h(x) g(x) f(x) h j i
ヒトをはじめとする哺乳類において、目から入った情報を解析してモノや空間を認識するために脳の中の「視覚野 ( Visual Cortex ) 」と呼ばれる領域が使われていることが知られています。目から入ってきた信号は、最初に大脳の中の「一次視覚野 ( V1 ) 」に到達し、その中の「受容野 ( Receptive Field ) 」が反応することによって処理され、さらに高次の視覚野に伝達されていきます。「デイヴィッド・ハンター・ヒューベル ( David Hunter Hubel ) 」と「トルステン・ニルズ・ウィーセル ( Torsten Nils Wiesel ) 」は、1959 年に、ネコを使って視覚野のニューロンの電気信号を調べる実験の中で、個々の細胞が特定の傾きを持った線分に対して反応することを発見し、この業績によって 1981 年にノーベル生理学・医学賞を受賞しました。さらに、J
1 コンピュータビジョン特論 Advanced Computer Vision 第5回 最適なエッジ検出器 Canny Edge Detector 良いエッジ検出器とは • Good Detection: ノイズに強い • Good Localization: 真のエッジの所を検出 • Single Response:各点に一本のエッジを検出 Canny Edge Detection Tutorial http://www.pages.drexel.edu/~weg22/can_tut.html Canny Edge Detector の処理手順 1. Gaussianフィルタで画像を平滑化 2. 平滑化された画像の微分を計算 3. 勾配の大きさと方向を求める 4. “Non-maximum Suppression”処理を行う 5. “Hysteresis Threshold”処理を行
年が明けてもう一ヶ月経ちましたね.岡野原です. 今日はMinHashと呼ばれる手法を紹介します.これは特徴ベクトルの高速な類似検索に利用することができます(クローラーの文脈だとShingleとして知られている). 今や世の中のあらゆる種類のデータが,高次元のバイナリベクトルからなる特徴ベクトルで表されて処理されるようになってきました.例えば文書データであれば文書中に出現する単語やキーワードの出現情報を並べた単語空間ベクトル(Bag of Words)で表し,画像データも,SIFTをはじめとした局所特徴量を並べた特徴ベクトル(とそれをSkecth化したもの)として表せます.行動情報や時系列データも特徴量をうまく抽出する.グラフデータもFast subtree kernels[1]と呼ばれる方法で非常に効率的に特徴ベクトルに変換することができ,グラフの特徴をよく捉えることができるのが最近わかっ
人は、目から得られるたくさんの情報を常に処理し、それに対して判断を行っています。目に映るモノ全てに対してそれが何かを一々判断していたのでは、特に瞬時の判断が必要な場合は生死に関わることになる可能性もあります。車の運転中、前の車が急停車したという情報を処理するときは、目の前に近づいてきた車やそのブレーキランプを見て判断すれば充分なのに、周囲の景色や道路標識なども常に処理されていては判断が間に合わなくなります。そのため、本当に注目すべきモノだけに無意識に注意を引くような仕組みが人には備わっています。これは、人に限らず他の動物にもあり、天敵などの危険から逃げたり、逆に獲物を追う時に逃げる対象の動きを瞬時にとらえるなど、常に視覚情報から注意を引く部分を抽出して、それ以外の情報はカットしてしまう機能が必要になる機会は人よりも多いことが想像できます。 今回は、注意を引く対象を見つけるための仕組みとして
ここでは、プログラムなどでよく使用されるアルゴリズムについて紹介したいと思います。 元々は、自分の頭の中を整理することを目的にこのコーナーを開設してみたのですが、最近は継続させることを目的に新しいネタを探すようになってきました。まだまだ面白いテーマがいろいろと残っているので、気力の続く限りは更新していきたいと思います。 今までに紹介したテーマに関しても、新しい内容や変更したい箇所などがたくさんあるため、新規テーマと同時進行で修正作業も行なっています。 アルゴリズムのコーナーで紹介してきたサンプル・プログラムをいくつか公開しています。「ライン・ルーチン」「円弧描画」「ペイント・ルーチン」「グラフィック・パターンの処理」「多角形の塗りつぶし」を一つにまとめた GraphicLibrary と、「確率・統計」より「一般化線形モデル」までを一つにまとめた Statistics を現在は用意していま
こちらの記事を参考にClojureで書いてみた。 画像はこちらからお借りしました。 二重ループでピクセル単位の処理をしている部分がなんとなく嫌だったので全座標を要素とするシーケンスをつくり、それを加工しまくって最終的に不透明領域を表すRectangleオブジェクト群を作っています。create-alpha-matrix, get-alpha-bounds, create-rectangles あたりの流れがそれに相当する処理ですが、イマイチ読み難いコードになってしまいました。マトリクスをシーケンス処理で扱うというのはいいアイディアだと思ったんだけどなあ。 (ns sample-shape (:use [clojure.contrib.core :only (new-by-name)]) (:use [clojure.contrib.seq-utils :only (flatten)]) (
as3D の原理をあまり知らなかったので、ActionScript 3.0 で1から勉強してみた。1からなのでフレームワークは使わず、自力で実装していく。Web 上には色んな資料があってありがたいだけど、玉石混交な上に、有用なものでも一本道で幅の狭いものが多い。前提知識のない自分にとっては、資料間の関連性を理解するのが大変だった。なので、なるべく簡単なところからスタートしつつ、広く浅く体験していくことを目標としてみる。まずは、四面体をワイヤーフレームで表示するところからスタートしよう。四面体を定義するまずは、3次元上の点を表現する Point3D クラスを作る。 class Point3D { public var x:Number; public var y:Number; public var z:Number; public function Point3D(_x:Number =
Clojureではいろんなデータを「シーケンス」として扱います(Clojure - sequences)。だからシーケンスを操作する関数をいろいろ使うことになりますが、ちょっと複雑な操作をしようとすると基本的な関数だけでは足りなくて自分で処理を書くことになります。ところがあとで標準ライブラリをよく読んでみると「この関数使えばもっと簡単に処理を書けたんじゃん! 知らなかったばっかりに(ぐぬぬ」となることもあります。 拡張ライブラリのclojure.contrib.seqはちょっと便利なシーケンス関数をまとめたものですが、ドキュメントをちょっと読んだだけだと使いかたが分かりにくい。そこで各関数の使用例をまとめてみました。これでライブラリにある関数を再発明しないで済むはずだ! gist: 780422 - GitHub rec-seq、rec-catはイマイチ用途が分かってません。 最後のfil
基本的な画像処理手法について 画像のディジタル化(カラー・モノクロ) このページで使用するサンプル画像について 輝度値ヒストグラム カラー画像の画像処理 色の変換(RGB->YUVへの変換) 色の変換(鮮やかさを上げる・下げる) 明るさの調整(γ補正) グレイスケール(モノクロ)画像の画像処理(階調に関する) 明るさの調整(γ補正) 階調値の部分拡大強調 階調イコライゼーション(ヒストグラム均一化) 2値化 グレイスケール(モノクロ)画像の画像処理(フィルタ処理) シャープ化とぼかし ノイズ除去(メディアンフィルタ) 1次微分(差分)によるエッジ検出 2次微分(差分)によるエッジ検出 実際に体験してみる(学内限定) グレイスケール画像の画像処理 カラー画像の画像処理 画像圧縮 一般データの圧縮 画像の圧縮(その1:ランレングス,GIF) 画像の圧縮(その2:JPEG) 参考文献 谷口慶治編
Although there were not many updates to the blog in the last years, Incanter’s development still happens with contribution of many people. As result of this, I just pushed 1.9.3 release to Clojars. This release includes several fixes in the charts library, makes Incanter completely compatible with 1.9.0 (Incanter itself still lists 1.8.0 as dependency), plus some other fixes, listed at changelog.
n × n のマス目のそれぞれに 1 または 0 が記してあり、その中から 1 だけから成る最大の長方形の面積を求めて下さい。 これは前に考えた正方形探索の応用で、今回は最大の長方形を探します。この問題も正方形探索で用いたアルゴリズムを応用して動的計画法で解くことができますが、正方形探索ほど単純な式では解決できません。左上角から右下角に向かって個々の要素を計算していく過程で、既に計算された左と上の要素を利用していきますが、長方形探索の場合、W[i][j] の値はそこから左上方向に向かってできる正方形の辺の長さではなく、そこから左上方向に向かってできる全ての長方形の情報を記録する必要があります。このアルゴリズムの詳しい解説が、プログラム・プロムナードに掲載されています。このアルゴリズムは、現在の要素を求めるために重複を避けながら左と上の要素をマージしたりと、プログラムがやや複雑になります。
これまで紹介してきた内容の総集編的なサンプルプログラムを作成してみました。 これから画像処理を学ぶ人にも使ってもらえると幸いです。 でも、これ以上の内容は本職の仕事にも差し支えそうなので、これがギリかも。 (ちなみに本職では画像処理ツールや画像処理アルゴリズムの開発やってます。) 基本的な機能としては ●拡大縮小表示(10,25,50,75,100,150,200,500,750,1000,5000,10000%) ●内挿補間表示(NearestNeighbor, Bilinear, Bicubic, HighQualityBilinear, HighQualityBicubic) ●カラーモノクロ変換(RGB平均、YUVのY) ●二値化処理(しきい値設定可) ●ファイルフォーマット変換(bmp,jpg,png,tifファイルの読み込み、保存) 画像処理ではモノクロ8Bitでの画像処理が多
紫蘇カンファレンス2010というイベントでLTをしました。紫蘇カンファレンス 2010 - しソ部Togetter - 「紫蘇カンファレンス 2010」内容は、StaKKのスペル訂正機能についての解説です。統計的自然言語処理エンジンStaKK - nokunoの日記shisoconf 2010 Spelling CorrectionView more presentations from nokuno. 他の人は画像会話用の画像検索エンジン「tiqav(ちくわぶ)」や、Flickrのお気に入りをふぁぼったー的に表示してくれる「flistr」など、幅広いサービスや技術やネタが満載の楽しいイベントでした。tiqav / ちくわぶFlistr - View Flickr Photos Favorited by Your ContactsWWSみんなが頑張っているのを見ると刺激になりますし、今の環
以下の論文が面白かったので紹介したいと思います。Learning a Spelling Error Model from Search Query Logs Noisy Channel Modelによるスペル訂正エンジンスペル訂正には標準的なNoisy Channel Modelを使うことができます(最近は識別モデルも流行りのようです)。A Spelling Correction Program Based on a Noisy Channel ModelNoisy Channel Modelでは、入力が与えられたときの訂正候補の確率を以下のようにモデル化します。言語モデル はコーパスやクエリログから単語N-gram、文字N-gramなどを推定し、スムージングして利用することが一般的です。エラーモデル は入力と出力候補の編集距離をもとに計算することが多いです(他に共起頻度やクリックログを利
最近では企業における機械学習の認知度も高まっていてエンジニアの求人募集でも「望ましいスキル:機械学習」というのをよく見かける。特にweb系の企業だと当たり前のように機械学習を活用した魅力的なサービスが生み出されているようだ。 そんなわけで先日書いた機械学習の入門記事もそれなりに好評で末尾の教科書リストも結構参考にしていただいた様子。ということで、これから機械学習をはじめる人のためにオススメの教科書を10冊ほどピックアップしてみた。 幸いにして機械学習の分野には良書が多い。5年前はナイーブベイズすら知らなかった私も、これらの教科書のおかげでなんとか機械学習を使えるようになりました!(個人の体験談です。効果には個人差があります) 参考: 機械学習超入門 〜そろそろナイーブベイズについてひとこと言っておくか〜 - EchizenBlog-Zwei 最初に既存の機械学習の教科書まとめを挙げておくの
Scalaで集合知プログラミングのまとめです PythonとScalaのお勉強を兼ねつつもゆる〜い感じで進めていきますデス 目次 1章 集合知への招待 Scalaで集合知プログラミング その1 2章 推薦を行う 嗜好データの定義 Scalaで集合知プログラミング その2 ユークリッド距離を使った類似度 Scalaで集合知プログラミング その3 ピアソン相関係数を使った類似度と類似度ランキング Scalaで集合知プログラミング その4 アイテムを推薦する Scalaで集合知プログラミング その5 アイテム間の類似を計算する - 嗜好値データの変換 - Scalaで集合知プログラミング その6 deli.cio.us APIの利用準備 Scalaで集合知プログラミング その7 deli.cio.us APIを利用した推薦 Scalaで集合知プログラミング その8 アイテムベースのフィルタリング
まず、画像をきれいにするためには、まず処理しようとする画像の濃度値がどのようになっているかを知る必要があります。それが分かってないと、どう変換して改良したらいいか分かりませんからね。 濃度値の分布がどのようになっているか知るための方法として、濃度ヒストグラム (単に、ヒストグラムともいう)があります。濃度ヒストグラムとは、各濃度値に対し 画像全体で同じ濃度値を持つ濃度値の画素数を求め、グラフ化したものです。簡単に いえば、濃度値0の画素は、何個で、濃度値1の画素は、何個で......と数えて、棒グラフにして表したものです。 ちなみに、図.4の画像の濃度ヒストグラムは、図.5のようになります。
[ 2005 | 2006 | 2007 | 2008 | 2009 | 2010 | 2011 | 2012 | 2013 | 2014 | 2015 | 2016 | 2017 | 2018 | 2019 | 2020 | 2021 | 2022 | 2023年度 ] このページには学外向けの公開情報のみを掲載しています. 受講に当たっては各講義の Google Classroom を参照してください. Please check out the Google Classrooom of each class for latest information. 情報科学基礎I (学部3年 第1クォーター,月曜3限/水曜2限) 2クラス並行のうち B2,C1,C2 クラスを担当します. 講義は対面で行われ,資料や課題は Google Classroom で配布されます. 必要に応じて以下の過去
[ パソコン ] Project_Rena_( unofficial plan : shoko ) 編集 履歴 添付 設定 新規ページ作成 メニュー FrontPage Project_Rena unofficial plan : shoko ぷろじぇくと_れな あんおふぃしゃる ぷらん : しょうこ ここはProject_Renaに関するyamanekoの考えや、実装に関する実験やメモのStackです。 つまり僕の知識と創造の整理とaccessableな外部記憶です。 Project_Rena Project_Renaの実装に関するもの。 0.Project_Renaの概要 1.NASK環境からの解脱 2.フォント表示に関する諸問題 3.マウスの動作 付録1.参考文献 shoko Project_Rena で開発するOSのyamaneko的青写真"shoko"の実装に関する開発案と実験の
その1 その2 その3 その4 その5 その6 その7 その8 その9 このところOpenCvSharpの使い方というよりはただのOpenCV 2.0の新機能紹介になっているこのシリーズですが、今回はStar Detector(日本語だとStar検出器?)のサンプルを作ってみたのでご紹介します。Star Detectorの関数はOpenCV 2.0で追加されました。 Star Detectorとは 単純に検索するとこんなページがヒットしたりしますが、おそらくこれではありません。 有益そうなページとしては以下のものしか見つかりませんでした。 http://pr.willowgarage.com/wiki/Star_Detector ここの記述によると、 We are developing a new scale-invariant detector based on rotated squa
Star Detector This page has information about features for pose estimation and object recognition. There are links to relevant papers and presentations, as well as projects being carried out at WG. We are developing a new scale-invariant detector based on rotated squares, which will be fast to compute and should have good stability properties. Nodes The star detector currently resides in ROS pack
画像認識の基礎から応用 和歌山大学 和田俊和 画像認識:「画像」と「認識」,どっちが大事? • 認識:WHAT,WHICHを問う問題 – Cognition or Re‐cognition?=>知ってるから分かる ( Pattern Recognition: 分類問題 ) • 画像:WHERE,HOWを求めなければいけない. – 2次元なのに位置・向き・大きさ等の探索が必要 ( 検出,追跡の問題 ) 画像認識の問題を要約すると A) WHAT・WHICHが 分かれば探索でき る. B) WHERE・HOWがわ かれば認識できる. C) 上のA)B)を同時に 行うことは困難な 問題 Where/How What/Which パターン認識 検出・追跡 Product Space 近年の進歩 • (WHAT・WHICH)認識技術の進歩 – SVM,ADA Boost,(計算論的学習理論) • (
Perlから(も)使える静止画を対象としたアニメ顔検出ライブラリです。※Ruby版もできました。 ここは主に技術的な内容について紹介するページになっています。 ライブラリの使い方や機能の紹介は Perlでアニメ顔を検出&解析するImager::AnimeFaceにあります。この記事は僕自身が書いてます。 (画像はヤスヒロさん撮影の写真) もくじ アニメ顔検出とは? Imager::AnimeFaceとは? より詳しい説明 デモ ダウンロードとインストール アニメ顔検出とは? アニメ顔検出とは、無作為に提示されたひとつの画像データの中に存在する全てのアニメ顔の位置を見つけることです。多様なアニメ顔をひとつの顔クラスとし、画像上のさまざまな領域について『顔』と『顔以外』に正確かつ高速に分類する問題になります。 多くの場合、1枚の画像には0~20個程度の顔しか存在していません。これに対して顔以外
本日コンピュータビジョン勉強会@関東「ICCV2023読み会」をSansan株式会社様の会場をお借りして開催いたしました。 以下、例によって資料やリンク等のまとめておきます。 登録サイト kantocv.connpass.com Togetter togetter.com YouTube youtube.com コンピュータビジョン勉強会@関東 sites.google.com 資料まとめ 発表者 発表内容 資料 takmin Machine Learning Operations (MLOps): Overview, Definition, and Architecture https://speakerdeck.com/takmin/di-12hui-japancvfa-biao-zi-liao-machine-learning-operations-mlops-overview-de
【内容紹介?】 (例によって思ったことそのまま書き連ねるのでちゃんとした紹介になってないかも…) 著者の中村薫さんが書かれた書籍を読まれたことがある人は御存知だと思います. 第2章,第3章では丁寧な解説でOpenNI 2.xやNiTE 2.xの基本的なプログラミングを学ぶことができます. 巻末には日本語に翻訳されたAPIリファレンスも掲載されています. 開発環境の構築方法は後ろの方(第9章)に掲載されています. OpenNIはクロスプラットフォームで動作するのでMac OSとXcode,WindowsとVisual Studioといった開発環境毎に1ステップずつ解説されているので躓くことはないでしょう. はじめての人は第1章の概要のあとにここから読み進めてみるといいと思います. また,第10章にはOpenNIについて疑問に思いそうな事柄がまとめてあります. OpenNI 2.xについての疑
Welcome I am a PhD Candidate in the Department of Computer Science at Oregon State University. My primary research interests are Computer Vision and Artificial Intelligence, and my thesis work involves designing algorithms to understand American football in video. My advisor is Alan Fern. I'm also working with Ron Metoyer on methods for visualizing the diversity of multivariate data sets and Paul
Mac OS X 10.4 Tiger で Java 3D を使い、チュートリアルを進めています。 もっといい方法があるのかも知れませんがいまのところ、Xcode でソースを書き、ターミナルで javac を使いコンパイル・ java ~ を実行して結果を見ています。 ひとつ問題があって、ターミナルで javac を使いコンパイルしエラーが発生したときに出るエラーメッセージがなんだか文字化けしてさっぱり読めません。解決策を求めてインターネットの海を漂うと、ありましたありました答えが。 まず原因は『Terminalが日本語に対応していないにも関わらず,javac が日本語でエラーメッセージを出すために文字が化ける』ということでした。 いくつか提案されていた中から当面は『解決案1:英語にする』を採用し、 % env LC_ALL=en javac XXXXX.java でコンパイルする、ことに
半年ぶりくらいに、Mac OS X のセットアップを行いました。今回はメモを残したので、ここに書いておきます。 システム環境設定 (System Preferences) まずは OS 寄りのところから整備しましょう。 Dock 不要なアプリケーションはすべて Dock から取り除いて、基本的に起動中のアプリケーションのみが並ぶようにします。まったく起動しないアプリケーションが貴重な画面内に領域を取るなんて、以ての外よ!「アクティビティモニタ」と「Quicksilver」は、いざというときにパッと起動したくなることがあるので、Dock に登録しておいてあります。 設定は、こんな感じ。 Expose なんとなくディスプレイの角に割り当ててあります。デフォルトでは Dashboard は「F12」で起動するようになっていますが、これだと Firebug とケンカするので、OFF にしています。
現代のキーボードの配列は アルファベットを中心にしたQWERTYが主流です これは1882年に完成されたそうです*1 もちろんコンピュータが生まれる以前です 一方プログラミングでは アルファベット以外の記号を頻繁に打鍵します 例えばRubyでは _ = - + : [ { ( . ? ' " などの記号の使用頻度はとても高いです ところがUSキーボードを使っている場合 上記のうち : [ { . ? ' " は良いですが _ = - + ( が最上段に位置していて タッチタイピングしづらいです US Keyboard これはプログラムの生産性に大きく影響しそうです なぜならこれらのキー入力が出現するたびに 目視でその位置を確認するか当て推量で外すかして それによって入力のリズムが崩れてしまうからです つまりこれらのキーの配列を ホームポジションで所掌できる範囲内に収めることができれば プロ
以下の記事でPythonやRubyの末尾再帰関数をループに変換する手法が「末尾再帰最適化」や「末尾呼び出し最適化」として紹介されているのですが、これらの用語を使うのは間違いです。 紹介されている手法(動的束縛を利用して制御フローを変形する手法)自体は大変面白いですね。 Pythonで末尾再帰最適化をする。 Rubyで末尾再帰最適化をする。 参考文献として以下を挙げておきます。 William D. Clinger "Proper Tail Recursion and Space Efficiency" ちゃんと読み直していないので、以下の説明に間違いがあるかも知れません。その場合はご指摘お願いします。 まず「末尾呼び出し(Tail Call)」は関数の一番最後の式(末尾式)であって、関数呼び出しであるものを指します。 void foo() { bar(); baz(); /* 末尾呼び出し
iphoneで画像処理をやるたびにいつも最初に迷ってしまう。 簡単な処理しかやらないならQuartzとかだけでやった方がいいんじゃないか、とか OpenCV使うならソースをプロジェクトに含めて使った方が汎用的かも、とか。 でも少なくともフィルタリング、色空間変換、解像度変換は必ず使うので、 これらの処理を自分でごちゃごちゃ書くよりはOpenCV使った方がよさそうだし、 「ソースをプロジェクトに入れてビルド」はちょっとやってみたけどうまくいかなかった。 というわけで開き直ってこれからもこちらのページで提供されている コンパイル済みライブラリにお世話になる事にする。 で、テンプレート化もしてみたけどいまいち汎用的にならなかったので、 「毎回プロジェクトにコンパイル済みOpenCVライブラリを含める」 とさらに開き直ってそのための手順をまとめてみた。 1. opencv_device, open
人を動かす、と言うと、その言葉からは、やや良くないイメージがしてしまう人も多いかもしれません。 しかしもし、うまく相手の信頼を得て、心をつかみ、自然に気持ちよく動いてもらえる方法があるとしたら? 仕事以外でも、家庭や恋愛など、対人スキルとして非常に重要なことですよね。 そこで今日は、全米ベストセラー、日本では2011/1/29に出たばかりの本、 『なぜあの人からつい「買ってしまう」のか 』から私が読み解いた、実践すれば必ず結果が出る、 心理学で人を動かす7つの秘法を紹介します。 以下を読んで、「なるほど!たしかにあのときそうだった!」などの経験があったり、何か思うところがあれば、ぜひツイッターやコメント欄から教えてくださいね。 1~3は、相手に気持ちよく動いてもらうために、事前に信頼関係を築く方法。 4~7は、相手の心を自然に動かしてしまう方法です。 1. ミラーリングでラポールを築く 会
/* HOG特徴量 */ // image:画像の配列 // width:画像の幅 // height:画像の高さ // histogram_dimension:ヒストグラムの要素数 // cell_column:セルの列数(横方向に画像を何分割するか) // cell_row:セルの行数(縦方向の画像を何分割するか) // block_column:1ブロックの列数 // block_row:1ブロックの行数 // feature_vector:HOG特徴ベクトルの配列 // feature_vector_dimension:HOG特徴ベクトルの次元数 //histogram_dimension*block_column*block_row*(cell_row - block_row) * (cell_column - block_column) void HOG(IplImage *i
古賀雅伸(九州工業大学) オープンソースカンファレンス2009福岡 2009年12月5日 1/67 Javaによる数値計算のすすめ 九州工業大学 大学院情報工学研究院 古賀 雅伸 古賀雅伸(九州工業大学) オープンソースカンファレンス2009福岡 2009年12月5日 2/67 目 次 はじめに Javaは遅い?速い? JavaとCのベンチマーク JITとAOTとLLVM Javaによる数値計算に関する情報 書籍(日本語、英語) ライブラリ Javaによる数値計算の応用 数値シミュレーション 高品質数値計算 まとめ 古賀雅伸(九州工業大学) オープンソースカンファレンス2009福岡 2009年12月5日 3/67 目 次 はじめに Javaは遅い?速い? JavaとCのベンチマーク JITとAOTとLLVM Javaによる数値
オープンソースカンファレンス(OSC)は、オープンソースの今を伝えるイベントです。 東京だけでなく、北は北海道、南は沖縄まで、年間を通じて全国各地で開催しています。 オープンソース関連のコミュニティや協賛企業・後援団体による、セミナーやプロダクトの展示などを入場・参加料が無料でご覧いただけるイベントです。 現在は開催地域によってオンラインとオフラインで開催しております。 詳しくは「オープンソースカンファレンス今後の開催予定」の各開催ページをご確認ください。 過去の開催/開催レポートはこちらから
Clojure-like Emacs (NOTE: changes to the monad library regarding scope have broken tons of code (temporarily) !) This is a group of loosely organized utilities to add clojure like abilities to emacs-lisp. It consists of defn and fn forms for declaring functions and anonymous functions. These forms support the usual clojure-style destructuring bind and arity based dispatch on function arguments. An
No posts. No posts. Home Subscribe to: Posts (Atom)
Math Overview Downloads Latest API docs (development) Javadoc (4.0-beta1 release) Javadoc (3.6.1 release) Issue Tracking Source Repository (current) Wiki Developers Guide Proposal User Guide Contents Overview Statistics Data Generation Linear Algebra Numerical Analysis Special Functions Utilities Complex Numbers Distributions Fractions Transform Methods Geometry Optimization Curve Fitting Least Sq
以前の記事でも書きましたが、「Commons-Math」は統計等、数学に関する機能をJavaプログラムに提供するライブラリです。 つい最近、ほんの少し統計学の勉強をしていました。数学に関するものは実際に自分で問題を解いてみたりするのがいいと思うのですが、統計学に関するものは自分で手計算してみようとは思えないものが多々あるのも事実です。 それならせめてコンピュータ上のプログラムで計算させようということで、「Commons-Math」を利用して例題を計算させるプログラムを書いたりしました。多分こういった用途には「R」の方が向いているように思いますが、Javaの方が慣れているし、以前の記事でも扱ったので。 そしてソースコードを覗いてみて「へぇ、こう実装するんだ」とか、なんとなく理解が深まった気になってみたりします。 The Apache Jakarta Project Commons-Math
Controls Suprise: Toggles drawing, makes the simulation faster. New Population: Keeps the generated track and restarts the whole car population. Create new world with seed: The same seed always creates the same track, so you can agree on a seed with your friends and compete. :) Mutation rate: The chance that each gene in each individual will mutate to a random value when a new generation is born.
これはもう何年も前から気になってることなのですが。 何故、昔からずっと見出し画像などの文字組みや文字詰めの甘いWebサイトが多いのでしょうか。 私はデザインについて偉そうに言える立場でないのは分かっていますが、折角全体的なデザインや背景、写真、Flashなどの動きはとても美しく、文章構成のしっかりしたサイトなのに、ただ一点文字詰めだけが甘いというサイトがあまりにも多くて、そういうサイトが減る様子もないのがずっと気になっています。 私は以前、ファッション雑誌やビジネス誌の組版(MacのInDesignやQuarkXPressを使って印刷用のデータを作る仕事。DTPとも言う)の仕事をしていて、見出しは言うまでもなく、本文の文字詰めが少し甘いだけでもものすごく怒られたものですが、Webデザインの世界ではそういうのはあまり怒られることがないのでしょうか。 私は、見出しやタイトル画像における文字組み
Var とは何か Clojure のネームスペースについて調べてみました。ネームスペースを理解するには、その前に Vars について覚えておく必要があります。まず、例に使う簡単な関数を作ります。 user=> (defn hello "blah blah..." [] (print "Hello, World!\n")) #'user/hello user=> (hello) Hello, World! nil Clojure では defn を使って関数を定義する事が出来ますが、この結果返される #'user/hello とは何でしょうか? user=> (type #'user/hello) clojure.lang.Var type で調べると、clojure.lang.Var というオブジェクトである事が分かります。これは Clojure のグローバル変数を特徴づけるオブジェクトで
Hattori です。以前書いた記事の冒頭 で、”今度はシリーズで何かエントリを書きたい ! ”と軽いノリで一文を表記しておいたら、ホントにやることになりました。 弊社のエンジニア組織の特徴のひとつに、手を上げる・声を上げると、『じゃ、やってよ。』というノリで返ってくるという事が挙げられるのですが、今回もその例に漏れなったわけですね・・・。シクシク・・・。 というわけで、何を書こうかなぁって話しなんですが・・・。私の場合アルゴリズム系の話しかできそうにないので、毎回ポツポツとマイナーで極一部の人にしかウケないテーマを紹介して行こうと思います。 で、初回の今回は SimilarityJoin 関連のアルゴリズムで "MPJoin" というやつを紹介したいと思います。 ■ Similarity Join とは何ぞや? まず最初に SimilarityJoin [1] の定義なんですが、ざっくり
社内NEET宣言 文学部出身なのにIT企業で研究開発をすることになった社員のブログです。 PR Profile [ルームを見る|なうを見る] ニックネーム:just do neet 性別:男性 誕生日:さだまさしがソロデビューしたあたり 出身地:神奈川県 自己紹介: NEETは豊かさの象徴だから進んでNEETになるべきです。 ブログジャンル:エンジニア/ニート メッセージを送る アメンバーになる プレゼントを贈る [Publish] Calendar <<August>> S M T W T F S 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Theme ブログ ( 25 ) Java ( 29 ) 職場の風景 ( 30 ) インターネット ( 17 ) Unix系O
何か論文読んで,それについて発表するという授業があるのですが,そこでSimilarity Joinについて調べたのでここにメモします.●Similarity Joinって何?すごく大雑把に言うと,類似しているものを結合すること.そのまんまですね.例えば,上図のように4つのタプルがあったら,それぞれ類似しているもの同士でJoinします.普通は閾値を与えて,類似度が閾値以上であれば類似していると判断し,Joinします.#出力の部分は出力例であり,実際には他の組み合わせも出力されうると思います●類似しているってどうやって判断するの?Similarity Joinを行うためには,類似度の高い組み合わせを見つける必要があります.類似度を算出する方法はよく使われる手法がいくつかあります.(Jaccard, cosine, overlapなどなど)他にも,距離という概念でみると,Hamming dist
The latest reviewed version was checked on 31 October 2021. There are template/file changes awaiting review. For detailed coverage of Clojure, consult the language and API reference at clojure.org. Also see Clojure Programming. Clojure (read as closure), is a powerful, lisp-1 programming language designed by Rich Hickey and designed to run on the Java Virtual Machine. This book shall provide a det
フレームワークなんか使わなくてもガリガリコード書いちゃえばいいんだけど、なんか損してるんじゃないかと気になるのですよ。 でもフレームワークが自動的に色々やってくれてるのはありがたいのだけれど、何をやっているのか気になってモヤモヤしてしまう、というジレンマがあったりなかったり。 という訳でまずは、Xcode で Empty Application と Single View Application (Storyboard付き)で何か違うのかを調べてみた。 単純にコードの差分を比較すると以下の違いがあることがわかる。 追加されているファイル: ViewController.h ViewController.m MainStoryboard.storyboard ViewControllerはUIViewControllerからの派生で、viewDidLoadとdidReceiveMemeory
人生にリハーサルはない。 十分な準備が整うことは、実は少ない。 自ら選んだ問題についてなら、長い時間をかけて〈専門家〉の域に達することもできよう。 だが、問題と呼ぶべきものは、不意をうってやって来る。 向こうからやって来るほとんど問題に対して、誰もが〈素人〉として向かい合うしかない。 例えば、すべての人が病気になるが、ほとんどの人は医者ではない。 米インテル(INTC)社のCEOだったアンディ・グローブ氏は1994年秋、家庭医がかわった際に健康診断を受けた。検査項目の一つであった血清前立腺特異抗原(PSA)値が高かったので、泌尿器科の受診を勧められた。 PSA値について調べてみると、前立腺がんの有無や大きさを示す腫瘍マーカーであり、この検査をすることで前立腺がんの早期治療が可能になったらしいことがわかった。 前立腺は、精液をつくる器官で男性のみにある。クルミほどの大きさで、膀胱の真下にあり
[2020年4月1日] 広島大学に新設された先進理工系科学研究科を担当します. [2018年4月1日] 広島大学に新設された情報科学部を担当します. [2017年2月3日] 国際会議FCV2017でBest Poster Presentation Awardを受賞しました. [2015年2月13日] 産業技術総合研究所の由井誠さんをお招きして、広島大学統計科学研究拠点セミナーを開催します。 [2015/01/29] 国際会議FCV2015で Best Paper Award を受賞しました。 [2014年10月29日] 筑波大学の日野先生をお招きして、広島大学統計科学研究拠点セミナーを開催します。 [2014年10月10日] 広島画像情報学セミナーを開催します。 [2014年10月] 博士課程後期の学生1名が入学しました。また、総合科学部の3年生が1名栗田研究室に加わりました。 [2014
GPU による高速画像処理 名古屋大学大学院情報科学研究科 出口 大輔,井手 一郎,村瀬 洋 概要: 本発表では,近年注目を集めているGPGPU(General Purpose computing on GPUs)の技術に着 目し,GPGPU を利用するための開発環境の使い方やプログラミングのノウハウを分かりやすく解説する. GPGPU は GPU を汎用計算に利用しようという試みであり,現在では物理シミュレーション,数値計算, 信号解析,画像処理・認識などの分野で広く利用されるようになっている.ここ数年では,GPGPU を行う ための開発環境の整備も進んできている.そこで本発表では,NVIDIA 社が提供している開発環境のCUDA を題材に取り上げ,簡単に GPGPU を行うことができることを示すと供に,計算コストの高い画像処理が GPU を利用することで大幅に高速化できることを示す.
画像の「重量」 画像を解析する時、ピクセルの値が明るさを表すのではなくて、重さを表しているように考える事があります。つまり、画像のピクセルが明るければ明るいほど重い訳です。暗い映像は「軽い」、明るい映像は「重い」という事です。 そう考える事によって力学などによる分析が可能になります。その最も単純な例は「重量」です。画像の重量の計算は極めて簡単です。画像内のピクセルの値を全て足せばいいです。cv.jitではデータのタイプが「char」の場合、その合計を255で割ります。つまり、画像が真っ白(全てのピクセルの値=255)であれば、重量はピクセルの数と同じです。 重量を計算すれば、画像全体の明るさが分かり、光量に反応するプログラムが作れます。 フレーム間差分 フレーム間差分は古くから使われる簡単な分析法の一つです。「動き」を感知する方法で、処理がとても軽いので今もよく使われます。 フレーム間差分
KLT: An Implementation of the Kanade-Lucas-Tomasi Feature Tracker KLT is an implementation, in the C programming language, of a feature tracker for the computer vision community. The source code is in the public domain, available for both commercial and non-commerical use. The tracker is based on the early work of Lucas and Kanade [1], was developed fully by Tomasi and Kanade [2], and was explain
バイアグラとシアリスについて知っておくべきこと バイアグラとシアリスは、市場で最も人気のある勃起不全治療薬の 2 つです。これらの薬について知っておくべきことはすべてここにあります。 バイアグラは、錠剤、液剤、または注射剤として入手できます。性的な強化のために、必要に応じて口から摂取します。シアリスは錠剤と液体の形で入手できます。また、性的強化のために必要に応じて経口摂取します。 両方の薬は、陰茎への血流の減少やペイロニー病などの身体的問題、または不安やうつ病などの心理的問題によって引き起こされる勃起不全に苦しむ男性に使用するために、米国食品医薬品局によって承認されています. バイアグラはもともと高血圧症の治療薬ですが、勃起不全の治療にも効果があることが示されています。バイアグラは、錠剤、注射、または局所ゲルとして入手できます。錠剤は口から服用し、性行為の 1 時間前に服用すると効果が最も
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く