From BMX Riding in Waihi to The Olympics
Early Days
Julian Dean was born in 1975 in Waihi, a small community on the east coast of the North Island of New Zealand. He grew up on a family dairy farm and had his first introduction to cycling when, along with his brothers, he joined the local Waihi BMX club and began competing nationally. Over the next five years he gained two third-place NZ rankings and an early introduction to the sport of bike racing.
During his teenage years Dean got involved in the relatively new sport of triathlon. It was not long before he gave up triathlon to pursue cycle racing, both on the road, and on the track. In his final year of high school he was selected for the New Zealand Junior Road Cycling Team. This was the start of his international cycling career which went on to include World Championships, Commonwealth Games and Olympic Games.
Professional Cycling
Dean got his first break as a cycling professional in the United States in 1997. Over the years that followed he rode for a number of Pro Tour teams in Europe, later specialising as a lead-out sprinter, labelled by Tour de France green jersey holder Thor Hushovd as the best in the world.
Dean enjoyed 20 Grand Tours, including an outstanding 2009 season when he was the only rider to complete all three. He competed in four Olympics and one Commonwealth Games, winning a medal on the track in the team pursuit in Victoria in 1994.
Dean's career highlights comprised seven Tours de France, including a stage win in 2011 and three podium stage finishes in 2010, a stage win in 2008 Giro, twice top-10 at the world championships and 15th in the Athens Olympic road race.
Dean retired from professional racing in 2012, but remains involved in the sport.


I'm Austin
I am 20 years old and I live in Atlanta, Georgia.I have an active interest in web design and development, as well as computer programming. I have extensive knowledge of HTML and CSS. I have experience in JavaScript, and C++.
Additionally, I have experience in video and photo editing using tools such as Adobe Premiere, Adobe After Effects, Adobe Photoshop, Final Cut Pro, and Motion. I have always been interested in filmmaking and acting. I love being both in front of and behind the camera. You can also find me on YouTube.
My prior work experience includes retail, retail sales, and retail and property management. I am actively seeking work, as well as new opportunities to learn. My main focus and desired career outcome is either in the tech industry, or on screen.


|
RGL
<IP_ADDRESS>
|
Public Member Functions | |
| VertexArray () noexcept | |
| Creates empty opengl vao. | |
| ~VertexArray () | |
| Deletes opengl vao. | |
| VertexArray (VertexArray &&other) noexcept | |
| Move construct new ate::gl::VertexArray object. | |
| VertexArray & | operator= (VertexArray &&other) noexcept |
| void | SetIndicesCount (const GLuint ind_count) noexcept |
| Set number of indices to draw. | |
| void | SetElementsCount (const GLuint elem_count) noexcept |
| Set number of elements to draw. | |
| void | SetInstanceCount (const GLuint inst_count) noexcept |
| Set number of instances to draw. | |
| void | SetupVertexAttribute (GLuint attrib_index, GLint component_size, GLenum component_type, GLsizei stride, const GLvoid *pointer, GLuint attrib_divisor=GLuint{}) |
| Enable and setup vertex attribute pointer. | |
| void | Bind () const noexcept |
| Bind this vertex array. | |
| void | DrawArrays (const GLenum draw_mode) const noexcept |
| glDrawArrays | |
| void | DrawArraysInstanced (const GLenum draw_mode) const noexcept |
| glDrawArraysInstanced | |
| void | DrawElements (const GLenum draw_mode) const noexcept |
| glDrawElements | |
| void | DrawElementsInstanced (const GLenum draw_mode) const noexcept |
| glDrawElementsInstanced | |
Definition at line 7 of file d_rgl_vertex_array.h.
|
noexcept |
Move assign, transfer gl object, stored gl object will be deleted.
| other | ate::gl::Texture to move from |
Definition at line 58 of file d_rgl_vertex_array.cpp.


My Municipal Government Services
Online Help
The My Municipal Government Services application helps residents locate municipal facilities and get information about municipal services such as recycling and waste pickup schedules. To get service information, enter an address in the search box, click on your location on the map, or use your current location (button). Your location will be highlighted on the map and information about your services will be displayed
Address Search
- Enter an address in the search bar
- Press enter to search immediately or select a result from the autocomplete list.
Those using a mobile phone or older browsers will need to select the Search icon
to display the search field.
My Location Search
The user can select the Geolocation icon
to conduct a search based on their current location.
Selecting a Location on the Map
The user can navigate the map then click on his location.
Municipal Services and Facility Information
Depending on your location and the services, the following may be displayed after indicating your location:
- The schedule for waste collection
- Facility locations, hours of operation, and details.
- Contact information and links to respective websites for each service and facility.
The facilities will be sorted in order of distance, nearest to furthest. Directions to a facility may be obtained by clicking on the Directions button
.
Displaying Service Areas & Facilities on the Map
To display service areas or facilities on the map, simply select the header for the service you wish to display. If facilities are displayed, you can obtain further details on a facility by selecting it on the map.
Map Functions
- Use the basemap selector (not available on mobiles) to display your preferred basemap.
- Select + or – in the upper left of the map to zoom in or out.
Share Your Map
You can click on the Share icon
to share your map in an email, a Facebook post or on Twitter.
Browser Compatibility
The My Municipal Government Services app is supported on the following browsers: Microsoft Internet Explorer 7/8/9/10, Mozilla Firefox, Google Chrome, Apple Safari, iOS Safari 4.0+, Android Chrome 2.3+, and most modern JavaScript enabled browsers.


MWDC array class, implementing pattern recognition and 3-D tracking through track projection matching. Note that this type of MWDC array is composed of two MWDCs, which usually is placed upstream the dipole magnet.
More...
#include <TAMWDCArray2.h>
MWDC array class, implementing pattern recognition and 3-D tracking through track projection matching. Note that this type of MWDC array is composed of two MWDCs, which usually is placed upstream the dipole magnet.
- Author
- SUN Yazhou, asia..nosp@m.rabb.nosp@m.it@16.nosp<EMAIL_ADDRESS>- Date
- Created: 2018/3/18 Last revised: 2018/4/26, SUN Yazhou.
- Copyright
- 2017-2018, SUN Yazhou.
◆ TAMWDCArray2()
| TAMWDCArray2::TAMWDCArray2 |
( |
const string & |
name = "" , |
|
|
const string & |
title = "" , |
|
|
unsigned |
uid = 999999999 |
|
) |
| |
◆ ~TAMWDCArray2()
| TAMWDCArray2::~TAMWDCArray2 |
( |
| ) |
|
|
pure virtual |
◆ AssignTracks()
| void TAMWDCArray2::AssignTracks |
( |
vector< tTrack * > & |
track_ls | ) |
|
|
virtual |
assign tracks to track list
◆ compare()
| int TAMWDCArray2::compare |
( |
TATrack2 * |
newTrack, |
|
|
TATrack2 * |
oldTATrack, |
|
|
int |
dcType = 0 , |
|
|
bool |
show = false |
|
) |
| |
|
protected |
copmare two tracks
- Return values
-
| 0: the two tracks are different;
1: newTrack is defeated by oldTrack
2: newTrack defeats oldTrack |
- Parameters
-
◆ FillTrack()
| void TAMWDCArray2::FillTrack |
( |
TGraph * |
gTrack, |
|
|
TGraph * |
gTrack_R |
|
) |
| const |
◆ GetChannel()
| TAStuff * TAMWDCArray2::GetChannel |
( |
unsigned |
uid | ) |
const |
|
overridevirtual |
get the channel that belongs to this with uid
Implements TADetUnion.
◆ GetDsquareThresholdPerDot()
| double TAMWDCArray2::GetDsquareThresholdPerDot |
( |
| ) |
const |
|
inline |
◆ GetMWDC()
| TAMWDC * TAMWDCArray2::GetMWDC |
( |
int |
dcId | ) |
const |
◆ GetNXTrack()
| int TAMWDCArray2::GetNXTrack |
( |
| ) |
const |
|
inline |
◆ GetNYTrack()
| int TAMWDCArray2::GetNYTrack |
( |
| ) |
const |
|
inline |
◆ GetPlaT0()
◆ GetTrackList()
| vector< TATrack2 * > & TAMWDCArray2::GetTrackList |
( |
int |
dcType | ) |
|
◆ Info()
| void TAMWDCArray2::Info |
( |
| ) |
const |
|
virtual |
◆ Initialize()
| void TAMWDCArray2::Initialize |
( |
| ) |
|
|
overridevirtual |
◆ IsDCArr()
| virtual bool TAMWDCArray2::IsDCArr |
( |
| ) |
const |
|
inlineoverridevirtual |
whether this is an MWDC array or not
Reimplemented from TADetUnion.
◆ Map() [1/2]
| void TAMWDCArray2::Map |
( |
| ) |
|
|
virtual |
◆ Map() [2/2]
| bool TAMWDCArray2::Map |
( |
TAMWDC ** |
MWDC, |
|
|
vector< TATrack2 * > & |
track, |
|
|
int |
dcType |
|
) |
| |
|
virtual |
subordinate function of void Map()
◆ SetDsquareThresholdPerDot()
| void TAMWDCArray2::SetDsquareThresholdPerDot |
( |
double |
d2Thre | ) |
|
◆ SetPlaT0()
◆ fDsquareThresholdPerDot
| double TAMWDCArray2::fDsquareThresholdPerDot |
|
protected |
◆ fMWDC
| TAMWDC* TAMWDCArray2::fMWDC[2] |
|
protected |
two MWDCs in the MWDC array
◆ fPlaT0
the plastic scintillator placed around the target for beam timing
◆ fTrackList
| vector<TATrack2 *> TAMWDCArray2::fTrackList[2] |
|
protected |
projection of 3-D track to the normals of [X-Y] sense wire layers
The documentation for this class was generated from the following files:


The Player (1992, R)
Directed by Robert Altman (Short Cuts)
Written by Michael Tolkin (Deep Impact), based on his novel
Starring Tim Robbins (The Shawshank Redemption), Greta Scacchi (Presumed Innocent), Fred Ward (Dangerous Beauty), Whoopi Goldberg (Sister Act), Peter Gallagher (To Gillian on Her 37th Birthday), Brion James (D.O.A.), Cynthia Stevenson (Forget Paris), Vincent D'Onofrio (Men In Black)
As Reviewed by James Brundage
>From the master of independent cinema, Robert Altman, comes the blackest of satires, The Player. Postmodern, intelligent, suspenseful, funny, brilliant. All of these very useful adjectives apply to this film. There is no way around it: The Player is great.
The Player, as I stated, is a black satire from the director of Short Cuts, M*A*S*H, and Nashville. It follows Griffin Mills (Tim Robbins), a villain we love to hate, and, ironically, our main character. Mills is getting postcards. Each one is a threat on his life, and telling others, due to the fact that his position as a studio exec is threatened by up-and-coming producer Larry Levy (Peter Gallagher), is a threat on his career.
 But he's quickly shown for the snake that he is. In the words of Tim Robbins, who deserved but was not even nominated for an academy award for his role, `he's manipulative, he's a son of a bitch.' It's true, it's all true.
