My book, Principles of Big Data: Preparing, Sharing, and Analyzing Complex Information was published last year by Morgan Kaufmann.
There are three crucial topics related to data preparation that are omitted from virtually every other Big Data book: identifiers, immutability, and introspection.
A thoughtful identifier system ensures that all of the data related to a particular data object will be attached to the correct object, through its identifier, and to no other object. It seems simple, and it is, but many Big Data resources assign identifiers promiscuously, with the end result that information related to a unique object is scattered throughout the resource, attached to other objects, and cannot be sensibly retrieved when needed. The concept of object identification is of such overriding importance that a Big Data resource can be usefully envisioned as a collection of unique identifiers to which complex data is attached. Data identifiers are discussed in Chapter 2.
Immutability is the principle that data collected in a Big Data resource is permanent, and can never be modified. At first thought, it would seem that immutability is a ridiculous and impossible constraint. In the real world, mistakes are made, information changes, and the methods for describing information changes. This is all true, but the astute Big Data manager knows how to accrue information into data objects without changing the pre-existing data. Methods for achieving this seemingly impossible trick is described in detail in Chapter 6.
Introspection is a term borrowed from object oriented programming, not often found in the Big Data literature. It refers to the ability of data objects to describe themselves when interrogated. With introspection, users of a Big Data resource can quickly determine the content of data objects and the hierarchical organization of data objects within the Big Data resource. Introspection allows users to see the types of data relationships that can be analyzed within the resource and clarifies how disparate resources can interact with one another. Introspection will be described in detail in Chapter 4.
I urge you to read more about my book. Google books has prepared a generous preview of the book contents. If you like the book, please request your librarian to purchase a copy of this book for your library or reading room.
Jules J. Berman, Ph.D., M.D.tags: big data, metadata, data preparation, data analytics, data repurposing, datamining, data mining
Devoted to the topic of data specification (including data organization, data description, data retrieval and data sharing) in the life sciences and in medicine.
Showing posts with label data preparation. Show all posts
Showing posts with label data preparation. Show all posts
Wednesday, September 17, 2014
Thursday, May 30, 2013
Big Data Book Contents
I've taken a hiatus from the Specified Life blog while I wrote my latest book, entitled, Principles of Big Data: Preparing, Sharing, and Analyzing Complex Information.

The Kindle edition is available now, and Amazon has a "look-inside" option on their book page. The print version will be available in a week or two, and Amazon is taking pre-orders Here is the complete Table of Contents:
Jules Berman
key words: big data, heterogeneous data, complex datasets, Jules J. Berman, Ph.D., M.D., immutability, introspection, identifiers, de-identification, deidentification, confidentiality, privacy, massive data, lotsa data

