<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: How We Made Our Face Recognizer 25x Faster</title>
	<atom:link href="http://lbrandy.com/blog/2008/10/how-we-made-our-face-recognizer-25-times-faster/feed/" rel="self" type="application/rss+xml" />
	<link>http://lbrandy.com/blog/2008/10/how-we-made-our-face-recognizer-25-times-faster/</link>
	<description>{ on programming and the internets, every monday }</description>
	<lastBuildDate>Fri, 03 Feb 2012 14:14:15 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>By: Oma</title>
		<link>http://lbrandy.com/blog/2008/10/how-we-made-our-face-recognizer-25-times-faster/comment-page-1/#comment-28573</link>
		<dc:creator>Oma</dc:creator>
		<pubDate>Sat, 05 Nov 2011 01:51:47 +0000</pubDate>
		<guid isPermaLink="false">http://lbrandy.com/blog/?p=210#comment-28573</guid>
		<description>Hello my friend! I want to say that this post is awesome, great written and include almost all significant infos. I¡¦d like to look more posts like this .</description>
		<content:encoded><![CDATA[<p>Hello my friend! I want to say that this post is awesome, great written and include almost all significant infos. I¡¦d like to look more posts like this .</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ben</title>
		<link>http://lbrandy.com/blog/2008/10/how-we-made-our-face-recognizer-25-times-faster/comment-page-1/#comment-28299</link>
		<dc:creator>Ben</dc:creator>
		<pubDate>Sun, 03 Jul 2011 13:02:33 +0000</pubDate>
		<guid isPermaLink="false">http://lbrandy.com/blog/?p=210#comment-28299</guid>
		<description>Nice post. It reminds me of a similar optimization in a different domain -- cryptography -- where certain symmetric key encryption algorithms e.g. DES and Serpent can be speeded up by batching say 32 blocks at a time and performing batch operations on bits as arithmetic operations on 32-bit words. The technique is called bit-slicing.</description>
		<content:encoded><![CDATA[<p>Nice post. It reminds me of a similar optimization in a different domain &#8212; cryptography &#8212; where certain symmetric key encryption algorithms e.g. DES and Serpent can be speeded up by batching say 32 blocks at a time and performing batch operations on bits as arithmetic operations on 32-bit words. The technique is called bit-slicing.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jared</title>
		<link>http://lbrandy.com/blog/2008/10/how-we-made-our-face-recognizer-25-times-faster/comment-page-1/#comment-26176</link>
		<dc:creator>Jared</dc:creator>
		<pubDate>Sat, 02 Jan 2010 03:44:21 +0000</pubDate>
		<guid isPermaLink="false">http://lbrandy.com/blog/?p=210#comment-26176</guid>
		<description>Every new technology is a double-edged sword when placed in the hands of humanity. It&#039;s not the technology that is the problem. It is simply human nature. There will always be those who use something for good and those that use the same thing for evil.

If we didn&#039;t develop new technologies we wouldn&#039;t be human, because our curiosity and ingenuity is part of what makes us human. Evolution results from need. For further explanation refer to Maslow&#039;s hierarchy of needs (Wikipedia has an article).

A good example of the argument between whether something that could be developed should be developed is the case for cloning. Ian Malcolm in the Jurassic Park movie made this argument, but he is a little hypocritical as a mathemetician using all the combined knowledge of those mathemeticians before him to develop his chaos theory, with no concern for how his theory will be used (which may have hypothetically been the new doomsday weapons of tomorrow).

Technology is a natural human pursuit, and saying that one technology is more evil than another is just demonstrating ignorance as to how each technology could possibly be used. It would be easy to argue that nuclear weapons are worse than farming crops, but the technology tree leading to nuclear weapons would not have been possible without the development of fertilizers. All technology development is interrelated by ancestor technologies. If you oppose one technology, you may as well oppose all technologies, but to do that without being a hypocrit you would have to forfeit all use of technology (including the use of a PC and the Internet required to post in this forum).</description>
		<content:encoded><![CDATA[<p>Every new technology is a double-edged sword when placed in the hands of humanity. It&#8217;s not the technology that is the problem. It is simply human nature. There will always be those who use something for good and those that use the same thing for evil.</p>
<p>If we didn&#8217;t develop new technologies we wouldn&#8217;t be human, because our curiosity and ingenuity is part of what makes us human. Evolution results from need. For further explanation refer to Maslow&#8217;s hierarchy of needs (Wikipedia has an article).</p>
<p>A good example of the argument between whether something that could be developed should be developed is the case for cloning. Ian Malcolm in the Jurassic Park movie made this argument, but he is a little hypocritical as a mathemetician using all the combined knowledge of those mathemeticians before him to develop his chaos theory, with no concern for how his theory will be used (which may have hypothetically been the new doomsday weapons of tomorrow).</p>
<p>Technology is a natural human pursuit, and saying that one technology is more evil than another is just demonstrating ignorance as to how each technology could possibly be used. It would be easy to argue that nuclear weapons are worse than farming crops, but the technology tree leading to nuclear weapons would not have been possible without the development of fertilizers. All technology development is interrelated by ancestor technologies. If you oppose one technology, you may as well oppose all technologies, but to do that without being a hypocrit you would have to forfeit all use of technology (including the use of a PC and the Internet required to post in this forum).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: GUI_Junkie</title>
		<link>http://lbrandy.com/blog/2008/10/how-we-made-our-face-recognizer-25-times-faster/comment-page-1/#comment-602</link>
		<dc:creator>GUI_Junkie</dc:creator>
		<pubDate>Thu, 06 Nov 2008 09:19:00 +0000</pubDate>
		<guid isPermaLink="false">http://lbrandy.com/blog/?p=210#comment-602</guid>
		<description>Thanks for correcting my big O notation.

Why can&#039;t you do a Checksum on a face? 

I guess you could do a checksum on the proportions of a face. If you make that general enough, you should be able to group people so you can find a number of similar people in one go. Then do the same on a more specific feature of the face, going down three or four levels (face, nose, eyes, ears...). The last step would then be to cycle through the last subgroup an see their specifics.

My 0,02€</description>
		<content:encoded><![CDATA[<p>Thanks for correcting my big O notation.</p>
<p>Why can&#8217;t you do a Checksum on a face? </p>
<p>I guess you could do a checksum on the proportions of a face. If you make that general enough, you should be able to group people so you can find a number of similar people in one go. Then do the same on a more specific feature of the face, going down three or four levels (face, nose, eyes, ears&#8230;). The last step would then be to cycle through the last subgroup an see their specifics.</p>
<p>My 0,02€</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dean Michael Berris</title>
		<link>http://lbrandy.com/blog/2008/10/how-we-made-our-face-recognizer-25-times-faster/comment-page-1/#comment-530</link>
		<dc:creator>Dean Michael Berris</dc:creator>
		<pubDate>Sat, 01 Nov 2008 19:16:19 +0000</pubDate>
		<guid isPermaLink="false">http://lbrandy.com/blog/?p=210#comment-530</guid>
		<description>Nice post. If you were using a language like C++, you might want to look at an article by Herb Sutter on Dr. Dobb&#039;s Journal regarding cache issues and how to help your parallel/multi-threaded application scale in newer multi-core systems.

You might also want to think about &quot;zipping&quot; through the data and storing the features to be compared adjacent to one another (using tuples or a struct that contains both elements) and then looping through the zipped tuples one by one. This is also cache-friendly and allows you to write a better more readable loop (of course, this means you&#039;ll need to copy features instead of refer to them by pointer).

You might also get better performance out of an optimizing compiler (something better than GCC, like Intel&#039;s C++ compiler (again only if you&#039;re using C++)). ;-)</description>
		<content:encoded><![CDATA[<p>Nice post. If you were using a language like C++, you might want to look at an article by Herb Sutter on Dr. Dobb&#8217;s Journal regarding cache issues and how to help your parallel/multi-threaded application scale in newer multi-core systems.</p>
<p>You might also want to think about &#8220;zipping&#8221; through the data and storing the features to be compared adjacent to one another (using tuples or a struct that contains both elements) and then looping through the zipped tuples one by one. This is also cache-friendly and allows you to write a better more readable loop (of course, this means you&#8217;ll need to copy features instead of refer to them by pointer).</p>
<p>You might also get better performance out of an optimizing compiler (something better than GCC, like Intel&#8217;s C++ compiler (again only if you&#8217;re using C++)). <img src='http://lbrandy.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: deuxbits</title>
		<link>http://lbrandy.com/blog/2008/10/how-we-made-our-face-recognizer-25-times-faster/comment-page-1/#comment-514</link>
		<dc:creator>deuxbits</dc:creator>
		<pubDate>Fri, 31 Oct 2008 12:55:28 +0000</pubDate>
		<guid isPermaLink="false">http://lbrandy.com/blog/?p=210#comment-514</guid>
		<description>First: Super nice quick understandable read. I had not thought about &quot;cache bound&quot; on code performance in parallelized code. I will certainly follow this blog a bit longer to see what else pops up.

Second: As a physicist who worked on laser surgery research (in the 80s), I felt I was doing good for mankind. However, I should point out that the Armed Forces paid for this research. Ultimately, the reason this was funded was so that they could do a better quicker job of repairing their &quot;soldiers&quot;. It&#039;s a twisted notion - doing good to do bad, or in the case of war, doing bad to do good (rarely if ever). All technologies have some potential for good and some potential for bad. Sometimes the potential for good is worth the risk of the bad. Ultimately, developing and &quot;enforcing&quot; :-) a strong ethical framework is what is needed for all human endeavors, technology free or not. The potential for abuse of a technology should always be considered. It&#039;s almost never a simplistic black and white case, and treating it that way will not enable you to make progress in warning people about the potential abuse.   

Third: I am not absolutely sure anyone should be anonymous in public. (Think back to small towns where everyone knew everyone else, and the &quot;strangers&quot; were clearly identifiable.) Yes, this could suppress some forms of political dissent, but that&#039;s why we have The First Amendment. 

I&#039;m not certain I understand exactly how facial recognition is anything more than an enhancement in public presence of people who already exist.  Not all &quot;police&quot; are bad and the bad ones can already do plenty of bad with the technology they already have. Their behavior is a question of morality and not of technology. The real problem might come when people relinquish their judgment to a machine.</description>
		<content:encoded><![CDATA[<p>First: Super nice quick understandable read. I had not thought about &#8220;cache bound&#8221; on code performance in parallelized code. I will certainly follow this blog a bit longer to see what else pops up.</p>
<p>Second: As a physicist who worked on laser surgery research (in the 80s), I felt I was doing good for mankind. However, I should point out that the Armed Forces paid for this research. Ultimately, the reason this was funded was so that they could do a better quicker job of repairing their &#8220;soldiers&#8221;. It&#8217;s a twisted notion &#8211; doing good to do bad, or in the case of war, doing bad to do good (rarely if ever). All technologies have some potential for good and some potential for bad. Sometimes the potential for good is worth the risk of the bad. Ultimately, developing and &#8220;enforcing&#8221; <img src='http://lbrandy.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  a strong ethical framework is what is needed for all human endeavors, technology free or not. The potential for abuse of a technology should always be considered. It&#8217;s almost never a simplistic black and white case, and treating it that way will not enable you to make progress in warning people about the potential abuse.   </p>
<p>Third: I am not absolutely sure anyone should be anonymous in public. (Think back to small towns where everyone knew everyone else, and the &#8220;strangers&#8221; were clearly identifiable.) Yes, this could suppress some forms of political dissent, but that&#8217;s why we have The First Amendment. </p>
<p>I&#8217;m not certain I understand exactly how facial recognition is anything more than an enhancement in public presence of people who already exist.  Not all &#8220;police&#8221; are bad and the bad ones can already do plenty of bad with the technology they already have. Their behavior is a question of morality and not of technology. The real problem might come when people relinquish their judgment to a machine.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: gtmartini</title>
		<link>http://lbrandy.com/blog/2008/10/how-we-made-our-face-recognizer-25-times-faster/comment-page-1/#comment-511</link>
		<dc:creator>gtmartini</dc:creator>
		<pubDate>Thu, 30 Oct 2008 16:12:59 +0000</pubDate>
		<guid isPermaLink="false">http://lbrandy.com/blog/?p=210#comment-511</guid>
		<description>First of all, excellent post about a highly complex issue! Keep that text coming, because I&#039;m subscribing it! :-)

@Mabbo: have a look at the Stanford Lectures on Machine Learning (includes the very good videos of the classes), freely available at:

http://see.stanford.edu/SEE/courseinfo.aspx?coll=348ca38a-3a6d-4052-937d-cb017338d7b1

Gt</description>
		<content:encoded><![CDATA[<p>First of all, excellent post about a highly complex issue! Keep that text coming, because I&#8217;m subscribing it! <img src='http://lbrandy.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>@Mabbo: have a look at the Stanford Lectures on Machine Learning (includes the very good videos of the classes), freely available at:</p>
<p><a href="http://see.stanford.edu/SEE/courseinfo.aspx?coll=348ca38a-3a6d-4052-937d-cb017338d7b1" rel="nofollow">http://see.stanford.edu/SEE/courseinfo.aspx?coll=348ca38a-3a6d-4052-937d-cb017338d7b1</a></p>
<p>Gt</p>
]]></content:encoded>
	</item>
</channel>
</rss>

