<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-4152282129640803684</id><updated>2024-08-28T05:33:43.951-07:00</updated><category term="links"/><category term="papers"/><category term="cognitive science"/><category term="computer science"/><category term="physics"/><category term="science related"/><category term="blog"/><category term="finance"/><category term="math"/><category term="video"/><category term="blogs"/><category term="applied maths"/><category term="economics"/><category term="machine learning"/><category term="neuroscience"/><category term="politics"/><category term="cern"/><category term="fun"/><category term="lhc"/><category term="linguistics"/><category term="programming"/><category term="quantum computation"/><category term="stuff"/><category term="Youtube"/><category term="ai"/><category term="biology"/><category term="books"/><category term="ethics"/><category term="fancy stuff"/><category term="internet"/><category term="lectures"/><category term="logics"/><category term="relativity"/><category term="antrophology"/><category term="architecture"/><category term="classical physics"/><category term="complexity theory"/><category term="functional programming"/><category term="game"/><category term="games"/><category term="java"/><category term="philosophy of science"/><category term="quantum mechanics"/><category term="random commet"/><category term="software"/><category term="..."/><category term="R"/><category term="astronomy"/><category term="automaton learning"/><category term="banach-tarski theorem"/><category term="conference"/><category term="couchdb"/><category term="database"/><category term="drugs"/><category term="einstein"/><category term="epigenetics"/><category term="geek"/><category term="german"/><category term="haskell"/><category term="howson"/><category term="introduction"/><category term="killerspiele"/><category term="law"/><category term="library"/><category term="link"/><category term="links news patents law"/><category term="meta"/><category term="monads"/><category term="nosql"/><category term="off optic"/><category term="politik"/><category term="popper"/><category term="presentation"/><category term="psychology"/><category term="quotes"/><category term="recension"/><category term="replay"/><category term="research"/><category term="search engines"/><category term="slides"/><category term="space"/><category term="standard"/><category term="survey"/><category term="universtiy"/><category term="vertrauen"/><category term="windows"/><category term="wm"/><title type='text'>I discover interesting things</title><subtitle type='html'>The blog was started under the title &quot;mi facki lei cinri zasti&quot; which &lt;a href=&quot;http://www.lojban.org/jboski/index.php?jbocku=mi%20facki%20lei%20cinri%20zasti&quot;&gt;translates to English as&lt;/a&gt; &quot;I discover (all the) interesting things&quot;. It features my discoveries as well as my musings on them.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>86</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-4650726032691794720</id><published>2017-02-08T07:54:00.002-08:00</published><updated>2017-02-08T07:54:27.539-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ai"/><category scheme="http://www.blogger.com/atom/ns#" term="computer science"/><category scheme="http://www.blogger.com/atom/ns#" term="machine learning"/><category scheme="http://www.blogger.com/atom/ns#" term="papers"/><title type='text'>Abstract Neural Machines at ICLR 2017</title><content type='html'>&lt;br /&gt;
With my recent excitement for abstract neural machines (see e.g. the &lt;a href=&quot;https://uclmr.github.io/nampi/&quot;&gt;related NAMPI workshop&lt;/a&gt;), I skimmed &lt;a href=&quot;https://openreview.net/group?id=ICLR.cc/2017/conference&quot;&gt;the long list of submission&lt;/a&gt; of the &lt;a href=&quot;http://www.iclr.cc/doku.php?id=ICLR2017:main&amp;amp;redirect=1&quot;&gt;ICRL conference&lt;/a&gt;&amp;nbsp;for interesting papers.&lt;br /&gt;
(I might have missed one or the other people [please let me know], but this is what I found.)&lt;br /&gt;
&lt;br /&gt;
I will post a follow-up post as I worked my way through all the papers.&lt;br /&gt;
&lt;h3&gt;
Accepted Papers&lt;/h3&gt;
&lt;br /&gt;
&lt;span style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 17.3333px; font-weight: bold;&quot;&gt;&lt;a href=&quot;https://openreview.net/forum?id=BkbY4psgg&quot;&gt;Making Neural Programming Architectures Generalize via Recursion&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
&lt;span class=&quot;note_content_field&quot; style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 14.6667px; font-weight: bold; letter-spacing: 1px;&quot;&gt;Abstract:&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;note_content_value&quot; style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 14.6667px; white-space: pre-wrap; width: auto;&quot;&gt;Empirically, neural networks that attempt to learn programs from data have exhibited poor generalizability. Moreover, it has traditionally been difficult to reason about the behavior of these models beyond a certain level of input complexity. In order to address these issues, we propose augmenting neural architectures with a key abstraction: recursion. As an application, we implement recursion in the Neural Programmer-Interpreter framework on four tasks: grade-school addition, bubble sort, topological sort, and quicksort. We demonstrate superior generalizability and interpretability with small amounts of training data. Recursion divides the problem into smaller pieces and drastically reduces the domain of each neural network component, making it tractable to prove guarantees about the overall system’s behavior. Our experience suggests that in order for neural architectures to robustly learn program semantics, it is necessary to incorporate a concept like recursion.&lt;/span&gt;&lt;/blockquote&gt;
&lt;span style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 17.3333px; font-weight: bold;&quot;&gt;&lt;a href=&quot;https://openreview.net/forum?id=Byiy-Pqlx&quot;&gt;Lie-Access Neural Turing Machines&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
&lt;span class=&quot;note_content_field&quot; style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 14.6667px; font-weight: bold; letter-spacing: 1px;&quot;&gt;Abstract:&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;note_content_value&quot; style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 14.6667px; white-space: pre-wrap; width: auto;&quot;&gt;  Recent work has demonstrated the effectiveness of employing explicit
external memory structures in conjunction with deep neural models  for algorithmic learning (Graves et al. 2014; Weston et al. 2014).  These models utilize differentiable versions of traditional discrete memory-access structures (random access, stacks, tapes) to provide the variable-length storage necessary for computational tasks.  In this work, we propose an alternative model, Lie-access memory, that is explicitly designed for the neural setting. In this paradigm, memory is accessed using a continuous head in a key-space manifold. The head  is moved via Lie group actions, such as shifts or rotations, generated by a controller, and soft memory access is performed by considering the distance to keys associated with each memory. We argue that Lie groups provide a natural generalization of discrete memory  structures, such as Turing machines, as they provide inverse and identity operators while maintain differentiability. To experiment with this approach, we implement several simplified Lie-access neural Turing machine (LANTM) with different Lie groups. We find that this approach is able to perform well on several algorithmic experiments, and outperforms RNN-based methods.&lt;/span&gt;&lt;/blockquote&gt;
&lt;span style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 17.3333px; font-weight: bold;&quot;&gt;&lt;a href=&quot;https://openreview.net/forum?id=ry_sjFqgx&quot;&gt;Program Synthesis for Character Level Language Modeling&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
&lt;span class=&quot;note_content_field&quot; style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 14.6667px; font-weight: bold; letter-spacing: 1px;&quot;&gt;Abstract:&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;note_content_value&quot; style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 14.6667px; white-space: pre-wrap; width: auto;&quot;&gt;We propose a statistical model applicable to character level language modeling and show that it is a good fit for both, program source code and English text. The model is parameterized by a program from a domain-specific language (DSL) that allows expressing non-trivial data dependencies. Learning is done in two phases: (i) we synthesize a program from the DSL, essentially learning a good representation for the data, and (ii) we learn parameters from the training data - the process is done via counting, as in simple language models such as n-gram.

Our experiments show that the precision of our model is comparable to that of neural networks while sharing a number of advantages with n-gram models such as fast query time and the capability to quickly add and remove training data samples. Further, the model is parameterized by a program that can be manually inspected, understood and updated, addressing a major problem of neural networks.&lt;/span&gt;&lt;/blockquote&gt;
&lt;br /&gt;
From a software-engineering point of view, I feel that this approach is very promising, as it offers somewhat &lt;i&gt;interpretable &lt;/i&gt;output in form of a domain-specific language:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 17.3333px; font-weight: bold;&quot;&gt;&lt;a href=&quot;https://openreview.net/forum?id=rJ0JwFcex&quot;&gt;Neuro-Symbolic Program Synthesis&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
&lt;span class=&quot;note_content_field&quot; style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 14.6667px; font-weight: bold; letter-spacing: 1px;&quot;&gt;Abstract:&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;note_content_value&quot; style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 14.6667px; white-space: pre-wrap; width: auto;&quot;&gt;Recent years have seen the proposal of a number of neural architectures for the problem of Program Induction. Given a set of input-output examples, these architectures are able to learn mappings that generalize to new test inputs. While achieving impressive results, these approaches have a number of important limitations: (a) they are computationally expensive and hard to train, (b) a model has to be trained for each task (program) separately, and (c) it is hard to interpret or verify the correctness of the learnt mapping (as it is defined by a neural network). In this paper, we propose a novel technique, Neuro-Symbolic Program Synthesis, to overcome the above-mentioned problems. Once trained, our approach can automatically construct computer programs in a domain-specific language that are consistent with a set of input-output examples provided at test time. Our method is based on two novel neural modules. The first module, called the cross correlation I/O network, given a set of input-output examples, produces a continuous representation of the set of I/O examples. The second module, the Recursive-Reverse-Recursive Neural Network (R3NN), given the continuous representation of the examples, synthesizes a program by incrementally expanding partial programs. We demonstrate the effectiveness of our approach by applying it to the rich and complex domain of regular expression based string transformations. Experiments show that the R3NN model is not only able to construct programs from new input-output examples, but it is also able to construct new programs for tasks that it had never observed before during training.&lt;/span&gt;&lt;/blockquote&gt;
&lt;br /&gt;
&lt;span style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 17.3333px; font-weight: bold;&quot;&gt;&lt;a href=&quot;https://openreview.net/forum?id=HJjiFK5gx&quot;&gt;Neural Program Lattices&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
&lt;span class=&quot;note_content_field&quot; style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 14.6667px; font-weight: bold; letter-spacing: 1px;&quot;&gt;Abstract:&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;note_content_value&quot; style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 14.6667px; white-space: pre-wrap; width: auto;&quot;&gt;We propose the Neural Program Lattice (NPL), a neural network that learns a hierarchical program structure from a mixture of strong supervision and weak supervision. Our starting point is the recent work of Neural Programmer-Interpreters (NPI), which can only learn from strong supervision (full program execution traces). NPLs can additionally learn from weak supervision consisting of flat sequences of elementary operations. We demonstrate the capability of NPL to learn to perform long-hand addition and arrange blocks in a grid-world environment. Experiments show that it performs on par with NPI while using weak supervision in place of most of the strong supervision, thus indicating its ability to impute latent program abstraction structure from examples containing only weak supervision.&lt;/span&gt;&lt;/blockquote&gt;
&lt;br /&gt;
&lt;h3&gt;
Rejected Papers&lt;/h3&gt;
&lt;div&gt;
Getting rejected from a conference is by no means a sign that the paper doesn&#39;t have good ideas; it might just not fit the reviewers&#39; taste, or the advances it proposes might be more on a level of engineering than conceptually. The NIPS experience also revealed a large amount of randomness in the decision-making progress.&lt;/div&gt;
&lt;div&gt;
Thanks to the open review process, everyone can see what was criticized and led to the rejection.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 17.3333px; font-weight: bold;&quot;&gt;&lt;a href=&quot;https://openreview.net/forum?id=BkSmc8qll&quot;&gt;Dynamic Neural Turing Machine with Continuous and Discrete Addressing Schemes&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
&lt;span class=&quot;note_content_field&quot; style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 14.6667px; font-weight: bold; letter-spacing: 1px;&quot;&gt;Abstract:&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;note_content_value&quot; style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 14.6667px; white-space: pre-wrap; width: auto;&quot;&gt;In this paper, we extend neural Turing machine (NTM) into a dynamic neural Turing machine (D-NTM) by introducing a trainable memory addressing scheme. This addressing scheme maintains for each memory cell two separate vectors, content and address vectors. This allows the D-NTM to learn a wide variety of location-based addressing strategies including both linear and nonlinear ones. We implement the D-NTM with both continuous, differentiable and discrete, non-differentiable read/write mechanisms. We investigate the mechanisms and effects for learning to read and  write to a memory through experiments on Facebook bAbI tasks using both a feedforward and GRU-controller. The D-NTM is evaluated on a set of Facebook bAbI tasks and shown to outperform NTM and LSTM baselines. We also provide further experimental results on sequential MNIST, associative recall and copy tasks.&lt;/span&gt;&lt;/blockquote&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;a href=&quot;https://openreview.net/forum?id=BJ0Ee8cxx&quot; style=&quot;font-family: Arial, sans-serif; font-size: 17.3333px; font-weight: bold;&quot;&gt;Hierarchical Memory Networks&lt;/a&gt;&lt;/div&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
&lt;span class=&quot;note_content_field&quot; style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 14.6667px; font-weight: bold; letter-spacing: 1px;&quot;&gt;Abstract:&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;note_content_value&quot; style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 14.6667px; white-space: pre-wrap; width: auto;&quot;&gt;Memory networks are neural networks with an explicit memory component that can be both read and written to by the network. The memory is often addressed in a soft way using a softmax function, making end-to-end training with backpropagation possible. However, this is not computationally scalable for applications which require the network to read from extremely large memories. On the other hand, it is well known that hard attention mechanisms based on reinforcement learning are challenging to train successfully. In this paper, we explore a form of hierarchical memory network, which can be considered as a hybrid between hard and soft attention memory networks. The memory is organized in a hierarchical structure such that reading from it is done with less computation than soft attention over a flat memory, while also being easier to train than hard attention over a flat memory. Specifically, we propose to incorporate Maximum Inner Product Search (MIPS) in the training and inference procedures for our hierarchical memory network. We explore the use of various state-of-the art approximate MIPS techniques and report results on SimpleQuestions, a challenging large scale factoid question answering task.&lt;/span&gt;&lt;/blockquote&gt;
&lt;h3&gt;
Not about Neural Abstract Machines, but related Papers&lt;/h3&gt;
This is not a typical neural abstract machine, but it follows the idea of using differentiable elements to make things trainable that otherwise wouldn&#39;t be:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 17.3333px; font-weight: bold;&quot;&gt;&lt;a href=&quot;https://openreview.net/forum?id=HkpLeH9el&quot;&gt;Neural Functional Programming&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
&lt;span class=&quot;note_content_field&quot; style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 14.6667px; font-weight: bold; letter-spacing: 1px;&quot;&gt;Abstract:&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;note_content_value&quot; style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 14.6667px; white-space: pre-wrap; width: auto;&quot;&gt;We discuss a range of modeling choices that arise when constructing an end-to-end differentiable programming language suitable for learning programs from input-output examples. Taking cues from programming languages research, we study the effect of memory allocation schemes, immutable data, type systems, and built-in control-flow structures on the success rate of learning algorithms. We build a range of models leading up to a simple differentiable functional programming language. Our empirical evaluation shows that this language allows to learn far more programs than existing baselines.&lt;/span&gt;&lt;/blockquote&gt;
&lt;br /&gt;
This is slightly different, but since I had quite some exposure to graph transformation and related formalisms in my undergrad, I find this fascinating, too:&lt;br /&gt;
&lt;span style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 17.3333px; font-weight: bold;&quot;&gt;&lt;a href=&quot;https://openreview.net/forum?id=HJ0NvFzxl&quot;&gt;Learning Graphical State Transitions&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
&lt;span class=&quot;note_content_field&quot; style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 14.6667px; font-weight: bold; letter-spacing: 1px;&quot;&gt;Abstract:&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;note_content_value&quot; style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 14.6667px; white-space: pre-wrap; width: auto;&quot;&gt;Graph-structured data is important in modeling relationships between multiple entities, and can be used to represent states of the world as well as many data structures. Li et al. (2016) describe a model known as a Gated Graph Sequence Neural Network (GGS-NN) that produces sequences from graph-structured input. In this work I introduce the Gated Graph Transformer Neural Network (GGT-NN), an extension of GGS-NNs that uses graph-structured data as an intermediate representation. The model can learn to construct and modify graphs in sophisticated ways based on textual input, and also to use the graphs to produce a variety of outputs. For example, the model successfully learns to solve almost all of the bAbI tasks (Weston et al., 2016), and also discovers the rules governing graphical formulations of a simple cellular automaton and a family of Turing machines.&lt;/span&gt;&lt;/blockquote&gt;
</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/4650726032691794720/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/4650726032691794720' title='1 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/4650726032691794720'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/4650726032691794720'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2017/02/abstract-neural-machines-at-iclr-2017.html' title='Abstract Neural Machines at ICLR 2017'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-2032738720550406304</id><published>2017-02-08T07:08:00.002-08:00</published><updated>2017-02-08T07:55:17.475-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ai"/><category scheme="http://www.blogger.com/atom/ns#" term="automaton learning"/><category scheme="http://www.blogger.com/atom/ns#" term="blog"/><category scheme="http://www.blogger.com/atom/ns#" term="blogs"/><category scheme="http://www.blogger.com/atom/ns#" term="conference"/><category scheme="http://www.blogger.com/atom/ns#" term="machine learning"/><category scheme="http://www.blogger.com/atom/ns#" term="papers"/><category scheme="http://www.blogger.com/atom/ns#" term="research"/><title type='text'>LOOKING BEYOND AUTOMATA MODELS: TRANSDUCING AND GRAMMAR LEARNING WITH NEURAL MACHINES</title><content type='html'>&lt;div class=&quot;tr_bq&quot;&gt;
&lt;span style=&quot;background-color: white; color: #6f6e6b; font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif; font-size: 16px;&quot;&gt;In linguistic applications, tasks typically are translating a sentence, or deciding whether a given string belongs to a specific language. In the past, popular models to learn rules were finite state machines, pushdown automata, and hidden Markov models. We understand these models fairly well, and they each describe a class in the&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;https://en.wikipedia.org/wiki/Chomsky_hierarchy&quot; style=&quot;background-color: white; box-sizing: inherit; color: #7fcaad; font-family: merriweather, georgia, serif; font-size: 16px; text-decoration: none;&quot;&gt;Chomsky hierarchy&lt;/a&gt;&lt;span style=&quot;background-color: white; color: #6f6e6b; font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif; font-size: 16px;&quot;&gt;. This makes them very apt to model formal systems. But when it comes to describing natural language and solving problems in NLP, the rules imposed by formal grammars are often too strict and limited to model human writing and speech.&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4dzxjRC8IWobox43a23d5idbMZiyZIvbHiYiFqG6v9-_tpVUDkHOQx0ZVhfhkao0fEOvh3Kkgzamb6yNZV0dVHL3CdyAXPRhcmBRDA-FaDmH8upScKjYvN-Tlsa3iIXyRPpaRSGmtjhU/s1600/automatatheory.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;235&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4dzxjRC8IWobox43a23d5idbMZiyZIvbHiYiFqG6v9-_tpVUDkHOQx0ZVhfhkao0fEOvh3Kkgzamb6yNZV0dVHL3CdyAXPRhcmBRDA-FaDmH8upScKjYvN-Tlsa3iIXyRPpaRSGmtjhU/s320/automatatheory.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;span style=&quot;background-color: white; color: #6f6e6b; font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif; font-size: 16px;&quot;&gt;&lt;br /&gt;&lt;/span&gt; &lt;span style=&quot;background-color: white; color: #6f6e6b; font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif; font-size: 16px;&quot;&gt;&lt;span id=&quot;goog_1091061631&quot;&gt;&lt;/span&gt;&lt;span id=&quot;goog_1091061632&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif;&quot;&gt;In recent years, neural models outperform automata models, especially&amp;nbsp;deep networks, when solving real-world tasks. Deep networks&amp;nbsp;perform particularly well on large datasets. Interestingly, recent developments in parts of the deep learning community took renewed inspiration from&amp;nbsp;the field of automata and formal models to improve RNN- and LSTM-based deep network for sequence prediction and transducing tasks. This isn’t the first time the two fields meet, see such as Giles et al.’s&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;https://clgiles.ist.psu.edu/papers/UMD-CS-TR-3118.recurrent.net.pushdown.automata.pdf&quot; style=&quot;box-sizing: inherit; color: #7fcaad; font-family: Merriweather, Georgia, serif; text-decoration: none;&quot;&gt;work from the early 90ies on neural stacks&lt;/a&gt;&lt;span style=&quot;font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif;&quot;&gt;, but it is the first time deep networks are used in practice at large-scale, offering the best performance.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: white; color: #6f6e6b; font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif; font-size: 16px;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;background-color: white; color: #6f6e6b; font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif; font-size: 16px;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif;&quot;&gt;The key idea behind all proposals is to extend neural networks with memory managed by a controller. The controller, managing access and use to the memory, is built to be a differentiable operator (e.g. another kind of network with differentiable access operators). The resulting network can be trained using standard optimization algorithms and frameworks, benefiting from the same GPU acceleration other networks do, too.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: white; color: #6f6e6b; font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif; font-size: 16px;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif;&quot;&gt;To my limited knowledge, the increase in interest in these models came with Graves et al. at Deep Mind&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;https://arxiv.org/abs/1410.5401&quot; style=&quot;box-sizing: inherit; color: #7fcaad; font-family: Merriweather, Georgia, serif; text-decoration: none;&quot;&gt;&lt;em style=&quot;box-sizing: inherit;&quot;&gt;neural&amp;nbsp;&lt;/em&gt;&lt;/a&gt;&lt;span style=&quot;font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif;&quot;&gt;turing&lt;/span&gt;&lt;em style=&quot;box-sizing: inherit; font-family: Merriweather, Georgia, serif;&quot;&gt;&amp;nbsp;machines (NTM)&lt;/em&gt;&lt;span style=&quot;font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif;&quot;&gt;., and Weston et al. at Facebook&amp;nbsp;&lt;/span&gt;&lt;em style=&quot;box-sizing: inherit; font-family: Merriweather, Georgia, serif;&quot;&gt;memory networks,&lt;/em&gt;&lt;span style=&quot;font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif;&quot;&gt;&amp;nbsp;roughly proposed at the same time&lt;/span&gt;&lt;em style=&quot;box-sizing: inherit; font-family: Merriweather, Georgia, serif;&quot;&gt;.&amp;nbsp;&lt;/em&gt;&lt;span style=&quot;font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif;&quot;&gt;Both approaches extend neural networks with a read-write memory block. While the NTM paper focuses on program inference and solving algorithmic tasks, the memory network paper focuses on increasing performance on language problems. Since other blogs already offer nice high-level summaries on&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;https://blog.acolyer.org/2016/03/09/neural-turing-machines/&quot; style=&quot;box-sizing: inherit; color: #7fcaad; font-family: Merriweather, Georgia, serif; text-decoration: none;&quot;&gt;NTMs&amp;nbsp;&lt;/a&gt;&lt;span style=&quot;font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif;&quot;&gt;and&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;https://blog.acolyer.org/2016/03/10/memory-networks/&quot; style=&quot;box-sizing: inherit; color: #7fcaad; font-family: Merriweather, Georgia, serif; text-decoration: none;&quot;&gt;memory networks&lt;/a&gt;&lt;span style=&quot;font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif;&quot;&gt;, I will not go into more details&lt;/span&gt;&lt;em style=&quot;box-sizing: inherit; font-family: Merriweather, Georgia, serif;&quot;&gt;. A&lt;/em&gt;&lt;span style=&quot;font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif;&quot;&gt;Moreover,&amp;nbsp;at this year’s&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;https://uclmr.github.io/nampi/&quot; style=&quot;box-sizing: inherit; color: #7fcaad; font-family: Merriweather, Georgia, serif; text-decoration: none;&quot;&gt;nampi workshop&lt;/a&gt;&lt;span style=&quot;font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif;&quot;&gt;&amp;nbsp;at NIPS, Graves&lt;/span&gt;&lt;a href=&quot;https://uclmr.github.io/nampi/talk_slides/graves-nampi.pdf&quot; style=&quot;box-sizing: inherit; color: #7fcaad; font-family: Merriweather, Georgia, serif; text-decoration: none;&quot;&gt;&amp;nbsp;extended the idea of memory access&lt;/a&gt;&lt;span style=&quot;font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif;&quot;&gt;&amp;nbsp;by additionally learning how many computation steps are required&amp;nbsp;to&amp;nbsp;finish computation and output a decision.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: white; color: #6f6e6b; font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif; font-size: 16px;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;background-color: white; color: #6f6e6b; font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif; font-size: 16px;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif;&quot;&gt;The paper I am focusing on is&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;https://arxiv.org/abs/1506.02516&quot; style=&quot;box-sizing: inherit; color: #7fcaad; font-family: Merriweather, Georgia, serif; text-decoration: none;&quot;&gt;Learning to Transduce with Unbounded Memory by Grefenstette et al.&lt;/a&gt;&lt;span style=&quot;font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif;&quot;&gt;&amp;nbsp;The paper’s goal is to provide a&amp;nbsp;middle ground between the fully random access memory of NTM and the static memory of RNNs. The abstract says:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;blockquote&gt;
Recently, strong results have been demonstrated by Deep Recurrent Neural Networks on natural language transduction problems. In this paper we explore the representational power of these models using synthetic grammars designed to exhibit phenomena similar to those found in real transduction problems such as machine translation. These experiments lead us to propose new memory-based recurrent networks that implement continuously differentiable analogues of traditional data structures such as Stacks, Queues, and DeQues. We show that these architectures exhibit superior generalisation performance to Deep RNNs and are often able to learn the underlying generating algorithms in our transduction experiments.&lt;/blockquote&gt;
&lt;span style=&quot;background-color: white; color: #6f6e6b; font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif; font-size: 16px;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif;&quot;&gt;The key data structure implemented is a&amp;nbsp;&lt;/span&gt;&lt;em style=&quot;box-sizing: inherit; font-family: Merriweather, Georgia, serif;&quot;&gt;“continuous”&lt;/em&gt;&lt;span style=&quot;font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif;&quot;&gt;&amp;nbsp;stack. Its read- and write-operations are not discrete, but on a continuum in (0,1), modeling the certainty of wanting to push or pop onto the stack. The data objects are vectors. The stack is modeled by two components: a value matrix V, and a strength vector s. The value matrix grows with each time step by appending a new row and models an append-only memory. The logical stack is extracted by using the strength vector s. A controller acts on the tuple of value matrix and strength vector (V, s). It takes in a pop signal u, a push signal d, a value v, and produces an (output) read vector r. The quantities u and d are used to update the strength vector s, whereas v is appended to the value matrix V, and the read vector r is a weighted sum of the rows of the value matrix V.&lt;/span&gt;&lt;br style=&quot;box-sizing: inherit; font-family: Merriweather, Georgia, serif;&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif;&quot;&gt;The following figure illustrates the initial push of v_1 onto the stack, a very “weak” push of v_2, and then a pop operation and another push operation of a value v_3 (you can find the exact equations and rules to modify s and read r are stated in the paper).&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: white; color: #6f6e6b; font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif; font-size: 16px;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmdDBmblPin_ZyzDN_CD7eKzaDXG_XJX0Pq9t8S6QggvOfLyPNfy3bYwVro2BuwYx1ejhNat7bTALzNewxv8h8nA0j0SRMPlwvZIXuDC1SRckQsFzfG7kMv0ohCp6Z1GbfowcD3m-y1Vo/s1600/stack-memory.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;209&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmdDBmblPin_ZyzDN_CD7eKzaDXG_XJX0Pq9t8S6QggvOfLyPNfy3bYwVro2BuwYx1ejhNat7bTALzNewxv8h8nA0j0SRMPlwvZIXuDC1SRckQsFzfG7kMv0ohCp6Z1GbfowcD3m-y1Vo/s640/stack-memory.PNG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;span style=&quot;background-color: white; color: #6f6e6b; font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif; font-size: 16px;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif;&quot;&gt;The next figure illustrates the setup: the memory at the center and the controller input values d for pushing, u for popping, and the value v. Moreover, the previous value matrix and previous strength vector are used. The outputs are the next value matrix and strength vector as well as the read vector. This construction a differentiable memory block containing a stack. But there are no free parameters to optimize its behavior. By viewing the previous value matrix, strength vector, and read vector as a state output of an RNN that receives an input vector i, the authors obtain a trainable system with free parameters.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: white; color: #6f6e6b; font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif; font-size: 16px;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiIuYVpvEOf8V1dNDMxLY0K8vPLIvypJx8BLBUNza-MWVyWS_13Oks4p3G2naquv8ke_2Chj8SiX3rY_eaT7bHWCV-6qfkembH0DoJSIHPdSw_6iMLIRfb8jOmyd-1XbFLI7bIvh7rNl9k/s1600/recurrentneuralstack.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;218&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiIuYVpvEOf8V1dNDMxLY0K8vPLIvypJx8BLBUNza-MWVyWS_13Oks4p3G2naquv8ke_2Chj8SiX3rY_eaT7bHWCV-6qfkembH0DoJSIHPdSw_6iMLIRfb8jOmyd-1XbFLI7bIvh7rNl9k/s320/recurrentneuralstack.PNG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: inherit; color: #6f6e6b; font-family: Merriweather, Georgia, serif; font-size: 16px; margin-bottom: 2em;&quot;&gt;
But what advantage does such a system offer? To determine its effectiveness, the authors consider several simple tasks (copying a sequence, reversing a sequence, and inverting bigrams in a sequence) and tasks from linguistics (using inversion transduction grammars, a subclass of context-free grammars). The network enhanced with a stack is compared to a deep LSTM network. Overall, the stack enhanced network not only performs better but also converges faster.&lt;/div&gt;
&lt;span style=&quot;background-color: white; color: #6f6e6b; font-family: &amp;quot;merriweather&amp;quot; , &amp;quot;georgia&amp;quot; , serif; font-size: 16px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;background-color: white; box-sizing: inherit; color: #6f6e6b; font-family: Merriweather, Georgia, serif; font-size: 16px; margin-bottom: 2em;&quot;&gt;
Unfortunately, the authors don’t provide an analysis of the stack usage. I think it would be interesting to see how the LSTM controller learns how to use the stack and compare the results with traditional pushdown automata. In grammatical inference, the usual goal is to find the smallest possible automaton. How different is this goal from learning a stack-enhanced LSTM?&amp;nbsp;Can we understand the model, and does it offer some insight? The ability to interpret automata (and their use as a specification language in formal systems) is a huge motivating factor for our own work (see e.g. our paper on&amp;nbsp;&lt;a href=&quot;https://arxiv.org/abs/1611.07100&quot; style=&quot;background-color: transparent; box-sizing: inherit; color: #7fcaad; text-decoration: none;&quot;&gt;interpreting automata for sequential data&lt;/a&gt;). What can we learn from others?&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: inherit; color: #6f6e6b; font-family: Merriweather, Georgia, serif; font-size: 16px; margin-bottom: 2em;&quot;&gt;
Disclaimer: The graphics are taken from the research paper; Chomsky hierarchy from wiki commons (&lt;a href=&quot;https://commons.wikimedia.org/wiki/File:Automata_theory.svg&quot; style=&quot;background-color: transparent; box-sizing: inherit; color: #7fcaad; font-size: 13px; text-align: center; text-decoration: none;&quot;&gt;by Dnu72)&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; box-sizing: inherit; color: #6f6e6b; font-family: Merriweather, Georgia, serif; font-size: 16px; margin-bottom: 2em; text-align: center;&quot;&gt;
&lt;i&gt;This blog post was first published on &lt;a href=&quot;http://automatonlearning.net/&quot;&gt;automatonlearning.net&lt;/a&gt;&lt;/i&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/2032738720550406304/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/2032738720550406304' title='0 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/2032738720550406304'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/2032738720550406304'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2017/02/looking-beyond-automata-models.html' title='LOOKING BEYOND AUTOMATA MODELS: TRANSDUCING AND GRAMMAR LEARNING WITH NEURAL MACHINES'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4dzxjRC8IWobox43a23d5idbMZiyZIvbHiYiFqG6v9-_tpVUDkHOQx0ZVhfhkao0fEOvh3Kkgzamb6yNZV0dVHL3CdyAXPRhcmBRDA-FaDmH8upScKjYvN-Tlsa3iIXyRPpaRSGmtjhU/s72-c/automatatheory.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-723955545383141298</id><published>2015-12-16T08:34:00.002-08:00</published><updated>2015-12-29T07:36:43.605-08:00</updated><title type='text'>A blog post about blog posts about NIPS</title><content type='html'>After this year&#39;s &lt;a href=&quot;http://nips.cc/&quot; target=&quot;_blank&quot;&gt;NIPS conference&lt;/a&gt;, a lot of people wrote summaries, pointed out their personal take-aways or favorite sessions, or shared their session notes.&lt;br /&gt;
&lt;br /&gt;
Here&#39;s a (totally incomplete, and randomly ordered) list of blog posts I noticed; please feel free and comment with a link to your own post so I can add yours to the list. I will continue to expand and complete it.&lt;br /&gt;
&lt;br /&gt;
I haven&#39;t had time to read and work through all of them, but I will try to add short summaries and author information to this blog post as I go through them.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://corcra.github.io/ml/2015/12/14/NIPS2015.html&quot; target=&quot;_blank&quot;&gt;https://corcra.github.io/ml/2015/12/14/NIPS2015.html&lt;/a&gt;&lt;br /&gt;by Stephanie,&amp;nbsp;&lt;a href=&quot;https://twitter.com/__hylandSL&quot; style=&quot;background-color: white; border: 0px; color: #8899a6; font-family: &#39;Helvetica Neue Light&#39;, Helvetica, Arial, sans-serif; font-size: 13px; line-height: 18px; margin: 0px; padding: 0px; text-decoration: none;&quot; target=&quot;_blank&quot;&gt;@__hylandSL&lt;/a&gt;&amp;nbsp;from Cornell&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://memming.wordpress.com/2015/12/07/nips-2015-part-1&quot;&gt;https://memming.wordpress.com/2015/12/07/nips-2015-part-1&lt;/a&gt;/ and &lt;a href=&quot;https://memming.wordpress.com/2015/12/09/nips-2015-part-2/&quot;&gt;https://memming.wordpress.com/2015/12/09/nips-2015-part-2/&lt;/a&gt; &lt;a href=&quot;https://memming.wordpress.com/2015/12/15/nips-2015-part-3/&quot;&gt;https://memming.wordpress.com/2015/12/15/nips-2015-part-3/&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;https://memming.wordpress.com/2015/12/15/nips-2015-workshops/&quot; target=&quot;_blank&quot;&gt;https://memming.wordpress.com/2015/12/15/nips-2015-workshops/&lt;/a&gt;&lt;br /&gt;by a computational neuroscientist, &lt;a href=&quot;http://memming.com/&quot;&gt;memming.com&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://blogs.princeton.edu/imabandit/2015/12/13/on-the-spirit-of-nips-2015-and-openai/&quot; target=&quot;_blank&quot;&gt;https://blogs.princeton.edu/imabandit/2015/12/13/on-the-spirit-of-nips-2015-and-openai/&lt;/a&gt;&lt;br /&gt;by &lt;a href=&quot;http://research.microsoft.com/en-us/um/people/sebubeck/&quot; target=&quot;_blank&quot;&gt;Sebastian Bubeck&amp;nbsp;&lt;/a&gt;from&amp;nbsp;Microsoft&lt;/li&gt;
&lt;li&gt;On 10 Deep Learning trends&lt;br /&gt;&lt;a href=&quot;http://codinginparadise.org/ebooks/html/blog/ten_deep_learning_trends_at_nips_2015.html&quot; target=&quot;_blank&quot;&gt;http://codinginparadise.org/ebooks/html/blog/ten_deep_learning_trends_at_nips_2015.html&lt;/a&gt;&lt;br /&gt;by&amp;nbsp;&lt;a href=&quot;http://twitter.com/bradneuberg&quot; target=&quot;_blank&quot;&gt;@bradneuberg&lt;/a&gt;&amp;nbsp;from Dropbox. He shared also a couple of other session notes.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://gridworld.wordpress.com/2015/12/13/nips-2015-deep-rl-workshop/&quot; target=&quot;_blank&quot;&gt;https://gridworld.wordpress.com/2015/12/13/nips-2015-deep-rl-workshop/&lt;/a&gt;&lt;br /&gt;by Marc Deisenroth (he has a couple of more articles on his blog)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.zaizi.com/blog/wiml-and-nips-conference-montreal-2015&quot; target=&quot;_blank&quot;&gt;http://www.zaizi.com/blog/wiml-and-nips-conference-montreal-2015&lt;/a&gt;&lt;br /&gt;by&amp;nbsp; &lt;span rel=&quot;sioc:has_creator&quot;&gt;Jayani Withanawasam&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://medium.com/@libbykinsey/my-nips-2015-highlights-810e23c9da13&quot; target=&quot;_blank&quot;&gt;https://medium.com/@libbykinsey/my-nips-2015-highlights-810e23c9da13&lt;/a&gt;&lt;br /&gt;by Libby Kinsey&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://betatim.github.io/posts/physics-does-nips/&quot; target=&quot;_blank&quot;&gt;http://betatim.github.io/posts/physics-does-nips/&lt;/a&gt;&lt;br /&gt;by Tim Head, a physicist&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://alexhwilliams.info/itsneuronalblog/2015/12/14/nips&quot; target=&quot;_blank&quot;&gt;http://alexhwilliams.info/itsneuronalblog/2015/12/14/nips/&lt;/a&gt;&lt;br /&gt;by Alex Williams&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.danvk.org/2015/12/12/nips-2015.html&quot;&gt;http://www.danvk.org/2015/12/12/nips-2015.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.machinedlearnings.com/2015/12/nips-2015-review.html&quot; target=&quot;_blank&quot;&gt;http://www.machinedlearnings.com/2015/12/nips-2015-review.html&lt;/a&gt; by Paul Mineiro&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://slides.com/invisibleroads/nips-2015-recap/fullscreen#/&quot;&gt;http://slides.com/invisibleroads/nips-2015-recap/fullscreen#/&lt;/a&gt; Selected NIPS Recap by &lt;a href=&quot;https://twitter.com/crosscompute&quot; target=&quot;_blank&quot;&gt;@crosscompute&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://hunch.net/?p=3001617&quot;&gt;http://hunch.net/?p=3001617&lt;/a&gt; Interesting things at NIPS by &lt;a href=&quot;http://hunch.net/~jl/&quot; target=&quot;_blank&quot;&gt;John Langford&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.google.com/document/d/1Ox4nK4GlxUo0WA-vXPmLjaIhgrggMxcGJGva_6k8-F0/&quot;&gt;https://docs.google.com/document/d/1Ox4nK4GlxUo0WA-vXPmLjaIhgrggMxcGJGva_6k8-F0/&lt;/a&gt; Notes by&amp;nbsp;&lt;a href=&quot;https://twitter.com/sandhya212&quot;&gt;@sandhya212&lt;/a&gt;&amp;nbsp;from Columbia&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.cinjon.com/nips-2015&quot;&gt;http://www.cinjon.com/nips-2015&lt;/a&gt; by Cinjon&lt;/li&gt;
&lt;li&gt;h&lt;a href=&quot;ttp://blog.shakirm.com/2015/12/a-year-of-approximate-inference/&quot;&gt;ttp://blog.shakirm.com/2015/12/a-year-of-approximate-inference/&lt;/a&gt; A Year of Approximate Inference by Shakir Mohamed&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://nlpers.blogspot.com/2015/12/nips-2015-retrospective.html&quot;&gt;http://nlpers.blogspot.com/2015/12/nips-2015-retrospective.html&lt;/a&gt;&amp;nbsp;NIPS 2015 Retrospective by&amp;nbsp;&lt;a href=&quot;http://hal3.name/&quot;&gt;Hal Daumé III&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;mytubeelement data=&quot;{&amp;quot;bundle&amp;quot;:{&amp;quot;label_delimitor&amp;quot;:&amp;quot;:&amp;quot;,&amp;quot;percentage&amp;quot;:&amp;quot;%&amp;quot;,&amp;quot;smart_buffer&amp;quot;:&amp;quot;Smart Buffer&amp;quot;,&amp;quot;start_playing_when_buffered&amp;quot;:&amp;quot;Start playing when buffered&amp;quot;,&amp;quot;sound&amp;quot;:&amp;quot;Sound&amp;quot;,&amp;quot;desktop_notification&amp;quot;:&amp;quot;Desktop Notification&amp;quot;,&amp;quot;continuation_on_next_line&amp;quot;:&amp;quot;-&amp;quot;,&amp;quot;loop&amp;quot;:&amp;quot;Loop&amp;quot;,&amp;quot;only_notify&amp;quot;:&amp;quot;Only Notify&amp;quot;,&amp;quot;estimated_time&amp;quot;:&amp;quot;Estimated Time&amp;quot;,&amp;quot;global_preferences&amp;quot;:&amp;quot;Global Preferences&amp;quot;,&amp;quot;no_notification_supported_on_your_browser&amp;quot;:&amp;quot;No notification style supported on your browser version&amp;quot;,&amp;quot;video_buffered&amp;quot;:&amp;quot;Video Buffered&amp;quot;,&amp;quot;buffered&amp;quot;:&amp;quot;Buffered&amp;quot;,&amp;quot;hyphen&amp;quot;:&amp;quot;-&amp;quot;,&amp;quot;buffered_message&amp;quot;:&amp;quot;The video has been buffered as requested and is ready to play.&amp;quot;,&amp;quot;not_supported&amp;quot;:&amp;quot;Not Supported&amp;quot;,&amp;quot;on&amp;quot;:&amp;quot;On&amp;quot;,&amp;quot;off&amp;quot;:&amp;quot;Off&amp;quot;,&amp;quot;click_to_enable_for_this_site&amp;quot;:&amp;quot;Click to enable for this site&amp;quot;,&amp;quot;desktop_notification_denied&amp;quot;:&amp;quot;You have denied permission for desktop notification for this site&amp;quot;,&amp;quot;notification_status_delimitor&amp;quot;:&amp;quot;;&amp;quot;,&amp;quot;error&amp;quot;:&amp;quot;Error&amp;quot;,&amp;quot;adblock_interferance_message&amp;quot;:&amp;quot;Adblock (or similar extension) is known to interfere with SmartVideo. Please add this url to adblock whitelist.&amp;quot;,&amp;quot;calculating&amp;quot;:&amp;quot;Calculating&amp;quot;,&amp;quot;waiting&amp;quot;:&amp;quot;Waiting&amp;quot;,&amp;quot;will_start_buffering_when_initialized&amp;quot;:&amp;quot;Will start buffering when initialized&amp;quot;,&amp;quot;will_start_playing_when_initialized&amp;quot;:&amp;quot;Will start playing when initialized&amp;quot;,&amp;quot;completed&amp;quot;:&amp;quot;Completed&amp;quot;,&amp;quot;buffering_stalled&amp;quot;:&amp;quot;Buffering is stalled. Will stop.&amp;quot;,&amp;quot;stopped&amp;quot;:&amp;quot;Stopped&amp;quot;,&amp;quot;hr&amp;quot;:&amp;quot;Hr&amp;quot;,&amp;quot;min&amp;quot;:&amp;quot;Min&amp;quot;,&amp;quot;sec&amp;quot;:&amp;quot;Sec&amp;quot;,&amp;quot;any_moment&amp;quot;:&amp;quot;Any Moment&amp;quot;,&amp;quot;popup_donate_to&amp;quot;:&amp;quot;Donate to&amp;quot;,&amp;quot;extension_id&amp;quot;:null},&amp;quot;prefs&amp;quot;:{&amp;quot;desktopNotification&amp;quot;:true,&amp;quot;soundNotification&amp;quot;:true,&amp;quot;logLevel&amp;quot;:0,&amp;quot;enable&amp;quot;:true,&amp;quot;loop&amp;quot;:false,&amp;quot;hidePopup&amp;quot;:false,&amp;quot;autoPlay&amp;quot;:false,&amp;quot;autoBuffer&amp;quot;:false,&amp;quot;autoPlayOnBuffer&amp;quot;:false,&amp;quot;autoPlayOnBufferPercentage&amp;quot;:42,&amp;quot;autoPlayOnSmartBuffer&amp;quot;:true,&amp;quot;quality&amp;quot;:&amp;quot;default&amp;quot;,&amp;quot;fshd&amp;quot;:false,&amp;quot;onlyNotification&amp;quot;:false,&amp;quot;enableFullScreen&amp;quot;:true,&amp;quot;saveBandwidth&amp;quot;:false,&amp;quot;hideAnnotations&amp;quot;:false,&amp;quot;turnOffPagedBuffering&amp;quot;:true}}&quot; event=&quot;preferencesUpdated&quot; id=&quot;myTubeRelayElementToPage&quot;&gt;&lt;/mytubeelement&gt;&lt;mytubeelement data=&quot;{&amp;quot;loadBundle&amp;quot;:true}&quot; event=&quot;relayPrefs&quot; id=&quot;myTubeRelayElementToTab&quot;&gt;&lt;/mytubeelement&gt;</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/723955545383141298/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/723955545383141298' title='2 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/723955545383141298'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/723955545383141298'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2015/12/a-blog-post-about-blog-posts-about-nips.html' title='A blog post about blog posts about NIPS'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-7442704854079612317</id><published>2014-07-30T11:24:00.001-07:00</published><updated>2014-07-31T16:09:00.397-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="applied maths"/><category scheme="http://www.blogger.com/atom/ns#" term="java"/><category scheme="http://www.blogger.com/atom/ns#" term="machine learning"/><category scheme="http://www.blogger.com/atom/ns#" term="R"/><category scheme="http://www.blogger.com/atom/ns#" term="science related"/><category scheme="http://www.blogger.com/atom/ns#" term="software"/><title type='text'>Integrating Machine Learning Models for Real-Time Prediction into your Existing Workflow (using openscoring and PMML)</title><content type='html'>In today&#39;s world, understanding customers and learning from their behavior is a key component in a company&#39;s competitive edge in the market. This not only refers to lower user-retention costs in marketing through intelligently timed re-engagement and a higher lifetime value of users through clever item recommendation systems, but also extends to lower operating costs and a better user experience through modern risk and fraud management: discovering fraudulent participants in marketplaces or payments at risk are vital to the overall performance.&lt;br /&gt;
&lt;br /&gt;
Especially for established companies outside the mobile- and web-service space, adopting new practices and integrating lessons learned from a thorough data analysis can be hard. Established work flows and running systems need to be changed, which can often be a painful experience---especially when outside consultants are hired to conduct the initial study and viability analysis. &amp;nbsp;Their tools might not be a good fit for the company&#39;s established stack.&lt;br /&gt;
&lt;br /&gt;
A good solution to integrate a new layer of data mining and machine learning models is a middleware layer, such as&amp;nbsp;&lt;a href=&quot;https://github.com/jpmml/openscoring&quot; target=&quot;_blank&quot;&gt;openscoring&lt;/a&gt;. It runs independently and can be accessed through a REST API it provides. Existing software does not need to extended with new libraries for data analysis, but only needs to be able to communicate via HTTP, passing on XML requests---a very low bar most systems will pass without any additions---and communication that can be implemented without dedicated machine learning specialists.&lt;br /&gt;
&lt;br /&gt;
The machine learning models can be created offline, in a variety of languages such as Python or R. openscoring. A XML description language, the predictive model markup language (&lt;a href=&quot;http://en.wikipedia.org/wiki/Predictive_Model_Markup_Language&quot; target=&quot;_blank&quot;&gt;PMML&lt;/a&gt;), is then used to deploy the model on a server in the cloud. There is even a&amp;nbsp;&lt;a href=&quot;https://github.com/jpmml/openscoring-heroku&quot; target=&quot;_blank&quot;&gt;heroku ready version&lt;/a&gt;&amp;nbsp;that can be set up with a couple of lines of code in a matter of minutes.&lt;br /&gt;
&lt;br /&gt;
In the following, I will outline how a model created using the statistical language R, e.g. by a group of consultants or a in-house team, is deployed as a service, ready to be integrated in your existing frameworks.&lt;br /&gt;
&lt;br /&gt;
The example is very simple: Linear regression, i.e. fitting a linear function to given data points such that a given error function is minimized. You can just open your RStudio or any other environment for R and try it out yourself.&lt;br /&gt;
&lt;br /&gt;
The package for R is called pmml and can be installed using the command&lt;br /&gt;
&amp;gt; install.packages(&quot;pmml&quot;)&lt;br /&gt;
There is good &lt;a href=&quot;http://cran.r-project.org/web/packages/pmml/pmml.pdf&quot; target=&quot;_blank&quot;&gt;documentation available &lt;/a&gt;&lt;a href=&quot;http://cran.r-project.org/web/packages/pmml/pmml.pdf&quot; target=&quot;_blank&quot;&gt;online&lt;/a&gt;. Since the native output of the package is XML, make sure you have the XML library installed.&lt;br /&gt;
&lt;br /&gt;
The following code snipped creates a linear regression model for a data file on my web server; please beware that it omits a number of important steps (like dealing with missing data, or normalizing the data). But it suffices to give a rough idea: A model is created and fed to the pmml-function, which in turn creates a XML description. We store the description in a file named &lt;i&gt;glm-pmml.xml&lt;/i&gt;.

&lt;br /&gt;
&lt;pre class=&quot;brush: r&quot;&gt;library(pmml)
library(XML)

rawDataDF &amp;lt;- read.CSV(&quot;http://rattle.togaware.com/audit.csv&quot;)
rawDataDF &amp;lt;- na.omit(rawDataDF)

target &amp;lt;- rawDataDF$TARGET_Adjusted

N &amp;lt;- length(target)
M &amp;lt;- N-500

data.trainingIndex &amp;lt;- sample(N,M)
data.trainingSet &amp;lt;- rawDataDF[data.trainingIndex,]
data.testSet &amp;lt;- rawDataDF[-data.trainingIndex,]

glm.model &amp;lt;- glm(data.trainingSet$TARGET_Adjusted ~ ., data=data.trainingSet, family=&quot;binomial&quot;)
glm.pmml &amp;lt;- pmml(glm.model, name=&quot;GLM Model&quot;, data=data.trainingSet)

xmlFile &amp;lt;- file.path(getwd(),&quot;glm-pmml.xml&quot;)
saveXML(glm.pmml,xmlFile)
&lt;/pre&gt;
&lt;br /&gt;
After creating the model and storing it in a PMML file, the next step is its deployment. There are two choices: 1) the model can be uploaded via the REST interface, or 2) it can be given as a command line parameter.&lt;br /&gt;
1) The request using the command line tool &lt;i&gt;curl&lt;/i&gt; just PUTs &lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&amp;gt; curl -X PUT --data-binary @glm-pmml.xml -H &quot;Content-type: text/xml&quot; http://localhost:8080/openscoring/model/GLMTest &lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
2) Via command line &lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&amp;gt; java -cp client-executable-1.1-SNAPSHOT.jar org.openscoring.client.Deployer --model http://localhost:8080/openscoring/model/GLMTest --file glm-pmml.xml&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
The setup of openscoring itself is straightforward and uncomplicated. Either clone the git on github and deploy it directly to heroku, or download and install it locally---the documentation of openscoring as well as Maven provides step-by-step instructions.&lt;br /&gt;
&lt;br /&gt;
Using a running instance of openscoring with its model is simple: Just send requests via HTTP. For the sake of simplicity, we can just feed back the whole CSV file we used for training:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;

&amp;gt; curl -X POST --data-binary @simple_model.csv -H &quot;Content-type: text/plain&quot; http://localhost:8080/openscoring/model/GLMTest/csv &lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The answer will be a list of input-output values. Instead of using curl to send requests via the command line you can easily integrate the API with your existing software projects, e.g. to receive a score to evaluate the likelihood of fraudulent offers on your marketplace. A prominent user of openscoring is AirBnb: The young company uses decision tree models employed on openscoring servers to evaluate and catch fraudulent bookings in real-time.&lt;br /&gt;
&lt;br /&gt;
Are there any drawbacks to this approach? Yes, in some cases: since the machine learning models need to be supported in the PMML language, the newest ideas presented in research papers cannot directly moved into production with openscoring and PMML. But for vast majority of use cases, this certainly does not matter a lot: while new models often have a slight edge in their specific application area as presented in papers, the transfer to a company&#39;s application will not automatically translate into the same performance advantage over traditional models. The amount of fine tuning necessary to have any advantage will outbalance any disadvantage a slightly older machine learning model will have.&lt;br /&gt;
&lt;br /&gt;
Stay tuned for my follow-up article covering the use of PMML for data crunching using Hadoop.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;!-----&gt;&lt;!-----&gt;</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/7442704854079612317/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/7442704854079612317' title='0 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/7442704854079612317'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/7442704854079612317'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2014/07/integrating-machine-learning-models-for.html' title='Integrating Machine Learning Models for Real-Time Prediction into your Existing Workflow (using openscoring and PMML)'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-8739661465420315009</id><published>2013-12-29T03:21:00.001-08:00</published><updated>2013-12-29T03:21:28.661-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="blog"/><category scheme="http://www.blogger.com/atom/ns#" term="blogs"/><category scheme="http://www.blogger.com/atom/ns#" term="couchdb"/><category scheme="http://www.blogger.com/atom/ns#" term="database"/><category scheme="http://www.blogger.com/atom/ns#" term="introduction"/><category scheme="http://www.blogger.com/atom/ns#" term="nosql"/><category scheme="http://www.blogger.com/atom/ns#" term="programming"/><title type='text'>Some intros to NoSQL databases</title><content type='html'>&lt;br /&gt;
In general, I am a bit late for the whole NoSQL party, but nevertheless here are some interesting articles:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.xaprb.com/blog/2010/09/07/a-gentle-introduction-to-couchdb-for-relational-practitioners/&quot; target=&quot;_blank&quot;&gt;A gentle introduction to CouchDB for relational practitioners&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.xaprb.com/blog/2013/12/28/immutability-mvcc-and-garbage-collection/&quot; target=&quot;_blank&quot;&gt;Immutability, MVCC, and garbage collection&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://blogs.msdn.com/b/pathelland/archive/2007/06/14/accountants-don-t-use-erasers.aspx&quot; target=&quot;_blank&quot;&gt;Accountants Don&#39;t Use Erasers&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/8739661465420315009/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/8739661465420315009' title='0 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/8739661465420315009'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/8739661465420315009'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2013/12/some-intros-to-nosql-databases.html' title='Some intros to NoSQL databases'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-8589475331805949730</id><published>2013-10-12T09:23:00.004-07:00</published><updated>2013-10-12T13:15:17.804-07:00</updated><title type='text'>A bunch of questions about founding a start up comany</title><content type='html'>&lt;div style=&quot;background-color: white; color: #222222; font-family: arial, sans-serif; font-size: 13px;&quot;&gt;
The whole internet seems to be overflowing with advice for start ups. Experts and industry veterans share a wide range of information on twitter and blogs, at meet-ups and conferences. They tend to focus on marketing, product development, metrics and financing. Much of this information is contradictory (and much of the information regarding finding investors seems sketchily focused on “luring” them in, rather than rightfully gaining their trust.)&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #222222; font-family: arial, sans-serif; font-size: 13px;&quot;&gt;
For all the abundance — and diversity — of advice for start ups, I have not yet been able to find anything on more practical, immediate problems, particularly facing start ups in Berlin or Germany more broadly.Assuming that I&lt;b&gt;&amp;nbsp;am already running a landing page&amp;nbsp;&lt;/b&gt;to catch some&amp;nbsp;&lt;b&gt;early adopters&lt;/b&gt;, and giving them access to a&lt;b&gt;&amp;nbsp;functional prototype/alpha&amp;nbsp;&lt;/b&gt;for special conditions&amp;nbsp;to test out and develop my product, I still have questions that I’d organize into two main groups:&amp;nbsp;1. Pre-incorporation logistics and 2. Legal and tax details of the founding process.&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #222222; font-family: arial, sans-serif; font-size: 13px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #222222; font-family: arial, sans-serif; font-size: 13px;&quot;&gt;
1. Pre-incorporation logistics:&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #222222; font-family: arial, sans-serif; font-size: 13px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;ul style=&quot;background-color: white; color: #222222; font-family: arial, sans-serif; font-size: 13px;&quot;&gt;
&lt;li style=&quot;margin-left: 15px;&quot;&gt;At what point should I legally found my company? Only once I am certain that my product and business model will work out? Or should I incorporate before I handle any data from businesses, or from private customers?&lt;/li&gt;
&lt;li style=&quot;margin-left: 15px;&quot;&gt;If I were to collect data before legally founding my company, how can I legally transfer the prototype and the data to the company?&lt;/li&gt;
&lt;li style=&quot;margin-left: 15px;&quot;&gt;In Germany, having an imprint on your website and following data protection laws is very important. Failure to correctly comply can easily lead to notices from lawyers paid by competitors - without a limited liability company, how can I protect myself?&amp;nbsp;&lt;/li&gt;
&lt;li style=&quot;margin-left: 15px;&quot;&gt;How do I handle expenses I incur before officially founding my company? What should I do about them if my plans do not materialize before legally founding? Are there any tax breaks that I can claim from pre-founding investments or expenditures?&amp;nbsp;&lt;/li&gt;
&lt;li style=&quot;margin-left: 15px;&quot;&gt;Can I &quot;hire&quot; any help in advertising/marketing before founding a company?&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;background-color: white; color: #222222; font-family: arial, sans-serif; font-size: 13px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #222222; font-family: arial, sans-serif; font-size: 13px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #222222; font-family: arial, sans-serif; font-size: 13px;&quot;&gt;
Assuming I decide to start a German&amp;nbsp;&lt;b&gt;UG company&lt;/b&gt;&amp;nbsp;(basically a limited, with some more drawbacks), this leads to another group of questions.&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #222222; font-family: arial, sans-serif; font-size: 13px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #222222; font-family: arial, sans-serif; font-size: 13px;&quot;&gt;
2. Legal and tax details:&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #222222; font-family: arial, sans-serif; font-size: 13px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #222222; font-family: arial, sans-serif; font-size: 13px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;ul style=&quot;background-color: white; color: #222222; font-family: arial, sans-serif; font-size: 13px;&quot;&gt;
&lt;li style=&quot;margin-left: 15px;&quot;&gt;How much&lt;b&gt;&amp;nbsp;collateral beyond the first necessary Euro&amp;nbsp;&lt;/b&gt;do I need in reality? Does that have any practical impact on how my company can interact with other companies?&lt;/li&gt;
&lt;li style=&quot;margin-left: 15px;&quot;&gt;What other costs can I avoid? I have to&amp;nbsp;&lt;b&gt;pre-pay taxes&lt;/b&gt;, but how should I go about making&amp;nbsp;&lt;b&gt;good estimate of what to pay&lt;/b&gt;? Should I try to over or underestimate? I can&lt;b&gt;&amp;nbsp;avoid the IHK membership&amp;nbsp;fee &lt;/b&gt;at the beginning?&lt;/li&gt;
&lt;li style=&quot;margin-left: 15px;&quot;&gt;How should I handle&amp;nbsp;&lt;b&gt;expenses I privately financed before founding&lt;/b&gt;, e.g. hosting a landing page, some marketing costs, money spent to research the market and buy publications?&lt;/li&gt;
&lt;li style=&quot;margin-left: 15px;&quot;&gt;&lt;b&gt;How much money&lt;/b&gt;&amp;nbsp;should I put into the company&lt;b&gt;&amp;nbsp;to keep it solvent&lt;/b&gt;, but not have more unused liquidity in it than my personal bank account can&#39;t handle? How about adding more money later on, especially when there are multiple founders? How to balance stake vs money put in?&lt;/li&gt;
&lt;li style=&quot;margin-left: 15px;&quot;&gt;In case I suspect that my company will be bought at some point, should I have a&lt;b&gt;&amp;nbsp;holding to hold the actual company&lt;/b&gt;, e.g. to avoid the early payment of taxes?&lt;/li&gt;
&lt;li style=&quot;margin-left: 15px;&quot;&gt;If I plan to have investors, do I need to take any preparations to easily enable parts of the company owned by third parties?&lt;/li&gt;
&lt;li style=&quot;margin-left: 15px;&quot;&gt;Should I use the &quot;Musterprotokoll&quot; when founding my company or should I have a custom one made? Should I use a service provider like go-ahead or&amp;nbsp;&lt;a href=&quot;http://firma.de/&quot; style=&quot;color: #1155cc;&quot; target=&quot;_blank&quot;&gt;firma.de&lt;/a&gt;&amp;nbsp;to found the company, or&amp;nbsp; do everything on my own?&lt;/li&gt;
&lt;li style=&quot;margin-left: 15px;&quot;&gt;Should I&lt;b&gt;&amp;nbsp;found have a German company, or an English, American, etc. one&lt;/b&gt;? Especially in software and SaaS, being some other place may be easier tax- and data protection-wise.&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;background-color: white; color: #222222; font-family: arial, sans-serif; font-size: 13px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #222222; font-family: arial, sans-serif; font-size: 13px;&quot;&gt;
I am aware that a lot of these questions depend on what my specific enterprise will do and I will need to talk to someone professional - but who should I talk to?&lt;/div&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;/ul&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/8589475331805949730/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/8589475331805949730' title='0 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/8589475331805949730'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/8589475331805949730'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2013/10/a-bunch-of-questions.html' title='A bunch of questions about founding a start up comany'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-6405910239665519152</id><published>2013-08-27T16:19:00.001-07:00</published><updated>2013-08-28T05:37:42.622-07:00</updated><title type='text'>A quick overview of simple encryption for end-users</title><content type='html'>&lt;span id=&quot;docs-internal-guid-2e4fcf45-c24f-f43c-b7da-0f9cc9c0c5db&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.4; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;Recent revelations regarding PRISM and other US (as well as UK &lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: italic; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;and&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt; EU) government agencies systematically collecting and processessing private information has sparked many conversations about encryption across socialnetworks. So, here is a quick overview of a few free, (mostly) open source programs that enable everyone to use high quality encryption. The encryption schemes used by the programs listed below are considered uncrackable and require, using the currently available computing power, billions of years to crack.&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;span id=&quot;docs-internal-guid-2e4fcf45-c24f-cbfc-bc79-a2f05be3fa11&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.4; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;To encrypt your &lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: bold; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;hard drive and/or private data files&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;, I highly recommend to use &lt;/span&gt;&lt;a href=&quot;http://www.truecrypt.org/&quot; style=&quot;text-decoration: none;&quot;&gt;&lt;span style=&quot;background-color: white; color: #888888; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;TrueCrypt&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;. It can encrypt your entire hard drive, including your operating system. Or, it can create a virtual disk that when you enable and look at it in your explorer will look and function just like a USB drive -- only, everthing you put onto the disk will be still on your harddrive, but now stored in an encypted file. Option #1, The Encrypt Everything Solution requires you to provide a password when you boot up your computer. The &lt;/span&gt;&lt;a href=&quot;http://www.truecrypt.org/docs/&quot; style=&quot;text-decoration: none;&quot;&gt;&lt;span style=&quot;background-color: white; color: #1155cc; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: underline; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;TrueCrypt manual&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt; provides more information on how to set up encrypted devices or fine tune some of the parameters available.&lt;/span&gt;&lt;/div&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.4; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;It is also possible to use truecrypt on android phones with &lt;a href=&quot;https://play.google.com/store/apps/details?id=com.sovworks.edslite&amp;amp;hl=de&quot; target=&quot;_blank&quot;&gt;EDS&lt;/a&gt;, and if the phone is rooted, it is possible to share encrypted files via Dropbox between smartphones and other devices.&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.4; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;To encrypt &lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: bold; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;emails&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;, as well as single files, &lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: italic; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;public key cryptography&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt; is the go-to choice. This works by having every users generate two keys, a public one that anyone can know, and a private one that must stay secret. The public key can be used to create encrypted messages for the owner of the key (think of this like putting a lock onto the message) -- it can only be decrypted using the private key (the key to the lock that you put on the message). The private key can be used to create signatures of documents. This enables third parties to reliably check whether a text was authored, and is unmodified, by the owner of the private key.&lt;/span&gt;&lt;/div&gt;
&lt;span id=&quot;docs-internal-guid-2e4fcf45-c24f-658e-72b5-61c462356b14&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.4; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;Popular software that integrates this form of encryption into your email program in the &lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: italic; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;openPGP standard &lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;are &lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;gpgtools for mac, obtainable at&amp;nbsp;&lt;a href=&quot;https://gpgtools.org/&quot; target=&quot;_blank&quot;&gt;https://gpgtools.org/&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;gpg4win for windows, obtainable at&amp;nbsp;&lt;a href=&quot;http://www.gpg4win.org/&quot; target=&quot;_blank&quot;&gt;http://www.gpg4win.org&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;k-9 mail for android, obtainable at&amp;nbsp;&lt;a href=&quot;https://play.google.com/store/apps/details?id=com.fsck.k9&amp;amp;hl=de&quot;&gt;https://play.google.com/store/apps/details?id=com.fsck.k9&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;/ul&gt;
&lt;span id=&quot;docs-internal-guid-2e4fcf45-c24f-39d5-e84b-a3679d778256&quot;&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;These programs come with an extensive, 190 page &lt;/span&gt;&lt;a href=&quot;http://www.gpg4win.org/documentation.html&quot; style=&quot;text-decoration: none;&quot;&gt;&lt;span style=&quot;background-color: white; color: #1155cc; font-family: Arial; font-weight: bold; text-decoration: underline; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;manual&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-weight: bold; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;, &lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;although using the program is really simple and easy due to the plugins for Thunderbird and Apple&#39;s mail program.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.4; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;To encrypt &lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: bold; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;chat sessions, &lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;I highly recommend using &lt;/span&gt;&lt;a href=&quot;http://www.cypherpunks.ca/otr/&quot; style=&quot;text-decoration: none;&quot;&gt;&lt;span style=&quot;background-color: white; color: #888888; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;OTR&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;. It is a plugin for &lt;/span&gt;&lt;a href=&quot;http://pidgin.im/&quot; style=&quot;text-decoration: none;&quot;&gt;&lt;span style=&quot;background-color: white; color: #888888; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;pidgin&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt; (windows, linux) and &lt;/span&gt;&lt;a href=&quot;https://adium.im/&quot; style=&quot;text-decoration: none;&quot;&gt;&lt;span style=&quot;background-color: white; color: #888888; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;adium&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt; (mac), an opensource chat client that supports a wide range of chat protocols, e.g. google talk, msn, facebook, xmpp, icq, and many more. It is also available in &lt;/span&gt;&lt;a href=&quot;https://play.google.com/store/apps/details?id=info.guardianproject.otr.app.im&amp;amp;hl=de&quot; style=&quot;text-decoration: none;&quot;&gt;&lt;span style=&quot;background-color: white; color: #888888; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;gibberbot&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt; for Android. Using the &lt;/span&gt;&lt;a href=&quot;https://code.google.com/p/skype4pidgin/&quot; style=&quot;text-decoration: none;&quot;&gt;&lt;span style=&quot;background-color: white; color: #888888; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;skype4pidgin&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt; plugin in pidgin or adium, it is possible to encrypt the text chat of skype, too. Unfortunately, it does not help to secure voice communication. There are some &lt;/span&gt;&lt;a href=&quot;http://www.cypherpunks.ca/otr/index.php#docs&quot; style=&quot;text-decoration: none;&quot;&gt;&lt;span style=&quot;background-color: white; color: #1155cc; font-family: Arial; font-style: normal; font-variant: normal; font-weight: bold; text-decoration: underline; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;guides&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;, including video tutorials for set up.&lt;/span&gt;&lt;/div&gt;
&lt;span id=&quot;docs-internal-guid-2e4fcf45-c250-d0c6-c46b-eb4f59532ccd&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.4; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;(Another interesting feature: the plugin not only offers encryption, but also enables &lt;/span&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Plausible_deniability&quot; style=&quot;text-decoration: none;&quot;&gt;&lt;span style=&quot;background-color: white; color: #888888; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;plausibly deniablity&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;. If used correctly, by just looking at the encrypted stream of exchanged messages, it is not possible to attribute authorship to the messages.)&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.4; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;For push notification based &lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: bold; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;instant messaging on smartphones,&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt; I recommend &lt;/span&gt;&lt;a href=&quot;https://threema.ch/de/&quot; style=&quot;text-decoration: none;&quot;&gt;&lt;span style=&quot;background-color: white; color: #888888; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;Threema&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;. The system I described above (OTR) requires users to be online to send messages - but whatsapp and others do not require both parties to be online&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: bold; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;at the same time. Threema avoids this issue by &lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: bold; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;u&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;sing a scheme similar to the public key encryption in emails.&lt;/span&gt;&lt;/div&gt;
&lt;span id=&quot;docs-internal-guid-2e4fcf45-c250-a0e4-e325-99608c5f33ed&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;line-height: 1.4; margin-bottom: 0pt; margin-top: 0pt;&quot;&gt;
&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;Unfortunately, it costs a couple of bucks (~1.8 €), but has no further charges. It basically is an encrypted version of whatsapp. The only drawback is, of course, no intercommunication with other messengers. It is also &lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: italic; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;closed source, &lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;meaning it is hard to check what the app actually does, but the cryptography is provided by an open source library NaCl.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;&lt;b&gt;Surfing &lt;/b&gt;anonymously is a bit harder, and there is a choice of &lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-variant: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;&lt;i&gt;VPN providers&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;. They all are centralized, i.e. there is one party that knows everything you do. There are a few &lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-variant: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;&lt;i&gt;peer to peer&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt; solutions, and the best and probably most famous on is the &lt;a href=&quot;https://www.torproject.org/projects/torbrowser.html.en&quot; target=&quot;_blank&quot;&gt;TOR project&lt;/a&gt;.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;The Tor project offers a a lot and is actually used in China, Egypt and other Arabic countries to enable and protect members of the opposition. There is an &lt;a href=&quot;http://www.youtube.com/watch?v=GwMr8Xl7JMQ&quot; target=&quot;_blank&quot;&gt;amazing talk&lt;/a&gt; &quot;&lt;/span&gt;&lt;span style=&quot;font-family: arial, sans-serif; line-height: normal;&quot;&gt;How governments have tried to block Tor&quot; by one of the creators, describing the arms race with China and other countries on en-/disabling access to the TOR network - once a user is in, it is almost impossible to track his activities.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: white; color: #222222; font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/6405910239665519152/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/6405910239665519152' title='0 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/6405910239665519152'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/6405910239665519152'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2013/08/a-quick-overview-of-simple-encryption.html' title='A quick overview of simple encryption for end-users'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-6275706387727057183</id><published>2013-07-30T15:39:00.004-07:00</published><updated>2013-07-30T18:18:55.804-07:00</updated><title type='text'>The Multi-linear Jigsaw  of &quot;Candidate Indistinguishability Obfuscation&quot; for functional software encryption (possibly part 1)</title><content type='html'>This evening I noticed a few retweets about a code obfuscation technique that was reported as being new and groundbreaking. I was intrigued and read a good article &lt;a href=&quot;http://qz.com/109999/a-breakthrough-in-cryptography-could-thwart-a-favorite-attack-of-hackers/&quot;&gt;article&lt;/a&gt;, but was unsatisfied with the level of detail and the number of unanswered questions I was left with: &quot;What is the concept of obfuscation they use; isn&#39;t there a proof of impossibility?&quot; &quot;Does it work for all programs?&quot; &quot;How secure, and how provable is this technique?&quot; and &quot;What does &#39;multilinear jigsaw puzzle&#39; in detail mean?&quot; as well es my curiosity regarding the &#39;how&#39; of their construction. To answer these questions, I took a look at the &lt;a href=&quot;http://eprint.iacr.org/2013/451&quot;&gt;paper&lt;/a&gt; itself and took some more detailed notes which you can find below. In short, they have a precise notion of security for their understanding of obfuscation as well as a progression of generalizing and securing their core idea.&lt;br /&gt;

&lt;p&gt;&lt;b&gt;The concept of obfuscating and its security:&lt;/b&gt;&lt;/p&gt;

The issue the paper contributes to is as follows: can one make a program, while preserving its functionality, make it &lt;i&gt;unintelligible&lt;/i&gt; (so that looking at it doesn&#39;t give you a whole lot of information)? There is a result that roughly states that it is almost impossible to have an &quot;encrypted simulation&quot; of a program to obfuscate it, since it can be shown that one can construct efficient &lt;i&gt;un&lt;/i&gt;obfuscater that extracts the information used to make the program unintelligible.&lt;br /&gt;
A solution to this dilemma is given by a slightly different formulation of this problem, called the &lt;i&gt;indistinguishability obfuscation&lt;/i&gt;. Instead of resorting to simple models of computations such as Turing machines, it uses &lt;i&gt;circuits&lt;/i&gt;. Given a particular class of circuits $\mathcal{C}$, then an &lt;i&gt;indistinguishability obfuscator&lt;/i&gt; $i\mathcal{O}$ should guarantee that for two equivalent ciruits $C_1$ and $C_2$ the two distributions $i\mathcal{O}(C_1)$ and $i\mathcal{O}(C_2)$ are computationally indistinguishable. It has been an open question, whether such an obfuscator exsists for all polynomial sized circuits.&lt;br /&gt;
The guarantee of the obfuscator $i \mathcal{O}$ is formalized by security parameters,; the cirucuit class of the obfuscator is actually $\{ C_\lambda \}$. For encoded circuit equipped with a security parameter, e.g. $i\mathcal{O}(\lambda, C)$, there is for any distinguisher $D$  a negligible function $\alpha$ and it holds: for all obfuscations $C_1, C_2$ of the same  circuit $C \in \mathcal{C}_\lambda$, the probability of $D$ distinguishing it is bounded by $\alpha(\lambda)$. &lt;br /&gt;

&lt;p&gt;&lt;b&gt;The computation model:&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;The paper proposes an indistinguishability obfuscator for circuits of the class $NC^1$, that is the class of all circuits that are polynomial in size, and have a logarithmic (specifically: $log^1 n$) depth; one can think of a polynomial number of parallel processors with each a logarithmic runtime. It is not known whether this class equals P, but it can be shown that $NC \subset P$ by sequentializing the computations. For another idea about the class: $AC = NC$, where $AC^i$ contains all boolean circuits with depth $O(log^i n)$ and polynomial number of AND/OR gates that admit an arbitrary number of inputs.&lt;br /&gt;
The neat feature of $NC^1$ used for the later construction is giving by Barrington&#39;s theorem: Every circuit $C$ of $NC^1$ can be transformed into a collection of $k$ square matrices $M^0_1, \ldots M^0_k$ and $M^1_1, \ldots M^1_k$ and model the computation of the circuit, given input $x$ of length $\ell$ by a matrix product $C(x) = 0 \Longleftrightarrow \prod_{i=1}^k M_i^{x f(i)} = I$ with a pre-defined $f: [k] \rightarrow [\ell ]$.&lt;/p&gt;


&lt;p&gt;&lt;b&gt;The core construction:&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;Besides the need for additional security, the matrix computation will be encoded into $k$ groups $G_i$: if an entry of a matrix $M^0_i$ is $\alpha$, e.g. at $(1,1)$, it is encoded as $g_i^\alpha$. Using a multilinear map, the product can be represented in a single group $G_T$.&lt;br /&gt;


&lt;p&gt;The ominous &lt;b&gt;multi-linear jigsaw puzzle&lt;/b&gt; is described as follows: given a mutilinear map system over groups of prime order p $e: G_1 \times \ldots \times G_k \rightarrow G_T$, a valid multinear form is given by any expression involving operations in $G_T$, the multilinear form and the operations within each group for the parameters of the multilinear map. The papers gives a sample expression for the case of $k = 3$ as $w_1 \cdot e(x_, y_3, z_1 z_2)^2 \cdot e(x_2^3 x_4, y_1^2, z_2 z_5^3) \cdot w^2_3)$, where $x_i \in G_1$, $y_i \in G_2$ and so an, $w_i \in G_T$.&lt;/p&gt;


&lt;p&gt;Group elements $g$ then can be viewed as &lt;b&gt;puzzle pieces &lt;/b&gt;for the puzzle given by such an expression. A &lt;b&gt;solution &lt;/b&gt;is given when the expression yields a &lt;b&gt;unit &lt;/b&gt;$g_T \in G_$. The puzzle thus has a generator outputting system parameters $prms$ and some nonempty sets of elements $S_i = \{ x_1^{(i)}, \ldots \} \subset G_i$ and the validator inputs $(prms, S_1, \ldots, S_k, S_T, \prod)$ where the last tuple element is a valid multilinear form. It gives a positiv answer if the form $\prod$ with the given elements gives a unit element of $S_T$. &lt;/p&gt;


In order to prove security, the paper makes hardness assumptions of the form: for $g_1, \ldots, g_T$ generators for $G_I$ such that for a form $e$ with $e(g_1, \ldots) = g_T$ it is impossible to distinguish tuples of expotential products of the generators.&lt;br /&gt;


&lt;b&gt;The obfuscation scheme:&lt;/b&gt;&lt;br /&gt;


This construction then is used in a Witness encryption like scheme: 

&lt;br /&gt;
&lt;blockquote&gt;
We observe here an analogy to witness indistinguishable
proofs: if a statement being proven only has a unique witness, then a witness-indistinguishable proof
does not need to hide the witness. The way witness indistinguishability can be used is by explicitly constructing statements that can have multiple witnesses. Similarly, we will use indistinguishability obfuscation
by constructing circuits that inherently have multiple equivalent forms. We use this analogy to build our
main application of functional encryption.
&lt;/blockquote&gt;
This is used as 
&lt;blockquote&gt;
Given an $NP$ Language $L$, a witness encryption scheme for $L$ is an encryption
scheme that takes as input an instance $x$ and a message bit $b$, and outputs a ciphertext $c$. If $x \in L$ and $w$
is a valid witness for $x$, then a decryptor can use $w$ to decrypt $c$ and recover $b$. However, if $x \not \in L$, then an
encryption of 0 should be computationally indistinguishable from an encryption of 1.
&lt;/blockquote&gt;
The Indistinguishablity Obfuscation for $NC^1$ implies Witness encryption for an $NP$-Complete language. The takes proceeds to argue for $L=SATISFIABILITY$, using the function $F_{x,b}(w)$ defined by:

&lt;ul&gt;
&lt;li&gt;$F_{x,b}(w) = b$ if w is a valid witness for x&lt;/li&gt;
&lt;li&gt;$F_{x,b}(w) = \perp$&lt;/li&gt;
&lt;/ul&gt;
yields a witness scheme because for $F_{x,b}(w)$ and $SATISFIABILITY$, $F_{x,b}(w)$ is in $NC^1$.
&lt;br /&gt;


&lt;b&gt;The remainder:&lt;/b&gt;&lt;br /&gt;


This finishes up this post, being possibly part 1, since the paper continues:

&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt; to solve the open problem by lifting the $NC^1$ construction to obtain a construction for all polynomial sized circuits &lt;/li&gt;
&lt;li&gt; provide functional encryption schemes for those circuits &lt;/li&gt;
&lt;li&gt; obtains a &quot;meaningful&quot; simulation based security for function encryption &lt;/li&gt;
&lt;li&gt; provides security proofs against several classes of attacks&lt;/li&gt;
&lt;/ul&gt;
But I figure that if someone wants to know these details too, they&#39;d have already read the paper before arriving here -- while my questions along the lines of &quot;What are they doing?&quot;, &quot;Does it work for all programs?&quot;, &quot;How secure, and how provable is this?&quot; are answered sufficiently for now.

&lt;br /&gt;


The actual paper is at &lt;a href=&quot;http://eprint.iacr.org/2013/451&quot;&gt;http://eprint.iacr.org/2013/451&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/6275706387727057183/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/6275706387727057183' title='0 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/6275706387727057183'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/6275706387727057183'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2013/07/multi-linear-jigsaw-candidate.html' title='The Multi-linear Jigsaw  of &quot;Candidate Indistinguishability Obfuscation&quot; for functional software encryption (possibly part 1)'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-4966154987872050065</id><published>2013-07-29T17:59:00.001-07:00</published><updated>2013-07-29T18:22:19.082-07:00</updated><title type='text'>Categorial constructions (Part 1)</title><content type='html'>&lt;p&gt; Reading up on a paper, I discovered that I will need Day&#39;s convolution to construct tensors in a bicategory of monoidal supported profunctors. The hom-categories of these to $Set$ then capture supported pre-categories as a partial monoid.&lt;/p&gt;

So slowly working toward it, I flesh out some of my notes here: &lt;br /&gt;


&lt;p&gt;Usually, one encounters &lt;i&gt;convolution&lt;/i&gt; in electrical engineering and in image processing; the convolution of two functions $f$ and $g$, denoted by the convolution operator $*$ as $(f * g)$ is defined as &lt;/p&gt;

&lt;p&gt;
\[ (f*g)(t) = \int_{-\infty}^{\infty} f(\tau) f(t - \tau) d \tau \]
&lt;/p&gt;

&lt;p&gt;where $f, g: M \rightarrow \mathbb{C}$ are maps from a group to complex numbers. It can be thought of as a moving window, giving by one of the function, that inspects the values of the other function. This definition can be extended to convolutions on functors $F$ on a monoidal category $M$ to the category of sets $Set$, $F: M \rightarrow Set$. &lt;/p&gt;

&lt;p&gt;In the standard setting, convolution yields a commutative algebra without identity on the linear space of (suitably) measureable functions. For the extension, the functor category $Set^M$ of functors $F: M \rightarrow Set$ yields a monoidal category; Day&#39;s convolution is its tensor product. &lt;/p&gt;

&lt;p&gt;A simple example to see how it works is given by graded sets in a categorical setting: given the discrete category $\mathbb{N}$ with natural numbers as objects and only identify mappings as morphisms, where addition plays the role of the monoidal product, the graded sets then can be represented by functors $F: \mathbb{N} \rightarrow Set$.
The convolution in the category then is &lt;/p&gt;

&lt;p&gt;\[ (F*G)(n) = \sum_{i+j=n} F(i) \times G(j) = \sum_{i,j} F(i) \times G(j) \times hom_{\mathbb{N}(n, i \otimes j) \]&lt;/p&gt;

&lt;p&gt;Where $\otimes$ is the addition of natural numbers. Moving on to a more general setting, one wants to replace $\mathbb{N}$ by a general monoidal category $C$. The formula for the convolution, given two presheaves $F, G: C^{op} \rightarrow Set$ is defined as&lt;/p&gt;

&lt;p&gt;
$ (F*G)(e) = \int^{c,d \in Obj(C)} F(c) \times G(d) \times hom_C(e, c \otimes d)$
&lt;/p&gt;

&lt;p&gt;In that expression, the convolution product is given by a coend $\int$ of the functor under the integral symbol. The coend of an functor $F$ in $Set$ is an object $e$ with a universal dinatural transformation $\zeta: F \stackrel{..}{\rightarrow} e$. In this case, the notion of dinatural transformation relaxes the requirements of a natural transformation: usually, for a natural transformation $\alpha: F \rightarrow G$ between functors F and G, $\alpha$ depends on some variable $x$ co-/contravariantly. A dinatural, or in this case the slightly more restrictive notion of an extranatural transformation requires either F or G to depend on some variable both co- and contravariantly. It is constituted by a collection of morphisms $\alpha_c: F(c,c) \rightarrow G(c,c)$ such that for every morphism $f: c \rightarrow c&#39;$ in $C$ the hexagon identity holds:&lt;/p&gt;

&lt;p&gt;$G(c,f)\alpha_cF(f,c) = G(f,c&#39;)\alpha_{c&#39;} F(c&#39;,f):F(c&#39;,c) \rightarrow G(c,c&#39;)$ &lt;/p&gt;

In this setting, the coend object is an object of $Set$.


The Day&#39;s convolution has some nice properties regarding the preservation of colimits, as well as some interesting relations to the Yoneda embedding. The next posts will contain more on the properties on the convolution and possibly the Yoneda lemma, but also mainly focus on recovering supported precategories in a more abstract setting.
</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/4966154987872050065/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/4966154987872050065' title='0 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/4966154987872050065'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/4966154987872050065'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2013/07/categorial-constructions-part-1.html' title='Categorial constructions (Part 1)'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-5567142050598508690</id><published>2013-07-27T10:06:00.000-07:00</published><updated>2013-07-27T10:06:09.799-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="java"/><category scheme="http://www.blogger.com/atom/ns#" term="library"/><category scheme="http://www.blogger.com/atom/ns#" term="link"/><category scheme="http://www.blogger.com/atom/ns#" term="machine learning"/><category scheme="http://www.blogger.com/atom/ns#" term="presentation"/><category scheme="http://www.blogger.com/atom/ns#" term="programming"/><category scheme="http://www.blogger.com/atom/ns#" term="slides"/><title type='text'>Mahout</title><content type='html'>A nice intro slideset to Mahout, a mapreduce enabled hadoop machine learning library in java:

&lt;iframe src=&quot;http://www.slideshare.net/slideshow/embed_code/24676902&quot; width=&quot;427&quot; height=&quot;356&quot; frameborder=&quot;0&quot; marginwidth=&quot;0&quot; marginheight=&quot;0&quot; scrolling=&quot;no&quot; style=&quot;border:1px solid #CCC;border-width:1px 1px 0;margin-bottom:5px&quot; allowfullscreen webkitallowfullscreen mozallowfullscreen&gt; &lt;/iframe&gt; &lt;div style=&quot;margin-bottom:5px&quot;&gt; &lt;strong&gt; &lt;a href=&quot;http://www.slideshare.net/VaradMeru/introduction-to-mahout-and-machine-learning&quot; title=&quot;Introduction to Mahout and Machine Learning&quot; target=&quot;_blank&quot;&gt;Introduction to Mahout and Machine Learning&lt;/a&gt; &lt;/strong&gt; from &lt;strong&gt;&lt;a href=&quot;http://www.slideshare.net/VaradMeru&quot; target=&quot;_blank&quot;&gt;Varad Meru&lt;/a&gt;&lt;/strong&gt; &lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/5567142050598508690/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/5567142050598508690' title='0 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/5567142050598508690'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/5567142050598508690'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2013/07/mahout.html' title='Mahout'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-2848984554613314165</id><published>2013-04-29T08:36:00.000-07:00</published><updated>2013-04-29T08:36:24.180-07:00</updated><title type='text'>Writing Systems; Miss Korea and facial analysis</title><content type='html'>In a &lt;a href=&quot;http://languagelog.ldc.upenn.edu/nll/?p=3150&quot;&gt;blog post&lt;/a&gt;, the relationship between the complexity of writing systems and its associated culture is discussed. While I do not agree with some arguments, it opens an interesting perspective.&lt;br /&gt;
&lt;br /&gt;
On another note, there is an interesting (mathematical)&amp;nbsp;&lt;a href=&quot;http://jbhuang0604.blogspot.it/2013/04/miss-korea-2013-contestants-face.html&quot; target=&quot;_blank&quot;&gt;analysis&lt;/a&gt;&amp;nbsp;of the top 20 Miss Korea contestants and the similarity of their faces.</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/2848984554613314165/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/2848984554613314165' title='0 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/2848984554613314165'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/2848984554613314165'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2013/04/writing-systems-miss-korea-and-facial.html' title='Writing Systems; Miss Korea and facial analysis'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-3853440643970903849</id><published>2013-04-22T06:13:00.002-07:00</published><updated>2013-04-22T06:13:49.445-07:00</updated><title type='text'>Auctioneers and High Performance</title><content type='html'>There is an interesting &lt;a href=&quot;http://martinfowler.com/articles/lmax.html&quot;&gt;article/blog post&lt;/a&gt; on the architecture of the &lt;a href=&quot;http://www.lmax.com/&quot;&gt;LMAX exchange&lt;/a&gt;. They prefer a single thread model with &lt;a href=&quot;http://martinfowler.com/eaaDev/EventSourcing.html&quot;&gt;event sourcing&lt;/a&gt; over an &lt;a href=&quot;http://en.wikipedia.org/wiki/Actor_model&quot;&gt;actor driven&lt;/a&gt; model. &lt;a href=&quot;http://www.betfair.com/&quot;&gt;Betfair&lt;/a&gt;, a company related to the LMAX owners, at least for a while, used an &lt;a href=&quot;http://www.hpts.ws/papers/2007/HPTS%20Workshop%20-%20Betfair%20-%20Flywheel.pdf&quot;&gt;actor, in memory model&lt;/a&gt; for sports betting.

These issues are only relevant when handling very high volumes of trades, but certainly might become increasingly interesting for exchanges handling crypto currencies like bitcoin, litecoin or ppcoin.</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/3853440643970903849/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/3853440643970903849' title='0 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/3853440643970903849'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/3853440643970903849'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2013/04/auctioneers-and-high-performance.html' title='Auctioneers and High Performance'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-3350732663692002492</id><published>2013-04-06T17:16:00.002-07:00</published><updated>2013-04-06T17:16:47.557-07:00</updated><title type='text'>Quick permutations</title><content type='html'>&lt;a href==&quot;http://docs.python.org/3.1/library/itertools.html#itertool-functions&quot;&gt;itertools&lt;/a&gt; for python are fun:

&lt;pre class=&quot;brush: python&quot;&gt;
import itertools

partb= list(itertools.imap(lambda x: &quot;&quot;.join(x), itertools.combinations(&#39;aApe&#39;,3)))
parta = list(itertools.imap(lambda x: &quot;&quot;.join(x), itertools.permutations(&#39;gRrAet!1&#39;,5)))

print &#39;\n&#39;.join(list(itertools.imap(lambda x: &quot;&quot;.join(x), (itertools.product(parta, partb)))))
&lt;/pre&gt;

But in the end, this post is just to test out the &lt;a href=&quot;http://alexgorbatchev.com/SyntaxHighlighter/download/&quot;&gt;syntax highlighting feature&lt;/a&gt; in javascript.</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/3350732663692002492/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/3350732663692002492' title='0 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/3350732663692002492'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/3350732663692002492'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2013/04/quick-permutations.html' title='Quick permutations'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-6659240958763203087</id><published>2012-09-21T15:05:00.000-07:00</published><updated>2012-09-21T15:05:01.887-07:00</updated><title type='text'>On Animal Intelligence, Human Behaviour and Econometrics</title><content type='html'>Quite a while since the last post; here a few things I read in the meantime&lt;br /&gt;
&lt;br /&gt;
On animal intelligence:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;div&gt;
&lt;a href=&quot;http://comparativemind.blogspot.co.uk/2012/09/crows-can-reason-about-causes-recent.html&quot; target=&quot;_blank&quot;&gt;Crows can &#39;reason&#39; about causes, a recent study finds&lt;/a&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://scitechdaily.com/hyenas-might-be-as-intelligent-as-some-primates/&quot; style=&quot;font-family: &#39;Droid Serif&#39;, serif;&quot; target=&quot;_blank&quot;&gt;Hyenas Might Be As Intelligent As Some Primates&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
On humans:&lt;/div&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://online.wsj.com/article/SB10000872396390443890304578006252019616768.html&quot; target=&quot;_blank&quot;&gt;Xerox optimizes hiring of its telephone support staff by evaluating a&amp;nbsp;questionnaire&amp;nbsp;on potential candidates&#39; personality&lt;/a&gt;&amp;nbsp;aiming at keeping them on the job long enough to make the training pay out&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.wikihow.com/Category:Conversation-Skills&quot; target=&quot;_blank&quot;&gt;some tricks/guidelines on human interaction&lt;/a&gt;&amp;nbsp;mostly regarding conversations&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
Moreover, there is a free course on computational economics (&lt;a href=&quot;http://www.cs.duke.edu/courses/fall07/cps196.2/&quot; target=&quot;_blank&quot;&gt;course material&lt;/a&gt;, &lt;a href=&quot;https://class.coursera.org/compfinance-2012-001/lecture/index&quot; target=&quot;_blank&quot;&gt;coursera videos&lt;/a&gt;), mostly pretty basic stuff with support of MS Excel as well asR.I&#39;m also working through a&lt;a href=&quot;http://people.stern.nyu.edu/wgreene/Text/econometricanalysis.htm&quot; target=&quot;_blank&quot;&gt; book on econometric analysis by William Greene&lt;/a&gt;&amp;nbsp;which offers a better insight into&amp;nbsp;analysing&amp;nbsp;markets and their driving factors.&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/6659240958763203087/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/6659240958763203087' title='0 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/6659240958763203087'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/6659240958763203087'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2012/09/on-animal-intelligence-human-behaviour.html' title='On Animal Intelligence, Human Behaviour and Econometrics'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-8955670563249066405</id><published>2012-05-19T09:57:00.000-07:00</published><updated>2012-05-20T05:42:12.127-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="finance"/><category scheme="http://www.blogger.com/atom/ns#" term="fun"/><category scheme="http://www.blogger.com/atom/ns#" term="links"/><category scheme="http://www.blogger.com/atom/ns#" term="random commet"/><title type='text'>JP Morgan</title><content type='html'>Recently, JP Morgan reported rather biggish losses due to only a few trades/positions. According to rumors, hedgefunds and speculators already took a piece of the cake, since positions are not closed yet. It&#39;s not completely known which these are, but apparently they involve the the IG9, a credit default swap index including 125 american companies. You can find more information on it at &lt;a href=&quot;http://www.markit.com/en/products/data/indices/credit-and-loan-indices/cdx/cdx.page&quot;&gt;markit&lt;/a&gt; CDX and their &lt;a href=&quot;https://www.markit.com/news/Credit%20Indices%20Primer.pdf&quot; target=&quot;_blank&quot;&gt;product description page&lt;/a&gt;. Basically, it&#39;s one of the largest and most liquid CDS products. You would want to buy these products to hedge risk on bonds issued by the companies included in the index. Conversely you sell it, if you want to bet on the solvency of the companies. In this case, you get some money up front for selling it and a continuous payments during the contract period (10 years). As soon as a company fails to meet its liabilities, the total loss on the company is calculated, e.g. if the company recovers at 30% after filing for bancrupcy, the 70% loss is mutliplied by the weight of the company in the index (all have 0.8%) gives the amount of money you need to pay to cover for the losses.&lt;br /&gt;
Moreover, these products create a leverage and thus opens the possiblity to hedge delta trades by buying on the index. Apparently, this kind of trade caused the problems at JP Morgan. As far as I know, there is no easy access to these products using your everyday discount broker.&lt;br /&gt;
&lt;br /&gt;
List of links to news regarding JP Morgans trade:&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://online.wsj.com/article/SB10001424052702303879604577412613778263918.html&quot;&gt;http://online.wsj.com/article/SB10001424052702303879604577412613778263918.html&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/8955670563249066405/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/8955670563249066405' title='0 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/8955670563249066405'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/8955670563249066405'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2012/05/jp-morgan.html' title='JP Morgan'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-2834375397739337839</id><published>2012-04-15T12:44:00.000-07:00</published><updated>2012-04-15T12:44:33.646-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="applied maths"/><category scheme="http://www.blogger.com/atom/ns#" term="blogs"/><category scheme="http://www.blogger.com/atom/ns#" term="cognitive science"/><category scheme="http://www.blogger.com/atom/ns#" term="computer science"/><category scheme="http://www.blogger.com/atom/ns#" term="finance"/><category scheme="http://www.blogger.com/atom/ns#" term="links"/><category scheme="http://www.blogger.com/atom/ns#" term="papers"/><title type='text'>A bit of Computation, Math and Psychology</title><content type='html'>&lt;ul&gt;&lt;li&gt;Some statistics: Verbal intelligence by demographic: &lt;a href=&quot;http://blogs.discovermagazine.com/gnxp/2012/04/verbal-intelligence-by-demographic/&quot;&gt;blog post&lt;/a&gt;&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;An implementation of reversible computation gates using crabs: &lt;a href=&quot;http://www.wired.com/wiredenterprise/2012/04/soldier-crabs/&quot;&gt;article&lt;/a&gt; and &lt;a href=&quot;http://www.complex-systems.com/pdf/20-2-2.pdf&quot;&gt;paper&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.burtonmackenzie.com/2007/12/whats-most-optimal-numeric-base.html&quot;&gt;blog post&lt;/a&gt; on the optimal base for a number system w.r.t to number of digits in base and length of numbers&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;www.cs.nyu.edu/courses/fall07/G22.2434-001/timeseriesdb.pp&quot;&gt;High performance correlation techniques for time series&lt;/a&gt; (watch out, .ppt file)&lt;/li&gt;
&lt;/ul&gt;</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/2834375397739337839/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/2834375397739337839' title='0 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/2834375397739337839'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/2834375397739337839'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2012/04/bit-of-computation-math-and-psychology.html' title='A bit of Computation, Math and Psychology'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-3995084410942909287</id><published>2012-03-14T09:08:00.000-07:00</published><updated>2012-03-14T09:08:49.997-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="blog"/><category scheme="http://www.blogger.com/atom/ns#" term="cognitive science"/><category scheme="http://www.blogger.com/atom/ns#" term="linguistics"/><category scheme="http://www.blogger.com/atom/ns#" term="links"/><category scheme="http://www.blogger.com/atom/ns#" term="stuff"/><title type='text'>Models for Cognition: Belief vs Connectionism; links on writing style</title><content type='html'>There&#39;s an &lt;a href=&quot;http://criticalscience.com/connectionist-models-have-killed-off-beliefs.html&quot;&gt;interesting article&lt;/a&gt; about the consequences of connectionist models for the theory of beliefs. I think it&#39;s interesting that one counterexample is taken as a proof for the non-existence of beliefs, whereas a lot of further contraints (for biological and evolutionary reasons) might apply to require the construction to be more uniform/unique.&lt;br /&gt;
&lt;br /&gt;
Another set of links regarding style of writing papers/thesis: &lt;a href=&quot;http://dabacon.org/pontiff/?p=6101&quot;&gt;Nine cirlces of latex hell&lt;/a&gt;, &lt;a href=&quot;http://anorien.csc.warwick.ac.uk/mirrors/CTAN/info/l2tabu/english/l2tabuen.pdf&quot;&gt;essential guide to latex&lt;/a&gt; and a &lt;a href=&quot;http://chronicle.com/article/50-Years-of-Stupid-Grammar/25497&quot;&gt;rant on Strunk&#39;s Elements of Style&lt;/a&gt;.</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/3995084410942909287/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/3995084410942909287' title='0 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/3995084410942909287'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/3995084410942909287'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2012/03/models-for-cognition-belief-vs.html' title='Models for Cognition: Belief vs Connectionism; links on writing style'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-4459816146366285750</id><published>2012-02-14T06:57:00.000-08:00</published><updated>2012-02-14T06:57:10.254-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="blog"/><category scheme="http://www.blogger.com/atom/ns#" term="links"/><category scheme="http://www.blogger.com/atom/ns#" term="papers"/><title type='text'>STOC Papers</title><content type='html'>A &lt;a href=&quot;http://kintali.wordpress.com/2012/02/10/stoc-2012/&quot;&gt;blog post&lt;/a&gt; with links to the accepted STOC 2010 papers. Quite some intesting topics!</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/4459816146366285750/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/4459816146366285750' title='0 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/4459816146366285750'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/4459816146366285750'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2012/02/stoc-papers.html' title='STOC Papers'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-1162428398112348327</id><published>2012-01-28T12:18:00.000-08:00</published><updated>2012-01-28T12:18:57.628-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="architecture"/><category scheme="http://www.blogger.com/atom/ns#" term="video"/><category scheme="http://www.blogger.com/atom/ns#" term="Youtube"/><title type='text'>Architecture: Hedonistic sustainability</title><content type='html'>I&#39;ve been only twice to Copenhagen, but I really liked it there. That&#39;s of course because the Danish people are very nice, but also because I really like how the city feels.&lt;br /&gt;
There&#39;s a great TEDtalk on architecture by some Danish with focus on sustainability: &lt;a href=&quot;http://www.ted.com/talks/bjarke_ingels_hedonistic_sustainability.html&quot;&gt;Link to TED page&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;iframe width=&quot;400&quot; height=&quot;233&quot; src=&quot;https://www.youtube.com/embed/ogXT_CI7KRU&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;&lt;br /&gt;
&lt;br /&gt;
I strongly suggest to not watch the video in the embedded video frame size!</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/1162428398112348327/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/1162428398112348327' title='0 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/1162428398112348327'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/1162428398112348327'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2012/01/architecture-hedonistic-sustainability.html' title='Architecture: Hedonistic sustainability'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/ogXT_CI7KRU/default.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-2571670079152850187</id><published>2012-01-27T16:53:00.000-08:00</published><updated>2012-01-29T08:37:06.397-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="blog"/><category scheme="http://www.blogger.com/atom/ns#" term="computer science"/><category scheme="http://www.blogger.com/atom/ns#" term="economics"/><category scheme="http://www.blogger.com/atom/ns#" term="papers"/><category scheme="http://www.blogger.com/atom/ns#" term="programming"/><title type='text'>Market Makers &amp; Prediction Markets</title><content type='html'>A while ago&lt;a href=&quot;http://cinrizasti.blogspot.com/2011/12/futarchy-applying-prediction-markets.html&quot;&gt; I posted &lt;/a&gt; on the idea of &lt;a href=&quot;http://en.wikipedia.org/wiki/Futarchy&quot;&gt;futarchy&lt;/a&gt; and followed up with &lt;a href=&quot;http://cinrizasti.blogspot.com/2011/12/on-implementation-issues-of-virtual.html&quot;&gt;a post &lt;/a&gt; on implementation and issues of virtual stock markets.&lt;br /&gt;
&lt;br /&gt;
I only posted links on auction markets, i.e. where one party makes an offer, another one a request and the system finds a match. That only works good for systems with high liquidity. Especially on prediction markets with combinatorical outcomes (e.g. of the form &quot;if person A becomes the candidate for party 1, then party 2 will win the election&quot; or even more complex constructions) this is difficult: you need to find people making similar opposite bets to match. A way around of this is to use a market maker instead of an auctioneer. It takes the trades directly instead of leading a negotiation between to parties. The price is set automatically by the system. This, of course, also has drawbacks. In a real life system, the market maker provides liquidity and thus is at risk losing some money. Moreover, the pricing of the goods depends on parameters of the market maker. Wrong values for thick or thin (i.e. markets with many/few participants) might make the price either bounce up and down or move only tiny bits.&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://blog.oddhead.com/2008/12/22/what-is-and-what-good-is-a-combinatorial-prediction-market/&quot;&gt;On combinatorial prediction markets&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;an aricle on &lt;a href=&quot;http://blog.oddhead.com/2006/10/30/implementing-hansons-market-maker/&quot;&gt;implementing a simple market maker&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://blog.commerce.net/?p=251&quot;&gt;article on books and market makers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://blog.oddhead.com/2008/02/19/the-right-way-to-implement-a-multi-outcome-prediction-market-linear-programming/&quot;&gt;Multi-Outcome markets&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/2571670079152850187/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/2571670079152850187' title='0 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/2571670079152850187'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/2571670079152850187'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2012/01/market-makers-prediction-markets.html' title='Market Makers &amp; Prediction Markets'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-3850003426860624316</id><published>2012-01-07T05:37:00.000-08:00</published><updated>2012-01-07T05:37:32.815-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="blogs"/><category scheme="http://www.blogger.com/atom/ns#" term="lectures"/><category scheme="http://www.blogger.com/atom/ns#" term="math"/><category scheme="http://www.blogger.com/atom/ns#" term="physics"/><category scheme="http://www.blogger.com/atom/ns#" term="quantum computation"/><title type='text'>Uncertainity Principle(s)</title><content type='html'>Most people know a formulation of the &lt;a href=&quot;http://en.wikipedia.org/wiki/Heisenberg_uncertainty_principle&quot;&gt;uncertainity principle in quantum mechanics&lt;/a&gt; (by Heisenberg), where it basically gives a bound (in terms of the standard deviations of ~) for simultaneous measurements of complementary properties (i.e. measurement operators with non-negative commutator).&lt;br /&gt;
&lt;br /&gt;
There are a number of other places where the principce turns up. It comes from an application of the cauchy schwarz inequality to the fourier transformation. Here&#39;s a set of &lt;a href=&quot;http://www8.informatik.uni-erlangen.de/IMMD8/Lectures/Codierung/TexteSS07/ftrans.pdf&quot;&gt;(german) slides&lt;/a&gt; from a lecture. Recently &lt;a href=&quot;http://terrytao.wordpress.com/2011/12/31/montgomerys-uncertainty-principle/&quot;&gt;Terry Tao posted&lt;/a&gt; on a a formulation of the principle due to Mongomery, which has applications in analytic number theory.</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/3850003426860624316/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/3850003426860624316' title='0 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/3850003426860624316'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/3850003426860624316'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2012/01/uncertainity-principles.html' title='Uncertainity Principle(s)'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-7386791244754804731</id><published>2012-01-03T17:28:00.000-08:00</published><updated>2012-01-04T05:28:38.870-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="antrophology"/><category scheme="http://www.blogger.com/atom/ns#" term="biology"/><category scheme="http://www.blogger.com/atom/ns#" term="cognitive science"/><category scheme="http://www.blogger.com/atom/ns#" term="links"/><category scheme="http://www.blogger.com/atom/ns#" term="science related"/><title type='text'>On Human Brain Size; the Conciousness and Anaesthesia</title><content type='html'>A happy new year to all readers. I just got two articles with some references on further resources:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://discovermagazine.com/2010/sep/25-modern-humans-smart-why-brain-shrinking/article_view?b_start:int=2&amp;-C=&quot;&gt;Brain Size of Modern Humans is shrinking&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.newscientist.com/article/mg21228402.300-banishing-consciousness-the-mystery-of-anaesthesia.html?full=true&amp;print=true&quot;&gt;On the Workings of Anaesthesia&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
In near future, I will post some more math; I just haven&#39;t read all the things I stumbled on.&lt;br /&gt;
&lt;br /&gt;
edit: let me squeeze in another link to an article:&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.newscientist.com/article/mg21228442.800-learn-language-faster-with-gestures.html&quot;&gt;Language learning is fast when words are connected with movements/gestures&lt;/a&gt;, which is also true for abstract words with no obvious gesture for it.</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/7386791244754804731/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/7386791244754804731' title='0 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/7386791244754804731'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/7386791244754804731'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2012/01/on-human-brain-size-conciousness-and.html' title='On Human Brain Size; the Conciousness and Anaesthesia'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-877579213099335433</id><published>2011-12-24T06:29:00.000-08:00</published><updated>2011-12-24T06:29:14.891-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="economics"/><category scheme="http://www.blogger.com/atom/ns#" term="finance"/><category scheme="http://www.blogger.com/atom/ns#" term="links"/><category scheme="http://www.blogger.com/atom/ns#" term="papers"/><category scheme="http://www.blogger.com/atom/ns#" term="programming"/><category scheme="http://www.blogger.com/atom/ns#" term="science related"/><title type='text'>On (implementation issues of) Virtual Stock Markets</title><content type='html'>After my recent post on prediction markets, I decided to implement a small auctioneer for virtual stock markets with two parties making deals, i.e. not a market maker mechanism but a (traditional) double auction. But, despite the simple idea behind a bid/ask driven market,  the implementation has to take into account quite a number of details: can you buy/sell one unit or multiple units of a good at a time? Does trading occur at discrete events or is it continuous? Is pricing uniform (all trade at the same equilibirum price) or discriminatory (individual matching of bid/ask orders)? And, if one the two options is chosen, how is the price determined?&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Beside the double auction system, bidding can take other forms: &lt;a href=&quot;http://spider.sci.brooklyn.cuny.edu/~parsons/publications/journals/acs.pdf&quot;&gt;Auctions and Bidding: A Guide for Computer Scientists&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://spider.sci.brooklyn.cuny.edu/~parsons/projects/mech-design/publications/cda.pdf&quot;&gt;Everything you wanted to know about double auctions, but were afraid to (bid or) ask&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;And finally a paper on two &lt;a href=&quot;http://www4.ncsu.edu/~wurman/Papers/Auction-Algorithms.pdf&quot;&gt;multi unit k-double auction algorithms&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/877579213099335433/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/877579213099335433' title='0 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/877579213099335433'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/877579213099335433'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2011/12/on-implementation-issues-of-virtual.html' title='On (implementation issues of) Virtual Stock Markets'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-1843734983727675441</id><published>2011-12-22T08:26:00.000-08:00</published><updated>2011-12-22T08:26:09.552-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="blog"/><category scheme="http://www.blogger.com/atom/ns#" term="cognitive science"/><category scheme="http://www.blogger.com/atom/ns#" term="linguistics"/><category scheme="http://www.blogger.com/atom/ns#" term="math"/><title type='text'>Reading Speed: Chinese vs English</title><content type='html'>I always wondered about mankind&#39;s languages and writing systems, one of the reasons I looked into &lt;a href=&quot;http://www.lojban.org/tiki/Lojban&quot;&gt;Lojban&lt;/a&gt; (quite) a while ago. In an earlier &lt;a href=&quot;http://cinrizasti.blogspot.com/2010/03/writing-systems-and-non-linearity.html&quot;&gt;post about writing systems&lt;/a&gt; I expressed my fascination about non-linear systems. But even with linear systems, we have alphabetic, syllabic and logographic systems. But it turns out the our systems are optimal in the sense that our cognitive abilities won&#39;t let us process more optimized systems, at least that is indicated by a &lt;a href=&quot;http://persquaremile.com/2011/12/21/which-reads-faster-chinese-or-english/&quot;&gt;study on reading speed &lt;/a&gt; with Chinese vs English - two major examples of logographic and alphabetic writing systems.</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/1843734983727675441/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/1843734983727675441' title='0 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/1843734983727675441'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/1843734983727675441'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2011/12/reading-speed-chinese-vs-english.html' title='Reading Speed: Chinese vs English'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4152282129640803684.post-8561101013967565200</id><published>2011-12-14T08:34:00.000-08:00</published><updated>2011-12-14T08:34:50.631-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="economics"/><category scheme="http://www.blogger.com/atom/ns#" term="ethics"/><category scheme="http://www.blogger.com/atom/ns#" term="finance"/><category scheme="http://www.blogger.com/atom/ns#" term="links"/><category scheme="http://www.blogger.com/atom/ns#" term="papers"/><category scheme="http://www.blogger.com/atom/ns#" term="politics"/><title type='text'>Futarchy: applying prediction markets</title><content type='html'>&lt;a href=&quot;http://en.wikipedia.org/wiki/Robin_Hanson&quot;&gt;R. Hanson&lt;/a&gt; suggests to use prediction markets to make better use of information to evaluate strategies in politics. He calls the combination of democracy and speculative market information processing &lt;a href=&quot;http://en.wikipedia.org/wiki/Futarchy&quot;&gt;futarchy&lt;/a&gt;. There is a &lt;a href=&quot;http://hanson.gmu.edu/futarchy.html&quot;&gt;short manifesto&lt;/a&gt; and a &lt;a href=&quot;http://hanson.gmu.edu/futarchy.pdf&quot;&gt;full paper (PDF)&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
The central idea is: Use democracy to express what you want, use prediction markets to evaluate how to reach these goals. People can give strategies which are traded after paying a small fee; when they seem to be efficient the get a payback, otherwise they loose the fee. Thus good strategies are rewarded, bad ones are not rewarded but cost an extra fee. Augmented GDP and other indicators give a measured value to the state of the country.</content><link rel='replies' type='application/atom+xml' href='http://cinrizasti.blogspot.com/feeds/8561101013967565200/comments/default' title='Kommentare zum Post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4152282129640803684/8561101013967565200' title='0 Kommentare'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/8561101013967565200'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4152282129640803684/posts/default/8561101013967565200'/><link rel='alternate' type='text/html' href='http://cinrizasti.blogspot.com/2011/12/futarchy-applying-prediction-markets.html' title='Futarchy: applying prediction markets'/><author><name>Chris</name><uri>http://www.blogger.com/profile/09681543332908796652</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>