The threatening postcards lead him to believe that a writer is sending them. A rejected writer. However, in the cruel industry of movies which kills more ideas than W.W.II killed people, this does not narrow it down. What does narrow it down is one of the more bizarre moments of the film. He's in the hot tub with Bonnie, story editor and girlfriend (and, by, the way, the only moral character of the movie), when he asks her about his own life. However, unable to formulate it into his own life, he explains it through movies. He gives her a pitch, asks her how long it will be before the writer-in-question becomes dangerous, and she narrows the selection of writers down by providing a five-month time period before danger arrives.
Using this, he selects David Kahayne, hack-writer of the bubonic plague of Hollywood: the unhappy ending. David's what movie people call `unproduced', a writer who's a member of the WGA (Writer's Guild of America, which holds a fairly good monopoly on writers in Hollywood) but who hasn't sold a script. He calls his girlfriend June Gudmundsdottir (Gretta Scacchi, pronounced good man's daughter) and finds out where to find him. The surprise there, of course, is that his nickname is, according to June is `the dead man'.
Kahayne is in Pasadena, enjoying himself at the Rialota watching The Bicycle Thief. Mills confronts him about the postcards, and, in a fit of rage, kills him in a parking lot. Of course, fitting with the Hollywood that it satires so well, he didn't kill the right person. And now, Griffen Mills is being investigated by the police, is falling in love with June, is trying to secure his position as head of the studio, and, on top of it all, fearing for his life.
The movie is artistically brilliant and interestingly postmodern. In a very ironic way, the ending is the beginning: a pitch by the mysterious psychotic writer of a movie called The Player, about the events you have just seen. It references itself: naming the record for a tracking shot in an American motion picture (formerly held by Orson Wells' Touch of Evil) while breaking it. Having a main character from D.O.A. being asked if he remembers the film. Talking about eliminating the writers from the artistic process the day after Mills has murdered the writer.
There normally isn't much I can say about a film. In my life, there are maybe ten films I could go on and on about, and you have the luck to hopefully see this one. It makes statements. It predicts things. It was ironic at the time it came out and is ironic now.
For instance, Griffin Mills is quoted as saying `movies are art, now more than ever' while, at the very same time in the real world, movies were flocking back to the existence of the art film. It is sheltered in a unique ambiguity: June discovers the Mills killed her boyfriend and doesn't care. The good are punished, the bad survive: Bonnie is fired and left for proverbial dead while June and Mills live happily ever after.
This is the film for movie buffs. It makes you stop and think about what speeds in front of your face at 24 frames a second. It states things about the industry in a uniquely detached manner, where people talk about all the dark things of the industry as if they were drinking cappuccinos.
 Hope, heart. Nudity, sex. Happy Endings.'
It is brilliant. It is one that you have to own. It is the movie to watch.
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


public class Problem
extends java.lang.Object
Description:
This class represents a patient's problem in the application, this problem possesses an
id, title, date, description and records. Furthermore there are getters and setters for
these components.
Issues:
None.
Record
| Constructor and Description |
|---|
Problem(java.lang.String title,
java.util.Date date,
java.lang.String description)
Constructs the problem with the given title, date and description.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addRecord(Record newRecord)
Add a provided record to the problem's records.
|
java.util.Date |
getDate()
Retrieves the date of creation for the problem.
|
java.lang.String |
getDescription()
Retrieves the problem's description.
|
int |
getId()
Retrieves the problem id.
|
java.util.ArrayList<Record> |
getRecords()
Retrieves all of the problem's records.
|
java.lang.String |
getTitle()
Retrieves the problem title.
|
void |
removeRecord(int index)
Removes the problem record with the given id/index.
|
void |
setDate(java.util.Date newDate)
Sets the problem creation date to the new provided one.
|
void |
setDescription(java.lang.String newDescription)
Sets the description to the new provided one.
|
void |
setId(int id)
Sets the problem id to the new provided one.
|
void |
setTitle(java.lang.String newTitle)
Sets the problem title to the new provided one.
|
java.lang.String |
toString()
Retrieves a string representation of the patient based on their title.
|
public Problem(java.lang.String title, java.util.Date date, java.lang.String description)
title
- The title.date
- The date.description
- The description.java.lang.IllegalArgumentException
- If the title or description are too long.public int getId()
public void setId(int id)
id
- The new id.public java.lang.String getTitle()
public void setTitle(java.lang.String newTitle)
newTitle
- The new title.public java.util.Date getDate()
public void setDate(java.util.Date newDate)
newDate
- The new date.public java.lang.String getDescription()
public void setDescription(java.lang.String newDescription)
newDescription
- The new description.public java.util.ArrayList<Record> getRecords()
public void addRecord(Record newRecord)
newRecord
- The record to add.public void removeRecord(int index)
index
- The id/index of the record to remove.public java.lang.String toString()
toString
in class java.lang.Object


Clipper Polygon Clipping Library
Clip2Tri can be used together with Clipper for robust triangulation.
Used in the QML plugin of Qt Location.
The sources can be found in qtlocation/src/3rdparty/clipper.
Copyright Angus Johnson 2010-2014
Use, modification & distribution is subject to Boost Software License Ver 1. http://www.boost.org/LICENSE_1_0.txt Attributions: The code in this library is an extension of Bala Vatti's clipping algorithm: "A generic solution to polygon clipping" Communications of the ACM, Vol 35, Issue 7 (July 1992) pp 56-63. http://portal.acm.org/citation.cfm?id=129906 Computer graphics and geometric modeling: implementation and algorithms By Max K. Agoston Springer; 1 edition (January 4, 2005) http://books.google.com/books?q=vatti+clipping+agoston See also: "Polygon Offsetting by Computing Winding Numbers" Paper no. DETC2005-85513 pp. 565-575 ASME 2005 International Design Engineering Technical Conferences and Computers and Information in Engineering Conference (IDETC/CIE2005) September 24-28, 2005 , Long Beach, California, USA http://www.me.berkeley.edu/~mcmains/pubs/DAC05OffsetPolygon.pdf


An implementation of the mathematical tool known as Partition of Unity to help processing large images.
Available in Matlab and Python.


Elimination
Notifications
Notifications
Send notifications to my email
2020-01-13 at 16:01
Jame Sooth
has just eliminated you in
Practice elimination round 6
.
2019-12-01 at 06:39
You were kicked from
Test round. DO NOT JOIN.
because "boomer".
Leuf Munkler
Terms of use
Please do not do anything illegal or taboo with our service!


Week 7 Ex. 6: Illustrate depth first traversal for the graph given in ex. 1, starting from vertex A. Use the list of events and stack contents as illustrated in class.
Output:


--- layout: archive title: Zulip Chat Archive permalink: /stream/144837-PR-reviews/topic/.23396.20squeeze_simp.html ---
I'm afraid some of the changes to the tactic files in the faster
branch hasn't been transferred to the squeeze_simp
PR
@Mario Carneiro what should I do?
make another follow-on PR... what was it?
I don't really know what happened, now that the history has been erased
I just see that some changes to the tactic files have not been incorporated
if you rebase the faster
branch on master, it should remove any parts that are already merged, leaving only the stuff that is missing
I've rebased the faster
branch on master
maybe I should rebase the squeeze-simp
branch on master and see what happens
is this a good idea?
squeeze-simp is already merged, so if you rebase it on master it will disappear
just look at this
hmm
I see that the squeeze-simp
branch has been changed after its separation from faster
at this point I don't know what to do anymore
just delete/revert any changes in those files
hmm
how about this?
@Simon Hudon could you clarify which one is the intended version?
Hi! I made some changes to in squeeze-simp
to add documentation and make the tactic usable for @Scott Morrison to use in tidy
This is a great idea to have this stream btw
@Simon Hudon did you see my link?
I have. It seems to confirm what I thought the diff would be. Is there something in particular that you're trying to highlight?
if you wait for a while after opening the link, it will show you one line I highlighted
so in particular I'm talking about the file meta/rb_map.lean
could you clarify which side is the version you want mathlib to have
I think either one can work. I ended up not needing those functions I think but they are generally useful functions so we can keep them.
@Simon Hudon then which one of us should make a new PR?
Why do we need a new PR?
the same reason this one is a PR separate from faster
I don't think it's worth making a separate PR for it. If you want to take it out of yours, let's just bring it back when we need it.
ok
how do I do this?
is there some git
magic that will let me do this or do I have to do it manually?
With git log meta/rb_map.lean
, you can check what is the latest commit that changed the file, that's probably where I introduced those functions.
Actually, let me look into it, I'll create the PR while I'm at it
{% endraw %}Last updated: Apr 24 2020 at 19:02 UTC


Voter Registration
Home
Register to Vote
State Guidelines
The page you were looking for doesn't exist.
You may have mistyped the address or the page may have moved.


Collision Detection
Spherical Bounding Box Tree - Main Interface.

Classes | |
| class | cCollisionSpheres |
| cCollisionSpheres provides methods to create a sphere tree for collision detection, and to use this tree to check for the intersection of a line with a mesh. More... | |
| class | cCollisionSpheresSphere |
| cCollisionSpheresSphere is an abstract class for nodes of the collision sphere tree. More... | |
| class | cCollisionSpheresNode |
| cCollisionSpheresNode defines internal nodes of the collision sphere tree and provides methods for constructing the nodes and using them to determine collisions. More... | |
| class | cCollisionSpheresLeaf |
| cCollisionSpheresLeaf defines leaf nodes of the collision sphere tree and provides methods for constructing the nodes and using them to determine collisions. More... | |
Typedefs | |
|
typedef vector < cCollisionSpheresGenericShape * > | Plist |
| Pointer to list of shape primitives. |
Collision Detection
Spherical Bounding Box Tree - Main Interface.


--- layout: page title: Projects subtitle: Software, microbiome research, and bioinformatics education. permalink: /projects/ color: green --- {% for section in site.data.projects %}


return pd.DataFrame({
"x": x,
"density": weight / np.sum(weight),
"scaled": weight / np.max(weight),
"count": 1,
"n": n})
n = len(x)
if n == 0 or (n == 1 and isinstance(bw, str)):
if n == 1:
warn("To compute the density of a group with only one "
"value set the bandwidth manually. e.g `bw=0.1`",
PlotnineWarning)
warn("Groups with fewer than 2 data points have been removed.",
PlotnineWarning)
return pd.DataFrame()


A computer simulator is a program that simulates the execution of computer architecture. Simulators are used to enable access to unobtainable hardware,increasing the precision and volume of computer performance data. There are different categories for architecture simulators and these include full system simulators and cycle accurate simulators.
A full-system simulator is execution-driven architecture simulation at such a level of detail that complete software stacks from real systems can run on the simulator without any modification. A full system simulator provides virtual hardware that is independent of the nature of the host computer. The full-system model typically includes processor cores, peripheral devices, memories, interconnection buses, and network connections. Emulators are full system simulators that imitate obsolete hardware instead of under development hardware. The defining property of full-system simulation compared to an instruction set simulator is that the model allows real device drivers and operating systems to be run, not just single programs. Thus, full-system simulation makes it possible to simulate individual computers and networked computer nodes with all their software, from network device drivers to operating systems, network stacks, middleware, servers, and application programs. Full system simulation can speed the system development process by making it easier to detect, recreate and repair flaws. The use of multi-core processors is driving the need for full system simulation, because it can be extremely difficult and time-consuming to recreate and debug errors without the controlled environment provided by virtual hardware.[1] This also allows the software development to take place before the hardware is ready,[2] thus helping to validate design decisions.
Simulation refers to using specified kind of techniques to imitate the operation in real world. It is derived from then modeling of the object in the real world. In computer engineering, simulation is one of the three main methods in analyzing computer systems. It requires less time than measuring the real system and can be done by computer programs. Gem5 and ESESC are two featured simulation tools for simulating computer system. In this paper, their features will be studied, validated and then summarized.