The Kindle edition is available now, and Amazon has a "look-inside" option on their book page. The print version will be available in a week or two, and Amazon is taking pre-orders Here is the complete Table of Contents:
Acknowledgments xi Author Biography xiii Preface xv Introduction xix 1. Providing Structure to Unstructured Data Background 1 Machine Translation 2 Autocoding 4 Indexing 9 Term Extraction 11 2. Identification, Deidentification, and Reidentification Background 15 Features of an Identifier System 17 Registered Unique Object Identifiers 18 Really Bad Identifier Methods 22 Embedding Information in an Identifier: Not Recommended 24 One-Way Hashes 25 Use Case: Hospital Registration 26 Deidentification 28 Data Scrubbing 30 Reidentification 31 Lessons Learned 32 3. Ontologies and Semantics Background 35 Classifications, the Simplest of Ontologies 36 Ontologies, Classes with Multiple Parents 39 Choosing a Class Model 40 Introduction to Resource Description Framework Schema 44 Common Pitfalls in Ontology Development 46 4. Introspection Background 49 Knowledge of Self 50 eXtensible Markup Language 52 Introduction to Meaning 54 Namespaces and the Aggregation of Meaningful Assertions 55 Resource Description Framework Triples 56 Reflection 59 Use Case: Trusted Time Stamp 59 Summary 60 5. Data Integration and Software Interoperability Background 63 The Committee to Survey Standards 64 Standard Trajectory 65 Specifications and Standards 69 Versioning 71 Compliance Issues 73 Interfaces to Big Data Resources 74 6. Immutability and Immortality Background 77 Immutability and Identifiers 78 Data Objects 80 Legacy Data 82 Data Born from Data 83 Reconciling Identifiers across Institutions 84 Zero-Knowledge Reconciliation 86 The Curator’s Burden 87 7. Measurement Background 89 Counting 90 Gene Counting 93 Dealing with Negations 93 Understanding Your Control 95 Practical Significance of Measurements 96 Obsessive-Compulsive Disorder: The Mark of a Great Data Manager 97 8. Simple but Powerful Big Data Techniques Background 99 Look at the Data 100 Data Range 110 Denominator 112 Frequency Distributions 115 Mean and Standard Deviation 119 Estimation-Only Analyses 122 Use Case: Watching Data Trends with Google Ngrams 123 Use Case: Estimating Movie Preferences 126 9. Analysis Background 129 Analytic Tasks 130 Clustering, Classifying, Recommending, and Modeling 130 Data Reduction 134 Normalizing and Adjusting Data 137 Big Data Software: Speed and Scalability 139 Find Relationships, Not Similarities 141 10. Special Considerations in Big Data Analysis Background 145 Theory in Search of Data 146 Data in Search of a Theory 146 Overfitting 148 Bigness Bias 148 Too Much Data 151 Fixing Data 152 Data Subsets in Big Data: Neither Additive nor Transitive 153 Additional Big Data Pitfalls 154 11. Stepwise Approach to Big Data Analysis Background 157 Step 1. A Question Is Formulated 158 Step 2. Resource Evaluation 158 Step 3. A Question Is Reformulated 159 Step 4. Query Output Adequacy 160 Step 5. Data Description 161 Step 6. Data Reduction 161 Step 7. Algorithms Are Selected, If Absolutely Necessary 162 Step 8. Results Are Reviewed and Conclusions Are Asserted 164 Step 9. Conclusions Are Examined and Subjected to Validation 164 12. Failure Background 167 Failure Is Common 168 Failed Standards 169 Complexity 172 When Does Complexity Help? 173 When Redundancy Fails 174 Save Money; Don’t Protect Harmless Information 176 After Failure 177 Use Case: Cancer Biomedical Informatics Grid, a Bridge Too Far 178 13. Legalities Background 183 Responsibility for the Accuracy and Legitimacy of Contained Data 184 Rights to Create, Use, and Share the Resource 185 Copyright and Patent Infringements Incurred by Using Standards 187 Protections for Individuals 188 Consent 190 Unconsented Data 194 Good Policies Are a Good Policy 197 Use Case: The Havasupai Story 198 14. Societal Issues Background 201 How Big Data Is Perceived 201 The Necessity of Data Sharing, Even When It Seems Irrelevant 204 Reducing Costs and Increasing Productivity with Big Data 208 Public Mistrust 210 Saving Us from Ourselves 211 Hubris and Hyperbole 213 15. The Future Background 217 Last Words 226 Glossary 229 References 247 Index 257In the next few days, I'll be posting short excerpts from the book, along with commentary. Best,
Jules Berman
key words: big data, heterogeneous data, complex datasets, Jules J. Berman, Ph.D., M.D., immutability, introspection, identifiers, de-identification, deidentification, confidentiality, privacy, massive data, lotsa data
Tuesday, March 4, 2008
Medical Linguistics, Part 5
The past few blogs have been a series devoted to Medical Linguistics. Yesterday's blog discussed the fundamental linguistic principles underlying the doublet method.
In today's blog, I'm posting a Perl script that extracts, from a large nomenclature, the terms that cannot be composed from doublets contained in other terms (i.e., the terms that must include unique doublets).
The key lines in the script are (that create the list of doublets) are shown here:
These lines are used in virtually every Perl script that uses the doublet method. Basically, they move through an array consisting of the consecutive words in a nomenclature term, two words at a time, creating a new doublet and a new member of a doublet hash structure, with each loop. If you know Perl, this little piece of code should be easy to understand.
The entire Perl script follows here. As with all my posted scripts, the software is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose and noninfringement. in no event shall the authors or copyright holders be liable for any claim, damages or other liability, whether in an action of contract, tort or otherwise, arising from, out of or in connection with the software or the use or other dealings in the software.
The output consists of a file composed of a list of terms, one line per term, that cannot be constructed from doublets found in other terms. This output was discussed in a prior blog. A sample list of doublets is available for download.
- Jules Berman
My book, Principles of Big Data: Preparing, Sharing, and Analyzing Complex Information was published in 2013 by Morgan Kaufmann.
I urge you to read more about my book. Google books has prepared a generous preview of the book contents. If you like the book, please request your librarian to purchase a copy of this book for your library or reading room.
tags: big data, metadata, data preparation, data analytics, data repurposing, datamining, data mining, doublet method, medical linguistics, medical algorithm, nomenclature
In today's blog, I'm posting a Perl script that extracts, from a large nomenclature, the terms that cannot be composed from doublets contained in other terms (i.e., the terms that must include unique doublets).
The key lines in the script are (that create the list of doublets) are shown here:
foreach $thing (@words)
{
$doublet = "$oldthing $thing";
if ($doublet =~ /^[a-z]+ [a-z]+$/)
{
$doublethash{$doublet} =
$doublethash{$doublet} + 1;
}
$oldthing = $thing;
}
These lines are used in virtually every Perl script that uses the doublet method. Basically, they move through an array consisting of the consecutive words in a nomenclature term, two words at a time, creating a new doublet and a new member of a doublet hash structure, with each loop. If you know Perl, this little piece of code should be easy to understand.
The entire Perl script follows here. As with all my posted scripts, the software is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose and noninfringement. in no event shall the authors or copyright holders be liable for any claim, damages or other liability, whether in an action of contract, tort or otherwise, arising from, out of or in connection with the software or the use or other dealings in the software.
#!/usr/local/bin/perl
open(TEXT,"neocl.xml")||die"cannot";
open(OUT,">dubuniq.txt")||die"cannot";
$line = " ";
while ($line ne "")
{
$line = <TEXT>;
next if ($line !~ /\"(C[0-9]{7})\"/);
next if ($line !~ /\"\> ?(.+) ?\<\//);
$line =~ /\"\> ?(.+) ?\<\//;
$phrase = $1;
@words = split(/ /, $phrase);
foreach $thing (@words)
{
$doublet = "$oldthing $thing";
if ($doublet =~ /^[a-z]+ [a-z]+$/)
{
$doublethash{$doublet} =
$doublethash{$doublet} + 1;
}
$oldthing = $thing;
}
}
close TEXT;
open(TEXT,"neocl.xml")||die"cannot";
$phrase = "";
$line = " ";
$count = 0;
while ($line ne "")
{
$oldthing = "";
$rightflank = "";
$leftflank = "";
$line = <TEXT>;
next if ($line !~ /\"(C[0-9]{7})\"/);
next if ($line =~ /\"C0000000\"/);
next if ($line =~ /\"C0000001\"/);
next if ($line !~ /\"\> ?(.+) ?\<\//);
$line =~ /\"\> ?(.+) ?\<\//;
$phrase = $1;
@words = split(/ /, $phrase);
next if (scalar(@words) < 3);
foreach $thing (@words)
{
$newdoublet = "$oldthing $thing";
if ($newdoublet =~ /^[a-z]+ [a-z]+$/)
{
if (exists($doublethash{$newdoublet}))
{
if ($doublethash{$newdoublet} == 1)
{
if ($phrase =~ /[a-z]+ $oldthing/)
{
$leftflank = $&;
}
if ($phrase =~ /$thing [a-z]+/)
{
$rightflank = $&;
}
unless ($doublethash{$leftflank} > 1
&& $doublethash{$rightflank} > 1)
{
$uniqphrase{$phrase} = "";
}
}
}
}
$oldthing = $thing;
}
}
while ((my $key, my $value) = each(%uniqphrase))
{
$count++;
print OUT "$count $key\n";
}
exit;
The output consists of a file composed of a list of terms, one line per term, that cannot be constructed from doublets found in other terms. This output was discussed in a prior blog. A sample list of doublets is available for download.
- Jules Berman
My book, Principles of Big Data: Preparing, Sharing, and Analyzing Complex Information was published in 2013 by Morgan Kaufmann.
I urge you to read more about my book. Google books has prepared a generous preview of the book contents. If you like the book, please request your librarian to purchase a copy of this book for your library or reading room.
tags: big data, metadata, data preparation, data analytics, data repurposing, datamining, data mining, doublet method, medical linguistics, medical algorithm, nomenclature
Subscribe to:
Posts (Atom)