AddMailAttachment()
Syntax
Result = AddMailAttachment(#Mail, Description$, Filename$ [, MimeType$])Description
Add a file attachment to the mail.
Parameters
The mail to use. Description$ The information string displayed for the attachment in the mail. Filename$ The file to be added as an attachment. If the filename does not include a full path, it is interpreted relative to the current directory. Once the attachment is added, the local file may changed or deleted, as the entire content of the file is copied and attached to the mail. MimeType$ (optional) The type of the attached file. If this parameter is omitted, then the file extension will be used to determine that files mime type. Below there is a list of the available mime types. If the extension of the file does not match any of the available mime types, then the "application/octet-stream" mime type will be used.
Return value
Returns nonzero if the attachment was added successfully and zero if not.
Remarks
Any number of attachments may be added to the mail, but the size limit available for a single attachment is currently set at 100MB. Most servers and clients do not have the capacity to handle attachments of that size, therefore it is advised that each attachment be kept to a reasonable size
The available mime types are:application/acad | AutoCAD dwg application/clariscad | ClarisCAD ccad application/drafting | MATRA Prelude drafting drw application/dxf | AutoCAD dxf application/i-deas | SDRC I-deas unv application/iges | Exchange format CAO IGES igs,iges application/oda | ODA oda application/pdf | Adobe Acrobat pdf application/postscript | PostScript ai,eps,ps application/pro_eng | ProEngineer prt application/rtf | Rich text rtf application/set | CAO SET set application/sla | stereolithography stl application/solids | MATRA Solids dwg application/step | data STEP step application/vda | surface vda application/x-mif | Framemaker mif application/x-csh | Script C-Shell (UNIX) dwg application/x-dvi | text dvi dvi application/hdf | data hdf application/x-latex | LaTEX latex application/x-netcdf | netCDF nc,cdf application/x-sh | Script Bourne Shell dwg application/x-tcl | Script Tcl tcl application/x-tex | file Tex tex application/x-texinfo | eMacs texinfo,texi application/x-troff | Troff t,tr,troff application/x-troff-man | Troff/macro man man application/x-troff-me | Troff/macro ME me application/x-troff-ms | Troff/macro MS ms application/x-wais-source | Source Wais src application/x-bcpio | CPIO binary bcpio application/x-cpio | CPIO Posix cpio application/x-gtar | Tar GNU gtar application/x-shar | Archives Shell shar application/x-sv4cpio | CPIO SVR4n sv4cpio application/x-sv4crc | CPIO SVR4 avec CRC sc4crc application/x-tar | archive tar tar application/x-ustar | archive tar Posix man application/zip | archive ZIP man audio/basic | audio au,snd audio/x-aiff | audio AIFF aif,aiff,aifc audio/x-wav | audio Wave wav image/gif | Images gif man image/ief | Images exchange format ief image/jpeg | Images Jpeg jpg,jpeg,jpe image/png | Images Png png image/tiff | Images Tiff tiff,tif image/x-cmu-raster | Raster cmu cmu image/x-portable-anymap | Anymap PBM pnm image/x-portable-bitmap | Bitmap PBM pbm image/x-portable-graymap | Graymap PBM pgm image/x-portable-pixmap | Pixmap PBM ppm image/x-rgb | Image RGB rgb image/x-xbitmap | Images Bitmap X xbm image/x-xpixmap | Images Pixmap X xpm image/x-xwindowdump | Images dump X Window man multipart/x-zip | archive zip zip multipart/x-gzip | archive GNU zip gz,gzip text/html | HTML htm,html text/plain | raw text txt,g,h,c,cc,hh,m,f90 text/richtext | rich text rtx text/tab-separated-value | value splitted text tsv text/x-setext | text Struct etx video/mpeg | Video MPEG mpeg,mpg,mpe video/quicktime | Video QuickTime qt,mov video/msvideo | Video Microsoft Windows avi video/x-sgi-movie | Video MoviePlayer movie
Example
InitNetwork() If CreateMail(0<EMAIL_ADDRESS>"Hello") If AddMailAttachment(0, "Attachment 1", OpenFileRequester("Choose an attachment", "", "", 0)) Debug "Attachment correctly added" Else Debug "Attachment failed" EndIf EndIf
See Also
AddMailAttachmentData(), CreateMail()
Supported OS
All


Paragraph
Use the
MGGG 5x5 grid interactive tool (opens new tab)
2
to answer the following questions.
in-context


{% extends 'base.html' %} {% block subtitle %} List of Forums {% endblock %} {% block main_content %}
{{ forum.title_non_empty }}{{ forum.tagline }} |
|
| {{ forum.sidebar_non_empty }} |
Welcome to Forums For You! {% if msg %}{{ msg }} {% endif %}
{% if not forums %} You haven't created any forums yet. {% else %} Existing forums:
Create a new forum: Url is part of the forum url. Should be short and a valid url. Title is what we show at the top of the forum. Tagline is shown in smaller font, under title. HTML allowed (e.g. for links). Analytics code is Googl Analytics code. If given, key pages will include Google Analytics JavaScript with this code Sidebar is displayed in the left column. HTML allowed. Don't stress about choosing the right values - you can change them later. |


Total Payments:
Total Miners Paid:
Minimum Payment Threshold:
Denomination Unit:
Time Sent
Transaction Hash
Amount
Fee
Mixin
Payees
Load More


Turrets - also called towers, are heavy fortifications that block the advance of enemy minions and champions. Turrets are one core component of League of Legends. They deal damage to enemies and provide vision and general control of the battlefield to their team. Champions must destroy enemy turrets to push their assault into enemy territory. Turrets target one unit at a time and deal heavy damage.
Inhibitor - are structures that block the training of enemy super minions in their respective same lane. Inhibitors have 4000 health, 15 health regeneration per second, 20 armor, and no magic resistance. Once an enemy team's inhibitor is destroyed, the Nexus will start spawning Super Minions (replacing the siege minions with Super Minions if the wave normally includes one).
The Nexus - is the primary objective in every League of Legends gamemode. A team only wins the match when their opposition's Nexus is destroyed.
Dragons - also known as drakes, are powerful monsters that can be found in Summoner's Rift. Once killed, gives the team who killed it a buff based on the type of dragon it was. In the game, there are 5 types of dragons that can spawn: Cloud, Infernal, Mountain, and Ocean. An Elder Dragon spawns at 35 minutes in game.
The Rift Herald - is a powerful neutral monster on Summoner's Rift, that occupies the same pit as Baron Nashor. She uses basic attacks and abilities to fight her foes. Slaying the Rift Herald drops the Eye of the Herald in the pit for 40 seconds that can be picked up by one member of the slayer's team, granting them Empowered Recall and the ability to summon the Rift Herald to push a lane. The Rift Herald only spawns once per game. It despawns permanently at 19:45, or 19:55 if in combat. Baron Nashor then spawns in the same position at 20:00.
Baron Nashor - is the most powerful neutral monster on Summoner's Rift in League of Legends. Killing Baron Nashor grants Hand of Baron to all living teammates for 210 seconds. The buff gives bonus attack damage, bonus ability power, Empowered Recall, and an aura that greatly increases the power of nearby minions.


This is the control panel for the dummy server. To get started,
Duplicate values are forbidden.
Values are persisted on the device the server is
hosted on.
Branches
[No Branches]
| {{ branch.fullName }} |
Definitions
[No Definitions]
| {{ definition.name }} |
User
[No User]
| {{ user.uniqueName }} |
Builds are not persisted
and will only live as long as the server is running. Use
the buttons below to quickly generate data to work with. Additionally, the status of each build
may be set manually.
Loading...
Builds
[No Builds]
| Branch | Definition | User | Status | Reason | |
|---|---|---|---|---|---|
| {{ build.branchName }} | {{ build.definitionName }} | {{ build.userName }} |
|
|


Electric Ford Mustang GTE Fan Video Depicts A Shocking Future Pony
It's unlike any Mustang EV rendering we've seen thus far.
by Christopher SmithWe just saw Ford unveil a wicked 900-horsepower all-electric Mustang at the 2019 SEMA Show, and we’re on the cusp of seeing the company’s new Mustang-inspired electric crossover which breaks cover in a couple of weeks. As such, electrified Mustangs are certainly on the brain right now, and a supremely talented designer named Adan Lopez created a full-on future pony from scratch called the GTE.
Not only is this car completely imagined inside and out in a series of renderings that Lopez graciously shared with us, there’s also a video at The Adan Channel on YouTube that circles in and around the car. The design clearly draws on the current generation, specifically with the headlights, sloping roof, and a front fascia that alludes to the Mustang’s present-day grille. The shallow hood reflects the lack of a thumping V8, and the top of the fascia forming a front spoiler is a rather interesting idea. The flared fender arches are certainly unexpected but it serves to create a very distinct design that fits well with the rest of the car. The only things missing are the Mustang’s iconic three-bar taillights at the rear.
Gallery: Electric Ford Mustang Fan Renderings
Image credit: Adan Lopez
There’s a similar theme of familiar-yet-different inside. The steering wheel and instrument cluster are recognizable as a Mustang, though nearly all vehicle functions are relegated to touch screens. We say nearly all because window switches are visible on the doors, headlight controls are left of the steering wheel, and a rotary dial is prominently positioned in the center console to select forward, reverse, neutral, or park. Don’t lament the lack of a manual, however – there’s an M button on that dial and if you look at the steering wheel, there are paddle shifters.
No V8? No Problem:
Overall, we rather like this flight-of-fancy, and we’re not just saying that because we love seeing Mustang fans get all uppity over an electric-powered pony car. As some readers might be aware, your humble author has owned multiple Mustangs over the years, including a 1995 GT Convertible currently sitting in the garage. Like it or not, the future is electric and it doesn’t have to be boring. This creation blends familiar Mustang cues with a satisfying combination of edges and curves, and it even offers driver involvement with paddle shifters.
If this is Mustang’s future, at least one Mustang enthusiast is not afraid of the apocalypse.
Source: Adan Lopez, The Adan Channel Via YouTube


The sound is made with the combination of four sine waves grouped into two pairs creating a "wha-wha" effect (sometimes called Beading). This effect is similar to when two instruments are not quite in tune with each other.
The two pairs of tones are separated approximately 6hz in real life. This page separates the two tones exactly 6hz as an example. The lower pair are centered between 313hz and go as high as 377hz. The upper pair are centered between 1253hz and 1352hz. My measurements are not accurate, but are close enough to produce a similar effect.
Start the tone, then adjust the slider. The slider dictates your "speed" being traveled. The speed for this demo is limited to 0-15mph. This demo scales input based on a squarroot function dynamically increasing the change in tone lower in the speed range. This approximates what Tesla does in real life, but is not 100%.


Term Dates
| Term | Date | Holiday |
|---|---|---|
| 1 | 13/09/2014 to 13/12/2014 | 4/10/14, 1/11/14 & 22/11/14 |
| 2 | 24/01/15 & 28/02/15 | 4/10/14, 1/11/14 & 22/11/14 |
| 3 | 11/04/2015 to 4/07/2015 | 29/05/15 & 20/06/15 |
Timetable
| Time | Activities |
|---|---|
| 9.55 a.m. | Prepare for morning assembly |
| 10.00 –10.30 a.m. | Morning assembly: whole school activities, moral and Bible teaching, class presentation, and announcements We welcome parents to stay behind for the assembly so that parents and teachers can work together to facilitate pupils’ development. |
| 10.30 – 11.15 a.m. | First session |
| 11.15 – 11.30 a.m. | Break |
| 11.30 –12.30 a.m. | Second session |
| 12.30 a.m. | School finishes |
- The school has lessons for 31 Saturdays in a year. The school calendar fits in with the school calendar at Trinity School.
- Parents are requested to collect their children promptly at 12.30 p.m. each Saturday. Pupils who go home by themselves should leave promptly.
- The parent of a pupil who is absent from school due to illness or other reasons can either notify the school in advance or state the reason for absence in the Teachers/ Parents Correspondence Column.
- If a pupil has to leave school early, his/her parent is required to write a note in the School/Parents Correspondence Column to state the reasons and signed by class teacher before he/she leaves.
- The school does not encourage pupils to bring valuable items to school. The school cannot be held responsible for the loss of pupils’ personal belongings.
- Any parent who would like to find out how his/her child is progressing at school may book an appointment in advance to have a discussion with the class teacher. The school welcomes ideas and suggestions related to education as this contributes to plans and improvements.
- The foundation of this school is based on the love of Christ. Apart from teaching the Chinese language, there will also be Bible teaching and counselling in conduct matters to encourage healthy development in the pupil’s body and mind.


Bootstrap Beginner Crash Course Part 1 and 2
I did mess up the first time I attempted this. I created a branch in the wrong place and
I figured out how to remove that branch by actually clicking the branch tab on github. It
lists the branches that are in the file and gives you the option to delete them. So it was a
really great learning moment. I can easily work in my learnbootstrap branch now without changing
my master. The one thing that worried me about setting up was accidentally merging the two but after
following Rios video I didnt have to worry.
If everyone just follows Rios video they should be fine. And remember this is under
the github.io page! I didnt realize where the branch was being created at first until the
middle of the video so I hope whoever is reading this doesnt have any confusion when making one.
Bootstrap Cheatsheet


I was very blocked at the midway point in the fizzbuzz challenge. I went straight into writing my code without really looking at the challenge or what the tests were. My new code kept causing the old ones to fail and was getting confusing.
I went back and copied and pasted what I had already out down into a different document and then fully erased the code on repl to start from scratch. I then used pseudo code while reading over the tests scripts to write out the steps of what I actually needed to complete to pass them. Then using google and a lot of forums form places like stackoverflow to either ask questions or look over existing ones where people have had other problems similar to mine. I was then able to break it down into smaller steps and complete it.
I started off confused and frustrated for sure but after writing the pseudo code and actually observing not just the error logs but the tests code themselves it was easy to stay calm and break down the challenge and attack it one step at a time. It really made me feel confident about solving problems due to the share amount fo resources that are our there for use to use to find answers we might need for any problems we face.
When doing the final Kata challenge I found it difficult from the get go when facing things such as mapping that I was completely unfamiliar with and wasn’t getting it to work even after going at it for a few hours.
Google!Google!Google! I read so many articles and forums over google before even attempting to come back into it. Once I thought I understood a little better I wrote out pseudo code to a greater extent then in the previous challenges to break it down. I then used the rubber ducky method as I went along to make sure I could explain what I was doing and to not move onto the next challenge until I could. I found that I could explain it a lot better than previously. It may have caused me to spend a little more time on it then I had wanted but it was worth it because by vocalising it using the rubber ducky I could feel myself getting more confident and starting to put things together in my head.
The biggest things I learned through these two problems was how helpful pseudo code can be to visualise what you need to do better, and that breaking the parent problem into smaller children issues using this method makes it a lot easier to see where you are getting confused or blocked. After finishing I went back to the “getting micro” section of the pre foundation curriculum and took some good notes down that will help with this also.
Home


Toggle navigation
Erin Bergman
Home
About
Sample Post
Entry Form
Please fill out each field, if left blank a null value will be added to the database
Species Name
Genus
Family
Order
Class
Phylum
Kingdom
Common Name
Average Weight
Average Life Span
Domesticated
Habitats
Famous Examples
Submit


Command substitution reassigns the output of a command or even multiple commands; it literally plugs the command output into another context. The classic form of command substitution uses backquotes (`...`). Commands within backquotes (backticks) generate command-line text.
% file_name=`basename $HOME/userstuff/tutorial_R1_001.fa`
% echo $sample_name
% files=`ls *`
% echo $files
% curDir=`pwd`
% echo $curDir
% z=0
% z=$(($z+3)) (increment by 3)
% echo "z = $z"
The expr utility evaluates expression and writes the result on standard output. It concatenates and evaluates the arguments according to the operation given (arguments must be separated by spaces). Operations may be arithmetic, comparison, string, or logical.
% expr 3 + 5
% y=`expr 5 \* 3`
% b=`expr $y = 5`
% y=`expr $y + 1` (increment by 1)
An if/then construct tests whether the exit status of a list of commands is 0 (since 0 means "success" by UNIX convention), and if so, executes one or more commands.
% echo "Testing \"0\""
% if [ 0 ] # zero
% then
% echo "0 is true."
% else # Or else ...
% echo "0 is false."
% fi # 0 is true.
%
% word=Linux
% letter_sequence=inu
% if echo "$word" | grep -q "$letter_sequence"
% # The "-q" option to grep suppresses output.
% then
% echo "$letter_sequence found in $word"
% else
% echo "$letter_sequence not found in $word"
% fi
%
% file="listNotFound"
% if [ ! -e "$file" ] # Check if file exists.
% then
% echo "$file does not exist."; echo
% fi
A loop is a block of code that iterates a list of commands as long as the loop control condition is true.
The basic construct looks like
% for arg in [list]
% do
% command(s)
done
Here some examples:
% for i in 1 2 3 4 5
% do
% echo $i
% done
% for file in `ls`
% do
% echo $file
% done
Try the following:
% for a in `seq 10`
% do
% echo -n "$a "
% done
What does seq do ?
The while construct tests for a condition at the top of a loop, and keeps looping as long as that condition is true (returns a 0 exit status). In contrast to a for loop, a while loop finds use in situations where the number of loop repetitions is not known beforehand.
while [ condition ]
do
command(s)...
done
% var=0
% limit=10
% while [ "$var" -lt "$limit" ]
% do
% echo -n $var
% var=`expr $var + 1`
% done
adapted from<EMAIL_ADDRESS>October 2001, abused by<EMAIL_ADDRESS>March 2014


Ostrich
Type:
Bird.
Size:
1.8m - 2.7m.
Color:
Brown, Black, Gray, White, Pink.
Life Span:
50 - 70 years.
Main Prey:
Grass, Roots, Seeds, Flowers.
Predators:
Hyena, Lion, Cheetah.


This tutorial is dedicated to how machine learning on Linked Data can be realized using tensor factorizations. In general, the focus will rest on applications important to Linked Data and we will introduce necessary theory when needed along that way.
From Linked Data to Tensors
Some tensor theory and data representation of Linked Data as tensors
Explanatory Analysis of Linked Data
Starting from graphs and moving to multigraphs for ranking of nodes in RDF data
Relational Learning & Link Prediction
Prediction of unknown links, a central problem when learning on relational data.
Entity Resolution & Taxonomy Learning
Unsupervised instance matching and learning of taxonomies
Scaling to complete Knowledge Bases
Scaling tensor factorizations to the size of complete knowledge bases
Analysis of time-evolving graphs
Machine Learning and Linked Data
Machine Learning depends on repeatable statistical patterns to generalize from examples
The party membership of a U.S. vice president can be predicted reasonably well, given knowledge about his president's party
Predicting the first name of
US (vice) presidents is not meaningful
(one-to-one relationship, no recurring patterns)
Machine Learning depends strongly on the data at hand and the task that should be solved
Linked Data and Machine Learning
The Linked Data principles are:
Use URIs as names for things
Use HTTP URIs, so that people can look up those names
When someone looks up a URI, provide useful information, using the standards (RDF, SPARQL)
Include links to other URIs, so that they can discover more things
From a machine learning perspective:
Linked Data is (semi-)structured, i.e. (subject, predicate, object) triples
Data consists of entities and relations of different types between those entities
Entities = All subjects and objects that are not literals (In this tutorial: no special treatment of ontological knowledge)
Relations = Individual links between entities
Relation Types = Properties in RDF
Relations, the Beauty & the Challenge
Knowledge models such as Linked Data and many problems in machine learning have a natural representation as relational data
Relations between entities are often more important for a prediction task than attributes
For instance, can be easier to predict the party of a vice-president from the party of his president than from his attributes
Linked Data is not independent and identically distributed (iid), as
it does not consist of only one type of objects (e.g only persons)
the entities are related to each other
Learning, Linked Data & Heterogenity
Learning, Linked Data & Heterogeneity
Heterogeneity introduces additional noise to the data
Duplicate entities: URIs from different data sources refer to the same underlying entity (without specifying owl:sameAs)
Duplicate predicates: Same case as for duplicate entities
Predicates with similar semantics: Probably more common case, for instance, different domain/range constraints, super/sub-predicates etc.
Need of Linked Data Instance matching and Ontology Alignment to remove the noise introduced by heterogeneity
Need of Machine Learning: Joint disambiguation of predicates and entities
The Open World of Linked Data
Linked Data follows an open-world assumption, i.e. data cannot generally be assumed to be complete
In fact, Linked Data can be quite incomplete
Need of Linked Data: Prediction of unknown triples in incomplete knowledge bases $\Rightarrow$ Link Prediciton
Problem for ML: Linked Data rarely contains negative examples or negations (i.e. !partyOf(Al Gore, Republican))
Challenges !?
Many of the features that make Linked Data so valuable (e.g. relations, linked data sources, size), can be a problem for machine learning and also Linked Data itself
The rest of this tutorial is dedicated to show how most of these problems can be approached by using tensor factorizations
Data Representation
Linked Data
$\downarrow$
Tensors
Linked Data is a Multigraph
From a mathematical perspective, Linked Data can be regarded as a labeled directed multigraph. A minimal definition for the purpose of this tutorial is
A labeled directed multigraph is a tuple $\mathcal{G} := (V, E, L)$
where
$V$ is a set of vertices
$L$ is a set of edge labels
$E \subseteq V \times V \times L$ is a set of ordered triples
$V$ corresponds to the entities in the domain
$L$ corresponds to the different relation types
$E$ corresponds to the known facts about the entities (RDF triples)
Multigraph Example
presidentOf
vicePresidentOf
partyOf
knows
The set of vertices, edge labels and edges for this multigraph are
\begin{align}
V = \{&\text{Bill Clinton}, \text{Al Gore}, \text{Democratic Party }\} \\ \\
L = \{&\text{presidentOf}, \text{vicePresidentOf}, \text{partyOf}, \text{knows }\}\\ \\
E = \{&\text{(Bill Clinton, Al Gore, presidentOf)},\\
& \text{(Al Gore, Democratic Party, partyOf)}, \\
& \vdots \\
& \text{(Bill Clinton, Al Gore, knows) } \}
\end{align}
Matrix Representation of Graphs
Adjacency matrices are standard representations for graphs, i.e. data with only one type of edges or relations
$A = $
Likes relation
Legend
$=1$
$=0$
Some graph properties translate directly to adjacency matrix
Undirected $\rightarrow$ Symmetric
Directed $\rightarrow$ Asymmetric
Unweighted $\rightarrow$ Binary
Analysis of graphs using adjacency matrices
Ranking: PageRank, HITS
Link Prediction: Common Neighbours, Katz, Adamic/Adar, low-rank matrix factorization
Multigraphs and Matrices
Multigraphs can not be represented by a single matrix
without information loss, given no
constraints on structure are enforced
Loves
$+$
Hates
$+$
Indifferent
Simple method: Projection of multigraph onto graph structure
Loses information about multiple predicates
Alternative method: Concatenation of adjacency matrices
Loses information about subject / object identities without additional constraints
Moving from Matrices to Tensors
Underlying problem: Two modes, as in the matrix case, are not expressive enough to model multi-relational data without information loss
Possible solution: Move to tensors, which are $n$-modal generalizations of matrices
What are tensors?
Formally, tensors are defined as
An $n$-th order tensor is an element of the
tensor product of $n$ vector spaces, i.e.
$\mathcal{T} \in V_1 \otimes ... \otimes V_n$
Less formally: tensors are multidimensional
arrays, i.e. data structures with (possibly)
more than two indices ($\mathcal{T}_{ijqrs}$)
The order of an tensor is the number of modes
(i.e, number of indices needed to identify elements in the array)
What are tensors?
Vectors are 1st order tensors: $x_i$ (one mode)
Matrices are 2nd order tensors: $X_{ij}$ (two modes)
Tensors of order $\geq$ 3 are called higher-order tensors $\mathcal{T}_{ijqrs}$
In the following we will only use third-order tensors, i.e. "cubes"
Mode-1 has dimension $I = 10$ Mode-2 has dimension $J = 7$ Mode-3 has dimension $K = 5$
Tensor Representation of RDF Data
RDF data, or any other multigraph, can be represented as a third-order tensor
Two modes refer to the entities, one mode to the relation types
\begin{align}
\Rightarrow & |Mode\ 1| = |Mode\ 2| = |V|\\
& |Mode\ 3| = |L|
\end{align}
We also require that the ordering of the entities on both modes is identical
In the following we will refer to this modeling as adjacency tensor
Running Example $\rightarrow$ Tensor
The adjacency tensor for the running example used so far is
presidentOf
vicePresidentOf
partyOf
$\mathcal{G}$
$\rightarrow$
$\mathcal{T}$
An adjacency tensor contains a cell for every possible triple that could be created from the entities and relation types that are present in the data
Notation & Terminology
Slices are two-dimensional sections of a tensor (i.e. matrices)
Horizontal slices $\mathcal{T}_{i,:,:}$
Lateral slices $\mathcal{T}_{:,j,:}$
Frontal slices $\mathcal{T}_{:,:,k}$
Notation & Terminology
Fibers are higher-order analogues of rows and columns in matrices
Mode-1 fibers $\mathcal{T}_{:,j,k}$
Mode-2 fibers $\mathcal{T}_{i,:,k}$
Mode-3 fibers $\mathcal{T}_{i,j,:}$
Machine Learning on Tensors
The general focus of this tutorial will be learning on adjacency tensors of multigraphs with tensor factorizations
Tensor factorizations can be considers higher-order generalizations of matrix factorization methods
Matrix factorizations have a long tradition in machine learning
Matrix factorizations try to express data in terms of factor matrices
Factorization methods have an appealing interpretation as latent variable models
The CP Decomposition & Explanatory Analysis
Hubs, Authorities, Topics & Co.
The Beatles on DBpedia
What are the important nodes of this multigraph?
In the Case of Graphs
Authoritative Ranking with HITS
Task: Ranking of nodes relative to their relevance for a query
Main Idea: Describe nodes in the graph in terms of hub- and authority-scores
Authority score $a_j$: Importance of the node $i$ for incoming links (web context: value of the content of a page), i.e.
$a_j = \sum_{i \rightarrow j} h_i$
Hub scores $h_i$: Importance of the node $j$ for outgoing links (web context: value of links to other pages), i.e.
$h_i = \sum_{i \rightarrow j} a_j$
Mutual Reinforcement: Good hubs link to many good authorities, good authorities receive many links from good hubs
(rank-reduced)
Singular Value Decomposition
Any matrix $X$ has a decomposition into a weighted sum of the outer products of pairwise orthonormal vectors, i.e. $X = \sum_r \lambda_r u_r \circ v_r$, such that
$X$
$=$
$\lambda_1 u_1 \circ v_1$
$ + \dots + $
$\lambda_r u_r \circ v_r$
$\lambda_{i}$ is the $i$-th singular value of $X$
$u_i$ is the $i$-th left singular vector of $X$
$v_i$ is the $i$-th right singular vector of $X$
the sets $u_i$, $v_i$ are pairwise orthonormal, e.g. $u_i^Tu_i = 1$, $u_i^Tu_{j\neq i} = 0$
the rank of $X$ can be defined as the minimal number $r$ of outer products $\lambda_r u_r \circ v_r$ that generate $X$ is their sum
Some Properties of SVD
The left singular vectors of X, $u_r$ are the eigenvectors of the kernel matrix $XX^T$, i.e $$\lambda_r u_r = XX^T u_r$$
The right singular vectors of X, $v_r$ are the eigenvectors of covariance matrix $X^TX$, i.e. $$\lambda_r v_r = X^TX v_r$$
SVD has many applications, e.g. LSI, dimensionality reduction, recommendation engines, HITS
In the Case of Graphs
Authoritative Ranking with HITS
The hub- and authority-scores are defined as
\begin{align*}
a_j & = \sum_{i \rightarrow j} h_i &
h_i & = \sum_{i \rightarrow j} a_j \\
\end{align*}
In terms of the adjacency matrix $A$, this can be stated as
\begin{align*}
a & = A^T h & h & = A a \\
\Rightarrow a & = A^TAa & h & = AA^Th
\end{align*}
$\Rightarrow$ The vectors $a$ and $h$ correspond to the singular vectors of $A$, i.e.
The rank $r$ of a CP decomp. is the number of rank-1 tensors used to approximate $\mathcal{T}$
"$\approx$" is the best approximation under some loss, e.g. $\|\mathcal{T} - \sum_r \lambda_r a_r \circ b_r \circ c_r \|^2$
Tensor rank $rank(\mathcal{T})$ is the smallest number $r$ of rank‑1 tensors that are needed to exactly reconstruct $\mathcal{T}$ as their sum
CP can be regarded a multilinear generalization of SVD
Authoritative Ranking with CP
For a rank-1 decomposition of an adjacency tensor $\mathcal{T} = \lambda h \circ a \circ t$ it holds that
\begin{align}
h_i & = \sum_{i \overset{k}{\rightarrow} j} a_j t_k &
a_j & = \sum_{i \overset{k}{\rightarrow} j} h_i t_k &
t_k & = \sum_{i \overset{k}{\rightarrow} j} h_i a_j
\end{align}
Rank-reduced factorization performs simultaneous dimensionality reduction on entities and relation types, such that similar entities or predicates are grouped together
$\mathcal{T} \in \mathbb{3 \times 3 \times 3}$
$\approx$
$\lambda_1 a_1 \circ b_1 \circ c_1$
$+$
$\lambda_2 a_2 \circ b_2 \circ c_2$
TOPHITS on the Beatles Soap Opera
TripleRank - CP on Semantic Web Data
Basic Idea: Apply TOPHITS approach to RDF data to enable faceted browsing in knowledge bases
TripleRank is applied to a subset of the data (e.g. all nodes with at most 2 hops distance to the query node)
Approach closer to original HITS application
Correlations between predicates can be important
TripleRank - CP on Semantic Web Data
(some unfortunately problematic)
Properties of CP / Tensor Rank
Determining tensor rank is NP-hard! In practice: find tensor rank numerically by fitting multiple models
Non-nestedness: Rank-$(n+1)$ approximation does not necessarily Rank-$n$ approximation (means no overspecification)
Weak upper bound of tensor rank for third-order tensors: $rank(\mathcal{T}) \leq \min\{IJ, IK, JK\}$
Degeneracy: A tensor may be approximated arbitrarily well by a lower rank factorization
(true)
Relational Learning
Or "tell me what is your friend's Erdös-Number"
Collective Learning
Relations between entities are a rich source of information, as they allow to include information that are distant in the graph
Collective Learning is the ability of a learning algorithm to include information such as classes, relations or attributes of related entities in the learning and prediction task for a particular entity
Example: Party membership of US presidents
Factorizations & Relational Learning
Using a Link Prediction Example
Matrix factorizations decompose a observed matrix $X$ into latent (or hidden) factors, e.g. \begin{align*}X \approx SO^T && X_{ij} \approx s_i^T o_j\end{align*}$S$ and $O$ are called factor matrices and $s_i$, $o_j$ are the $i$-th and $j$-th row as column-vectors
Latent factors can be interpreted as new features that have been invented to describe the data (statistical predicate invention)
The rows of the factor matrices $s_i$, $o_j$ can be considered latent-variable representations of (in our case) entities that explain the observed variables $X_{ij}$
The columns of the factor matrices can be considered the invented latent features
The entries of the factor matrices specify how much an entity participates in a latent feature
Collective Learning & Bipartite Model
CP actually models a bipartite multigraph, i.e. CP assumes that the entries on the 1st mode are not identical to the entries on the 2nd mode (different latent representations $a_r$, $b_r$ in $\sum_r a_r \circ b_r \circ c_r$)
$\Rightarrow$ CP does not account for identities between subjects and objects
For general relational data, such as Linked Data, this assumption is violated
Bipartite modeling prevents information propagation over latent variables, or at least makes it very difficult
Collective Learning and CP
CP model for relational data with unique entity-representation would be
\[
\mathcal{T} \approx \sum_r e_r \circ e_r \circ p_r
\]
All frontal slices would be symmetric
$\Rightarrow$ CP can not simultaneously enforce the unique entity-representation constraint and still model directed relations
Tucker Decompositions offer more expressiveness than CP, such that the required constraints can be enforced $\Rightarrow$ RESCAL
Interlude - Unfolding
The mode-$n$ unfolding of a tensor $\mathcal{T}$, denoted by $\mathcal{T}_{(n)}$, reorders the elements of $\mathcal{T}$ into a new matrix $M$, by using the mode-$n$ fibers as columns of $M$. For $\mathcal{T} \in \mathbb{R}^{2 \times 3 \times 2}$
Mode-1 fibers
$\overset{\mathcal{T}_{(1)}}{\rightarrow}$
$\in \mathbb{R}^{2 \times 6}$
Mode-2 fibers
$\overset{\mathcal{T}_{(2)}}{\rightarrow}$
$\in \mathbb{R}^{3 \times 4}$
Mode-3 fibers
$\overset{\mathcal{T}_{(3)}}{\rightarrow}$
$\in \mathbb{R}^{2 \times 6}$
Interlude - Mode-n Product
The mode-$n$ product, denoted by $\times_n$, is the multiplication of a tensor by a matrix in mode $n$. Let $\mathcal{T} \in \mathbb{R}^{I_1 \times \dots \times I_N}$ and $M \in \mathbb{R}^{{\color{yellow}Q} \times I_n}$
Entries after reconstruction (i.e. $\mathcal{\hat{T}}_{ijk} = a_i R_k a_j^T$) can be regarded as confidence values of the model that the corresponding triple exists
Method can be motivated from a latent variable interpretation of factorizations
Due to the independence of random variables given the latent variables, very fast prediction, since it is equivalent to simple matrix-vector products
Similar procedures possible for CP and other tensor decompositions (without or reduced collective learning effect)
Consists of URIs of (vice) presidents and parties, the party memberships and the information who was (vice) president of whom
Importantly, the data contains no other information, therefore only a collective learning algorithm will learn something meaningful on this dataset
Task: Predict party-membership for persons in dataset (link prediction)
U.S. Presidents - Experiments
Experimental setting: 10-fold cross-validation over all persons
Evaluation measure: Area under precision-recall curve (AUC-PR)
AUC-PR
Link Prediction Benchmarks
AUC-PR
Kinships
UMLS
Nations
Entity Resolution & Taxonomy Learning
Entity Resolution
Problem: Data contains duplicate instances of the true underlying entities
Example: Names as identifiers in citation databases: "A. Einstein", "Einstein, A.", "Albert Einstein" all refer to the identical underlying entity Albert Einstein
Task: Determine which instances refer to the identical underlying entity
Important task in the Linked Data context, where this task is commonly referred to as Instance Matching
Relational data provides important information for this task, e.g. how similar are the co-authors of "A. Einstein" and "Einstein, A."
General approach: Use some similarity measure to determine which instances are most likely to be identical
Similarity of Entities in RESCAL
$\mathcal{T}_k$
$=$
$A R_k A^T$
RESCAL has a unique representation of entities via $A$
$A$ can be regarded as an embedding of the entities into a simple vector space
Similarity of entities in the latent-space $A$ corresponds to similarity in relational domain. Why?
$\Rightarrow$ Any feature-based machine-learning method (e.g. for clustering, classification etc.) can already be applied to $A$
Interlude - Kronecker Product
The Kronecker product $\otimes$ is a generalization of the outer product to matrices. Let $A \in \mathbb{R}^{Q \times R}, B \in \mathbb{R}^{S \times T}$. The Kronecker Product is defined as
The core tensor $\mathcal{G} \in \mathbb{R}^{P \times Q \times R}$ can be regarded a compressed version of $\mathcal{T}$
The factor matrices $A \in \mathbb{R}^{I \times P}$, $B \in \mathbb{R}^{J \times Q}$, $C \in \mathbb{R}^{K \times R}$ can be thought of the principal components in the respective modes
Uniqueness
Only possible combination of rank-1 tensors that sums to $\mathcal{X}$
Except basic indeterminacies of scaling and permutation
Matrix decompositions generally are not unique, e.g.
\[M \approx AB = (AQ^{-1}) \, (QB)\]
Interesting property for explanatory data analysis
CP is unique under mild conditions
Uniqueness is not identical to a global optimum!
Properties of Tucker
Tucker is not unique
\begin{align}
\mathcal{G} \times_1 A \times_2 B \times _3 C = & \hat{\mathcal{G}}\times_1 AQ^{-1} \times_2 BR^{-1} \times_3 CS^{-1} \\
\mbox{where } &
\hat{\mathcal{G}} = (\mathcal{G} \times_1 Q \times_2 R \times_3 S)
\end{align}
Tucker subsumes CP, i.e. CP is a Tucker model with the additional constraints that the core tensor $\mathcal{G}$ is superdiagonal and the factor matrices have equal rank, i.e. $P = Q = R$
Different variants of Tucker, based on number of modes that are factorized, i.e. Tucker-3, Tucker-2, Tucker-1
Tucker does not enforce unique entity constraints
Similarity of Entities in RESCAL
General approach: similarity of entities should be based on the similarity of their relational patterns
Outgoing links
\begin{align*}
X_{i,:,:} = & \color{orangered}{a_i} R_{(1)} (I \otimes A^T) \\
X_{j,:,:} = & \color{greenyellow}{a_j} R_{(1)} (I \otimes A^T)
\end{align*}
Incoming links
\begin{align*}
X_{:,i,:} = & \color{orangered}{a_i} R_{(2)} (I \otimes A^T) \\
X_{:,j,:} = & \color{greenyellow}{a_j} R_{(2)} (I \otimes A^T)
\end{align*}
For both incoming and outgoing links, the similarity of entities $e_i$ and $e_j$ is uniquely determined by the similarity of their latent-component representations $a_i$ and $a_j$
Due to the collective learning effect of RESCAL, the latent-variable representation also contains information about distant relations
Cora Publication Data
Cora is a hand-labeled dataset consisting of machine learning publications, authors, venues and paper title
Prior to entity resolution, the data contains ~90 authors, ~210 venues, ~400 publications
True number of entities: 50 authors, ~100 venues and ~130 publications
In total ~61.000 matching decisions
Instance matching: Ranking of entities by their similarity in the entity-latent-component space
Cora Publication Data
AUC-PR
Author
Citation
Venue
Due to noisy citations, a collective learning effect can significantly improve entity resolution results for authors and venues
Learning Taxonomies
Taxonomies are an integral part of ontologies
Taxonomies consist of
a list of concepts
a concept hierarchy
an assignment of entities to concepts
Approach: Learn taxonomies completely unsupervised by
hierarchical clustering of entities
Since similarity of entities is completely contained within the matrix $A$, any feature based hierarchical clustering method can be used
IIMB 2010 Benchmark Data
Instance matching benchmark from movie domain, consisting of $\approx$ 1400 entities, organized in 80 concepts
Top Level Concepts: Budget, Creature, Film, Language, Location
The concepts Creature, Film and Location are again subdivided into concepts like Person, Character, Country or Action Movie
Task: Unsupervised taxonomy learning via hierarchical clustering of entities
Method: Hierarchical clustering on $A$ using the OPTICS method
Level 1
0.982
Budget
1.0
Creature
1.0
Film
1.0
Language
0.963
Location
0.953
Level 2
0.806
Character
1.0
City
0.992
Country
0.632
Person
0.991
Parody
0.33
Zombie
1.0
Level 3
0.946
Actor
0.987
Capital
0.992
Character Creator
0.533
Director
0.781
Scalability
or "Tensors? I thought these things don't scale?"
The Size of Graphs
Multigraphs / Linked Data can be of large scale, consisting of millions of entities, thousands of predicates, billions of known facts
Number of random variables in a multigraph:
$|V| \times |V| \times |L|$ !
Real graphs are sparse, i.e. $|E| = O(|V|)$ instead of $O(|V|^2)$
Same property holds for most multigraphs and Linked Data, e.g.:
DBpedia: ~3.75 million entities, 800 object properties, 1.89 Billion triples XXX TODO XXX: report only entity-entity triples
YAGO 2: ~3 million entities, ~40 object properties, 124 Million triples XXX TODO XXX: report only entity-entity triples
By using sparse linear algebra, Alternating Least Squares (ALS) algorithms can easily exploit the sparsity of graphs
Alternating Least Squares
Typically, factorization methods are computed by optimizing the squared Frobenius norm, e.g. $\|Y - AB\|^2 = \sum_{ij}(Y_{ij} - a_i^T b_j)^2$
Alternating least squares is an alternating optimization scheme (non-linear block Gauss-Seidel method) to compute such least-squares problems in multiple variables
Basic procedure: Alternatingly keep all but one variable fixed and solve only for that variable
"Alternating Least Squares" because the algorithm solves a linear least squares subproblem for each factor matrix
Scales well for sparse matrices and tensors, easy to implement
Can show slow convergence (swamps), Using normal equations (next slide) ill-conditioned matrices can occur $\rightarrow$ Regularization
Equivalent formulations in unfolded form, by using the Khatri-Rao product and by forming new matrices $A$, $B$, $C$ from $a_r$, $b_r$, $c_r$, where e.g.
\[
A = \begin{bmatrix}a_1 & a_2 & \dots & a_R\end{bmatrix}
\]
\begin{align*}
T_{(1)} & = {\color{greenyellow}A} (C \odot B)^T & \Rightarrow \min_A \|T_{(1)} - A(C \odot B)^T\|^2 \\
T_{(2)} & = {\color{greenyellow}B} (C \odot A)^T & \Rightarrow \min_B \|T_{(2)} - B(C \odot A)^T\|^2 \\
T_{(3)} & = {\color{greenyellow}C} (B \odot A)^T & \Rightarrow \min_C \|T_{(3)} - C(B \odot A)^T\|^2
\end{align*}
CP-ALS algorithm: solve alternatingly for $A$, $B$, $C$
Normal Equations and Sparsity
Let $\min_F \|Y - WX\|^2$ be a linear least squares problem, where $Y \in \mathbb{R}^{P \times Q}$, $W \in \mathbb{R}^{P \times rank}$, $X \in \mathbb{R}^{rank \times Q}$
$F$ can be computed by using the method of normal equations
\[ W \leftarrow Y X^T (XX^T)^{-1} \]
$P$ and $Q$ can be large, e.g. for a Mode-1 unfolding of an adjacency tensor: $P = |V|$, $Q = |V| \times |L|$
Normal equations scale well for sparse tensor factorizations, as
$XX^T \in \mathbb{R}^{rank \times rank} \Rightarrow$ Inversion is cheap
$Y$ is large but sparse $\Rightarrow$ matrix multiplication $YX^T$ can be computed in only $O(nnz(Y) \times rank)$
$X$ is large in one dimension ($Q$) and dense but structured $\Rightarrow$ allows for very efficient optimizations to compute $XX^T$ for CP, Tucker and RESCAL
Normal Equations and CP
CP Model: $\mathcal{T}_{(1)} = A(C \odot B)^T$
For instance, the update of $A$ is computed by
\[
A \leftarrow
\underbrace{\vphantom{C_{(1)}^{-1}}\mathcal{T}_{(1)}}_{\vphantom{(X^T)^{-1}}=Y}
\underbrace{\vphantom{C_{(1)}^{-1}}(C \odot B)}_{\vphantom{(X^T)^{-1}}=X}
\underbrace{\vphantom{C_{(1)}^{-1}}(C^TC * B^TB)^{-1}}_{=(XX^T)^{-1}}
\]
where $C \odot B \in \mathbb{R}^{|V||L| \times rank}$ and $C^TC * B^TB \in \mathbb{R}^{rank \times rank}$
Similar, even slightly more scalable results exist for RESCAL and Tucker decompositions
They do scale!
(given suitable data & the right algorithm)
RESCAL-ALS scales linearly with the number of entities, predicates and known facts, superlinearly with the number of latent components
Scalability experiments using RESCAL on synthetic data
Base tensor $\mathcal{T} \in \mathbb{R}^{|V| \times |V| \times |L|}$, with $|V| = 1000$, $|L| = 10$
In each experiment, vary one of the parameters $|V|$, $|L|$, $nnz(\mathcal{T})$ and the number of latent components
Implications of Using ALS
The objective function of linear least squares is of the form
\[ \|T - FX\|^2 \]
which has various implications
Normality Assumption: The objective is only valid under the assumption that errors on random variables are normally distributed. For relational data a better error model is binomial
Open-World Assumption: By default, the objective treats unobserved triples as negative examples. Due to the open-world assumption of LD, this is not entirely justified
Both issues can be approached with using different objective functions, e.g. choosing a pairwise preference ranking objective, or an binomial error term. However, there is usually a trade-of between better modeling and scalability.
Does not account for some properties of real world graphs, such as scale free degree distribution etc.
Tensors & Attributes of Entities
Literally
Tensors + Attributes of Entities
Much of the information in Linked Data is in form of literals
In a machine learning setting, literals correspond to attributes
Naive handling:
Discretization of continuous or textual attributes
Use results of discretization step as entities and fill tensor accordingly
(Bob, inAgeGroup, old)
(Albert_Einstein, hasWord, Albert)
Handling of Attributes
Naive handling has serious scalability issues
Include attributes as additional constraint on
entity representation
\[
D \approx AV
\]
Joint or "coupled" tensor factorization
For instance, with RESCAL
\[
\min_{A,R,V} \sum_k \|X_k - A R_k A^T \|^2 + \|D - AV\|^2
\]
Similar methods exist for CP and Tucker
Graphs, Time & Tensors
Time-dependent Analysis of Graphs
Common ways to model time and graphs
Time-slices, i.e. assign points in time to bins (days, months etc.)
Sequential modeling, such as user - item - last item
Common assumptions made
Smoothness: Data changed smoothly over time
Markov property: Data at time point $t_i$ depends only on $t_{(i-1)}$
Here we will only consider the time-slices approach
DEDICOM
Basic Idea: Factorization of relational data into unique entity and predicate representations
\begin{align}
\mathcal{T}_k & = A D_k R D_k A^T \\
\mathcal{T}_{ijk} & = a_i^T D_k R D_k a_j
\end{align}
$=$
DEDICOM has one global interaction model $R$
Global patterns vary linearily over frontal slices of $\mathcal{T}$
Well suited to model time-varying graphs
Only defined for 2nd- and 3rd-order tensors
Enron Email Communication Network
Email data from ~150 users, mostly Enron senior managment
Collected and made public by FERC during its investigation
Original Data ~500,000 messages, containing
To: / From:
Date
Subject / Body
In the following smaller part of Data is used, consisting of
184 users and 34,427 messages
Modeling of data via 44 time-slices
Enron Network Analysis
$A$ assigns persons to roles, i.e. trade executive etc.
$R$ models global interactions of these roles
Assignment Quality
Global communication patterns
Enron Network Analysis
$D$ expresses the variation of patterns over time
Sequence Models
Modeling with time-slices does not take temporal order into account (Predicate fibers are exchangeable)
Sequence-oriented modeling: entity $\times$ entity $\times$ last entity
For instance: user $\times$ item $\times$ last item in recommendation engines
Ternary Relation $\rightarrow$ Hypergraph!
Concluding Remarks
Tensors offer a flexible and scalable way to machine learning on multi-relational data
Tensors offer a natural way to represent multi-graphs via adjacency tensors, without losing information as in the matrix case
Tensor factorizations like CP can be used for explanatory analysis on multi-graphs, e.g. to rank nodes by their importance
Rank-reduced factorizations off all three modes of a tensor offer a way to do joint disambiguation of entities and predicates
CP provides interpretable results via uniqueness property
Concluding Remarks
Tensor factorization methods have applications to many important problems in the Linked Data context such as link prediction, instance matching or information retrieval
RESCAL shows state-of-the-art results in link prediction and entity resolution
Embedding $A$ of RESCAL enables standard machine learning algorithms on relational data
Due to the sparsity of adjacency tensors, factorizations can scale up to complete knowledge bases
Time-evolving graphs and networks can be analysed by inspection of the factor matrices of appropriate decompositions like DEDICOM
Code & Tools
If You Want More...
Python and Matlab code for RESCAL available from my website and Github
from rescal import rescal
A, R = rescal(X, 20, init='nvecs')
Easy to use tools to convert from N-Triples or other formats to Python and Matlab tensors available from my website and Github


Export $type Folder:
$dir
File/archive in $format format
Include DTD in XML description
Create archive for a single XML file
Note:
This command exports a file/archive containing:
an XML file describing this folder structure and content
all files included in this folder
Hints:
You can edit the content of this content and
import it back to this folder
Use the DTD to pre-validate the XML description. Even if the folder is empty the DTD will reflect it complete structure


Renault could pull out of markets, products in strategy review: interim CEO
by ReutersLONDON (Reuters) - Renault's interim chief executive Clotilde Delbos said on Tuesday the carmaker did not rule out pulling out of some products or markets as part of a review of mid-term goals.
"We will avoid it if we can ... but we have to ask ourselves the question ... can we just keep up the same strategy? I don’t think so. The market is changing, we have to adapt," Delbos said at a conference.


| Ticket ID | Airline Name | Flight Number | Airplane ID | Departure Airport | Departure Time | Arrival Airport | Arrival Time | Ticket Price | Status | Date of Purchase | Booking Agent ID | {% for flight in result_viewMyFlights %}
|---|---|---|---|---|---|---|---|---|---|---|---|
| {{ flight.ticket_id }} | {{ flight.airline_name }} | {{ flight.flight_num }} | {{ flight.airplane_id }} | {{ flight.departure_airport }} | {{ flight.departure_time }} | {{ flight.arrival_airport }} | {{ flight.arrival_time }} | {{ flight.price }} | {{ flight.status}} | {{ flight.purchase_date }} | {{ flight.booking_agent_id}} |
{{ message_viewMyFlights }}
{% endif %}| Airline Name | Flight Number | Airplane ID | Departure Airport | Departure Time | Arrival Airport | Arrival Time | Ticket Price | Status | {% for flight in result_searchFlights %}|
|---|---|---|---|---|---|---|---|---|---|
| {{ flight.airline_name }} | {{ flight.flight_num }} | {{ flight.airplane_id }} | {{ flight.departure_airport }} | {{ flight.departure_time }} | {{ flight.arrival_airport }} | {{ flight.arrival_time }} | {{ flight.price }} | {{ flight.status }} |
{{message_searchFlights}}
{% endif %} {% if message_purchaseTickets %}{{message_purchaseTickets}}
{% endif %}


The Core Model: Designing Inside Out for Better Results
by Ida Aalen · 19 Comments
We’ve all fallen into territorial arguments about what content belongs on a site’s homepage. It’s the most important part of your website, after all—or is it? Ida Aalen shows us how to circumvent these turf wars with the Core Model approach, starting with a workshop to get everyone on the same page about what really counts as important—to your users. By identifying the core elements of your website as a team, you’ll make those smaller decisions about page design and content placement a lot faster, and without getting political about it.


Read the task carefully and inspect the document.
Choose the appropriate label that best suits the document.


 I was having problems hand-creating a configuration that would work with a Windows 7 client.
pppd: In file /etc/ppp/options.pptpd: unrecognized option 'require-mppe-128'
Yet I had pppd version 2.4.5 which says that option is valid. Turns out there are 3 different possible versions of which my 2.4.5 had a non-standard pppd version.
The following site (expand the comments) led me to this answer "The MPPC flag builds a non-standard PPP that uses different options."
Try something along the lines of the following instead:
mppe required,no40,no56,stateless


#BayelsaDecides: Jonathan, wife vote in Otuoke
by The Eagle OnlineFormer President, Goodluck Jonathan and his wife, Patience, voted at unit 39, Ward 13 at the Otazi Playground, Otuoke in Ogbia Local Government Area of Bayelsa.
News Agency of Nigeria reports that Jonathan voted at 11.30 a.m., while his wife voted at 11.35 a.m.
Ward 13 is made up of five communities of Otuoke, Otuaba, Ewoi, Otuabula 1 and Otuabula 2.
In his remarks after voting, Jonathan expressed dissatisfaction over the lateness of the arrival of the materials to the polling units.
He said: “We must conduct ourselves if we want to real bring people to rule us either as president or governors.
“Nigerians are always blaming people in authorities and the leaders, so here they must blame themselves.
“Look at even this voting, I was around earlier, but the materials had yet to arrive in the polling unit.
“I have led election monitoring teams to other African countries, we use to go 30 minutes before the time and in our reports, we indicate the exact time when the vote starts.
“So, for election to start after that time it is an indictment to the electoral body that manages election, there is no reason here election should not start by 8:00 a.m.
“So, even the youth should stop blaming old people, you blame yourselves and do things properly.
“I am really disappointed on what I observe today compare to other African countries I monitor elections.’’
Previous Post
Dickson votes, alleges hijacking of voting materials
Next Post
#BayelsaDecides: Four journalists in boat mishap


--- layout: page title: Hi, I'm Peng Tang subtitle: Researcher in Computer Vision use-site-title: true ---
Peng Tang is now a Senior Applied Scientist at Amazon AWS AI Labs. He received his Ph.D. degree and B.E. degree from Huazhong University of Science and Technology (HUST) in 2019 and 2014 respectively, advised by Wenyu Liu and Xinggang Wang. He was working as an intern in the Internet Media group at Microsoft Research Asia, advised by Chunyu Wang and Jingdong Wang. He was working as a visiting student in the CCVL group at the Johns Hopkins University, advised by Prof. Alan Yuille. He was working as an intern in Tencent AI Lab, advised by Lin Ma and Zequn Jie. He was working as an Applied Scientist at Salesforce Research. His research interests are computer vision and machine learning.
One paper for object recognition under extreme occlusion is accepted by CogSci 2019.
One paper for object detection in videos is accepted by TPAMI.
One paper for object retrieval and person re-identification is accepted by CVPR 2019.
One paper for weakly supervised object detection is accepted by TPAMI, codes are availiable here (Caffe) and here (PyTorch).
One paper for weakly supervised object detection is accepted by ECCV 2018.


In the first part of this series, we covered abstracting the iteration and reduction away from transformer functions. In the second part, we looked at some of the challenges that come with working in decent composition.
We didn't come up with any solutions for composition, but we have a good direction to go. Let's pick it up there, and finish by putting all of our solutions into one nice package.
So that didn't work, but it did tell us a couple of things that we have to take into consideration to make a helper function that does work.
We're on the right track with the first requirement. Each transformer does look the same as the next, but now we have to make sure that a composed function also looks the same. We can really only do this if the helper function only needs to pass in the initial value. To accommodate, we can give the helper function its own helper function to make all the rest of the calls.
function compose4(...xforms) {
return x => {
let value = x;
for (const xform of xforms) {
value = xform(value);
}
return value;
};
}
// Change transform3 to take a single function instead of an array of them
function transform4(xs, xform, reducer, init) {
let acc = init;
for (const x of xs) {
acc = reducer(acc, xform(x));
}
return acc;
}
// The other functions stay the same; we'll just rename them so the numbers match
const map4 = map3;
const filter4 = filter3;
let xform = compose4(map4(x => x + 1), filter4(x => x > 3));
transform4([1, 2, 3, 4, 5], xform, arrayReducer, []);
// -> [undefined, undefined, 4, 5, 6]
Looking good! It seems like our first problem is solved. The compose4
function does the same thing as our regular transformer functions: it returns a function that takes a value and returns another value. In this case, it just calculates the return value by passing it through all of the functions that are composed under it. But in the end, this produced function can be passed into our transform4
function just like one of our regular transformers can do.
This does require one nice change to transform3
: the new transform4
now takes a single transformer function, not an array of them. That function can be any function that takes a value and returns another value, including the function returned by any of our transformers or the function returned by compose4
. All looks good.
To solve the other problem, getting rid of those nasty undefined
s in the output, let's look at what we can do with what our transformers' output. Clearly, the way we have it now cannot work — filter
would actually have to return nothing at all, not just undefined
. There's no way to do that in JavaScript. We have to find another way.
What we really need is for the transformer to have some measure of control over the reducer. A filter
function could then fail an input value by simply not invoking the reducer, meaning that there would actually be nothing added to the output collection, rather than undefined
being added.
The problem is that we said we didn't want to do that. We said that we don't want the transformer having to decide whether to call the reducer. We made an entire helper function to make sure that the transformer didn't even need to know about the reducer. To then turn back and make the transformer function reducer-aware would violate the entire point of this exercise.
The solution here is a tricky one that requires some thought. You may find yourself having to take some of this on faith, but at the end you'll see why it all works. It is (as you may have come to expect by now) even more generalization.
As we saw when writing compose4
, to do composition correctly, we have to make sure that each function takes and returns the same number and kind of values, and we have to make sure that the overall composition does the same. A reducer does not take the same number and kind of values as our transformer functions. Our transformers take a value, while our reducers take an accumulator and a value. We can't take any of those arguments away from a reducer function. They're both necessary. But what if we could add an argument to the transformer functions to make them look like reducer functions? Then filter
could fail to invoke the next function just like we want, but it won't have to care whether it's a transformer function or a reducer function, because they both look the same anyway.
Really, that's an excellent idea. Here's why: compose
can be written as a reduction itself. The initial value — in this case, the value being transformed — is passed to the first function. The result becomes the new value, which is passed to the second function. The result becomes the new value...and so on and so on, until you run out of functions to pass the ever-changing value to. This is a reduction, plain and simple. Just because it's producing a single value — the completely transformed value — and not a collection does not make it any less a reduction.
And here's the last bit of good news: if our filter
function becomes a reducer function, it can choose to ignore an input element by just returning the original accumulator rather than having the next function in the chain act on the accumulator and value.
So there are our requirements. We have to provide a transformer function that takes the next transformer function as an argument and assumes that it's a reducer function. Which means that our function itself needs to return a reducer function, so any function earlier in the chain that we pass it to can pretend that it is a reducer function itself. Let's try it.
function map5(fn, next) {
return (acc, x) => next(acc, fn(x));
}
That's really not so different. Instead of taking a single value and returning a single value, the function that this new transformer returns is an actual reducer function. Notice that it's not acting any differently; it's still manipulating the data value, but it simply passes the accumulator along to the next function. The actual reducer function presumably will manipulate this accumulator, but a transformer function just passes it along. It only needs it so that it looks like a reducer function too.
To make this happen, map5
needs to take one more argument: the next transformer in the chain, which is also assumed to be a reducer function. Suddenly it's really easy to tack the reducer onto the end, because it looks just like a transformer too.
Of course, this assumes that we have a new helper function that knows to tack the reducer onto the end and knows how to call the (possibly composed) transformer function. Let's write that now.
function transform5(xs, fn, reducer, init) {
let acc = init;
const xform = fn(reducer);
for (const x of xs) {
acc = xform(acc, x);
}
return acc;
}
xform = next => map5(x => x + 1, next);
transform5([1, 2, 3, 4, 5], xform, arrayReducer, []);
// -> [2, 3, 4, 5, 6]
Okay, now that's more like it. Our new transform5
function starts by chaining the transformation function (fn
, which could be a composition of several functions) to the reducer, and then it iterates over the input collection, passing each value one at a time to the chain. The accumulator receives the output of the reducer function, which is the last link of the chain, and when the iteration completes, the accumulator is returned as the output collection.
This suggests that a transformer function can be composed with the reducer function, but can multiple transformer functions be composed? Let's write a new analogue to our filter4
function and use it to find out.
function filter5(fn, next) {
return (acc, x) => fn(x) ? next(acc, x) : acc;
}
xform = next => filter5(x => x > 2, map5(x => x + 1, next));
transform([1, 2, 3, 4, 5], xform, arrayReducer, []);
// -> [4, 5, 6]
It works! Now we have a filter
function that simply returns the original accumulator, unmodified, when it doesn't want to pass along a value, rather than adding undefined
to the accumulator and returning it. All of the later transformers functions (and the reduction function, which is unnecessary because nothing is being added) are skipped because next
is not called. And since each transformer actually takes the next transformer as an argument, we don't even have to use a compose
function to make it work. It's almost perfect!
What isn't perfect is the syntax. We can see from our transform5
function that it wants to chain functions together just by passing one to the next, as it does when it passes the reducer function to the transformer function. But each of our actual transformer functions accepts two parameters when transform5
only wants one, meaning that we have to do that ugly thing with the definition of xform
to create a function that takes only the next transformer function. But there's no reason in the world that we can't rewrite our map5
and filter5
functions to do this for us, returning a function that accepts one reducer function and returns another, which is exactly what transform5
really wants.
function map(fn) {
return xform => {
return (acc, x) => xform(acc, fn(x));
};
}
function filter(fn) {
return xform => {
return (acc, x) => fn(x) ? xform(acc, x) : acc;
};
}
function compose(...xforms) {
const reversed = xforms.reverse();
return value => reversed.reduce((acc, fn) => fn(acc), value);
}
function transduce(xs, xform, reducer, init) {
const xf = xform(reducer);
let acc = init;
for (const x of xs) {
acc = xf(acc, x);
}
return acc;
}
xform = compose(map(x => x + 1), filter(x => x > 3);
transduce([1, 2, 3, 4, 5], xform, arrayReducer, []);
// -> [4, 5, 6]
And there it is. The big change is taking our transformer functions exactly as they are and wrapping them in another function which takes the next transformer in the chain. This is exactly the same code as in the prior example's definition of xform
, just with some better names. Oh, we've done a little housekeeping — we've redefined compose5
to create a composition chain by using reduction, because even though we've shown we don't need that, it's still a lot nicer to have it than to have to chain our functions together by hand. We've also changed the name of the transform5
function into something that might interest you.
Time to answer that question once and for all.
Take a close look at our final transformer functions, map
and filter
. They each take a reducer function, modify it a little bit by applying a transformation to the value that's being reduced at that moment, and return the slightly modified reducer function. It's almost as if what these functions are really doing is...transforming reducers. Ooooohhh.
So at long last, transducers are functions that transform reducer functions, leaving us with one big, composed reducer function that does a bunch of transformations right inside. It doesn't care about the transducer before it or the one after it — one of them is ultimately going to be the reducer that makes the output collection, but they all look the same to our transducers.
Of course, I could have told you in the first paragraph that transducer is a combination of transformer and reducer, but that wouldn't have told you why transforming reducers is important. By making this journey — which ended up with nothing more than a six-line transduce
function that handles a bunch of three-line transducers and a utility compose
function that is standard-issue and can be used to compose any single-argument JavaScript functions — we have learned what transforming reducer functions is good for and, as a side effect, solved all of the major problems of list functions.
This isn't the whole story, of course. Xduce transducers do all of this but have a lot of bells and whistles too, like infinite iterators as input or output, reducers read from the output collection instead of being passed explicitly to transduce
, and explicit iteration (instead of for...of
loops) that let you iterate over objects in a reasonable way, turn functions into iterators, and all sorts of cool things.
But at least now you know what a transducer is.


DMOZ
#OrganizeTheWeb
Welcome!
This site includes information formerly made available via DMOZ.
Visit
resource-zone
to stay in touch with the community.
Follow @dmoz
About
Become an Editor
Suggest a Site
Help
Login
Share via Facebook
Share via Twitter
Share via LinkedIn
Share via e-Mail
Visit DMOZ on Facebook
Visit DMOZ on Twitter
Help with Search


Deployments are a Kubernetes control construct that implements
your desired state at your desired rate. In this case, the
deployment has the instruction: always have 12 copies of the
code base running. The deployment creates a replica set that
makes keeps 12 copies of the code running at all times.
Pod
One of a set of emphemeral copies of our code base.
In this case, it is a simple api that serves up a random
hexidecimal color value at /api/color/ on port 80.
Service
Pods are emphemeral, but we need a permanent place to access the
the code. A service provides a consistent endpoint where we
can access the code that runs in the Pods.
Node
A node is one of the member servers in our Kubernetes cluster.
This can be a server running on bare metal or a virtual machine
in this case, it is running on a Compute Engine virtual machine
as part of Container Engine cluster.


Library: Foundation
Package: Core
Header: Poco/AtomicCounter.h
Description
This class implements a simple counter, which provides atomic operations that are safe to use in a multithreaded environment.
Typical usage of AtomicCounter is for implementing reference counting and similar things.
On some platforms, the implementation of AtomicCounter is based on atomic primitives specific to the platform (such as InterlockedIncrement, etc. on Windows), and thus very efficient. On platforms that do not support atomic primitives, operations are guarded by a FastMutex.
The following platforms currently have atomic primitives:
- Windows
- Mac OS X
- GCC 4.1+ (Intel platforms only)
Member Summary
Member Functions: operator !, operator ++, operator --, operator =, operator ValueType, value
Types
ValueType
typedef int ValueType;
The underlying integer type.
Constructors
AtomicCounter
Creates a new AtomicCounter and initializes it to zero.
AtomicCounter
explicit AtomicCounter(
ValueType initialValue
);
Creates a new AtomicCounter and initializes it with the given value.
AtomicCounter
AtomicCounter(
const AtomicCounter & counter
);
Creates the counter by copying another one.
Destructor
~AtomicCounter
~AtomicCounter();
Destroys the AtomicCounter.
Member Functions
operator !
bool operator ! () const;
Returns true if the counter is zero, false otherwise.
operator ++
ValueType operator ++ ();
Increments the counter and returns the result.
operator ++
ValueType operator ++ (
int
);
Increments the counter and returns the previous value.
operator --
ValueType operator -- ();
Decrements the counter and returns the result.
operator --
ValueType operator -- (
int
);
Decrements the counter and returns the previous value.
operator =
AtomicCounter & operator = (
const AtomicCounter & counter
);
Assigns the value of another AtomicCounter.
operator =
AtomicCounter & operator = (
ValueType value
);
Assigns a value to the counter.
operator ValueType
operator ValueType() const;
Returns the value of the counter.
value
ValueType value() const;
Returns the value of the counter.